1. 程式人生 > 其它 >Linux學習筆記--使用者檔案及許可權

Linux學習筆記--使用者檔案及許可權

I.使用者操作

I.1檢視使用者

'who am i','whoami','who -m'均可檢視(who的用法還有很多,具體可以用'who --help'指令瞭解)

I.2建立使用者

root許可權在Linux系統中有著至高無上的許可權,比如新建和新增使用者等。su <user>可以切換到使用者 user,執行時需要輸入目標使用者的密碼,sudo <cmd>可以以特權級別執行 cmd 命令,需要當前使用者屬於 sudo 組,且需要輸入當前使用者的密碼。su - <user>命令也是切換使用者,但是同時使用者的環境變數和工作目錄也會跟著改變成目標使用者所對應的。

新建一個叫lilei的使用者

sudo adduser lilei

使用者設定密碼後(Linux系統下密碼輸入是看不到任何內容的)的一些內容可以直接用回車設定為預設值。這個命令也會為使用者在/home目錄下建立一個工作目錄

使用新建的使用者登入時,用如下命令

su -l lilei

退出當前使用者可以用命令exit或者快捷鍵Ctrl+D

I.3使用者組

在 Linux 裡面每個使用者都有一個歸屬(使用者組),使用者組簡單地理解就是一組使用者的集合,它們共享一些資源和許可權,同時擁有私有資源,就跟家的形式差不多。我們可以通過以下方法來了解自己屬於哪些使用者組

方法一:使用groups命令

groups shiyanlou(‘shiyanlou’為使用者名稱稱)

每次新建使用者如果不指定使用者組的話,預設會自動建立一個與使用者名稱相同的使用者組。預設情況下在 sudo 使用者組裡的可以使用 sudo 命令獲得 root 許可權。shiyanlou 使用者也可以使用 sudo 命令,為什麼這裡沒有顯示在 sudo 使用者組裡呢?可以檢視下/etc/sudoers.d/shiyanlou檔案,我們在/etc/sudoers.d目錄下建立了這個檔案,從而給 shiyanlou 使用者賦予了 sudo 許可權。

方法二:檢視/etc/group檔案

cat /etc/group | sort

輸入命令後你可以看到一大堆輸出,在最下面可以看到shiyanlou的使用者組名稱

如果沒有找到,也可以用grep命令過濾一些結果

cat /etc/group | grep -E "shiyanlou"

I.4將其他使用者加入sudo使用者組

預設情況下新建立的使用者是不具有root許可權的,也不在sudo使用者組。可以讓其加入sudo使用者組從而獲得root許可權

使用usermod命令可以為使用者新增使用者組,同樣,使用該命令需要有root許可權

//此處命令為有root許可權的使用者輸入
groups dky sudo usermod
-G sudo dky groups dky
//“dky”為不具root許可權的使用者

然後切換到dky使用者,就可以用sudo命令獲得root許可權了

I.5刪除使用者和使用者組

刪除使用者的命令

sudo deluser lilei --remove-home

刪除使用者組可以用groupdel命令,如果該群組中仍有某些使用者,需要刪除掉這些使用者後才能刪除該群組

II.檔案許可權及操作

Unix/Linux 系統是一個典型的多使用者系統,不同的使用者處於不同的地位,對檔案和目錄有不同的訪問許可權。為了保護系統的安全性,Unix/Linux 系統除了對使用者許可權作了嚴格的界定外,還在使用者身份認證、訪問控制、傳輸安全、檔案讀寫許可權等方面作了周密的控制。

在 Unix/Linux 中的每一個檔案或目錄都包含有訪問許可權,這些訪問許可權決定了誰能訪問和如何訪問這些檔案和目錄

II.1檢視檔案許可權:

ls -l

最後一項是檔名,那麼其他項分別是什麼意思呢?

一個目錄同時具有讀許可權和執行許可權才可以開啟並檢視內部檔案,而一個目錄要有寫許可權才允許在其中建立其它檔案

II.2變更檔案所有者

切換到 dky 使用者,然後在 /home/dky目錄建立一個檔案,命名為iphone11

su - dky
pwd
touch iphone11//建立檔案
ls -alh iphone11

切換回lilei使用者,使用以下命令將檔案所有者改為lilei

# 需要切換到 lilei 使用者執行以下操作
cd /home/dky
ls iphone11
sudo chown lilei iphone11

II.3修改檔案許可權

如果你有一個自己的檔案不想被其他使用者讀、寫、執行,那麼就需要對檔案的許可權做修改。

方法一:

chmod 600 iphone11
ls -alh iphone11

方法二:

chmod go-rw iphone11

go還有u分別表示 group(使用者組)、others(其他使用者) 和 user(使用者),+-分別表示增加和去掉相應的許可權。