命 令: userdel
功能说明:删除用户帐号。
语 法:userdel [-r][用户帐号]
补充说明:userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件。
参 数:
-f 删除用户登入目录以及目录中所有文件。
-r 递归(一个一个的)删除
警告: 请不要轻易用-r参数;他会删除用户的同时删除用户所有的文件和目录,切记;如果用户目录下有重要的文件,在删除前请备份;
相似命令groupdel 是用来删除用户组的;
语法格式:groupdel 用户组
groupdel admin
假如删除的时候忘记带r参数以后想删除这个用户的文件可以用下面这条命令 :
find / --nouser -exec rm - rf {} 用于:删除因用户不存在而遗留的文件(因为用户已被删除,其文件的拥有者为其UID,参数nouser用于删除此类文件)
命 令: adduser 或 useradd
功能说明:添加用户
补充说明:没有设置密码的账号是没有办法登陆的
密码命令:passwd
passwd 作为普通用户和超级权限用户都可以运行,普通用户只能更改自己的用户密码,但前提是没有被root用户锁定;
root用户运行passwd ,可以设置或修改任何用户的密码
passwd 命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的例子;
[root@localhost ~]# passwd 注:没有加任何用户,我是用root用户来执行的passwd 表示修改root用户的密码;下面也有提示;
Changing password for user root.
New UNIX password: (注:请输入新密码);
Retype new UNIX password: (注:验证新密码);
passwd: all authentication tokens updated successfully. (注:修改root密码成功);
如果是普通用户执行passwd 只能修改自己的密码;
如果新建用户后,要为新用户创建密码,则用 passwd 用户名 ,注意要以root用户的权限来创建;如下例子:
[root@localhost ~]# passwd beinan 注:更改或创建beinan用户的密码;
Changing password for user beinan.
New UNIX password: 注:请输入新密码;
Retype new UNIX password: 注:再输入一次;
passwd: all authentication tokens updated successfully. 注:成功;
普通用户如果想更改自己的密码,直接运行passwd即可;比如当前操作的用户是beinan;
[beinan@localhost ~]$ passwd
Changing password for user beinan. 注:更改beinan用户的密码;
(current) UNIX password: 注:请输入当前密码;
New UNIX password: 注:请输入新密码;
Retype new UNIX password: 注:确认新密码;
passwd: all authentication tokens updated successfully. 注:更改成功;
2、passwd 几个比较重要的参数; passwd --help 查看
-k, --keep-tokens 注:保留即将过期的用户在期满后能仍能使用;
-d, --delete (root only) 注:删除用户密码,仅能以root权限操作;
-l, --lock (root only) 注:锁住用户无权更改其密码,仅能通过root权限操作;
-u, --unlock (root only) 注:解除锁定;
-f, --force force operation 注:强制操作;仅root权限才能操作;
-x, --maximum=DAYS (root only) 注:两次密码修正的最大天数,后面接数字;仅能root权限操作;
-n, --minimum=DAYS (root only) 注:两次密码修改的最小天数,后面接数字,仅能root权限操作;
-w, --warning=DAYS 注:在距多少天提醒用户修改密码;仅能root权限操作;
password expiration密码过期 (root only)
-i, --inactive=DAYS (root only) 注:在密码过期后多少天,用户被禁掉,仅能以root操作;
-S, --status 情况 (root only) 注:查询用户的密码状态,仅能root用户操作;
--stdin 输入 (root only)
比如我们让某个用户不能修改密码,可以用-l 参数来锁定:
[root@localhost ~]# passwd -l beinan 注:锁定用户beinan不能更改密码;
Locking password for user beinan.
passwd: Success 注:锁定成功;
[beinan@localhost ~]# su beinan 注:通过su切换到beinan用户;
[beinan@localhost ~]$ passwd 注:beinan来更改密码;
Changing password for user beinan.
Changing password for beinan
(current) UNIX password: 注:输入beinan的当前密码;
passwd: Authentication token manipulation error 注:失败,不能更改密码;
再来一例:
[root@localhost ~]# passwd -d beinan 注:清除beinan用户密码;
Removing password for user beinan.
passwd: Success 注:清除成功;
[root@localhost ~]# passwd -S beinan 注:查询beinan用户密码状态;
Empty password. 注:空密码,也就是没有密码;
注意: 当我们清除一个用户的密码时,登录时就无需密码;这一点要加以注意;
3、chage 修改用户密码有效期限的命令;
chage 用语法格式:
chage [-l] [-m 最小天数] [-M 最大天数] [-W 警告] [-I 失效日] [-E 过期日] [-d 最后日] 用户
大体和psswd有些参数的用法差不多;
密 码时效命令-----chage
格式为:chage []
下面列出了chage命令的选项说明:
-m days: 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M days: 指定口令有效的最多天数。当该选项指定的天数加上-d选项指定的天数小于当前的日期时,用户在使用该帐号前就必须改变口令。
-d days: 指定从1970年1月1日起,口令被改变的天数。
-I days: 指定口令过期后,帐号被锁前不活跃的天数。如果值为0,帐号在口令过期后就不会被锁。
-E date: 指定帐号被锁的日期。日期格式YYYY-MM-DD。若不用日期,也可以使用自1970年1月1日后经过的天数。
-W days: 指定口令过期前要警告用户的天数。
-l: 列出指定用户当前的口令时效信息,以确定帐号何时过期。
例如下面的命令要求用户user1两天内不能更改口令,并且口令最长的存活期为30天,并且口令过期前5天通知用户
chage -m 2 -M 30 -W 5 user1
可以使用如下命令查看用户user1当前的口令时效信息:chage -l user1
提示:1)可以使用chage 进入交互模式修改用户的口令时效。
2)修改口令实质上就是修改影子口令文件/etc/shadow中与口令时效相关的字段值。