Linux用戶和組的屬性與許可權本章結構1.用戶賬號和組賬號概述2.用戶賬號和組賬號管理3.查詢賬號信息4.查看目錄或文件的屬性5.設置目錄或文件的許可權6.設置目錄或文件的歸屬 前言在linux中一切都是文件(文件夾和硬體設備是特殊的文件),如果有可能儘量使用文本文件。文本文件是人和機器能理解的文件, ...
Linux用戶和組的屬性與許可權
本章結構
1.用戶賬號和組賬號概述
2.用戶賬號和組賬號管理
3.查詢賬號信息
4.查看目錄或文件的屬性
5.設置目錄或文件的許可權
6.設置目錄或文件的歸屬
前言
在linux中一切都是文件(文件夾和硬體設備是特殊的文件),如果有可能儘量使用文本文件。文本文件是人和機器能理解的文件,也成為人和機器進行交流的最好途徑。由於所有的配置文件都是文本,所以你只需要一個最簡單的編輯器就可以修改。由於修改文本文件如此簡單,所以Linux系統本身肯定要加以規範。這就引出了用戶(組)和許可權這2個概念。而這2個概念的引入,完美的保證了Linux的安全性,同時沒有添加複雜性。由於一切皆為文件。所以Linux引入了3個文件來管理用戶(組), /etc/passwd存放用戶信息,/etc/shadow存放用戶密碼信息,/etc/group存放組信息,然後在文件系統中的每個文件的文件頭裡面添加了用戶和文件之間的關係信息。
一、用戶和組的信息查看
1.用戶:在Linux下,用戶分為三類:超級用戶(root)、普通用戶、程式用戶。
超級用戶:UID=0
程式用戶:Rhel5/6,UID=1-499; Rhel7,UID=1-999
普通用戶:Rhel5/6,UID=500-65535; Rhel7,UID=1000-60000
超級用戶有且只有一個,且不能被代替!
匿名用戶(nobody):普通用戶中許可權最小的
2.組:用戶許可權的集合稱為組
私有組:伴隨著用戶的創建而創建,與用戶同名
共有組:附加組 直接創建空組,可以添加已有用戶,給組設置許可權,該組中的所有用戶都具備此許可權。
3.UID和GID:用戶和組的標識號,具有唯一性
4.用戶賬號文件/etc/passwd:保存用戶名稱,宿主目錄,登錄shell等基本信息
用戶賬號文件 /etc/shadow:保存用戶的密碼,賬號有效期等信息
添加用戶賬號 useradd
-u:指定UID
-d:創建家目錄指定位置
-e:指定失效時間
-g:指定基本組
-G:指定共有組
-M:不創建家目錄
-s:指定可以從shell終端登錄
/sbin/nologin狀態下 用戶無法直接登錄和被切換登錄
用戶被鎖定狀態下 無法直接登錄,可以從root用戶切換登錄
passwd命令
-l:鎖定賬號
-u:解鎖賬號
-d:清除賬號
-S:查看賬號是否被鎖
不指定用戶名時,就是就該當前賬號的密碼!
usermod 修改用戶賬號的屬性
-u:指定UID
-d:創建家目錄指定位置
-e:指定失效時間
-g:指定基本組
-G:指定共有組
-M:不創建家目錄
-s:指定可以從shell終端登錄
-L:鎖定
-U:解鎖
userdel 刪除用戶賬號
-r 連用戶的宿主目錄一併刪除
用戶賬號的初始配置文件
新建用於賬號時,從 /etc/skel目錄中複製而來
主要的用戶初始配置文件
~/.bash_prolile
~/.bashrc
~/.bash_logout
隱藏文件
profile 環境變數 進入bash才被載入
bashrc 不進入bash就載入
組賬號文件
/etc/group:保存組賬號基本信息
/etc/gshadow:保存組賬號的密碼信息
groupadd:添加組賬號
gpasswd:添加刪除組成員命令
gpasswd -a:向組內添加一個用戶
gpasswd -d :從組內刪除一個用戶
gpasswd -M :定義組內成員列表,以逗號分隔
groupdel:刪除組賬號
查詢賬號信息
groups 查詢用戶所屬的組
id 查詢用戶身份標識
w、who、user命令:查詢已登錄到主機的用戶信息
二、文件、目錄的許可權和歸屬
1.訪問許可權
1)讀取r:允許查看文件內容、顯示目錄列表
2)寫入w:允許修改文件內容,允許在目錄中新建、移動、刪除文件或子目錄
3)可執行x:允許運行程式,切換目錄
2.歸屬(所有權)
1)屬主:擁有改文件或目錄的用戶賬號
2)屬組:擁有該文件或目錄的組賬號
-rwxr-xr-x. 1 root root 5343 8月 2 2017 znew
- 數據文件
d 目錄
l 連接文件
c 設備文件(字元)
b 塊設備文件
rwx r-x r-x 許可權
rwx 屬主許可權 (能讀能寫能執行)
r-x 屬組許可權內 (能讀不能寫能執行)
r-x 所有人許可權 other 其他 (能讀不能寫能執行)
root 屬主
root 屬組
5343 大小 單位:位元組
8月 2 2017 創建時間
普通數據文件不能執行,最高許可權666,文件夾的最高許可權777
設置文件和目錄的許可權chmod
chmod命令
chmod [ugoa] [+ - =] [rwx] 文件或目錄 或 chmod nnn 文件或目錄
u、g、o、a分別表示屬主、屬組、其它用戶、所有用戶
+、-、=分別表示怎家、去除、設置許可權
nnn表示3位8進位數
常用選項
-R:遞歸修改指定目錄下所有子項的許可權
設置文件和目錄的歸屬chown
chown命令
chown命令
chown 屬主 文件或目錄
chown :屬組 文件或目錄
chown 屬主:屬組 文件或目錄 或 chown 屬主.屬組 文件或目錄
常用選項
-R:遞歸修改指定目錄下所有文件、子目錄的歸屬
許可權掩碼umask
umask作用
控制新建的文件或者目錄的許可權
預設許可權去除umask的許可權就為新建的文件或者目錄的許可權
umask設置: umask 022
umask查看: umask
示例
將umask設為000,新建目錄或者文件,查看許可權
將umask設為022,新建目錄或者文件,再查看許可權
總結
Linux用戶和組的許可權去管理,內容不算多,就是有幾條新增的命令需要我們記憶。要註意的點就是使用gpasswd -M命令添加用戶到組內時,會覆蓋原有組內的用戶,所以這個命令最好是在空組下使用,一般我們都是用gpasswd -a 一個一個添加用戶,避免一些不必要的麻煩。第二點就是在文件、目錄的許可權和歸屬中,註意chomd nnn的使用,r=4,w=2,x=1
以簡便的方式設置用戶和組的許可權。