1. 程式人生 > >Linux檔案系統層次標準

Linux檔案系統層次標準

 

 

 

前言

Linux檔案系統層次標準,英文全稱Filesystem Hierarchy Standard,英文簡稱FHS。

由於利用Linux來開發產品的團隊和個人實在太多了,如果每個人都以自己的想法來配置檔案放置的目錄,那麼將可能造成很多管理上的困擾。

在這種Linux檔案目錄配置極其混亂的局面下,FHS出現了,它的主要目的是希望讓使用者可以瞭解到已安裝軟體通常放置於哪個目錄下。

遵循FHS標準,這大大方便了獨立的軟體開發商、作業系統製作者及系統維護者。

 

 

 

 

 

Linux 目錄結構說明

 

 

 

 

 

 

 

Linux重要子目錄說明

[/usr 子目錄結構]

1、/usr/bin

##存放絕大部分使用者可以使用的命令

 

2、/usr/include

##C/C++等程式語言的標頭檔案(header)與包含的include放置處

 

3、/usr/lib

##存放庫檔案、目標檔案以及內部二進位制檔案不打算被使用者執行檔案或指令碼

 

4、/usr/libexec

##存放其它程式庫檔案及內部二進位制檔案不打算被使用者執行檔案或指令碼

 

5、/usr/local

##預設軟體安裝目錄,類似windows的Program files 目錄

 

6、/usr/sbin

##存放系統管理員專用的任何不必要使用的二進位制檔案(命令),系統修復、系統恢復、其它需要的管理程式等關鍵函式必須放在這裡

 

7、/usr/share

##放置共享檔案的地方

 

8、/usr/src

##一般存放原始碼目錄

 

 

[/var 子目錄結構]

1、/var/account

##此目錄儲存當前活動流程會計日誌和複合流程使用資料,用於某些類unix系統,由lastcomm和sa開發

 

2、/var/cache

##存放應用程式的資料快取資料

 

3、/var/crash

##此目錄儲存系統崩潰轉儲,從該標準釋出之日起,系統崩潰轉儲在Linux下不受支援,但可能由其他遵守FHS的系統支援。

 

4、/var/games

##與/usr中的遊戲相關的任何變數資料都應該放在這裡

 

5、/var/lib

##存放應用程式或系統相關的狀態資訊

 

6、/var/lock

##目錄下的檔案資源一次只能被一個應用程式所使用

 

7、/var/log

##存放系統各類日誌檔案,大多數日誌必須寫入此目錄或適當的子目錄

 

8、/var/mail

##存放使用者個人電子郵件信箱目錄

 

9、/var/opt

##存放包含可變的資料

 

10、/var/run

##存放描述系統啟動後的系統資訊資料

 

11、/var/spool

##存放排隊等待其他應用程式使用的資料

 

12、/var/tmp

##對於需要臨時檔案或目錄的程式,可以使用/var/tmp目錄在系統重新啟動之間儲存。因此,儲存在/var/tmp中的資料比/tmp資料儲存更久,在引導系統時,不能刪除位於/var/tmp中的檔案和目錄。

 

13、/var/yp

##用於存放網路資訊服務的可變資料

 

 

 

 

 

 

Linux 重要子目錄配置檔案

 

1、網絡卡配置檔案,也可以使用setup配置網絡卡,修改前備份網絡卡配置檔案

/etc/sysconfig/network-scripts/ifcfg-eth0

##物理裝置名,eth0表示第一塊網絡卡,eth1表示第二塊網絡卡

DEVICE=eth0

##48位的MAC地址

HWADDR=00:33:55:dd:3f:5f

##乙太網

TYPE=Ethernet

##網絡卡標識,各類標識命令查blkid

UUID=234sdfds-33ee-444d-22ds-5553sfecfd3a    

##控制網絡卡是不是開機啟動

ONBOOT=yes 

##啟動協議,none引導時不使用協議,static靜態,bootp使用bootp協議,dhcp使用dhcp協議 

BOOTPROTO=none  

## IP地址

IPADDR=192.168.1.100   

##子網掩碼

NETMASK=255.255.255.0

##閘道器

GATEWAY=192.168.1.254

##主DNS

DNS1=192.168.1.1

##備DNS

DNS2-192.168.1.2

標註:

/etc/init.d/network  restart     重啟所有網絡卡

ifdown eth0 && ifup eth0        重啟指定的網絡卡

 

2、Linux客戶端 DNS配置檔案,也可以使用setup配置DNS

/etc/resolv.conf

##主DNS

nameserver  192.168.1.1

##備DNS

nameserver  192.168.1.2

標註:

網絡卡配置檔案設定DNS優先於/etc/resolv.conf配置檔案,如果重啟網絡卡的DNS會覆蓋/etc/resolv.conf的設定

 

3、設定使用者IP與域名的對應解析表,相當於本地區域網內的DNS解析,類似windows的hosts檔案

/etc/hosts

192.168.1.100    www.baidu.com

 

4、修改主機名配置檔案

/etc/sysconfig/network

HOSTNAME=oldboy     修改主機名

標註:

如果不想重啟系統,達到修改主機名,需同時修改以下兩專案:

##配置主機名檔案修改

/etc/sysconfig/network

##命令修改主機名

hostname

 

5、實現開機自動掛載檔案系統的配置檔案,系統預設掛載點也在這裡

/etc/fstab

mount –t cifs –o username=abc,password=”123” //192.168.1.10/backup /mnt

 

6、用於存放開機自啟動程式命令的檔案(chkconfig常用來管理yum/rpm安裝的程式服務開機自啟動)。

開機時會把/etc/rc.local裡的內容執行一次。可以存放一些自己開發的指令碼之類的命令實現開機自啟動。

/etc/rc.local

 

7、設定系統啟動時init程序載入的執行級別及載入相關的級別對應啟動檔案設定

/etc/inittab

id:3:initdefault:

 

8、存放啟動命令的目錄,存放系統或伺服器以System V模式啟動的指令碼,這在以System V模式啟動或初始化的系統常見,

通過yun或rpm安裝的程式目錄,連結到 /etc/rc.d/init.d/目錄下

/etc/init.d

 

9、系統全域性環境變數永久生效的配置檔案

/etc/profile

標註:

使用者環境變數

~/.bash_profile      ~/.bashrc

 

10、載入系統登入程式一個目錄、命令或檔案獨立存在,以檔案形式存在,但要可以執行,例如 *.sh指令碼檔案

/etc/profile.d

 

11、記錄使用者登入前顯示的系統版本等資訊

/etc/issue

 

12、記錄使用者登入後顯示的時間等資訊

/etc/motd

 

13、檢視Red Hat版本號和名稱的資訊

/etc/redhat-release

 

14、用於存放使用者自編譯安裝軟體的存放目錄,一般是原始碼包安裝的軟體,如果沒有指定

安裝目錄,預設安裝在這個目錄下。相當於windows系統的Program files資料夾

/usr/local

 

15、各種系統日誌存放目錄

/var/log

標註:

系統資訊預設日誌檔案,非常重要,按周自動輪循

/var/log/messages

 

檢視系統故障資訊

dmesg