linux群組的作用是方便歸類和管理使用者;在linux中,我們是需要一個使用者來登入伺服器裡面,然後再做相關的操作,並且每個使用者擁有一個主群組,同時還可以擁有多個附屬組。
本教學操作環境:linux5.9.8系統、Dell G3電腦。
linux 群組的作用是什麼?
#前言
使用者的身分在我們平時就很常見,例如我們要登入百度網盤,qq都是以一個使用者的身分進行登入,那麼在Linux系統中也一樣,我們也是需要一個使用者來登入伺服器裡面,然後再做相關的操作,一個行程也需要以一個使用者的身分運作。
使用者分類
root使用者(根使用者、管理者帳號、超級使用者) (root使用者的id為0)
系統使用者 UID:1-999(centos7版本)
一般使用者 UID:1000
使用id指令都可以顯示目前使用者的資訊
使用passwd指令可以修改目前使用者密碼
#和使用者相關聯的四個檔案
/ect/passwd #儲存使用者資訊
/ect/shadow #儲存使用者密碼
/ect/group #儲存群組資訊
/etc/gshadow #儲存群組的密碼資訊
#/etc/passwd欄位的作用
#如:root:x:0:0:root:/root:/bin/bash
1.root:使用者名稱
2.x:密碼佔位符號
3.0:UID
4.0:GID
5.root:使用者描述
6./root:使用者主目錄
7./bin/bash:登陸後使用的shell
##/etc/shadow欄位作用
如:root:I.m1XoRd0W8Pc7C. .......Phodj8ZM1: :0:99999:7: : :
1 root: 使用者名稱
2 I.m..M1: 加密後的密碼
3 最近修改密碼的日期
4 0:密碼不能更改的天數,0表示隨時可以修改
5 99999:密碼過期時間
6 7:密碼需要更改期限到來前7天發出警告
7 寬限天數,密碼過期幾天後還能改密碼
8 帳號過期時間
9 保留
#useradd建立使用者
指令:useradd
語法:useradd 使用者名稱
#範例:useradd zhangsan
#建立使用者的另一個指令
adduser 使用者
#建立使用者執行的動作
1.在/etc/passwd中新增使用者資訊
2.如果使用passwd指令建立密碼,則將密碼加密儲存在/etc/shadow中
3.為使用者建立一個新的家目錄/home/zhangsan
4.將/ect/skel中的檔案複製到使用者的家目錄中
5.建立一個與使用者名稱相同的群組,新使用者預設屬於這個同名群組
#常用參數
-c:註解
-d:指定家目錄
-M:不建立使用者的主目錄
-s:指定shell
-u:指定使用者id
-g:指定屬於的群組
-G:指定屬於多個群組
-m:建立家目錄
-D:附屬群組
man useradd #查看更多幫助
#範例
1、指定shell建立
[root@centos7 ~]# useradd -s /bin/bash test
[root@centos7 ~]# cat /etc/passwd|grep test
test:x:1001:1001::/home/test:/bin/bash
設定密碼
[root@centos7 ~]# passwd test
[root@centos7 ~]# useradd -u 1005 test1
[root@centos7 ~]# cat /etc/passwd|grep test1
test1:x:1005:1005::/home/test1:/ bin/bash
[root@centos7 ~]# groupadd sales
[root@centos7 ~]# useradd -g sales test20
[root@centos7 ~ ]# id test20
uid=1009(test20) gid=1007(sales) groups=1007(sales)
[root@centos7 ~]# useradd - G sales,tech test3
[root@centos7 ~]# id test3
uid=1007(test3) gid=1009(test3) groups=1009(test3),1006(sales),1008(tech)
#usermod修改使用者資訊語法:usermod 參數username
-l 新使用者名稱
-u 新userid
-d 使用者家庭目錄位置
-g 使用者所屬主群組
-G 使用者所屬附屬群組
-L 鎖定使用者使其無法登陸
-U 解除鎖定
-f 強制
#範例
1、修改使用者UID[root@centos7 ~]# id test
uid=1001(test) gid=1001(test) groups=1001(test)
[root@centos7 ~]# usermod -u 1300 test
[root@centos7 ~]# id test
uid=1300(test) gid=1001(test) groups= 1001(test)
2、修改shell
[root@centos7 ~]# usermod -s /sbin/nologin test
[root@centos7 ~]# cat /etc/passwd|grep test
test:x: 1300:1001::/home/test:/sbin/nologin
3、更改使用者主目錄
[root@centos7 ~]# mkdir /data
[root@centos7 ~]# usermod -m -d /data/test test
-m:會自動建立新目錄並且移動內容到新目錄裡面
#userdel刪除用戶
語法:userdel 用戶名
選項:-r:同時刪除用戶的家目錄
範例
userdel test 刪除test用戶
userdel test1 刪除test1用戶
userdel -r test2 #刪除test2用戶同時刪除使用者的家目錄
#關於使用者的幾個目錄檔案
#1./etc/skel目錄
/etc/skel目錄是用來存放新使用者設定檔的目錄,當我們新增使用者時,這個目錄下的所有檔案會自動被複製到新新增的使用者的家目錄下:預設情況下,/etc/skel目錄下的所有檔案都是隱藏檔案(以.點開頭的文件);透過修改、新增、刪除/etc/skel目錄下的文件,我們可為新建立的使用者提供統一的、標準的、初始化使用者環境。
#查看/etc/skel檔案目錄的內容
#2./etc/login.defs:用來定義建立使用者時需要的一些使用者的設定訊息,如建立使用者時是否需要家目錄,UID和GID範圍,使用者及密碼的有效期限等
3./etc/default/useradd檔案:是在使用useradd新增使用者時的一個需要呼叫的一個預設的設定文件,可以使用“useradd -D 參數”,這樣的命令格式來修改檔案裡的內容。
查看檔案的預設內容
幾乎所有作業系統都有群組的概念,透過群組,我們可以更方便的歸類、管理使用者。
一.每個群組有一個群組ID
二.群組資訊保存在/etc/group中
三.每個使用者擁有一個主群組,同時還可以擁有多個附屬群組
#群組的創建,修改,刪除
groupadd:建立群組
語法:groupadd 群組名稱
groupmod:修改群組資訊
語法:groupmod -n newname 原來群組名稱
groupdel:刪除群組
語法:groupdel 群組名稱
#範例
1、建立群組
[root@centos7 ~]# groupadd sales1
[root@centos7 ~]# groupadd sales2
[root@centos7 ~]# tail -n 2 /etc/group
sales1:x:1110:
sales2:x:1111:
2、修改群組資訊
#將sales1的群組名稱修改成newsales
[root@centos7 ~]# groupmod -n newsales sales1
[root@centos7 ~]# tail -n 1 /etc/ group
newsales:x:1110:
3、刪除群組
[root@centos7 ~]# groupdel sales2
[root@centos7 ~]# cat /etc/group|grep sales2
#指令小結
1.w :顯示有哪些使用者已經登入並且在做什麼
2.who :顯示有哪些使用者已經登入系統
3. whoami :顯示目前使用者
4.id :檢視使用者
5.useradd :新增使用者
6.userdel :刪除使用者
7.usermod :修改使用者資訊
8.passwd :設置密碼
9.groupadd :新增群組
10.groupmod :修改群組資訊
11.groupdel :刪除群組
推薦學習:《linux影片教學》
以上是linux 組的作用是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!