在Linux中,每个普通用户都有一个帐户,包括用户名,密码和主目录等信息;除此之外,还有一些系统本身创建的特殊用户,它们具有特殊的意义。
1.增加用户
1)用户帐号信息有关的文件如下:
/etc/passwd----用户帐号信息
/etc/shadow----用户帐号信息加密文件
/etc/group----组信息文件
/etc/default/useradd----定义默认设置文件
/etc/login.defs----系统广义设置文件
/etc/skel----默认的初始配置文件目录
2)例:#useradd jesse (没有任何提示,表明建立成功)
#id jesse (使用id命令查看新建的用户信息)
#passwd jesse (修改用户的密码)
3)每新建一个用户,/etc/passwd文件中都会增加一行信息,其格式为:
用户名:密码:用户ID(UID):组ID(GID):全名:用户目录:Shell类型
4)查看新加入的用户jesse在/etc/passwd文件中的信息行,命令如下:
#grep jesse /etc/passwd
jesse:x:502:502::/home/jesse:/bin/bash
结果表明:用户jesse的uid和gid都为502,主目录为/home/jesse,shell为bash
5)用户可以用-d选项设置新用户的主目录,用-g选项为用户指定新组名,用-G选项把新用户设成系统其他一些组的成员
例如:新建用户squid,使其组名为squidgroup,主目录为/var/myhome,新用户squid也是root和bin的成员,命令如下:
#groupadd squidgroup
#useradd -g squidgroup -d /var/myhome -G root,bin squid
6)显示useradd的默认值,命令如下:
#useradd -D
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
7)总结:仅仅增加一个组,用命令groupadd
查看某一个用户的uid,gid和附加组信息,使用id命令
修改用户口令的命令为passwd
查看用户的详细信息的命令为grep 用户名 /etc/passwd
只有超级用户root才能使用useradd和groupadd命令
除超级用户root外,用户使用passwd命令只能更改自己的口令,不带参数的passwd
2.修改用户帐号
usermod命令根据命令选项修改系统帐号文件里的相应信息。
1)修改密码。普通用户可以用passwd修改自己的密码,只有管理员root才能用passwd username 为其他用户修改密码
2)修改用户shell设置。使用chsh命令可以修改自己的shell,只有管理员才能用chsh username为其他用户修改shell设置(指定的shell必须是列入/etc/shells文件中的shell)
例:将用户jesse的shell改为csh,命令如下:
#usermod -s /bin/csh
3)修改主目录。
例:将用户jesse的主目录更改为/home/jesse,命令如下
#usermod -d /home/jesse jesse
4)如果想将现有主目录的主要内容转移到新的目录,应该使用-m选项:
#usermod -d /new/mulu -m username
5)修改UID。该用户主目录中所拥有的文件和目录都将自动修改UID设置。但是对于主目录外所拥有的文件,只
能手工用chown命令修改所权设置。
#usermod -u UID username
6)修改默认组设置
#usermod ig GID username
7)修改帐号的有效期。如果使用了影子口令,则可以使用如下命令来修改一个帐号的有效期:
#usermod -e 12/31/07 username
8)禁用用户帐号,如果只想暂时禁止某个帐号,可以使用下列方法:
a.使用无效的shell.例如将用户的shell改为/bin/false(最好把/bin/false列入/etc/shells文件)
b.使该帐号过期。如果使用影子口令,可使用usermod -e MM/DD/YY username 命令使该帐号过期
c.如果想禁止所有帐号(root帐号当然除外)的访问,可以创建一个名为/etc/nologin的文件,说明系统
暂时不允许访问
d.使用usermod -L username,锁定用户
9)删除或禁止用户帐户:userdel jesse
如果想同时删除该用户的主目录以及其中所有内容,要使用-r开关来递归删除
阅读(1341) | 评论(0) | 转发(0) |