linux 账户及权限命令学习笔记
用户信息
文件:/etc/passwd
字段含义:1、账号名称 2、密码 3、UID 4、GID 5、用户信息说明 6、Shell
用户密码信息
文件:/etc/shadow
字段含义:1、账号名称 2、密码 3、最近变更密码的日期 4、密码不可被变更的天数 5、密码需要重新更改的天数 6、密码需要更改期限前的警告天数 7、密码过期后的宽限时间 8、账号失效日期 9、保留
用户组信息
文件:/etc/group
字段含义:1、用户组名称 2、用户组密码(基本无用) 3、GID 4、此用户组支持的账号名称
用户组管理员信息
文件:/etc/gshadow
字段含义:1、用户组名 2、密码列 3、用户组管理员的账号 4、该用户组所属账号
创建用户默认值
文件:/etc/default/useradd
注意:其中GROUP=100 设置对RHEL,Fedora,CentOS无效 它们创建同名的用户组给用户
有效用户组
说明:用户创建文件时,新创建文件所属的用户组(只能在支持的用户组内切换)
初始用户组
创建用户时默认创建的用户组
新增用户
useradd [-u UID] [-g 初始用户组] [-G次要用户组] [-mM] [-c 说明栏] [-d 主文件夹绝对路径] [s shell] 用户账号名
-M 强制不要创建用户主文件夹
-m 强制创建用户主文件夹
说明:
1、useradd命令在创建用户时至少会参考/etc/default/useradd /etc/login.defs /etc/skel/* 文件
2、其主要创建了/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow和用户主文件夹
密码设置
passwd [--stdin] username
注意:当使用root账号执行passwd命令修改其他人的账号时,命令候命必须加上账号名称,否则就是修改自己的密码
查看新增用户默认值配置(系统管理员)
useradd -D
修改用户信息(系统管理员)
usermod [cdegGlsuLU] username
改变用户次要用户组(系统管理员)
usermod -G <group> <user>
切换有效用户组(系统管理员)
newgrp <group>
删除用户(系统管理员)
userdel [-r] username
注意:如果只是不想让该用户继续使用,直接将/etc/shadow中的失效日期(第8个字段)改为0即可
新增用户组(系统管理员)
groupadd [g -gid] [-r] 用户组名
修改用户组(系统管理员)
groupmod [-g gid] [-n groupname] 用户组名
删除用户组(系统管理员)
groupdel [groupname]
用户组管理(系统管理员)
gpasswd groupname --表示给予用户组一个密码
gpasswd [-A user1 ...] [-M user1 ...] group name
-A 将主控权交由指定用户管理
-M 将用户加入组内
用户组管理(用户组管理员)
gpasswd [-ad] user groupname
-a 将用户加入用户组
-d 将用户移出用户组
修改文件所属用户组
chgrp [-R] dirname/filename
-R 递归修改,即目录下的子文件的用户组也删除
修改文件所属用户
chown [-R] username dirname/filename
修改文件权限
chmod [-R] xyz
x:文件所属人权限
y:文件所属用户组权限
z:其他用户权限
读权限r:4
写权限w:2
执行权限x:1