useradd命令用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。
在Slackware中,adduser指令是个script程序,利用交谈的方式取得输入的用户帐号资料,然后再交由真正建立帐号的useradd命令建立新用户,如此可方便管理员建立用户帐号。在Red Hat Linux中,adduser命令则是useradd命令的符号连接,两者实际上是同一个指令。
用户名:要创建的用户名。
新建用户加入组:
useradd –g sales jack –G company,employees //-g:加入主要组、-G:加入次要组建立一个新用户账户,并设置ID:
useradd caojh -u 544需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。
userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。
用户名:要删除的用户名。
userdel命令很简单,比如我们现在有个用户linuxde,其家目录位于/var目录中,现在我们来删除这个用户:
userdel linuxde //删除用户linuxde,但不删除其家目录及文件; userdel -r linuxde //删除用户linuxde,其家目录及文件一并删除;请不要轻易用-r选项;他会删除用户的同时删除用户所有的文件和目录,切记如果用户目录下有重要的文件,在删除前请备份。
其实也有最简单的办法,但这种办法有点不安全,也就是直接在/etc/passwd中删除您想要删除用户的记录;但最好不要这样做,/etc/passwd是极为重要的文件,可能您一不小心会操作失误。
usermod命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。你需手动更改使用者的crontab档。也需手动更改使用者的at工作档。采用NIS server须在server上更动相关的NIS设定。
登录名:指定要修改信息的用户登录名。
将newuser2添加到组staff中:
usermod -G staff newuser2修改newuser的用户名为newuser1:
usermod -l newuser1 newuser锁定账号newuser1:
usermod -L newuser1解除对newuser1的锁定:
usermod -U newuser1passwd命令用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。
用户名:需要设置密码的用户名。
与用户、组账户信息相关的文件
存放用户信息:
/etc/passwd /etc/shadow存放组信息:
/etc/group /etc/gshadow用户信息文件分析(每项用:隔开)
例如:jack:X:503:504:::/home/jack/:/bin/bash jack //用户名 X //口令、密码 503 //用户id(0代表root、普通新建用户从500开始) 504 //所在组 : //描述 /home/jack/ //用户主目录 /bin/bash //用户缺省Shell组信息文件分析
例如:jack:$!$:???:13801:0:99999:7:*:*: jack //组名 $!$ //被加密的口令 13801 //创建日期与今天相隔的天数 0 //口令最短位数 99999 //用户口令 7 //到7天时提醒 * //禁用天数 * //过期天数如果是普通用户执行passwd只能修改自己的密码。如果新建用户后,要为新用户创建密码,则用passwd用户名,注意要以root用户的权限来创建。
[root@localhost ~]# passwd linuxde //更改或创建linuxde用户的密码; Changing password for user linuxde. New UNIX password: //请输入新密码; Retype new UNIX password: //再输入一次; passwd: all authentication tokens updated successfully. //成功;普通用户如果想更改自己的密码,直接运行passwd即可,比如当前操作的用户是linuxde。
[linuxde@localhost ~]$ passwd Changing password for user linuxde. //更改linuxde用户的密码; (current) UNIX password: //请输入当前密码; New UNIX password: //请输入新密码; Retype new UNIX password: //确认新密码; passwd: all authentication tokens updated successfully. //更改成功;比如我们让某个用户不能修改密码,可以用-l选项来锁定:
[root@localhost ~]# passwd -l linuxde //锁定用户linuxde不能更改密码; Locking password for user linuxde. passwd: Success //锁定成功; [linuxde@localhost ~]# su linuxde //通过su切换到linuxde用户; [linuxde@localhost ~]$ passwd //linuxde来更改密码; Changing password for user linuxde. Changing password for linuxde (current) UNIX password: //输入linuxde的当前密码; passwd: Authentication token manipulation error //失败,不能更改密码;再来一例:
[root@localhost ~]# passwd -d linuxde //清除linuxde用户密码; Removing password for user linuxde. passwd: Success //清除成功; [root@localhost ~]# passwd -S linuxde //查询linuxde用户密码状态; Empty password. //空密码,也就是没有密码;注意:当我们清除一个用户的密码时,登录时就无需密码,这一点要加以注意。