linux下的系統檔案結構
阿新 • • 發佈:2018-12-30
學Linux一段時間了,每次在根目錄下也沒在意系統自帶的很多目錄是幹嘛的,知道在學習程序的時候,我很想檢視系統都把程序相關資訊存放在哪裡。找了很久,最終索性研究了下linux下的檔案結構。
- 用
ls
列出根目錄下的所有檔案,如上圖所示。
- 接下來看看各個目錄檔案代表的意思
- /bin:
- bin是Binary的縮寫, 這個目錄存放著最經常使用的命令。
- /boot:
- 這裡存放的是啟動Linux時使用的一些核心檔案,包括一些連線檔案以及映象檔案。
- /dev :
- dev是Device(裝置)的縮寫, 該目錄下存放的是Linux的外部裝置,在Linux中訪問裝置的方式和訪問檔案的方式是相同的。
- /etc:
- 這個目錄用來存放所有的系統管理所需要的配置檔案和子目錄。
- /home:
- 使用者的主目錄,在Linux中,每個使用者都有一個自己的目錄,一般該目錄名是以使用者的賬號命名的。
- /lib:
- 這個目錄裡存放著系統最基本的動態連線共享庫,其作用類似於Windows裡的DLL檔案。幾乎所有的應用程式都需要用到這些共享庫。
- /lost+found:
- 這個目錄一般情況下是空的,當系統非法關機後,這裡就存放了一些檔案。
- /media:
- linux系統會自動識別一些裝置,例如U盤、光碟機等等,當識別後,linux會把識別的裝置掛載到這個目錄下。
- /mnt:
- 系統提供該目錄是為了讓使用者臨時掛載別的檔案系統的,我們可以將光碟機掛載在/mnt/上,然後進入該目錄就可以檢視光碟機裡的內容了。
- /opt:
- 這是給主機額外安裝軟體所擺放的目錄。比如你安裝一個ORACLE資料庫則就可以放到這個目錄下。預設是空的。
- /proc:
- 這個目錄是一個虛擬的目錄,它是系統記憶體的對映,我們可以通過直接訪問這個目錄來獲取系統資訊。
- /root:
- 該目錄為系統管理員,也稱作超級許可權者的使用者主目錄。
- /sbin:
- s就是Super User的意思,這裡存放的是系統管理員使用的系統管理程式。
- /selinux:
- 這個目錄是Redhat/CentOS所特有的目錄,Selinux是一個安全機制,類似於windows的防火牆,但是這套機制比較複雜,這個目錄就是存放selinux相關的檔案的。
- /srv:
- 該目錄存放一些服務啟動之後需要提取的資料。
- /sys:
- 這是linux2.6核心的一個很大的變化。該目錄下安裝了2.6核心中新出現的一個檔案系統 sysfs 。
sysfs檔案系統集成了下面3種檔案系統的資訊:針對程序資訊的proc檔案系統、針對裝置的devfs檔案系統以及針對偽終端的devpts檔案系統。
該檔案系統是核心裝置樹的一個直觀反映。
當一個核心物件被建立的時候,對應的檔案和目錄也在核心物件子系統中被建立。
- /tmp:
- 這個目錄是用來存放一些臨時檔案的。
- /usr:
- 這是一個非常重要的目錄,使用者的很多應用程式和檔案都放在這個目錄下,類似於windows下的program files目錄。
- /usr/bin:
- 系統使用者使用的應用程式。
- /usr/sbin:
- 超級使用者使用的比較高階的管理程式和系統守護程式。
- /usr/src:
- 核心原始碼預設的放置目錄。
- /var:
- 這個目錄中存放著在不斷擴充著的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日誌檔案。
在linux系統中,有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內部檔案。
- /etc:
- 上邊也提到了,這個是系統中的配置檔案,如果你更改了該目錄下的某個檔案可能會導致系統不能啟動。
- /bin, /sbin, /usr/bin, /usr/sbin:
- 這是系統預設的執行檔案的放置目錄,比如 ls 就是在/bin/ls 目錄下的。
值得提出的是,/bin, /usr/bin 是給系統使用者使用的指令(除root外的通使用者),而/sbin, /usr/sbin 則是給root使用的指令。
- /var:
- 這是一個非常重要的目錄,系統上跑了很多程式,那麼每個程式都會有相應的日誌產生,而這些日誌就被記錄到這個目錄下,具體在/var/log 目錄下,另外mail的預設放置也是在這裡。
知道了這些就很容易解開我開始的難題了;