Linux系統的目錄結構及各目錄作用
使用tree命令檢視Linux目錄結構,這個命令預設是沒有安裝的,需要手動安裝一下。
[[email protected] xf]# mount /dev/sr0 /media/
mount: /dev/sr0 防寫,將以只讀方式掛載
[[email protected] xf]# rpm -ivh /media /Packages/tree-1.6.0-10.el7.x86_64.rpm
準備中... ################################# [100%]
正在升級/安裝...
1:tree-1.6.0-10.el7 ################################# [100%]
檢視根’/’的目錄結構,由於根的結構實在是太龐大,這裡就不寫出
[[email protected] xf]# tree /
可以看下根’/’下存在的檔案。
[[email protected] ~]$ ls /
bin dev home lib64 mnt proc run srv tmp var
boot etc lib media opt root sbin sys usr
下面詳細說明根下的目錄作用:
目錄 |
說明 |
/ |
處於Linux系統樹形結構的頂端,它是Linux檔案系統的入口,所有的目錄、檔案、裝置都在/之下 |
/bin |
Bin是Binary的縮寫。常用的二進位制命令目錄。比如ls、cp、mkdir、cut等;和/usr/bin類似,一些使用者級gun工具 |
/boot |
存放系統啟動相關的檔案,例如:kernel.grub(引導裝載程式) |
/dev |
dev是Device的縮寫。裝置檔案目錄,比如音效卡、磁碟。在Linux中一切都被看做檔案,包括終端裝置、磁碟等等 裝置檔案:/dev/sda,/dev/sda1./dev/tty1,/dev/tty2,/dev/pts/1, /dev/zero,/dev/null,/dev/cdrom |
/etc |
常用系統或二進位制安裝包配置檔案預設路徑和伺服器啟動命令目錄 passwd 使用者資訊檔案 shadow 使用者密碼檔案 group 儲存使用者組資訊 fstab 系統開機自動掛載分割槽列表 hosts 設定使用者自己的IP與主機名對應資訊 |
/home |
普通使用者預設的家目錄 |
/lib |
庫檔案存放目錄,函式庫目錄 |
/lost+found 只在CentOS6中有 |
預設為空,被FSCK(file system check用來檢查和維護不一致的檔案系統。若系統掉電或磁碟發生問題, 可利用fsck命令對檔案系統進行檢查)用來放置零散檔案(沒有名稱的檔案)當系統非法關機後,這裡就會存放一些檔案。 在 centos6 版本下,每個分割槽的掛載點下會有些目錄 |
/mnt /media |
一般用來臨時掛載儲存裝置的掛載目錄,比如cdrom、U盤等目錄 |
/opt |
表示的是可選擇的意思,有些軟體包也會被安裝在這裡 |
/proc |
作業系統執行時,程序(正在執行中的程式)資訊及核心資訊(比如CPU、硬碟分割槽、記憶體資訊等)存放在這裡。/proc目錄是偽裝的檔案系統proc的掛載目錄,proc並不是真正的檔案系統。因此,這個目錄是一個虛擬目錄,它是系統記憶體的對映,我們可以通過直接訪問這個檔案來獲取系統資訊。也就是說,這個目錄的記憶體不再硬碟上而是在記憶體裡。 檢視CPU資訊 cat /proc/cpuinfo |
/sys |
系統目錄,存放硬體資訊的相關檔案 |
/run |
執行目錄,存放的是系統執行時的資料,比如程序的PID檔案 |
/srv |
服務目錄,存放的是我們本地服務的相關檔案 |
/sbin |
大多數涉及系統管理的命令都存放在該目錄中,它是超級許可權使用者root的可執行命令存放地,普通使用者無許可權執行這個目錄下的命令,凡是目錄sbin中包含的命令都是root許可權才能執行的。 |
/tmp |
用於存放臨時檔案,又是使用者執行程式的時候會產生一些臨時檔案。/tmp就是用來存放臨時檔案的。/var/tmp目錄和該目錄的作用是類似的,不能存放重要資料,它的許可權比較特殊。 [[email protected] ~]$ ls -ld /tmp drwxrwxrwt. 27 root root 4096 12月 23 19:18 /tmp t粘滯位(sticky bit)目錄的sticky位表示這個目錄裡的檔案只能被owner和root刪除 |
/var |
系統執行和軟體執行時產生的日誌資訊,該目錄的內容是經常變動的,存放的是一些變化的檔案。比如 /var/log目錄用來存放系統日誌,還有/var/mail、/var/spool/cron |
/usr |
存放應用程式和檔案 /usr/bin 普通使用者使用的應用程式 /usr/sbin 管理員使用的應用程式 /usr/lib 庫檔案Glibc(32位) /usr/lib64 庫檔案Glibc |
/lib /lib64 都在/usr/目錄下 |
這個目錄裡存放著系統最基本的動態連結共享庫,白喊許多倍/bin和/sbin中的程式使用的庫檔案,目錄/usr/lib中含有更多用於使用者程式的庫檔案。作用類似於windows裡的dll檔案,幾乎所有的應用程式都需要用到這些共享庫 注:lib***.a是靜態庫 Lib***.so是動態庫 靜態庫在編譯時被載入到二進位制檔案中 動態庫在執行時載入到程序的記憶體空間中 簡單的說:這些庫視為了讓你的程式能過正常編譯執行的 |