(基於Centos7)Linux文件目錄結構筆記

Linux 文件目錄筆記

本來參考自菜鳥教程的Linux系統目錄結構以及Linux文件目錄結構詳解

Linux通用樹狀目錄結構:

image

目錄 應放置的內容
/bin bin 是 Binary 的縮寫, 這個目錄存放着最經常使用的命令。,但/bin 比較特殊。因爲/bin 放置的是在單人維護模式下還能夠被操作的指令。在/bin 底下的指令可以被 root 與一般帳號所使用,主要有:cat,chmod(修改權限), chown, date, mv, mkdir, cp, bash 等等常用的指令。
/boot 這裏存放的是啓動 Linux 時使用的一些核心文件,包括一些連接文件以及鏡像文件。Linux kernel 常用的檔名爲:vmlinuz ,如果使用的是 grub 這個開機管理程式,則還會存在/boot/grub/這個目錄。
/dev dev 是 Device(設備)的縮寫, 該目錄下存放的是 Linux 的外部設備,在 Linux 中訪問設備的方式和訪問文件的方式是相同的。在 Linux 系統上,任何裝置與周邊設備都是以檔案的型態存在於這個目錄當中。 只要通過存取這個目錄下的某個檔案,就等於存取某個裝置。比要重要的檔案有/dev/null, /dev/zero, /dev/tty , /dev/lp*, / dev/hd*, /dev/sd*等等
/etc 這個目錄用來存放所有的系統管理所需要的配置文件和子目錄。系統主要的設定檔幾乎都放置在這個目錄內,例如人員的帳號密碼檔、各種服務的啓始檔等等。 一般來說,這個目錄下的各檔案屬性是可以讓一般使用者查閱的,但是隻有 root 有權力修改。 FHS 建議不要放置可執行檔(binary)在這個目錄中。 比較重要的檔案有:/etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11/, /etc/fstab, /etc/sysconfig/等等。
/home 用戶的主目錄,在 Linux 中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。在你新增一個一般使用者帳號時,預設的使用者 home 目錄都會規範到這裏來。比較重要的是,home 目錄有兩種代號,~ :代表當前使用者的家目錄,而 ~guest:則代表用戶名爲 guest 的家目錄。
/lib 這個目錄裏存放着系統最基本的動態連接共享庫,其作用類似於 Windows 裏的 DLL 文件。幾乎所有的應用程序都需要用到這些共享庫。就像是 java 的依賴包一樣,有些功能需要依賴包才能實現。尤其重要的是/lib/modules/這個目錄,因爲該目錄會放置核心相關的模組(驅動程式)。
/media linux 系統會自動識別一些設備,例如 U 盤、光驅等等,當識別後,linux 會把識別的設備掛載到這個目錄下。與/mnt 目錄有相似之處。
/mnt 系統提供該目錄是爲了讓用戶臨時掛載別的文件系統的,我們可以將光驅掛載在/mnt/上,然後進入該目錄就可以查看光驅裏的內容了。這是管理員用於手動掛載一些臨時媒體設備的目錄,比如插入 U 盤後,可以通過 mount /dev/sda1 /mnt/usb1 將/dev 中的 U 盤接口掛載到 mnt 下,就可以通過 mnt 訪問 U 盤了。
/opt 這是給主機額外安裝軟件所擺放的目錄。比如你安裝一個 ORACLE 數據庫則就可以放到這個目錄下。默認是空的。 如果你想要自行安裝額外的軟體(非原本的 distribution 提供的),那麼也能夠將你的軟體安裝到這裏來。 不過,以前的 Linux 系統中,我們還是習慣放置在/usr/local 目錄下。
/root 該目錄爲系統管理員,也稱作超級權限者的用戶主目錄。之所以放在這裏,是因爲如果進入單人維護模式而僅掛載根目錄時,該目錄就能夠擁有 root 的 home 目錄,所以我們會希望 root 的 home 目錄與根目錄放置在同一個分區中。
/sbin s 就是 Super User 的意思,這裏存放的是系統管理員使用的系統管理程序。Linux 有非常多指令是用來設定系統環境的,這些指令只有 root 才能夠利用來設定系統,其他使用者最多隻能用來查詢而已。放在/sbin 底下的爲開機過程中所需要的,裏面包括了開機、修復、還原系統所需要的指令。至於某些伺服器軟體程式,一般則放置到/usr/sbin/當中。至於本機自行安裝的軟體所產生的系統執行檔(system binary),則放置到/usr/local/sbin/當中了。常見的指令包括:fdisk, fsck, ifconfig, init, mkfs 等等。
/proc 這個目錄是一個虛擬的目錄,它是系統內存的映射,我們可以通過直接訪問這個目錄來獲取系統信息。他放置的資料都是在內存當中,例如系統核心、進程嗎、周邊裝置的狀態及網絡狀態等等。因爲這個目錄下的資料都是在內存當中,所以本身不佔任何硬盤空間。
/srv srv 可以視爲 service 的縮寫,該目錄存放一些服務啓動之後需要提取的數據。
/run 是一個臨時文件系統,存儲系統啓動以來的信息。當系統重啓時,這個目錄下的文件應該被刪掉或清除。
/sys 這個目錄其實跟/proc 非常類似,也是一個虛擬的檔案系統,主要也是記錄與核心相關的資訊。 包括目前已載入的核心模組與核心偵測到的硬體裝置資訊等等。 這個目錄同樣不佔硬盤容量。
/tmp 這個目錄是用來存放一些用戶或者正在執行的程序產生的臨時文件
/usr usr 是 Unix Software Resource 的縮寫,也就是 Unix 操作系統軟件資源所放置的目錄,而不是用戶的數據。因爲是所有系統默認的軟件(distribution 發佈者提供的軟件)都會放置到/usr 底下,因此這個目錄有點類似 Windows 系統的 C:\Windows\ + C:\Program files\這兩個目錄的綜合體,系統剛安裝完畢時,這個目錄會佔用最多的硬盤容量。
/var 這個目錄中存放着在不斷擴充着的東西,我們習慣將那些經常被修改的目錄放在這個目錄下。包括各種日誌文件。如果/usr 是安裝時會佔用較大硬盤容量的目錄,那麼/var 就是在系統運作後纔會漸漸佔用硬盤容量的目錄。 因爲/var 目錄主要針對常態性變動的文件,包括緩存(cache)、登錄檔(log file)以及某些軟件運作所產生的文件, 包括程序文件(lock file, run file),或者例如 MySQL 數據庫的文件等等。

