Linux用户和组管理命令
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux用户和组管理命令相关的知识,希望对你有一定的参考价值。
一、用户管理命令
useradd
useradd命令用于Linux中创建的新的系统用户。useradd可用来建立用户帐号。帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd
文本文件中。
在Slackware中,adduser指令是个script程序,利用交谈的方式取得输入的用户帐号资料,然后再交由真正建立帐号的useradd命令建立新用户,如此可方便管理员建立用户帐号。在Red Hat Linux中,adduser命令则是useradd命令的符号连接,两者实际上是同一个指令。
语法
useradd(选项)(参数)
选项
-c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中;
useradd -c nihao han cat /etc/passwd |tail -n 1 han:x:503:505:nihao:/home/han:/bin/bash
-d<登入目录>:指定用户登入时的启始目录;(该目录必须不存在)
useradd -d /home/yingyu han cat /etc/passwd |tail -n 1 han:x:503:505::/home/yingyu:/bin/bash
-D:变更预设值;
配合其他参数使用,显示或修改默认值
useradd -D
useradd -D -s SHELL
useradd -D -b BASE_DIR
useradd -D -g GROUP
-e<有效期限>:指定帐号的有效期限;
useradd -e 3 han cat /etc/shadow |tail -n 1 han:!!:17548:0:99999:7::3:
账号三天后过期
-f<缓冲天数>:指定在密码过期后多少天即关闭该帐号;
useradd -f 4 han cat /etc/shadow |tail -n 1 han:!!:17548:0:99999:7:4::
过期4天后关闭该账户
-g<群组>:指定用户所属的群组,可以为组名,也可以为GID;(该组必须存在)
useradd -g yingyu han id han uid=503(han) gid=506(yingyu) groups=506(yingyu)
-G<群组>:指定用户所属的附加群组;
useradd -G yingyu han cat /etc/group |tail -n 2 yingyu:x:506:han han:x:507:
在yingyu组中添加han
-m:自动建立用户的登入目录;
useradd默认添加了-m的参数,所以我们用useradd创建用户都是自动在/home下创建一个同名的目录
-M:不要自动建立用户的登入目录;
-n:取消建立以用户名称为名的群组;
useradd -n han id han uid=503(han) gid=100(users) groups=100(users)
-r:建立系统帐号;
useradd -r han cat /etc/passwd |tail -n 1 han:x:496:493::/home/han:/bin/bash
(centos 6及之前的版本 < 500, centos 7 < 1000)
-s<shell>:指定用户登入后所使用的shell;
useradd -s /bin/sh han cat /etc/passwd |tail -n 1 han:x:503:507::/home/han:/bin/sh
useradd -s /sbin/nologin test 创建shell为不可交互式登录的用户
-u<uid>:指定用户id。
useradd -u 2018 han cat /etc/passwd |tail -n 1 han:x:2018:2018::/home/han:/bin/bash
参数
用户名:要创建的用户名。
usermod
usermod命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。
usermod(选项)(参数)
选项
-c<备注>:修改用户帐号的备注文字;
useradd -c nihao han cat /etc/passwd |tail -1 han:x:2019:2019:nihao:/home/han:/bin/bash usermod -c hello han cat /etc/passwd |tail -1 han:x:2019:2019:hello:/home/han:/bin/bash
把han用户的备注信息nihao改为hello
-d<登入目录>:修改用户登入时的目录;
usermod -d /home/qwe han cat /etc/passwd |tail -1 han:x:2019:2019::/home/qwe:/bin/bash
-e<有效期限>:修改帐号的有效期限;
[[email protected] ~]# cat /etc/shadow |tail -1 han:!!:17549:0:99999:7::: [[email protected] ~]# usermod -e 3 han [[email protected] ~]# cat /etc/shadow |tail -1 han:!!:17549:0:99999:7::3:
-f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
[[email protected] ~]# usermod -f 4 han [[email protected] ~]# cat /etc/shadow |tail -1 han:!!:17549:0:99999:7:4:3:
-g<群组>:修改用户所属的群组;
[[email protected] ~]# usermod -g yingyu han [[email protected] ~]# id han uid=2019(han) gid=506(yingyu) groups=506(yingyu)
-G<群组>;修改用户所属的附加群组;
[[email protected] ~]# usermod -G shuxue han [[email protected] ~]# id han uid=2019(han) gid=506(yingyu) groups=506(yingyu),2020(shuxue)
-l<帐号名称>:修改用户帐号名称;
[[email protected] ~]# usermod -l xiaoming han [[email protected] ~]# cat /etc/passwd |tail -1 xiaoming:x:2019:506::/home/qwe:/bin/bash [[email protected] ~]# id xiaoming uid=2019(xiaoming) gid=506(yingyu) groups=506(yingyu),2020(shuxue)
-L:锁定用户密码,使密码无效;
[[email protected] ~]# usermod -L xiaoming [[email protected] ~]# su lilei [[email protected] root]$ su xiaoming Password: su: incorrect password
-s<shell>:修改用户登入后所使用的shell;
[[email protected] ~]# usermod -s /bin/sh xiaoming [[email protected] ~]# cat /etc/passwd |tail -1 xiaoming:x:2019:506::/home/qwe:/bin/sh
-u<uid>:修改用户ID;
[[email protected] ~]# usermod -u 1995 xiaoming [[email protected] ~]# cat /etc/passwd |tail -1 xiaoming:x:1995:506::/home/qwe:/bin/sh
-U:解除密码锁定。
[[email protected] /home]# usermod -U xiaoming [[email protected] /home]# su lilei [[email protected] home]$ su xiaoming Password: [[email protected] home]$
userdel
userdel命令用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件。
语法
userdel(选项)(参数)
选项
-f:强制删除用户,即使用户当前已登录;[[email protected] ~]# userdel wangcai userdel: user wangcai is currently used by process 2727 [[email protected] ~]# cat /etc/passwd|tail -1 wangcai:x:2019:2021::/home/wangcai:/bin/bash [[email protected] ~]# userdel -f wangcai userdel: user wangcai is currently used by process 2727 [[email protected] ~]# cat /etc/passwd|tail -1 han:x:2018:2018::/home/han:/bin/bash
-r:删除用户的同时,删除与用户相关的所有文件。
[[email protected] ~]# ls /home/ lilei wangcai [[email protected] ~]# userdel -r lilei [[email protected] ~]# ls /home/ wangcai
刚才删除wangcai这个用户时没有加-r参数所以还保存有它的家目录,加-r用户lilei家目录就没了
参数
用户名:要删除的用户名。
其实也有最简单的办法,但这种办法有点不安全,也就是直接在/etc/passwd中删除您想要删除用户的记录;但最好不要这样做,/etc/passwd是极为重要的文件,可能您一不小心会操作失误。
二、组账号维护命令
groupadd
groupadd命令用于创建一个新的工作组,新工作组的信息将被添加到系统文件中。
语法
选项
-g:指定新建工作组的id;
[[email protected] ~]# groupadd -g 1243 yuwen [[email protected] ~]# cat /etc/group|tail -1 yuwen:x:1243:
-r:创建系统工作组,系统工作组的组ID小于500;
[[email protected] ~]# groupadd -r tiyu [[email protected] ~]# cat /etc/group|tail -1 tiyu:x:493:
组名:指定新建工作组的组名。
groupmod
groupmod命令更改群组识别码或名称。需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。
语法
groupmod(选项)(参数)
选项
-g<群组识别码>:设置要使用的群组识别码;
tiyu:x:493: [[email protected] ~]# groupmod -g 510 tiyu [[email protected] ~]# cat /etc/group|tail -1 tiyu:x:510:
-n<新群组名称>:设置欲使用的群组名称。
[[email protected] ~]# cat /etc/group|tail -1 tiyu:x:510: [[email protected] ~]# groupmod -n lishi tiyu [[email protected] ~]# cat /etc/group|tail -1 lishi:x:510:-o:重复使用群组识别码;
[[email protected] ~]# cat /etc/group|tail -1 lishi:x:510: [[email protected] ~]# groupmod -g 1243 lishi -o [[email protected] ~]# cat /etc/group|tail stapdev:x:158: tcpdump:x:72: screen:x:84: admins:x:502: sysadmins:x:504: yingyu:x:506: han:x:2019: shuxue:x:2020: yuwen:x:1243: lishi:x:1243:
参数
组名:指定要修改的工作的组名。
groupdel
groupdel命令用于删除指定的工作组,本命令要修改的系统文件包括/ect/group和/ect/gshadow。若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。
语法
groupdel(参数)
参数
组:要删除的工作组名。
[[email protected] ~]# cat /etc/group|tail -1 lishi:x:1243: [[email protected] ~]# groupdel lishi [[email protected] ~]# cat /etc/group|tail -1 yuwen:x:1243:
以上是关于Linux用户和组管理命令的主要内容,如果未能解决你的问题,请参考以下文章