一、用户管理相关命令
1.useradd/adduser:创建用户
adduser命令是useradd的连接:file `whereis useradd`
(1)useradd [options] LOGIN
-u, --uid UID:指定UID;
-g, --gid GROUP:指定基本组ID,该组必须事先存在;
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组
-c, --comment COMMENT:指明注释信息;
-s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;
-r, --system:创建系统用户;
-d, --home HOME_DIR:指定路径为用户的家目录;通过复制/etc/skel目录并重命名实现
指定的家目录路径如果事先存在,则不会为用户复制环境配置文件
-f, --inactive : 更改非活动期限
-M: 不创建用户家目录
注意:在/etcpasswd下第六字段还是会存在默认路径目录路径
(2)useradd -D:显示创建用户的默认配置;
注意:创建用户时的诸多默认设定配置文件为/etc/login.defs
[root@localhost ~]# vim /etc/login.defs
MAIL_DIR /var/spool/mail 邮件队列目录
PASS_MAX_DAYS 99999 密码最大使用天数,99999基本表示永远
PASS_MIN_DAYS 0 密码最小使用天数
PASS_MIN_LEN 5 密码最小长度
PASS_WARN_AGE 7 密码过期警告日期
UID_MIN 500 最小用户ID号
UID_MAX 60000 最大用户ID号
GID_MIN 500 最小用户组ID号
GID_MAX 60000 最大用户组ID号
UMASK 077 默认遮罩码
CREATE_HOME yes 创建家目录
USERGROUPS_ENAB yes 删除用户是如果其组没有用户一并删除
ENCRYPT_METHOD SHA512 使用额加密算法为SHA512
(3)useradd -D [options]:修改默认选项的值,选项同useradd
注:修改结果保存于/etc/default/useradd文件中,可直接修改
2.usermod:修改用户属性
格式:usermod [options] LOGIN
-u, --uid UID:修改用户的ID为此处指定的新UID;
-g, --gid GROUP:修改用户所属的基本组;
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;
-a, --append:与-G一同使用,用于为用户追加新的附加组; -aG
-c, --comment COMMENT:修改注释信息;
-d, --home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;
-m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;-md
-l, --login NEW_LOGIN:修改用户名;
-s, --shell SHELL:修改用户的默认shell;
-L, --lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";
-U, --unlock:解锁用户的密码;
3.userdel:删除用户,默认删除用户时不删除用户家目录
格式:usermod [options] LOGIN
-r:删除用户时一并删除其家目录;
4.passwd:密码修改
(1) passwd:修改用户自己的密码;
(2)passwd USERNAME:修改指定用户的密码,但仅root有此权限;
【OPTIONS】
-l, -u:锁定和解锁用户;
-d:清除用户密码串;
-e DATE: 过期期限,日期;
-i DAYS:非活动期限;
-n DAYS:密码的最短使用期限;
-x DAYS:密码的最长使用期限;
-w DAYS:警告期限;
--stdin:从标准输入读取,一般和管道、重定向用来实现自动化
echo "PASSWORD" | passwd --stdin USERNAME
5.pwck:检查密码安全和完整性
6.chage:更改用户密码过期信息
格式:chage [OPTION] USERNAME
-d, --lastday:最近一次修改的时间,可以用YYYY-MM-DD功能
-E, --expiredate:过期时间
-W, --warndays:警告时间
-m, --mindays:最短使用时间
-M, --maxdays :最常使用时间
7.id:显示用户的信息和有效ID;
格式:id [OPTION]... [USER]
-u: 仅显示有效的UID;
-g: 仅显示用户的基本组ID;
-G:仅显示用户所属的所有组的ID;
-n: 显示名字而非ID;
8.su:switch user,切换用户
1)登录式切换:会通过读取目标用户的配置文件来重新初始化, pwd --->/home/USERNAME
su - USERNAME
su -l USERNAME
2)非登录式切换:不会读取目标用户的配置文件进行初始化,pwd --->/root
su USERNAME
注:上说pwd演示说明是以root切换到本机普通用户为实例做简要说明
3)管理员可无密码切换至其它任何用户;
4)-c 'COMMAND':仅以指定用户的身份运行此处指定的命令;
不切换用户,完成后自动退回
9.==================几个逐渐废弃使用命令=================
chsh:更改用户shell
finger:用户信息查询
chfn:更改用户讯息,option基本同上
二、组管理相关命令
1.groupadd:添加组
格式:groupadd [options] group
-g GID:指定GID;默认是上一个组的GID+1;
-r: 创建系统组;
2.groupdel:删除组
格式:groupdel [options] GROUP
3. groupmod:修改组属性
格式:groupmod [options] GROUP
-g GID:修改GID;
-n new_name:修改组名;
4.gpasswd:给组添加密码 ,一般组都没有密码
在临时切换到不属于自己的附属组的其他组时候要通过组密码验证
无密码的组不能被任何用户切换,仅能被组所包含的用户切换
格式:gpasswd [OPTION] group
-a USERNAME:向组中添加用户
-d USERNAME:从组中移除用户
5.newgrp:临时切换指定的组为基本组,使用exit退出
格式:newgrp [-] [group]
-: 会模拟用户重新登录以实现重新初始化其工作环境;
注意:当临时切换到不属于自己的附加组的时候,要输入密码
6.grpck:检查组的安全