1. 程式人生 > >linux檔案系統-目錄配置

linux檔案系統-目錄配置

目錄配置

一、Linux 目錄配置標準:FHS

1.1、定義

FileSystem Hierarchy Standard (FHS)
規範每個特定的目錄下應該要放置什麼樣子的資料而已。

1.2、內容

可分享的(shareable) 不可分享的(unshareable)
不變的(static) /usr (軟體放置處) /etc (配置檔案)
/opt (第三方軟體) /boot (開機與核心檔案)
可變動的(variable) /var/mail(使用者郵箱) /var/run(程式相關)
/var/spool/news(新聞組) /var/lock(程式相關)

可分享的 : 可以分享給其他系統掛載使用的目錄
不可分享的 :自己機器上執行的裝置檔案或者程式有關的socket檔案
不變的:有些資料1不會經常變動的,如命令
可變動的:經常改變的資料,如登入檔案

1.3、根目錄(/)的意義和內容

根目錄與開機,還原,系統修復等操作有關。希望根目錄不要放在非常大的分割槽內。
FHS建議:根目錄所在的分割槽越小越好,且應用程式所在安裝的軟體最好不要與根目錄放在同一個分割槽內。

FHS建議目錄結構

目錄 應放置檔案內容
/bin 放置執行檔案,在/bin目錄下是單使用者維護模式下也可以使用的命令。
/boot 開機會使用的檔案,包括linux核心檔案以及開機選單與開機所有需要的配置文化.
/dev 裝置與介面裝置,訪問這個目錄下的檔案,等於訪問某個裝置。
/etc 系統主要的配置檔案,一般使用者可以檢視,只有root賬號可以修改。
/home 使用者主資料夾
/lib 系統函式庫,/lib放置的則是開機時會用到的函式庫。
/media 放在的是可刪除裝置,包括軟盤,關平,DVD等裝置都是臨時掛載在此。
/mnt 暫時掛載某些額外裝置。和/media 相似
/opt 第三方軟體,以前的linux版本,習慣放在/usr/local目錄下
/root 管理員的家目錄。
/sbin 為開機過程需要的,包括開機,修復,還原系統所需命令。一般軟體伺服器命令放置在/usr/sbin/
/srv service,是一些網站服務啟動之後,這些服務所需要用的資料目錄
/tmp 讓一般使用者或者是正在執行的程式臨時放置檔案的地方。

Linux中也非常重要的目錄

目錄 應放置檔案內容
.lost+found 使用標準的ext2/ext3檔案系統格式才會產生的目錄。目錄在於當檔案系統發生錯誤時,將一些丟失的片段放置到這個目錄下,
/proc 本身是一個虛擬檔案系統(virtual filesystem),它放置的資料都是在記憶體當中的。比如系統核心、程序、外部裝置的狀態,網路狀態等
/sys 也是一個虛擬檔案系統,注意記錄與核心相關的資訊,同意不佔用硬碟。

需要和根目錄放在同一分割槽的目錄
- /etc
- /bin
- /dev
- /lib
- /sbin

1.4、/usr的意義和內容

UNIX Softeware Resource的縮寫。
FHS建議所有的軟體開發者應該將它們的資料合理地分佈放置到這個目錄下的子目錄下。
有點類似window 下的 c:\Windows\ 和 C:\Program files\

FHS建議
目錄 應放置檔案內容
/usr/X11R6 為 X window 系統重要資料放置目錄, X版本為11版本,該版本的第6次小版本
/usr/bin 絕大多數使用者可以使用的命令
/usr/include C/C++等程式語言的標頭檔案(header)與包含檔案(include)。
/usr/lib 各應用軟體的函式庫、目標檔案;如果使用的是X86_64的linux系統,可能會有/usr/lin64目錄
/usr/local 系統管理員在本機自行安裝自己下載的檔案。
/usr/sbin 非系統正常執行所需要的系統命令
/usr/share 放置共享檔案的地方,這個目錄下放置的資料幾乎是不分硬體架構均可讀取的資料。
/usr/src 一般原始碼建議放置在這裡。至於核心原始碼建議放置到/usr/src/linux目錄下。

1.5、/var的意義和內容

/var 是系統執行後才會逐漸佔有的硬碟容量目錄。/var主要針對的是常態性變動檔案,包括快取(cache)登入檔案(logfile) 以及一些系統執行所產生的檔案。

目錄 應放置檔案內容
var/cache 應用程式本身執行過程中產生的一些在暫存檔案
var/lib 程式本身執行過程中,需要的一些資料檔案
/var/lock 某些裝置或者某些檔案資源一次只能被一個應用程式所使用。
/var/log 登入檔案放置的目錄
/var/mail 放置個人電子郵箱的目錄 或者是/var/spool/mail
/var/run 某些程式或者服務啟動後,會將他們的PID放置在這個目錄下。
/var/spoll 通常放置一些佇列資料。

二、目錄樹(directory tree)

三、絕對路徑和相對路徑

四、CentOS 檢視

[root@VM_0_4_centos local]# uname -a
Linux VM_0_4_centos 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

參考

鳥哥linux私房菜