一、用戶操作
1、查看用戶
cut -d : -f 1 /etc/passwd # 輸出所有用戶名 cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1 # 輸出可登陸的用戶名 cat /ect/passwd # 輸出用戶信息
cut和cat是不同的命令。/etc/passwd文件每一行代表一個用戶,被冒號使用格式如下:
username:password:UserID:Group ID:comment:home directory:shell
分別代表用戶名、密碼、用戶ID(整數)、組ID(整數)、用戶說明、用戶登陸的主目錄、用戶登陸后執行命令。值得注意的是密碼現在不存這個文件了,改成 /etc/shadow 文件。
2、添加用戶
useradd -h # useradd命令幫助 useradd username # 添加一個用戶username useradd username -g groupname # 添加一個用戶並加入group組中,組不存在會報錯 useradd username -g groupname -s /bin/false # 創建不登陸的用戶 useradd username -g groupname -s /sbin/nologin # 創建不登陸的用戶 useradd mysql -g mysql -s /bin/false -r # 創建系統用戶,且不用登陸,系統用戶是不會創建用戶目錄的
添加用戶時的默認參數:

3、設置用戶密碼
passwd username # 設置用戶密碼
4、修改用戶
usermod -h # usermod命令幫助 usermod username -l username2 # 修改用戶username登陸名為username2 usermod username -l username2 -d /home/username2 -m # 修改用戶名、home目錄 usermod username -g groupname # 修改用戶組
小技巧:將系統用戶改為普通用戶
usermod username -s /bin/bash # 修改Shell mkdir /home/username # 創建用戶目錄,和/etc/passwd中的保持一致 cp /etc/skel/.bashrc /home/username/ # 環境變量文件,否則登陸時顯示 -bash-4.2$ cp /etc/skel/.bash_profile /home/username/ #環境變量文件,否則登陸時顯示 -bash-4.2$
5、刪除用戶
userdel -h # userdel命令幫助 userdel username # 刪除用戶,家目錄和郵箱目錄會被保留,再次創建該用戶時會報錯 userdel -r username # 刪除用戶,家目錄和郵箱目錄同步刪除
如果忘記使用-r參數,手工刪除/home和/var/spool/mail對應的目錄即可。
rm -rf /home/xxx # xxx代表用戶名 rm -rf /var/spool/mail/xxx
6、其它
su - username # 切換登陸用戶 last # 查看用戶登陸記錄
二、用戶組操作
1、查看用戶組
cut -d : -f 1 /etc/group # 列出用戶組名 cat /etc/group # 輸出用戶組文件內存
2、添加用戶組
groupadd -h # groupadd命令幫助 groupadd test # 添加test用戶組
3、修改用戶組
groupmod -h # groupmod命令幫助 groupmod test -n mytest # 將test用戶組改名為mytest
4、刪除用戶組
groupdel -h # groupdel命令幫助 groupdel test # 刪除test用戶組,組不存在會報錯
