赞
踩
用户账号的管理涉及添加、删除和修改用户账号信息。而这些操作实际上就是对/etc/passwd
文件进行更新
useradd
useradd
命令用于添加新用户, 以下是useradd
命令常用参数:
-c
: 指定用户的一段注释性描述。-d
: 指定用户的主目录,如果此目录不存在,可以使用 -m
选项来创建主目录。-g
: 指定用户所属的用户组。-G
: 指定用户所属的附加组。-s
: 指定用户的登录 Shell。-u
: 指定用户的用户号1.创建一个用户sam, 其中-d和-m选项用来为用户sam生成一个主目录 /home/sam
/home为默认的用户主目录所在的父目录
useradd –d /home/sam -m sam
useradd -s /bin/sh -g group –G adm,root gem
userdel
userdel
命令用于在 Linux 系统中删除用户。它可以删除用户的账户和与其相关的文件,例如用户主目录和用户配置文件
删除用户账号就是要将/etc/passwd等系统文件中的关于该用户的记录删除,必要时还删除用户的主目录
一下是userdel
命令的常用参数:
-r
: 删除用户的同时删除用户主目录和其他文件-f
: 强制删除用户,不管该用户是否已登录1.删除用户sam以及其主目录
userdel -r sam
userdel -f tom
userdel kim
usermod
usermod
命令用于在 Linux 系统中修改用户信息。它可以修改用户名、用户组、用户密码、用户主目录等
以下是usermod
命令的常用参数:
-l
: 修改用户名-g
: 修改用户所属的用户组-G
: 修改用户所属的附加组-d
: 修改用户主目录-s
: 修改用户登录的 shell-u
: 修改用户的用户号-L
: 锁定/解锁用户-U
: 更新用户密码1.修改sam用户的登录Shell为/bin/sh, 主目录为/home/z, 用户组为developer
usermod -s /bin/sh -d /home/z –g developer sam
usermod -l newgem gem
usermod -G adm,root jim
passwd
passwd
命令用于在 Linux 系统中修改用户密码。使用这个命令可以更改当前用户或其他用户的密码, 请注意,在修改密码后,用户可能需要重新登录才能生效
常用的参数包括:
-d
: 删除用户密码-l
: 锁定用户账户-u
: 解锁用户账户1.例如当前用户是sam, 使用如下命令修改自己的口令
$ passwd
Old password:******
New password:*******
Re-enter new password:*******
[root]# passwd sam
New password:*******
Re-enter new password:*******
[root]# passwd -l sam
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group
文件的更新
groupadd
groupadd
命令用于在 Linux 系统中创建新用户组
常用的参数包括:
-g
: 指定新用户组的组标识号 (GID)-r
: 创建系统组(GID < 1000)1.创建一个名为 newgroup 的新用户组,并指定其组标识号为1000
groupadd -g 1000 newgroup
groupadd -r sysgroup
groupadd staff
groupdel
groupdel
命令用于在 Linux 系统中删除已有的用户组
删除一个名为 group1 的用户组
groupdel group1
groupmod
groupmod
命令用于在 Linux 系统中修改已有的用户组. 使用这个命令可以修改用户组的名称、组标识号以及成员等信息
常用的参数包括:
-g
: 指定新的组标识号(GID)-n
: 指定新的组名称-a
: 添加用户到组中-d
: 从组中删除用户-G
: 指定用户组成员的1.将名为 oldgroup 的用户组修改为 newgroup
groupmod -n newgroup oldgroup
groupmod -g 1000 oldgroup
groupmod -a -G newgroup tom
groupmod -d -G newgroup tom
newgrp
newgrp
命令用于在 Linux 系统中切换用户组。使用这个命令可以让用户暂时地切换到另一个用户组中,并在操作完成后切换回原来的用户组
如下命令将当前用户切换至root用户组, 前提条件是root用户组是该用户的主组或附加组
newgrp root
/etc/passwd
Linux系统中的每个用户都在/etc/passwd文件中有一个对应的记录行,它记录了这个用户的一些基本属性
如下例子所示, /etc/passwd
中一行记录对应着一个用户,每行记录又被冒号分隔为7个字段, 分别为用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
# cat /etc/passwd
root:x:0:0:Superuser:/:
daemon:x:1:1:System daemons:/etc:
bin:x:2:2:Owner of system commands:/bin:
sys:x:3:3:Owner of system files:/usr/sys:
adm:x:4:4:System accounting:/usr/adm:
uucp:x:5:5:UUCP administrator:/usr/lib/uucp:
auth:x:7:21:Authentication administrator:/tcb/files/auth:
cron:x:9:16:Cron daemon:/usr/spool/cron:
listen:x:37:4:Network daemon:/usr/net/nls:
lp:x:71:18:Printer administrator:/usr/spool/lp:
sam:x:200:50:Sam san:/home/sam:/bin/sh
常见的伪用户如下表格所示:
伪用户 | 描述 |
---|---|
bin | 拥有可执行的用户命令文件 |
sys | 拥有系统文件和配置文件 |
adm | 拥有帐户文件和系统日志 |
uucp | UNIX-to-UNIX复制程序使用 |
lp | 打印系统使用 |
nobody | 用于NFS匿名访问 |
/etc/shadow
由于/etc/passwd文件是所有用户都可读的,如果用户的密码太简单或规律比较明显的话,一台普通的计算机就能够很容易地将它破解,因此对安全性要求较高的Linux系统都把加密后的口令字分离出来,单独存放在一个文件中,这个文件是**/etc/shadow
**文件。
只有超级用户才能读取此文件,这就保证了用户密码的安全性
它的文件格式与/etc/passwd类似,由若干个字段组成,字段之间用":"隔开, 字段描述如下所示:
登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
如下是/etc/shadow的文件内容:
# cat /etc/shadow
root:Dnakfw28zf38w:8764:0:168:7:::
daemon:*::0:0::::
bin:*::0:0::::
sys:*::0:0::::
adm:*::0:0::::
uucp:*::0:0::::
nuucp:*::0:0::::
auth:*::0:0::::
cron:*::0:0::::
listen:*::0:0::::
lp:*::0:0::::
sam:EkdiSECLWPdSa:9740:0:0::::
/etc/group
用户要访问属于附加组的文件时,必须首先使用newgrp命令切换至附加组
用户组的所有信息都存放在/etc/group文件中。此文件的格式也类似于/etc/passwd文件,由冒号":"隔开若干个字段,这些字段描述如下所示:
组名:口令:组标识号:组内用户列表
root::0:root
bin::2:root,bin
sys::3:root,uucp
adm::4:root,adm
daemon::5:root,daemon
lp::7:root,lp
users::20:root,sam
每一列按照/etc/passwd
密码文件的格式书写,要注意每个用户的用户名、UID、宿主目录都不可以相同,其中密码栏可以留做空白或输入x号
一个范例文件user.txt内容如下:
user001::600:100:user:/home/user001:/bin/bash
user002::601:100:user:/home/user002:/bin/bash
user003::602:100:user:/home/user003:/bin/bash
user004::603:100:user:/home/user004:/bin/bash
user005::604:100:user:/home/user005:/bin/bash
user006::605:100:user:/home/user006:/bin/bash
newuser
命令创建用户要使用root用户只需newuser
命令
newusers < user.txt
pwunconv
命令pwunconv
命令是一个命令行工具,通常用于将密码文件从旧版本的Unix使用的密码文件格式转换为当前版本的Unix使用的格式
pwunconv
文件内容格式为:用户名:密码
, 例如下面的passwd.txt:
user001:123456
user002:123456
user003:123456
user004:123456
user005:123456
user006:123456
chpasswd
命令chpasswd
命令是一个命令行工具,它允许您批量更改一个或多个用户的密码。它从标准输入读取用户名和密码的列表,并更新系统密码文件中相应的密码
执行如下命令, chpasswd
会将经过 /usr/bin/passwd
命令编码过的密码写入 /etc/passwd
的密码栏
chpasswd < passwd.txt
pwconv
命令pwconv
命令是一个命令行工具,它用于将密码文件从系统原始的密码文件格式转换为shadow文件的格式
pwconv
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。