1. 程式人生 > >與伺服器鬥智鬥勇之命令系列3

與伺服器鬥智鬥勇之命令系列3

首先大致有個概念,檔案所有者,也就是定義私人的空間,而使用者組是可以設定大家共享的許可權,可以檢視,還是大家都可以修改,類比私人房間和客廳的差別,當然還有一個其他人,也就是來家裡的客人

不過還有個萬能的神,root,他可以無視所有限制,為所欲為

在Linux中,預設所有賬戶包括root都記錄在etc/passwd這個檔案內,而密碼則記錄在/etc/shadow這個檔案下,不得不說這個檔名有點誤導,此外Linux所有的組名都記錄在/etc/group這個檔案裡,所以注意,不要隨意刪除,修改,不要rm -rf /*

這三個檔案的格式以後再說

不同的使用者能否檢視檔案,修改和執行檔案取決於這個許可權的設定,接下來好好看一下

登入進系統以後,首先看一下ls -al 有什麼效果,當然,ls(也就是list)這個命令有很多引數,可以自己多查查

從左到右,分別是,許可權明細,連線,所有者,使用者組,檔案容量,修改日期,檔名

其中有的許可權明細上有個與眾不同的d,意思是個目錄,若是-,意思是一個檔案,l表示連線檔案,b是個可儲存的介面是被,c表示裝置檔案裡的串列埠裝置,類似鍵鼠

可以看到緊隨其後是九個空位填了rwx這三個字母,時有時無,r意為可讀,w代表可寫,x代表可執行

以下為例

- rwx r-x r--

1234567890

1:-表示這個檔名是個檔案

234:表示擁有者有可以讀寫執行的許可權

567:表示同用戶組的許可權,本例中為可讀,可執行

890:其他使用者的許可權,本例中為可讀

rwx所在的位置是不變的,,有這個許可權就會顯示字元,沒有就會變成-號

同樣在rwx認為是4+2+1=7,

要修改檔案屬性為這個例子的樣子,可以用

chmod 754 檔名或者chmod u=rwx,g=rx,o=r 檔名

如果不知道別的許可權,只是新增一個讀寫許可權,就是

chmod a+w 檔名(ugoa分別以為所有者,使用者組,其他使用者和所有),同理去除使用-號

修改使用者組:chgrp 使用者組 檔名

修改所有者:chown  賬號名稱:組名  檔案或者目錄

兩個都可以使用-R表示遞迴,不過不常用

許可權一定要慎重,原因在於rwx這個三個符號的含義

對檔案:

r:可以讀取實際內容,例如閱讀文字檔案

w:編輯,新增或修改檔案內容

x:執行,但是並不具備刪除該檔案的許可權,原因看了下面的就曉得了

對目錄:

r:可以查詢該目錄下的檔案,比如可以ls一把

w:可以更改該木立下的結構列表,如建立新的檔案或目錄,刪除已存在的檔案和目錄(不論該檔案的許可權是什麼),重新命名已有檔案和目錄,轉移檔案或目錄的位置等

x:可以進入該目錄成為工作目錄

複製行為會複製執行者的屬性和許可權

如果你在一個目錄下不具有x的許可權,那麼就無法切換到這個目錄下,也就無法執行該目錄下的任何命令,及時具有該目錄的r許可權,也就是說,要開放目錄給任何人瀏覽時,應該至少也要給r和x許可權,w是不可以隨便給的,因為w是可以修改的,注意是修改這個目錄下的所有資訊