权限"/>
【Linux笔记】Linux文件权限
1 相关文件
1.1 /etc/passwd
- 登录用户名
- 用户密码(x)
- 用户账户的UID(数字形式)
- 用户账户的组ID(GID)(数字形式)
- 用户账户的文本描述(称为备注字段)(findger注释说明)
- 用户HOME目录位置
- 用户的默认shell
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
libstoragemgmt:x:998:996:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
agent:x:1000:1000::/home/agent:/bin/bash
hwnoc:x:120063:100::/home/hwnoc:/sbin/nologin
jingguang.hm:x:52068:100::/home/jingguang.hm:/bin/bash
qiaoqian.lj:x:54598:100::/home/qiaoqian.lj:/bin/bash
jinpeng.njp:x:1352345:100::/home/jinpeng.njp:/bin/bash
huangdu.hd:x:1356773:100::/home/huangdu.hd:/bin/bash
jianglei.yjl:x:1344873:100::/home/jianglei.yjl:/bin/bash
admin:x:1001:19062::/home/admin:/bin/bash
www:x:1002:1002::/home/www:/bin/bash
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false
huangdu:x:1003:1003::/home/huangdu:/bin/bash
1.2 /etc/shadow
- 登录用户名(与
/etc/passwd
中的登录用户名对应) - 加密后的密码
- 自上次修改密码后过去的天数密码(自1970年1月1日开始计算)
- 多少天后才能更改密码
- 多少天后必须更改密码
- 密码过期前提前多少天提醒用户更改密码
- 密码过期后多少天禁用用户账户
- 用户账户被禁用的日期(用自1970年1月1日到当天的天数表示)
- 预留字段给将来使用
root:$6$V/eMF/XyqgZt$yvhp4vswF7tEZ0nWhRKKzVUEnjl5vjhlmZQYqwLbcylvIk90qoM9SM.6015Uw/iAnShlj5zJC4eDhyfIumcxh1:19541:0:99999:7:::
bin:*:17973:0:99999:7:::
daemon:*:17973:0:99999:7:::
adm:*:17973:0:99999:7:::
lp:*:17973:0:99999:7:::
sync:*:17973:0:99999:7:::
shutdown:*:17973:0:99999:7:::
halt:*:17973:0:99999:7:::
mail:*:17973:0:99999:7:::
operator:*:17973:0:99999:7:::
games:*:17973:0:99999:7:::
ftp:*:17973:0:99999:7:::
nobody:*:17973:0:99999:7:::
systemd-network:!!:19094::::::
dbus:!!:19094::::::
polkitd:!!:19094::::::
libstoragemgmt:!!:19094::::::
ntp:!!:19094::::::
tss:!!:19094::::::
sshd:!!:19094::::::
tcpdump:!!:19094::::::
postfix:!!:19103::::::
agent:!!:19508:0:99999:7:::
hwnoc:!!:19508:0:99999:7:::
jingguang.hm:$6$ILbQTvr6$wdFwWxUIr3BiC6y5uy41NI5LpWGbUsl/U2jTlQ1jnOQbunYGtTNWRzhXjfHiwLimDC38qy40y34A/a/wlK2mV.:19559:0:99999:7::21915:
qiaoqian.lj:$6$hiwTNe46$YCXY/Td5HwjJN.OM.Uk/T446eI7wSvXYL.UMGdpgyNFy.5U8vVR.eJv8D0CuhsO77AGlk1abOYUyQqfwOXDGK0:19559:0:99999:7::21915:
jinpeng.njp:$6$mVbYi7cS$iXjoUkvX0tR/pYyavakdAsE10KFVb7SJnUA/ohAB/H/SrFM40lcqtoWkYGOnWkNNkF8fAkiboVQsrXA9ZJNkH1:19559:0:99999:7::21915:
huangdu.hd:$6$NXrAOqzG$bkMVWq3dC2Ibkt1xihhkc4QbiC8vJtjB7bPVoGHHdqV1t3nniQb2wF0f2nMz516lpV7mM7ErQCPwUcvH8Mqzu/:19559:0:99999:7::21915:
jianglei.yjl:$6$tC3RY7nN$HPdcKPV/NAlNgLzpCYRbyCGiuFaWng6Mb4Zir0WtoEo.B2VsTSkBsEHLrZecT1Ecb9vw7uxGRfMKCSyXKpa5D/:19559:0:99999:7::21915:
admin:!!:19509:0:99999:7:::
www:!!:19517:0:99999:7:::
mysql:!!:19521::::::
huangdu:$6$YIRZ5dq7$kEfIZAsTZSP7wwWHUNyPkHzZBcoJk3wpR492/Xp8DA6OdF5m1tA8Tcg98WtE3lbBB25bag7itI9HsLwyT32Oj0:19528:0:99999:7:::
1.3 /etc/group
- 组名
- 组密码
- GID
- 属于该组的用户列表
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
wheel:x:10:
cdrom:x:11:
mail:x:12:postfix
man:x:15:
dialout:x:18:
floppy:x:19:
games:x:20:
tape:x:33:
video:x:39:
ftp:x:50:
lock:x:54:
audio:x:63:
nobody:x:99:
users:x:100:
utmp:x:22:
utempter:x:35:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
ssh_keys:x:999:
input:x:998:
systemd-journal:x:190:
systemd-network:x:192:
dbus:x:81:
polkitd:x:997:
libstoragemgmt:x:996:
ntp:x:38:
cgred:x:995:
tss:x:59:
sshd:x:74:
screen:x:84:
tcpdump:x:72:
tbops:x:19001:jingguang.hm,qiaoqian.lj,jinpeng.njp,huangdu.hd,jianglei.yjl
tbpe:x:19011:
tbtest:x:19061:
tbdev:x:19051:
audit:x:2914:
tbdevdba:x:19022:
tbdba:x:19021:
ads:x:1685:
tbnoc:x:19031:
tbscm:x:19041:
logs:x:1338:
postdrop:x:90:
postfix:x:89:
agent:x:1000:
admin:x:19062:
www:x:1002:
mysql:x:27:
huangdu:x:1003:
1.4 /etc/gshadow (略)
2 管理用户/组相关命令
useradd
添加新用户-D
配置新用户的系统默认值(存储在/etc/default/useradd
中)
userdel
删除用户-r
删除用户的HOME目录以及邮件目录- 如果删除的用户创建过文件,则用户删除后原文件的所属主会变成未被占用的UID,所属组会变成未被占用的GID
usermod
用户账户修改-l
修改用户账户的登录名-p
修改账户的密码(注意这里填的是加密后的密码)-L
锁定账户,使用户无法登录-U
解除锁定,使用户能够登陆-g
更改用户账户默认组-G
添加组到用户账户的组列表
passwd
更改密码(默认修改当前用户的密码)-e
强制用户下次登录时修改密码
chpasswd
批量更新密码- 可以从标准输入流读取登录名和密码对(由
:
分隔)列表
- 可以从标准输入流读取登录名和密码对(由
chsh
修改默认shell-s
指定shell
chfn
修改备注字段(finger
查看)chage
管理用户账户的有效期groupadd
创建新组groupdel
删除组groupmod
修改组-g
修改GID-n
修改组名
gpasswd
修改组密码-r
移除组密码-R
组密码失效
groups
查看属于什么用户组su
切换用户-
切换用户后跳到该用户的家目录
newgrp
临时切换组sudo
执行一个root才能执行的命令- 别的用户使用
sudo
,需要visudo
命令编辑/etc/sudoers
- 别的用户使用
3 管理文件权限相关命令
粘着位(sticy bit):普通文件的sticky位会被linux内核忽略,目录的sticky位表示这个目录里的文件只能被owner和root删除。如果用户对目录有写权限,则可以删除其中的文件和子目录,即使该用户不是这些文件的所有者,而且也没有读或写许可。设置了该位后,其它用户就不可以删除不属于他的文件和目录。但是该目录下的目录不继承该权限,要再设置才可使用。
文件权限码:八进制高位到低位分别代表读®写(w)执行(x),即全权限为7,读4,写2,执行1
umask
默认文件权限- 第一位代表粘着位
- 后三位代表文件权限(八进制文件权限码,三位分别代表所属主、所属组和其它用户权限)
- 可以修改默认文件权限,文件全权限为666,目录全权限为777,减去umask中数值为默认权限
chmod
改变文件权限-R
递归改变权限- 3位八进制文件权限码(也可使用4位八进制值,见共享文件部分)
u
用户g
组o
其它a
所有,+
增加权限-
减少权限=
将权限设置成后面的值,r
读w
写x
执行
chown
改变文件主/组-R
递归改变权限用户名
只改变主(只有root
能改)用户名.组
改变主和组.组
只改变组(属主可修改,但要求属主是原属组和目标属组的成员)用户名.
改变主和组(主和组名相同时可用)
chgrp
改变文件组chattr
修改文件的特殊属性lsattr
列出文件/目录的特殊属性
15.4 共享文件
Linux还为每个文件和目录存储了3个额外的信息位。
- 设置用户ID(SUID):当文件被用户使用时,程序会以文件属主的权限运行。
- 设置组ID(SGID):对文件来说,程序会以文件属组的权限运行;对目录来说,目录中创建的新文件会以目录的默认属组作为默认属组。
- 粘着位:进程结束后文件还驻留(粘着)在内存中。
以上三位组成一位八进制值,可通过chmod直接指定,也可使用符号模式的s
(第三位t
)
- 例:将
testdir
目录设置为共享目录mkdir testdir
创建目录chgrp shared testdir
将目录用户组改为共享组(自己约定的)chmod g+s testdir
SGID位置位umask 002
修改默认权限,新文件对所属组可写
更多推荐
【Linux笔记】Linux文件权限
发布评论