一、用户相关信息存储位置
账户信息存储:/etc/passwd
密码信息存储:/etc/shadow
组信息:/etc/group
二、用户管理
useradd:创建
创建tom账户,所属tom组,家在/home/tom
useradd tom
指定主组为root,副组为创建用户名,并指定家目录。
useradd -d /big/banzhang -g root banzhang
创建jerry,主组root,副组adm、bin,shell程序指定为/bin/sh
useradd -g root -G adm,bin -s /bin/sh jerry
usermod:修改
为用户追加附加组
usermod -aG sys tom:为tom追加sys组
修改用户附加组
usermod -G sys tom:删除tom附加组,并修改为sys
userdel:删除
只删除用户(家目录依然存在)
userdel jerry
删除用户并删除用户信息
userdel -r jerry(实际工作中,一般是不会加-r参数,该用户有可能会回来)
su:切换用户
切换到tom,仍然使用当前登录用户环境
su tom
切换到tom,使用tom用户环境
su - tom
三、密码管理
passwd:修改密码
修改当前登录账户的密码(普通用户执行时,密码必须满足高强度)
passwd
修改tom的密码(需要管理员权限)
passwd tom
锁定密码(锁定和解锁密码不常用,故这里大家了解便好)
解锁密码(同上)
四、用户组管理
groupadd:创建
创建一个用户组a,指定groupid为1000
groupadd -g 1000 a
创建用户组d,和a组相同的groupid
groupadd -g 1000 -o d
groupmod:修改
将group1修改为group2,并将id修改为1000
groupmod -g 1000 -o -n group2 group1
group2合并到group1。(group1的gid=1000)
groupmod -g 1000 -o group2
groupdel:删除
删除group1组:
groupdel group1(如果删除的组只作为附加组,可删。如果是主组,必须先删除所属主组账户,才可删除)
newgrp:如果有多个用户组,可以在多个组之间切换。
五、逻辑权限:在某个文件能看到的信息。
chmod:修改权限的命令
修改A文件777权限
chmod 777 A
删除A组其他人、用户组可读权限
chmod o-w,g-w A
组内成员共享A,其他人无权查看
chmod 750 A
B组全部加入A组。(合并组)
vi /etc/group
将B组的gid,改为A组gid
chown:修改文件所属的用户和用户组
修改test文件的用户和用户组为root、root
chown root:root test 字符、数字权限:Linux每个文件,都有三组权限分别是:用户、用户组、其他人。(对应位置没有权限,用 - 表示)
r:读(4)
w:写(2)
x:执行(1)
例如:rwxrw-r--:代表该用户具有读写执行、同用户组读写、其他人只读。对应的数字权限为764
六、物理权限
不能修改的目录:尽量不改动系统目录权限。
/:
/dev:记录linux块文件(硬盘、光驱等)
/tmp:临时目录
/var:服务器数据
chattr:修改物理权限
a:可以追加,其他操作不可(可以追加,但不能删除。多用于日志文件)
i:任何人都不得更改(包括root用户,多用于配置文件)
+[属性]:开启权限
-[属性]:关闭权限
例如:将/etc/目录修改为任何人不可更改
chattr +i /etc
lsattr:查看权限
七、设置普通用户(admin)为root权限
vi /etc/sudoers
新增:admin ALL=(ALL) ALL
我们在做完以上操作后,登录admin账户,即可通过sudo +命令的形式,来利用root权限操作相关文件。
例如:想要admin用户修改/etc/passwd信息
sudo vim /etc/passwd