Linux 目錄與許可權詳解

pythontab發表於2017-08-29

Linux 目錄

/:根目錄,一般根目錄下只存放目錄,在Linux下有且只有一個根目錄。所有的東西都是從這裡開始。當你在終端裡輸入“/home”,你其實是在告訴電腦,先從/(根目錄)開始,再進入到home目錄。

/bin、/usr/bin: 可執行二進位制檔案的目錄,如常用的命令ls、tar、mv、cat等。

/boot:放置linux系統啟動時用到的一些檔案,如Linux的核心檔案:/boot/vmlinuz,系統引導管理器:/boot/grub。

/dev:存放linux系統下的裝置檔案,訪問該目錄下某個檔案,相當於訪問某個裝置,常用的是掛載光碟機 mount /dev/cdrom /mnt。

/etc:系統配置檔案存放的目錄,不建議在此目錄下存放可執行檔案,重要的配置檔案有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d。

/home:系統預設的使用者家目錄,新增使用者賬號時,使用者的家目錄都存放在此目錄下,~表示當前使用者的家目錄,~edu 表示使用者 edu 的家目錄。

/lib、/usr/lib、/usr/local/lib:系統使用的函式庫的目錄,程式在執行過程中,需要呼叫一些額外的引數時需要函式庫的協助。

/lost+fount:系統異常產生錯誤時,會將一些遺失的片段放置於此目錄下。

/mnt: /media:光碟預設掛載點,通常光碟掛載於 /mnt/cdrom 下,也不一定,可以選擇任意位置進行掛載。

/opt:給主機額外安裝軟體所擺放的目錄。

/proc:此目錄的資料都在記憶體中,如系統核心,外部裝置,網路狀態,由於資料都存放於記憶體中,所以不佔用磁碟空間,比較重要的目錄有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。

/root:系統管理員root的家目錄。

/sbin、/usr/sbin、/usr/local/sbin:放置系統管理員使用的可執行命令,如fdisk、shutdown、mount 等。與 /bin 不同的是,這幾個目錄是給系統管理員 root使用的命令,一般使用者只能"檢視"而不能設定和使用。

/tmp:一般使用者或正在執行的程式臨時存放檔案的目錄,任何人都可以訪問,重要資料不可放置在此目錄下。

/srv:服務啟動之後需要訪問的資料目錄,如 www 服務需要訪問的網頁資料存放在 /srv/www 內。

/usr:應用程式存放目錄,/usr/bin 存放應用程式,/usr/share 存放共享資料,/usr/lib 存放不能直接執行的,卻是許多程式執行所必需的一些函式庫檔案。/usr/local: 存放軟體升級包。/usr/share/doc: 系統說明檔案存放目錄。/usr/share/man: 程式說明檔案存放目錄。

/var:放置系統執行過程中經常變化的檔案,如隨時更改的日誌檔案 /var/log,/var/log/message:所有的登入檔案存放目錄,/var/spool/mail:郵件存放的目錄,/var/run:程式或服務啟動後,其PID存放在該目錄下。

使用者目錄

位於/home/user,稱之為使用者工作目錄或家目錄,表示方式:


/home/user

~

相對路徑和絕對路徑


絕對路徑


從/目錄開始描述的路徑為絕對路徑,如:


cd /home

ls /usr

相對路徑


從當前位置開始描述的路徑為相對路徑,如:


cd ../../

ls abc/def

.和..


每個目錄下都有.和..


. 表示當前目錄


.. 表示上一級目錄,即父目錄


根目錄下的.和..都表示當前目錄

檔案許可權

檔案許可權就是檔案的訪問控制許可權,即哪些使用者和組群可以訪問檔案以及可以執行什麼樣的操作。


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


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

訪問使用者

透過設定許可權可以從以下三種訪問方式限制訪問許可權:


只允許使用者自己訪問(所有者) 所有者就是建立檔案的使用者,使用者是所有使用者所建立檔案的所有者,使用者可以允許所在的使用者組能訪問使用者的檔案。


允許一個預先指定的使用者組中的使用者訪問(使用者組) 使用者都組合成使用者組,例如,某一類或某一專案中的所有使用者都能夠被系統管理員歸為一個使用者組,一個使用者能夠授予所在使用者組的其他成員的檔案訪問許可權。


允許系統中的任何使用者訪問(其他使用者) 使用者也將自己的檔案向系統內的所有使用者開放,在這種情況下,系統內的所有使用者都能夠訪問使用者的目錄或檔案。在這種意義上,系統內的其他所有使用者就是 other 使用者類


這有點類似於 QQ 空間的訪問許可權:


這個 QQ 空間是屬於我的,我相當於管理者(也就是“所有者”),我想怎麼訪問就怎麼訪問。

同時,我可以設定允許 QQ 好友訪問,而這些 QQ 好友則類似於“使用者組”。

當然,我可以允許所有人訪問,這裡的所有人則類似於“其他使用者”。

訪問許可權

使用者能夠控制一個給定的檔案或目錄的訪問程度,一個檔案或目錄可能有讀、寫及執行許可權:


讀許可權(r) 對檔案而言,具有讀取檔案內容的許可權;對目錄來說,具有瀏覽目錄的許可權。

寫許可權(w) 對檔案而言,具有新增、修改檔案內容的許可權;對目錄來說,具有刪除、移動目錄內檔案的許可權。

可執行許可權(x) 對檔案而言,具有執行檔案的許可權;對目錄了來說該使用者具有進入目錄的許可權。

注意:通常,Unix/Linux系統只允許檔案的屬主(所有者)或超級使用者改變檔案的讀寫許可權。


示例說明

Linux 目錄與許可權詳解

第1個字母代表檔案的型別:“d” 代表資料夾、“-” 代表普通檔案、“c” 代表硬體字元裝置、“b” 代表硬體塊裝置、“s”表示管道檔案、“l” 代表軟連結檔案。 後 9 個字母分別代表三組許可權:檔案所有者、使用者者、其他使用者擁有的許可權。


每一個使用者都有它自身的讀、寫和執行許可權。


第一組許可權控制訪問自己的檔案許可權,即所有者許可權。

第二組許可權控制使用者組訪問其中一個使用者的檔案的許可權。

第三組許可權控制其他所有使用者訪問一個使用者的檔案的許可權。

這三組許可權賦予使用者不同型別(即所有者、使用者組和其他使用者)的讀、寫及執行許可權就構成了一個有9種型別的許可權組。


相關文章