Linux 詳解檔案許可權,檔案屬性,系統優化
阿新 • • 發佈:2021-12-15
1.許可權
某一個使用者針對某一個檔案的許可權。 1、許可權分為3個部分 可讀(r) 可寫(w) 可執行(x) (執行指令碼 == 執行指令碼) 沒有對應許可權(-) 2、許可權位 drwxr-xr-x 拋開第一個d是檔案型別,剩下的9個每3個為一組 許可權位主要分為三個部分,分別是屬主、屬組以及其他人 rwx : 屬主 r-x : 屬組 r-x : 其他人 r可讀 w可寫 x可執行 (這三個順序一般情況下是不會變的.有且僅有以下幾種可能: ---,r--,rw-,r-x,rwx) 3、每一個許可權擁有一個數字編號 可讀(r) : 4 可寫(w) : 2 可執行(x) : 1 沒有對應許可權(-) : 0 在新增許可權的時候,可以將許可權加起來 屬主 : 可讀可寫可執行 屬組 :可讀可寫 其他人:沒有任何許可權 rwxrw---- 等價於 760 5、新增許可權 ①.先建立一個檔案: touch index ②.新增許可權命令: chmod 格式: chmod [引數] [許可權表示式] [操作物件] 引數: -R : 遞迴增加許可權 6、許可權的歸屬 屬主:u 屬組:g 其他人:o 案例: 案例1:將index檔案新增屬主 : 可讀可寫可執行、屬組 :可讀可寫、其他人:沒有任何許可權 chmod 760 index 案例2:將test目錄下的所有檔案設定rwxr--r-- 準備一個資料夾,建立10個txt檔案: mkdir test echo {1..10}.txt | xargs touch 實施: chmod -R 744 test/ 案例3:將index這個檔案的屬組增加一個可執行許可權。 chmod g+x index 如果對多個許可權位有多個操作可以用逗號隔開,例如: 同時給index這個檔案的其他人增加一個可讀許可權 chmod g+x,o+r index 或者給index這個檔案的屬組增加可讀可寫可執行,並將其他人的可讀許可權取消 chmod g+rwx,o-r index 7、測試許可權對於使用者的意義 1、普通使用者是嚴格遵守許可權的 2、root使用者是高於許可權(擁有任何許可權) 3、許可權需要重新登才生效(su和su - 都可以) 8、許可權對於目錄的意義 1、檔案可讀,路徑的最小許可權是必須擁有可執行許可權。 2、檔案可寫,路徑的最小許可權是必須擁有可執行許可權。 3、檔案可執行,路徑的最小許可權是必須擁有可讀可執行許可權。 9、建立檔案的預設許可權,建立資料夾的預設許可權是從哪裡來的 在Linux中,常用的檔案的許可權是666, 目錄的許可權是777。 vim /etc/profile 開啟profile 裡面可以看到判斷umask值的條件 if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then umask 002 else umask 022 fi 可以看出: root使用者的umask : umask 022 普通使用者的umask : umask 002 1、檔案的許可權(666)是跟umask 值相減,遇到奇數加一;遇到偶數則不變。 2、資料夾的許可權(777)只要跟 umask 值相減即可。 預設檔案許可權:644 預設的資料夾許可權:755 儲備知識: Linux中的符號 && 類似python中的 and 並且 || 類似python中的 or 或者 假如umask為 : 123 那麼檔案許可權 : 644 檔案目錄許可權 : 654 10、檢視檔案屬性資訊的命令: stat 檔名 簡單的介紹一下stat命令顯示出來的檔案其他資訊: - File:顯示檔名 - Size:顯示檔案大小 - Blocks:檔案使用的資料塊總數 - IO Block:IO塊大小 - regular file:檔案型別(常規檔案) - Device:裝置編號 - Inode:Inode號 - Links:連結數 - Access:檔案的許可權 - Gid、Uid:檔案所有權的Gid和Uid。 Linux下的三個時間: 1. Access Time:簡寫為atime,表示檔案的訪問時間。當檔案內容被訪問時,更新這個時間 2. Modify Time:簡寫為mtime,表示檔案內容的修改時間,當檔案的資料內容被修改時,更新這個時間。 3. Change Time:簡寫為ctime,表示檔案的狀態時間,當檔案的狀態被修改時,更新這個時間,例如檔案的連結數,大小,許可權,Blocks數。
2、檢視系統使用者資訊
whoami : 當前視窗登入的使用者
who :當前使用者登入系統的終端
關於基名的補充:
cd /etc/sysconfig/network-scripts/
[root@lin network-scripts]#
其中 network-scripts 就是基名,顯示的是當前的位置
pwd檢視的是路徑.