[toc] linux用戶管理 用戶的基本操作 什麼是用戶 用戶指能夠正常登錄linux或windows系統 區別 本質都是登錄系統的,只不過Linux支持多用戶同時登錄,windows預設不支持,但是修改 的情況下也是可以多用戶登錄的。 linux下用戶有什麼作用 系統的每一個進程(運行的進程)都 ...
目錄
linux用戶管理-用戶的基本操作
什麼是用戶
用戶指能夠正常登錄linux或windows系統
區別
本質都是登錄系統的,只不過Linux支持多用戶同時登錄,windows預設不支持,但是修改組策略
的情況下也是可以多用戶登錄的。
linux下用戶有什麼作用
系統的每一個進程(運行的進程)都需要特定的用戶運行
每一文件都有特定的用戶擁有,所以訪問一個文件或目錄收到目錄的限制
進程能夠以何種方式訪問某一個文件或目錄,與進程所關聯的用戶有關
如何查看中所存在的用戶
1.查看當前系統用戶信息
[root@db04 ~]# id
uid=0(root) gid=0(root) 組=0(root)
[root@db04 ~]# id zls
uid=602(zls) gid=602(zls) 組=602(zls)
2.每一個文件都有所有者
[root@db04 tmp]# ll
總用量 12
drwxr-xr-x 2 zls zls 4096 6月 2 20:44 zls
drwxr-xr-x 2 oldboy oldboy 4096 6月 2 20:44 oldboy
drwxr-xr-x 2 student student 4096 6月 2 20:44 student
3.每一個進程都有用戶運行
[root@db04 ~]# ps -ef|less
用戶相關配置文件
/etc/passwd 賬戶文件
/etc/shadow用戶密碼文件
用戶的分類
用戶UID | 系統中約定的含義 |
---|---|
0 | 超級管理員(擁有最高許可權) |
1-200 | 系統用戶,由系統分配給系統進程使用 |
201-999 | 系統用戶,用來運行服務賬戶,不需要登陸系統(動態分配) |
1000+ | 常規普通用戶 |
註意: 在CentOS7系統之前, UID1-499用於系統用戶, 而UID 500+則用於普通用戶
用戶相關的命令
useradd usermod userdel
useradd 和sdduser這兩個命令,來創建用戶
添加用戶需要確定
- 確定用戶的預設組是否有特殊要求
- 確定用戶是否允許登陸
- 確定用戶的密碼策略
- 確定用戶的有效期
- 確定用戶的uid是否有特殊要求
1.使用useradd命令新增用戶,註意:adduser命令軟鏈接指向useradd命令
'-u' 指定用戶的UID,不能和現有ID衝突
'-g' 指定用戶用戶預設基本組
'-G' 指定用戶附加組,用逗號隔開添加多個附加組
'-d' 指定用戶家目錄
'-c' 指定用戶註釋信息
'-M' 不建立家目錄
'-s' 指定用戶預設shell
'-r' 創建系統賬戶, 沒有家目錄
'-a' 附加組,都留下,配合-G,追加
//創建zls用戶,指定UID5001,基本組students 附加組sa,dba 註釋信息:one newB user, 登陸的shell:/bin/bash
[root@zls ~]# groupadd sa
[root@zls ~]# groupadd dba
[root@zls ~]# groupadd students
[root@zls ~]# useradd -u 5001 -g students -G sa,dba -c "one newB user" -d /home/zls -s /bin/bash zls
[root@zls ~]# tail -1 /etc/passwd
zls:x:5001:505:one newB user:/home/zls:/bin/bash
//創建系統用戶,不建立用戶家目錄 指定nologin使其用戶無法登陸系統
[root@zls ~]# useradd mysql -M -s /sbin/nologin
[root@zls ~]# useradd -r dba -s /sbin/nologin
2.使用usermod命令修改用戶組
'-u' 修改用戶的UID
'-g' 修改用戶所屬的基本組GID
'-G' 修改用戶附加組, 使用逗號隔開多個附加組, 覆蓋原有的附加組
'-a' 追加更多的附加組, 必須和-G使用: -aG 追加附加組
'-m' 家目錄遷移, 必須和-d一起使用, 移動用戶的家目錄到新的位置
'-d' 指定用戶的家目錄新位置
'-c' 修改用戶的註釋信息
'-s' 更改用戶使用的shell
'-l' 更改用戶登錄名
'-L' 鎖定用戶
'-U' 解鎖用戶
[root@zls ~]# grep "zls" /etc/passwd
zls:x:5001:505:2018 new student:/home/zls:/bin/bash
//修改用戶uid,gid, 附加組, 註釋信息, 用戶家目錄, 登錄shell, 登錄名
//建立組,指定組gid
[root@zls ~]# groupadd -g 5008 network_sa
[root@zls ~]# groupadd -g 5009 devops
//修改用戶屬性
[root@zls ~]# usermod -u 6001 -g5008 -a -G 5009 -c "2019 new student" -md /zls -s /bin/sh -l zls_zls zls
//檢查是否修改成功
[root@zls ~]# grep "zls" /etc/passwd
zls_zls:x:6001:5008:2019 new student:/zls:/bin/sh
[root@zls ~]# id zls_zls
uid=6001(zls_zls) gid=5008(network_sa) groups=5008(network_sa),503(sa),504(dba),5009(devops)
//驗證家目錄
[root@zls ~]# ll -d /zls
drwx------. 2 zls_zls network_sa 4096 2014-09-23 00:13 /zls
鎖定用戶
[root@zls ~]# echo "123" |passwd --stdin zls_zls
[root@zls ~]# usermod -L zls_zls
//無法正常登錄系統
➜ ~ ssh [email protected]
[email protected]'s password:
Permission denied, please try again.
解鎖用戶
[root@zls ~]# usermod -U zls_zls
//正常登錄系統
➜ ~ ssh [email protected]
[email protected]'s password:
Welcome to Aliyun Esc Linux
-sh-4.1$