一、用戶管理命令
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<有效期限>:修改帳號的有效期限;
[root@centos6 ~]# cat /etc/shadow |tail -1 han:!!:17549:0:99999:7::: [root@centos6 ~]# usermod -e 3 han [root@centos6 ~]# cat /etc/shadow |tail -1 han:!!:17549:0:99999:7::3:
-f<緩衝天數>:修改在密碼過期後多少天即關閉該帳號;
[root@centos6 ~]# usermod -f 4 han [root@centos6 ~]# cat /etc/shadow |tail -1 han:!!:17549:0:99999:7:4:3:
-g<羣組>:修改用戶所屬的羣組;
[root@centos6 ~]# usermod -g yingyu han [root@centos6 ~]# id han uid=2019(han) gid=506(yingyu) groups=506(yingyu)
-G<羣組>;修改用戶所屬的附加羣組;
[root@centos6 ~]# usermod -G shuxue han [root@centos6 ~]# id han uid=2019(han) gid=506(yingyu) groups=506(yingyu),2020(shuxue)
-l<帳號名稱>:修改用戶帳號名稱;
[root@centos6 ~]# usermod -l xiaoming han [root@centos6 ~]# cat /etc/passwd |tail -1 xiaoming:x:2019:506::/home/qwe:/bin/bash [root@centos6 ~]# id xiaoming uid=2019(xiaoming) gid=506(yingyu) groups=506(yingyu),2020(shuxue)
-L:鎖定用戶密碼,使密碼無效;
[root@centos6 ~]# usermod -L xiaoming [root@centos6 ~]# su lilei [lilei@centos6 root]$ su xiaoming Password: su: incorrect password
-s<shell>:修改用戶登入後所使用的shell;
[root@centos6 ~]# usermod -s /bin/sh xiaoming [root@centos6 ~]# cat /etc/passwd |tail -1 xiaoming:x:2019:506::/home/qwe:/bin/sh
-u<uid>:修改用戶ID;
[root@centos6 ~]# usermod -u 1995 xiaoming [root@centos6 ~]# cat /etc/passwd |tail -1 xiaoming:x:1995:506::/home/qwe:/bin/sh
-U:解除密碼鎖定。
[root@centos6 /home]# usermod -U xiaoming [root@centos6 /home]# su lilei [lilei@centos6 home]$ su xiaoming Password: [xiaoming@centos6 home]$
userdel
userdel命令用於刪除給定的用戶,以及與用戶相關的文件。若不加選項,則僅刪除用戶帳號,而不刪除相關文件。
語法
userdel(選項)(參數)
選項
-f:強制刪除用戶,即使用戶當前已登錄;[root@centos6 ~]# userdel wangcai userdel: user wangcai is currently used by process 2727 [root@centos6 ~]# cat /etc/passwd|tail -1 wangcai:x:2019:2021::/home/wangcai:/bin/bash [root@centos6 ~]# userdel -f wangcai userdel: user wangcai is currently used by process 2727 [root@centos6 ~]# cat /etc/passwd|tail -1 han:x:2018:2018::/home/han:/bin/bash
-r:刪除用戶的同時,刪除與用戶相關的所有文件。
[root@centos6 ~]# ls /home/ lilei wangcai [root@centos6 ~]# userdel -r lilei [root@centos6 ~]# ls /home/ wangcai
剛纔刪除wangcai這個用戶時沒有加-r參數所以還保存有它的家目錄,加-r用戶lilei家目錄就沒了
參數
用戶名:要刪除的用戶名。
其實也有最簡單的辦法,但這種辦法有點不安全,也就是直接在/etc/passwd中刪除您想要刪除用戶的記錄;但最好不要這樣做,/etc/passwd是極爲重要的文件,可能您一不小心會操作失誤。
二、組賬號維護命令
groupadd
groupadd命令用於創建一個新的工作組,新工作組的信息將被添加到系統文件中。
語法
選項
-g:指定新建工作組的id;
[root@centos6 ~]# groupadd -g 1243 yuwen [root@centos6 ~]# cat /etc/group|tail -1 yuwen:x:1243:
-r:創建系統工作組,系統工作組的組ID小於500;
[root@centos6 ~]# groupadd -r tiyu [root@centos6 ~]# cat /etc/group|tail -1 tiyu:x:493:
組名:指定新建工作組的組名。
groupmod
groupmod命令更改羣組識別碼或名稱。需要更改羣組的識別碼或名稱時,可用groupmod指令來完成這項工作。
語法
groupmod(選項)(參數)
選項
-g<羣組識別碼>:設置要使用的羣組識別碼;
tiyu:x:493: [root@centos6 ~]# groupmod -g 510 tiyu [root@centos6 ~]# cat /etc/group|tail -1 tiyu:x:510:
-n<新羣組名稱>:設置欲使用的羣組名稱。
[root@centos6 ~]# cat /etc/group|tail -1 tiyu:x:510: [root@centos6 ~]# groupmod -n lishi tiyu [root@centos6 ~]# cat /etc/group|tail -1 lishi:x:510:-o:重複使用羣組識別碼;
[root@centos6 ~]# cat /etc/group|tail -1 lishi:x:510: [root@centos6 ~]# groupmod -g 1243 lishi -o [root@centos6 ~]# 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(參數)
參數
組:要刪除的工作組名。
[root@centos6 ~]# cat /etc/group|tail -1 lishi:x:1243: [root@centos6 ~]# groupdel lishi [root@centos6 ~]# cat /etc/group|tail -1 yuwen:x:1243: