文章目錄
3. 系統操作(用戶&權限)
3.1 用戶管理
useradd 新建用戶
創建用戶,會同時發生以下幾件事(注意,要用root用戶創建,我這裏系統特殊):
- 會擁有用戶自己的家目錄(加-m參數)
- 會在/etc/passwd中記錄
- 會創建一個和用戶名同名的組
- id命令可以查看是否存在該用戶
id 用戶名
,若不指定用戶名,表示查看當前用戶 - 爲用戶定義密碼(修改密碼):passwd 用戶名
userdel 刪除用戶
- -r 刪除用戶時,也刪除其家目錄
注: 如果刪除不了用戶,可能是用戶未登出,多按幾下
Ctrl D
來登出,再刪除
- 如果沒加-r,保留的家目錄就是無主的,只有root用戶可以訪問。
- 如果一家刪除了用戶,還想刪除家目錄,也可以用
userdel -r
再次刪除
usermod 修改用戶賬戶信息
- -d 修改用戶家目錄位置
usermod -d 新路徑 用戶名
- chage 修改用戶賬戶信息
3.2 組管理
- 創建組
groupadd 組名
- 刪除組
groupdel 組名
- 修改用戶組
usermod -g 組名 用戶名
- 創建用戶時,指定組
useradd -g 組名 用戶名
3.3 su和sudo
- su 臨時用戶切換
- 切換用戶同時切換用戶環境(比如從根目錄切到該用戶家目錄)
su - 用戶名
- sudo 以其他用戶身份執行命令
- 修改sudo權限:
visudo
點擊這裏查看nano用法
另: 個人用vim比較習慣,可以看到上面顯示了文件名
/etc/soduers.tmp
,去這個路徑下找到這個文件(實際名爲/etc/soduers
),然後用vim修改。
用戶名 登錄主機=(可以使用的命令) 是否需要輸入密碼
- 如果是用戶組,前面要加%
- 如果是字符終端,爲localhost。如果希望遠程登錄,用ALL
- 多條命令,可用逗號隔開
忘了命令的路徑,可用: !which 命令名
在vim中查找
- DEMO: 賦予xiaoming用戶在遠程終端上阻止關機的權限
在文件末尾添加一行
xiaoming ALL=/sbin/shutdown -c
3.4 用戶與組配置文件介紹
/etc/passwd
保存用戶和用戶配置相關信息
- 用戶名:是否需要密碼驗證:uid:gid:註釋:家目錄位置:用戶登錄的命令解釋器
- 密碼驗證:需要:x,不需要:空着
- uid:如果重複,以小的爲準,比如將xiaowang的uid修改爲0,則切換爲xiaowang時,雖然顯示爲xiaoming,實則爲root用戶。
nologin表示該用戶不能登錄終端
/etc/shadow
包含用戶和密碼相關信息
- 用戶名:密碼(密碼是加密過的,即使相同密碼,結果也不一樣)
/etc/group
- 組名:是否需要密碼驗證:gid:用戶名
pi用戶是屬於pi組的,上面這個的意思是,pi同時屬於sudo組
3.5 文件權限
3.5.1 文件類型
類型 | 說明 |
---|---|
- | 普通文件 |
d | 目錄文件 |
b | 塊特殊文件(就是設備,比如插入一個硬盤) |
c | 字符特殊文件(終端) |
l | 符號鏈接 |
f | 命名管道 |
s | 套接字文件 |
3.5.2 權限介紹
- 對於文件來說,rwx對應可讀、可寫、可操作
- 對於目錄來說。r表示是否可以讀取目錄內容,如ls;w表示是否可以增刪改目錄內容,如rm;x表示是否可以進入目錄,如cd。
- 前三個:屬主權限
- 中間三個:屬組權限
- 後三個:其他用戶權限
- 數字權限的表示方法:r=4, w=2, x=1
- 數字表示方法,很像一個古老的思維遊戲:分金塊。分金塊的邏輯就是二進制。
- vim並不是真正的寫入文件,它是複製了一個
.文件名.swp
文件,對其進行操作,然後在保存時替換原文件。所以測試rwx時,不要用vim。可以用echo寫入文件。echo 內容 > 文件路徑
覆蓋寫入。echo 內容 >> 文件路徑
追加寫入。- 創建文件有默認權限,根據umask值計算(666-umask計算),屬主/組根據當前進程的用戶設定
3.5.3 修改權限
權限是管不住root用戶的,不要拿root用戶做測試
-
chmod 修改文件、目錄權限(有兩種方法)
chmod u+x 文件路徑
chmod 755 文件路徑
修改屬主u、屬組g、其它o,都修改a。
屬主增加寫權限:u+w
屬主減少寫權限:u-w
屬主等於全權限:u=rwx
-
chown 更改屬主、屬組
chown 屬主名 文件路徑
更改文件屬主
chown :屬組名 文件路徑
更改文件屬組
chown 屬主名:屬組名 文件路徑
更改文件屬主、屬組 -
chgrp 單獨更改屬組(不常用)
chgrp 屬組名 文件路徑
更改文件屬組
注意: 如果屬主屬於屬組,並且權限衝突,以屬主爲準。
3.5.4 特殊權限
以下權限不建議手動制定,保持系統默認即可
SUID
用於二進制可執行文件,執行命令時取得文件屬主權限(特點:屬主的x變爲s)
如:/usr/binpasswd
定義:chmod 4xxx 文件路徑
來定義,x處是數字SGID
用於目錄(一般用於共享),在該目錄下創建新的文件和目錄,權限自動更改爲該目錄的屬組(特點:屬組的x變爲s)
定義:chmod 2xxx 文件路徑
來定義,x處是數字SBIT
用於目錄,該目錄下新建的文件和目錄,僅root用戶和自己可刪除(特點:其它的x變爲t)
如:/tmp
定義:chmod 1xxx 文件路徑
來定義,x處是數字