【Linux基础 08】Linux用户权限相关命令
发布时间:2020-12-14 01:32:03 所属栏目:Linux 来源:网络整理
导读:目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01. 用户 和 权限 的基本概念 1.1 基本概念 用户 是 Linux 系统工作中重要的一环,用户管理包括 用户 与 组 管理 在 Linux 系统中,不论是由本机或是远程登录系统,每个
目标
01. 用户 和 权限 的基本概念1.1 基本概念
1.2 组
1.3 ls -l 扩展
1.4
|
序号 | 命令 | 作用 |
---|---|---|
01 | groupadd 组名 | 添加组 |
02 | groupdel 组名 | 删除组 |
03 | cat /etc/group | 确认组信息 |
04 | chgrp -R 组名 文件/目录名 | 递归修改文件/目录的所属组 |
提示:
- 组信息保存在
/etc/group
文件中/etc
目录是专门用来保存 系统配置信息 的目录
- 在实际应用中,可以预先针对 组 设置好权限,然后 将不同的用户添加到对应的组中,从而不用依次为每一个用户设置权限
演练目标
- 在
python
用户的桌面文件夹下创建Python学习
目录 - 新建
dev
组 - 将
Python学习
目录的组修改为dev
03. 用户管理 终端命令
提示:创建用户 / 删除用户 / 修改其他用户密码 的终端命令都需要通过
sudo
执行
3.1 创建用户/设置密码/删除用户
序号 | 命令 | 作用 | 说明 |
---|---|---|---|
01 | useradd -m -g 组 新建用户名 | 添加新用户 | <ul><li>-m 自动建立用户家目录</li><li>-g 指定用户所在的组,否则会建立一个和同名的组</li></ul> |
02 | passwd 用户名 | 设置用户密码 | 如果是普通用户,直接用 passwd 可以修改自己的账户密码 |
03 | userdel -r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
04 | cat /etc/passwd | grep 用户名 | 确认用户信息 | 新建用户后,用户信息会保存在 /etc/passwd 文件中 |
提示:
- 创建用户时,如果忘记添加
-m
选项指定新用户的家目录 —— 最简单的方法就是删除用户,重新创建- 创建用户时,默认会创建一个和用户名同名的组名
- 用户信息保存在
/etc/passwd
文件中
3.2 查看用户信息
序号 | 命令 | 作用 |
---|---|---|
01 | id [用户名] | 查看用户 UID 和 GID 信息 |
02 | who | 查看当前所有登录的用户列表 |
03 | whoami | 查看当前登录用户的账户名 |
passwd 文件
/etc/passwd
文件存放的是用户的信息,由 6 个分号组成的 7 个信息,分别是
- 用户名
- 密码(x,表示加密的密码)
- UID(用户标识)
- GID(组标识)
- 用户全名或本地帐号
- 家目录
- 登录使用的 Shell,就是登录之后,使用的终端命令,
ubuntu
默认是dash
usermod
-
usermod
可以用来设置 用户 的 主组 / 附加组 和 登录 Shell,命令格式如下: -
主组:通常在新建用户时指定,在
etc/passwd
的第 4 列 GID 对应的组 -
附加组:在
etc/group
中最后一列表示该组的用户列表,用于指定 用户的附加权限
提示:设置了用户的附加组之后,需要重新登录才能生效!
# 修改用户的主组(passwd 中的 GID) usermod -g 组 用户名 # 修改用户的附加组 usermod -G 组 用户名 # 修改用户登录 Shell usermod -s /bin/bash 用户名
注意:默认使用
useradd
添加的用户是没有权限使用sudo
以root
身份执行命令的,可以使用以下命令,将用户添加到sudo
附加组中
usermod -G sudo 用户名
which(重要)
提示
/etc/passwd
是用于保存用户信息的文件/usr/bin/passwd
是用于修改用户密码的程序
-
which
命令可以查看执行命令所在位置,例如:
which ls # 输出 # /bin/ls which useradd # 输出 # /usr/sbin/useradd
bin
和 sbin
- 在
Linux
中,绝大多数可执行文件都是保存在/bin
、/sbin
、/usr/bin
、/usr/sbin
-
/bin
(binary
)是二进制执行文件目录,主要用于具体应用 -
/sbin
(system binary
)是系统管理员专用的二进制代码存放目录,主要用于系统管理 -
/usr/bin
(user commands for applications
)后期安装的一些软件 -
/usr/sbin
(super user commands for applications
)超级用户的一些管理程序
提示:
cd
这个终端命令是内置在系统内核中的,没有独立的文件,因此用which
无法找到cd
命令的位置
3.3 切换用户
序号 | 命令 | 作用 | 说明 |
---|---|---|---|
01 | su - 用户名 | 切换用户,并且切换目录 | - 可以切换到用户家目录,否则保持位置不变 |
02 | exit | 退出当前登录账户 |
-
su
不接用户名,可以切换到root
,但是不推荐使用,因为不安全 -
exit
示意图如下:
04. 修改文件权限
序号 | 命令 | 作用 |
---|---|---|
01 | chown | 修改拥有者 |
02 | chgrp | 修改组 |
03 | chmod | 修改权限 |
- 命令格式如下:
# 修改文件|目录的拥有者 chown 用户名 文件名|目录名 # 递归修改文件|目录的组 chgrp -R 组名 文件名|目录名 # 递归修改文件权限 chmod -R 755 文件名|目录名
-
chmod
在设置权限时,可以简单地使用三个数字分别对应 拥有者 / 组 和 其他 用户的权限
# 直接修改文件|目录的 读|写|执行 权限,但是不能精确到 拥有者|组|其他 chmod +/-rwx 文件名|目录名
- 常见数字组合有(
u
表示用户/g
表示组/o
表示其他):-
777
===>u=rwx,g=rwx,o=rwx
-
755
===>u=rwx,g=rx,o=rx
-
644
===>u=rw,g=r,o=r
-
chmod
演练目标
- 将
01.py
的权限修改为u=rwx,o=r
- 将
123.txt
的权限修改为u=rw,o=-
- 将
test
目录以及目录下的 所有 文件权限修改为u=rwx,o=rx
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
相关内容
- 【Linux】如何在Linux上安装使用SSH
- linux – 我想转到μC编程,但我完全不知道从哪里开始
- 尝试在linux上运行shell脚本时“无法执行二进制文件”
- Linux help命令:显示命令的帮助信息
- linux – 如何停止并修复已失败且I / O挂起的RAID 5阵列?
- linux – 将Rsnapshot与sync_first,link_dest和use_lazy_de
- Linux下环境变量设置的三种方法:
- 我可以在Linux中使用原始套接字创建侦听TCP套接字吗?
- Linux内核中的TCP SYN Flooding检测方法
- redhat – Linux和Linux LVM分区类型有什么区别?