一. 用戶和組的管理
- Linux中用戶種類
種類 特點
root 是管理員,擁有至高無上的權限,不受限制,UID為0
普通用戶 管理員創建的用戶,受權限限制,UID一般從500開始,可以登錄系統
程序用戶 安裝應用程序,系統創建的,一般UID小於500,一般不可以登錄系統,shell一般是/sbin/nologin
Linux中組的種類:
種類 特點
基本組(私有組) 一個用戶只有一個私有組,當用戶創建目錄和文件的時候,目錄和文件默認的屬組是基本組
附加組(公共組) 用戶可以有多個附加組
用戶的管理:
/etc/passwd #存放了用戶的信息
/etc/shadow #存放了用戶的密碼信息等
添加用戶賬號
useradd命令
useradd [選項]... 用戶名
-u:指定 UID 標記號
-d:指定宿主目錄,缺省為 /home/用戶名
-e:指定帳號失效時間
-g:指定用戶的基本組名(或UID號)
-G:指定用戶的附加組名(或GID號)
-M:不為用戶建立並初始化宿主目錄
-s:指定用戶的登錄Shell
設置/更改用戶口令
passwd命令
passwd [選項]... 用戶名
-d:清空用戶的密碼,使之無需密碼即可登錄
-l:鎖定用戶帳號
-S:查看用戶帳號的狀態(是否被鎖定)
-u:解鎖用戶帳號
修改用戶賬號的屬性
usermod命令
usermod [選項]... 用戶名
-l:更改用戶帳號的登錄名稱
-L:鎖定用戶賬戶
-U:解鎖用戶賬戶
以下選項與useradd命令中的含義相同
-u、-d、-e、-g、-G、-s
刪除用戶賬號
userdel命令
userdel [-r] 用戶名 #添加 -r 選項時,表示連用戶的宿主目錄一並刪除
用戶第一次登陸必須更改密碼
chage -d 0 用戶名
2.組的管理:
/etc/group #保存組賬號基本信息
/etc/gshadow #保存組賬號的加密密碼信息,很少用
添加組賬號
groupadd命令
groupadd [-g GID] 組帳號名
添加刪除組成員
gpasswd命令
用途:設置組帳號密碼(極少用)、添加/刪除組成員
gpasswd [選項]... 組帳號名
-a:向組內添加一個用戶
-d:從組內刪除一個用戶成員
-M:定義組成員列表,以逗號分隔
刪除組賬號
groupdel命令
groupdel 組帳號名
查詢賬號信息:
id命令
用途:查詢用戶身份標識
格式:id [用戶名]
groups命令
用途:查詢用戶所屬的組
格式:groups [用戶名]
finger命令
用途:查詢用戶帳號的詳細信息
格式:finger [用戶名]
users、w 、who命令
用途:查詢已登錄到主機的用戶信息
二. 文件和目錄的屬性:屬主、屬組、權限
文件/目錄的權限和歸屬
A. 訪問權限
讀取r:允許查看文件內容、顯示目錄列表
寫入w:允許修改文件內容,允許在目錄中新建、移動、刪除文件或子目錄
可執行x:允許運行程序、切換目錄
B. 歸屬(所有權)
屬主:擁有該文件或目錄的用戶帳號
屬組:擁有該文件或目錄的組帳號
ls -l 執行命令後得結果分析
第一個字符:表示文件或目錄的類型,可以是d(目錄)、b(塊設備文件)、c(字符設備文件),減號“-”(普通文件)、字母“l”(鏈接文件)等。
第2-4個字符:表示屬主的權限
第5-7個字符:表示屬組的權限
第8-10個字符:表示其它人的權限
Linux中基本權限分為r(4)、w(2)、x(1)
查看文件/目錄的權限和歸屬
---------------------------------------------------------------------------------
| 權限項 | 讀 | 寫 | 執行 | 讀 | 寫 | 執行 | 讀 | 寫 | 執行 |
---------------------------------------------------------------------------------
|字符表示| r | w | x | r | w | x | r | w | x |
---------------------------------------------------------------------------------
|數字表示| 4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 |
---------------------------------------------------------------------------------
|權限分配| 文件所有者 | 文件所屬組 | 其他用戶 |%2
設置文件和目錄的權限
chmod命令
格式1:chmod [ugoa] [+-=] [rwx] 文件或目錄...
格式2:chmod nnn 文件或目錄...
常用命令選項
-R:遞歸修改指定目錄下所有子項的全新
設置文件和目錄的歸屬
chown命令
格式:chown 屬主 文件或目錄
chown :屬組 文件或目錄
chown 屬主:屬組 文件或目錄
常用命令選項
-R:遞歸修改指定目錄下所有文件、子目錄的歸屬
用戶賬號的初始配置文件
文件來源
新建用戶帳號時,從/etc/skel 目錄中復制而來
主要的用戶初始配置文件
~/.bash_profile:用戶每次登錄時執行
~/.bashrc:每次進入新的Bash環境時執行
~/.bash_logout:用戶每次退出登錄時執行
A.Umask 可以設置新建文件、目錄時的默認權限,(默認權限 = 現有默認權限 - 權限掩碼)
Umask [權限掩碼]
B.附加權限
a)Set位權限:給可執行的程序或腳本文件設置。 SUID----4, SGID----2
執行文件設置了set後,任何用戶在執行該文件時,獲得該文件屬主、屬組賬號對應的身份。
比如普通用戶無法修改/etc/shadow文件,但是卻可以修改自己的密碼,因為/usr/bin/passwd設置了set權限。
ll /usr/bin/passwd
例: cp /bin/mkdir /tmp/mymkdir
Chmod u+s /tmp/mymkdir
ll /tmp/mkdir
切換到其他用戶,/tmp/mymkdir 創建文件(宿主目錄下),發現屬主為root。而mkdir屬主為自己
b)粘滯位:用於為目錄設置特殊的附加權限,當目錄被設置了粘滯位權限以後,即便用戶對該目錄寫入權限,也不能刪除該目錄中其他用戶的文件數據。例 /tmp , /var/tmp
例: 在/tmp中,使用用戶aa創建文件,使用用戶bb刪除不了
[root@localhost ~]# su - vanko
[vanko@localhost ~]$ cd /tmp/
[vanko@localhost tmp]$ mkdir vanko
[vanko@localhost tmp]$ ls -ltr
total 4
drwxrwxr-x 2 vanko vanko 4096 Jan 8 10:09 vanko
[root@localhost ~]# su - xu
[xu@localhost ~]$ cd /tmp
[xu@localhost tmp]$ mkdir xu
[xu@localhost tmp]$ ls -ltr
total 8
drwxrwxr-x 2 vanko vanko 4096 Jan 8 10:09 vanko
drwxrwxr-x 2 xu xu 4096 Jan 8 10:09 xu
[xu@localhost tmp]$ rm -rf vanko
rm: cannot remove `vanko': Operation not permitted
[xu@localhost tmp]$ rm -rf xu
對於用戶和權限我就寫了這麼多,還有其它方面沒有注意到了,還請多多保函!!!