使用者以及檔案許可權管理
檢視使用者
$ who am i
# 或者
$ who mom likes
輸出的第一列表示開啟當前終端的使用者的使用者名稱。如果你想獲取當前登入使用者的使用者名稱,可以取消空格用whoami
命令就可以直接獲取。
$ whoami
為了不汙染本地環境的內容,下面的實驗在實驗樓完成。大家可以無需安裝Linux環境,直接在這個網站操作,相當便利的一個學習網站。
建立使用者
在Linux系統裡,root 帳戶擁有整個系統至高無上的權利。它可以改動系統的核心元件,如果自己使用root帳戶,有可能不小心將系統的某些關鍵檔案刪除,以致系統崩潰。而且,長期使用root使用者會增加你的電腦被別有用心的人攻擊的可能性。所以,大部分的Linux系統在安裝時都會建議使用者新建一個使用者而不是直接 使用root使用者進行登入。
現在我們新建一個使用者。
$ sudo adduser lilei
然後輸入確認密碼,其它都可以直接預設。這樣我們就建立了一個名為 lilei 的使用者。
這個命令不但可以新增使用者到系統,同時也會預設為新使用者在 /home
目錄下建立一個工作目錄
我們使用ls /home
檢視home目錄下的內容,發現確實有 lilei 目錄的存在。
現在我們已經有 lilei 這個使用者了,我們可以使用下面這條命令進行登入。
$ su -l lilei
輸入密碼,我們就可以使用lilei這個使用者了。下面驗證一下。
我們可以看到,who am i
輸出的使用者依然是shiyanlou
,而whoami
輸出的使用者已經變成了lilei
。
因為開啟這個終端的依舊是shiyanlou
,但是當前登入的使用者是lilei
。
使用者組
在Linux裡面每一個使用者都有一個使用者組,使用者組就是一組使用者的集合,它們可以共享一些資源和許可權,同時擁有私有資源和許可權。
可以把它理解成 類的 protected
屬性 和 private
屬性。
有兩種方式可以檢視自己屬於哪些使用者組。
方法一:使用 groups 命令
$ groups shiyanlou
其中冒號之前表示使用者,後面表示使用者所屬的使用者組。可以看到 shiyanlou 使用者屬於 shiyanlou 使用者組,每次新建使用者如果不指定使用者組的話,預設會自動建立一個與使用者名稱相同的使用者組。
*方法二:檢視/etc/group
檔案 *
$ cat /etc/group | grep "shiyanlou"
/etc/group
的內容包換使用者組(Group)、使用者組口令、GID(組ID)及該使用者組所包含的使用者(User),每個使用者組一條記錄。
$ group_name:password:GID:user_list
這裡的 password 欄位是一個x,表示密碼不可見。
這裡需要注意,如果使用者的GID等於使用者組的GID,那麼user_list
就是空的。比如 shiyanlou 使用者的使用者組是 shiyanlou, 那麼在 /etc/group
中的 shiyanlou 使用者組後面不會顯示。
將其它使用者加入 sudo 使用者組
預設情況下新建立的使用者是沒有 root 許可權的,也不在 sudo 使用者組,但是我們可以讓其加入 sudo 使用者組從而獲取 root 許可權。
$ sudo usermod -G sudo lilei
可以看到,此時 lilei 已經是 sudo 組的使用者了。
刪除使用者和使用者組
$ sudo deluser lilei --remove-home
使用 --remove-home
引數刪除使用者會將該使用者的工作目錄一併刪除。如果不使用系統會保留該工作目錄。
刪除使用者組可以使用 groupdel
命令,但是必須先刪除這個使用者組下的所有使用者後,否則刪除失敗。
檢視檔案許可權
相信 ls
這個命令大家已經不陌生了,它可以列出並顯示當前目錄下的檔案。
使用較長格式列出檔案:
$ ls -l
這裡是每一列所代表的含義。
檔案型別和許可權
列出所有檔案,包括隱藏檔案
$ ls -a
其它常用命令
- 檢視某一個目錄的完整屬性,而不是顯示目錄裡面的檔案屬性
$ ls -dl <目錄名>
- 顯示所有檔案大小
$ ls -asSh
變更檔案所有者
現在我們在lilei這個使用者建立一個iphone11的檔案
可以看到這個檔案是所有者是 lilei。我們可以使用 chown
來改變檔案的所有者
$ sudo chown shiyanlou:shiyanlou <檔名>
可以看到這時 iphone11 這個檔案的所有者是 shiyanlou 這個使用者了。
修改檔案許可權
每個檔案有三組固定的許可權,分別對應擁有者,所屬使用者組,其他 使用者。 檔案的讀寫執行對應字母rwx
。用十進位制表示。讀為4,寫為2,執行為1。
當然也可以使用加減賦值操作。g、u、o分別分別表示 group(使用者組)、user(使用者)和others(其他使用者)。+ 和 - 分別表示增加和去除相應的許可權。
有時候我不想除了我之外的人讀取寫入操作檔案,我們可以使用 chmod
命令來修改檔案許可權。
方式一:
$ chmod 600 <檔名>
方式二:
$ sudo chmod go-rw <檔名>
本作品採用《CC 協議》,轉載必須註明作者和本文連結