與開機相關的目錄(必須放在根目錄):

  1. /etc:配置文件
  2. /bin:重要執行檔
  3. /dev:所需要的裝置文件
  4. /lib:執行檔所需的函式庫與核心所需的模塊
  5. /sbin:重要的系統執行文件

不要隨意修改的關於系統的重要文件:

  1. /etc: 上邊也提到了,這個是系統中的配置文件,如果你更改了該目錄下的某個文件可能會導致系統不能啓動。

  2. /bin, /sbin, /usr/bin, /usr/sbin: 這是系統預設的執行文件的放置目錄,比如 ls 就是在/bin/ls 目錄下的。

  3. /var: 這是一個非常重要的目錄,系統上跑了很多程序,那麼每個程序都會有相應的日誌產生,而這些日誌就被記錄到這個目錄下,具體在/var/log 目錄下,另外mail的預設放置也是在這裏。

絕對路徑與相對路徑:

  1. 絕對路徑:由根目錄(/)開始寫起的文件名或目錄名稱,例如 /home/dmtsai/.bashrc;
  2. 相對路徑:相對於目前路徑的文件名寫法(非/開頭都是相對路徑)。其中 . 代表當前的目錄,也可以使用 ./ 來表示; … 代表上一層目錄,也可以 …/ 來代表。

平時安裝軟件路徑:

/opt目錄下或者/home中當前用戶的/local目錄下,軟件官網下載的推薦放在opt目錄下,額外第三方軟件推薦放在/home當前用戶下的/local文件夾下。

/mnt和/dev和/media的區別:

  1. /mnt 是被系統管理員使用,手動掛載一些臨時媒體設備的目錄。
  2. /media 是自動掛載的目錄,比如我們的U盤插在ubuntu下回自動掛載,就會在/media下生成一個目錄,這個目錄就是U盤所在目錄,或者說文件。
  3. /dev 不是存放設備的驅動程序,而是作爲訪問外部設備文件的接口。比如,我們的U盤,插入linux系統後,用fdisk -l查看分區,顯示文件爲/dev/sda1。則我們可以將u盤掛載到/mnt/usb1下,mount /dev/sda1 /mnt/usb1 即可。

Linux目錄結構和常用命令介紹的更爲詳細,如還有不理解可以去看看,他還介紹一些常用的命令。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章