用户权限
1. 用户权限相关
| 权限 | 缩写 | 数字代号 |
|---|---|---|
| 读 | r | 4 |
| 写 | w | 2 |
| 执行 | x | 1 |
| 无权限 | - | 0 |
组:
在实际应用中,可以预先针对组设置好权限,然后将不同的用户添加到对应的组中,从而不用依次为每一个用户设置权限
2. ls -l 扩展
| 目录 | 拥有者权限 | 拥有者权限 | 拥有者权限 | 组权限 | 组权限 | 组权限 | 其他用户权限 | 其他用户权限 | 其他用户权限 | |
|---|---|---|---|---|---|---|---|---|---|---|
| 文件权限示例 | - | r | w | - | r | w | - | r | - | - |
| 目录权限示例 | d | r | w | x | r | w | x | r | - | x |
bogon:~ hello$ ls -l
total 0
drwx------@ 5 hello staff 160 1 27 2021 Applications
drwx------@ 18 hello staff 576 11 26 15:29 Desktop
drwx------+ 17 hello staff 544 11 25 10:11 Documents
drwxr-xr-x 2 hello staff 64 7 23 17:31 DocumentsImageResources
drwx------@ 6 hello staff 192 11 25 17:20 Downloads
drwx------@ 96 hello staff 3072 8 4 17:42 Library
drwx------+ 6 jinglin staff 192 8 31 16:24 Movies
tips:
① 权限,第一个字符如果是d,表示目录
② 硬链接数,就是有多少只方式,可以访问到当前目录/文件(子目录越多,硬链接越多)
(我本人对硬链的理解不是很深,所以可以自行查阅吧)
3. chmod简单使用
- chmod 可以修改用户/组 对 文件/目录 的权限
- 命令格式如下:chmod +/-rwx 文件名/目录名
tips:
(1) 执行当前目录下的文件,命令: ./文件名
(2)对文件夹增加权限后,该权限会作用于该文件夹下的所有文件
(3)一个文件夹如果没有可执行权限,则该文件夹不可执行终端操作
4. 超级用户
- linux系统中的root账号通常用于系统的维护和管理,对操作系统的所有资源具有所有访问权限
- su是substitute user的缩写
- sudo 命令用来以其他身份来执行命令,预设的身份为root
- 用户使用sudo时,必须先输入密码,之后有 5min的有效期,超过期限需要重新输入密码
5. which
/etc/passwd 是用于保存用户信息的文件
/usr/bin/passwd 是用于修改用户密码的程序
-
which命令可以查看执行命令所在的位置:
localhost:Desktop hello$ which cd /usr/bin/cd localhost:Desktop hello$ which ls /bin/ls localhost:Desktop hello$ which cat /bin/catbin 和 sbin
- 在linux中,绝大多数可执行文件都是保存在 /bin、/sbin、/usr/bin、/usr/sbin
- /bin(binary)是二进制执行文件目录,主要用于具体应用
- /sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理
- /usr/bin(user command for application)后期安装的一些软件
- /usr/sbin(system user commands for application)超级用户的一些管理程序
6. 修改文件权限
| 命令 | 作用 | 命令 |
|---|---|---|
| chown | 修改拥有者 | chown 用户名/目录名 |
| chgrp | 修改组 | chgrp -R 文件名/目录名 |
| chmod | 修改权限 | chmod -R 755 文件名/目录名 |
- chmod在设置权限时,可以简单地使用三个数字分别对应拥有者/组 和 其他用户的权限
- -R 可以递归修改
| 权限 | 数字对应 | |
|---|---|---|
| r | 可读 | 4 |
| w | 可写 | 2 |
| x | 可执行 | 1 |
- 数字代表
| r | w | x | 总和 | 权限 |
|---|---|---|---|---|
| 4 | 2 | 1 | 7 | rwx |
| 4 | 2 | 0 | 6 | rw- |
| 4 | 0 | 1 | 5 | r-x |
| 4 | 0 | 0 | 4 | r- - |
| 0 | 2 | 1 | 3 | -wx |
| 0 | 2 | 0 | 2 | -w- |
| 0 | 0 | 1 | 1 | - -x |
| 0 | 0 | 0 | 0 | - - - |
- 常见数字组合有(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 -R 755 文件名
- chmod -R 755 ./*
用户管理(接下来的内容,只是整理,操作没成功,想操作的可以自行试试)
1. 组管理
- 创建组/删除组 的终端命令都需要通过sudo执行
| 命令 | 作用 |
|---|---|
| groupadd 组名 | 添加组 |
| groupdel 组名 | 删除组 |
| cat etc/group | 确认组信息 |
| chgrp -R 组名 文件/目录名 | 递归修改文件/目录的所属组 |
组信息保存在 etc/group 文件中
/etc 目录是专门用来保存系统配置信息的目录
2. 用户终端
| 命令 | 作用 | 说明 |
|---|---|---|
| useradd -m -g 组名 新建的用户名 | 添加新用户 | -m:自动建立用户家目录; -g:指定用户所在的组,否则会建立一个和用户名同名的组 |
| passwd 用户名 | 设置用户密码 | 如果是普通用户,直接用passwd,可以修改自己的账户密码 |
| userdel -r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
| cat /etc/passwd | grep 用户名 | 确认用户信息 ,新建用户后,用户信息会保存在 /etc/passwd 文件中 |
创建用户时,如果忘记添加 -m选项指定新用户的家目录,最简单的方法就是删除用户,重新创建
创建用户时,默认会创建一个和用户名同名的组名
用户信息保存在 /etc/passwd 文件中
3. 查看用户信息
| 命令 | 作用 |
|---|---|
| id [用户名] | 查看用户uid和gid信息 |
| who | 查看当前所有登录的用户列表 |
| whoami | 查看当前登录用户的账户名 |
| usermod -g 组 用户名 | 修改用户的主组(passwd中的GID) |
| usermod -G 组 用户名 | 修改用户的附加组 |
| usermod -s /bin/bash | 修改用户登录shell |
/etc/passwd 文件存放的是用户的信息,由6个分号组成的7个信息,分别是:
1、用户名
2、密码(x,表示加密的密码)
3、UID(用户标识)
4、GID(组标识)
5、用户全名或者本地账号
6、家目录
7、登录使用的shell,就是登录之后,使用的终端命令,ubuntu默认是dash
主组:通常在新建用户时指定,在 etc/passwd 的第4列 GID 对应的组
附加组:在 etc/group 中最后一列表示该组的用户列表,用于指定用户的附加权限
默认使用useradd添加的用户是没有权限使用sudo以root身份执行命令的,可以使用以下命令,将用户添加到sudo附加组中,使用命令:
usermod -G sudo 用户名
4. 切换用户
| 命令 | 作用 | 说明 |
|---|---|---|
| su - 用户名 | 切换用户,并且切换目录 | -可以切换到用户家目录,否则保持位置不变 |
| exit | 退出当前登录账户 |
su不接用户名,可以切换到root,但是不推荐使用,因为不安全
参考视频:
- 黑马程序员
👆强烈推荐哦
- 权限和管理&spm=1001.2101.3001.5002&articleId=121608150&d=1&t=3&u=767881ec9e8b42469fb353d32739b082)
5644

被折叠的 条评论
为什么被折叠?



