您的位置:首页 > 运维架构 > Linux

Linux账号管理的相关命令

2016-05-01 22:10 603 查看

useradd

格式说明

useradd [-u UID] [-g 初始群组] [-G 次要群组] [-mM]
[-c 说明栏] [-d 家目录的绝对路径] [-s shell] [其他选项]用户名


上面参数主要对应的就是/etc/passwd档案中的那7个字段的含义。

-m :表示要建立用户家目录

-M:表示不要建立用户家目录

-r:建立一个系统的账号,这个账号的UID会有限制,会参考/etc/login.defs

-e:后面接一个日期,日期格式为[YYYY-MM-DD],此项目会写入/etc/shadow的第八个字段

-f:后面接shadow的第七个字段,指定密码是否会失效。0为立即失效,-1为永远不会失效

相关过程

在/etc/passwd里面建立一行与账号有关的数据,包括建立UID/GID/家目录

在/etc/shadow里面将此账号的密码相关参数写入,但是尚未有密码,因为我们还没有设置密码。

在/etc/group底下建立一个与账号名称一模一样的组名,注意如果-g参数后面接的是一个已经存在的群组名称,(即初始群组是一个已经存在的群组),那么系统就不会主动去建立一个与账号名称一模一样的群组。

在/home底下(或者指定的目录中)建立一个与账号同名的目录作为用户家目录,默认权限为700

useradd的相关参考档案

1.使用useradd -D可以查看useradd的默认设置



这个数据是放在/etc/default/useradd中的

其中SKEL=/etc/skel:表示用户家目录的参考基准目录。意思是如果我们新建了一个用户userName,他的家目录假如是/home/userName,那么这个目录下的所有数据都是通过/etc/skel复制过去的,也就是说/skel下面有什么,/home/userName下面就有什么。

2.UID/GID以及密码参数的参考档案是/etc/login.defs



综上:useradd会参考的目录有:

/etc/default/useradd

/etc/login.defs

/etc/skel/*

passwd

在用useradd命令建立的账号,该账号暂时是被封锁的,即我们无法用这个账号登录。必须通过建立密码。

passwd [--stdin] /* 所有人都可以用这个来修改密码 */
passwd [-l] [-u] [--stdin] [-S] [-n 日数] [-x 日数] [-w 日数] [-i 日期] 账号 /* root功能 */


–stdin:可以通过来自前一个管线的数据,作为密码的输入

-l:Lock,将/etc/shadow第二栏最前面加上!,使得密码失效

-u:UnLock

-S:列出密码相关参数,即shadow档案内的大部分信息

-n:/etc/shadow第四字段,多久不可以修改密码

-x:/etc/shadow第5字段,多久内要修改密码

-w:/etc/shadow第6字段,密码过期前的警告天数

-i:/etc/shadow第7字段,密码失效日期

例子:

echo "abc1234567" | passwd --stdin vbird2


表示用standard input来个vbird2更改密码。因为这是一个shell指令,所以可以通过/root/.bash_history找到这个密码。

chage

显示密码参数的详细内容

chage [-ldEImMW] 账号名




usermod

对于账号相关信息的微调



userdel

删除用户的相关数据



finger

finger [-s] username


-s:仅列出用户的账号,全名,终端机代号与登录时间

-m:列出与后面接的账号相同者

id

id [username]


显示uid ,gid等信息

groupadd

groupadd [-g gid] [-r] 组名


-g:后面接某个特定的GID,用来直接赋值给某个GID

-r:建立系统群组。与/etc/login.defs中的GID_MIN有关

groupmod

groupmod [-g gid] [-n group_name] 群组名


-g:修改当前的GID为gid

-n :修改目前的群组名为group_name

groupdel

groupdel [groupname]


删除群组

gpasswd

群组管理员功能



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: