Linux目錄配置整理

FHS:

  為了規范各種Linux發行版的目錄配置方法和目錄定義而制定了FHS規范。

  在FHS規范的Linux中,所有的文件和目錄都由根目錄開始,即“/”,它是所有文件和目錄的起點。然后按層次化的樹狀劃分下來。這種目錄結構被稱為“目錄樹”。


目錄樹的特性:

  ·起始點為根目錄(/或root)

  ·每一個目錄不僅能使用本地端分區的文件系統,也可以使用網絡上的文件系統。

  ·每一個文件在樹中的文件名(包含完整路徑)都是獨一無二的

  絕對路徑與相對路徑:

  ·由根目錄(/)開始寫起的文件名或目錄名

  ·其他的都屬于相對路徑

  


FHS定義的目錄樹:

  每個目錄都是依附在/根目錄下面,所以安裝的時候一定要有一個/根目錄對應的分區才能安裝的原因就在于此。根據FHS定義,每個目錄應包含的文件內容如下:

/       根目錄root(/),一般建議在根目錄下只有目錄。根目錄是啟動系統是第一個載入的分區,所以所有啟動過程都會用到的文件都應該與根目錄連在一起

/bin,

/usr/bin

/usr/local/bin

供所有用戶使用的基本命令:不能關聯至獨立分區,OS啟動即會用到的程序。除了/bin之外,/usr/bin、/usr/local/bin也是放置用戶可執行的二進制文件的目錄
/boot 放置linux系統啟動時用到的文件,啟動時會用到linux的核心文件。其中vmlinuz就是linux的核心。另外grub、bootloader等引導器也存放在此
/dev

設備文件及特殊文件的存放位置,訪問這個目錄下的某個文件,就相當于訪問某臺設備。設備又分為字符設備(character device)和塊設備(block device)

/etc

放置系統主要的配置文件,此目錄下的文件幾乎都是純文本文件。

/etc/init.d/:所有服務的默認啟動腳本都放在這里

/etc/xinetd.d/:這是超級守護程序(super daemon)貴案例的各項服務的配置文件目錄。

/etc/X11:與X window相關的各種設置文件都在這里

/home

系統默認的用戶家目錄。在新增一般賬號時,默認的家目錄都會放到這里。~表示當前用戶家目錄;~cisco表示cisco用戶的家目錄

/lib,

/usr/lib,

/usr/local/lib

是系統使用的函數庫的目錄。程序運行過程中,可能會調用一些額外的參數,這需要函數庫的協助。目錄中包含基本共享庫文件,以及內核模塊文件(lib/modules)
/lost+found 系統出現異常,產生錯誤時,會將一些遺失的片段放于此目錄下,通常這個目錄會自動出現在某個分區最頂層的目錄下。

/mnt

/media

臨時文件系統和便攜式設備的掛載點
/opt 給主機額外安裝軟件所放的目錄,相當于windows的附件,第三方程序安裝的位置
/proc 這個目錄本身是一個“虛擬文件系統”,用于輸出內核與進程信息相關的虛擬文件系統。它放置的數據都在內存中,因此不占據磁盤空間
/root 系統管理員的家目錄

/sbin

/usr/sbin

/usr/local/sbin

放置一些供管理員使用的命令,如:fdisk、mk2efs、fsck等。目錄下的可執行文件其他用戶可以查看而不能設置
/srv 一些服務啟動之后,這些服務所需要訪問的數據目錄。
/tmp 這是一般用戶或者正在執行的程序存放臨時文件的地方。任何人都可以訪問,所以建議定期清理
/usr

“universal shared,read-only data”,根絕FHS規范的第二層內容,在/usr目錄下,包含系統的主要程序、圖形界面所需要的文件、額外的函數庫、本機自行安裝的軟件,以及共享的目錄與文件。類似于windows系統中,“Program files”與“Windows”兩個目錄的結合。

./bin:保證系統擁有完整功能而提供的應用程序

./sbin:管理員才有權限運行的

./lib:庫文件

./include:C程序使用的頭文件

./share:結構化的獨立的數據

./local:第三方應用程序的安裝位置,包含bin,sbin,lib,lib64,etc,share等

/var

主要放置系統執行中經常變化的文件,其主要目錄有:

cache:應用程序緩存數據目錄

lib:存儲應用程序狀態信息

local:專用于為/usr/local下的應用程序存儲可變數據

lock:鎖文件

log:日志文件及目錄

opt:專用于為/opt下的應用程序存儲可變數據

run:運行中的進程相關的數據,通常用于存儲進程的pid:文件

spool:緩沖池數據

tmp:保存在系統重啟的之間存儲的臨時文件


特殊目錄:

1,建議不可與root分區分開的目錄:/etc,/sbin,/bin,/dev,/lib

    因為開機的時候核心只會載入/這一個分區。但是啟動的時候會用到許多命令與函數庫。比如要載入就需要mount程序,init程序等,還需要許多配置文件,設備文件,這些文件分別存在/etc,/dev,/lib等目錄中,因此這些目錄都需要與/綁在一起。

2,建議單獨劃分分區的目錄:/home、/usr、/var、/tmp

    系統用戶個人家目錄在/home里,這個目錄可能是訪問最頻繁的目錄之一。為了合理地分配資源,我們可能會限制每個人可以使用的最大硬盤配額。因此必須將/home目錄獨立出來,而且最好這個分區能大一點,尤其是linux作為文件服務器的時候,就更重要了。

    /usr則是一些程序安裝的目錄,也可以獨立出來;/var目錄由于記錄了相當多的常用數據,讀取很頻繁,所以是“容易出問題的分區”。如果當/var出問題的時候,就不會影響到其他分區,保證了安全性。

3,特別重要的目錄

    /etc:這個目錄是系統設置文件放置的地方,其中包括了系統上的賬號與密碼(/etc/passwd),啟動時用到的各項設置(/etc/sysconfig/*),各主要網絡服務的設置文件。如果此目錄下的文件被刪除或損壞,對系統危害比較大。

    /var:此目錄是用于管理系統運行過程中的額重要暫存數據,此外最終的數據例如郵件/var/spool/mail也放置在此目錄中。幾乎所有服務的登陸文件,都存放在/var/log目錄中。

    /opt與/usr/local:都是安裝軟件的目錄,建議將自己的軟件安裝到自己的用戶目錄下,規范安裝。

    

原創文章,作者:lichenhan,如若轉載,請注明出處:http://www.www58058.com/21628

(0)
lichenhanlichenhan
上一篇 2016-07-07
下一篇 2016-07-07

相關推薦

  • rsyslog+mysql+loganalyzer配置

    rsyslog+mysql+loganalyzer 自定義日志存儲的信道(facility)和存儲位置,讓rsyslog作為服務端記錄rsyslog客戶端的日志信息 環境介紹 以centos 7.2為系統環境 內部已裝有mariadb、 一、準備工作 1、 安裝rsyslog連接至mysql server的驅動模塊;   # y…

    Linux干貨 2016-10-21
  • HTTPD-相關的配置

    一次完整的HTTP請求處理過程: 1、建立連接:接收或拒絕鏈接請求 2、接受請求:接收客戶端請求報文中對某資源的一次請求的過程 Web訪問響應模型(Web I/O) 單進程I/O模型:啟動一個進程處理用戶請求,而且一次只處理一個,多個請 求被串行響應; 多進程I/O模型:并行啟動多個進程,每個進程響應一個鏈接請求; 復用I/O結構:啟動一個進程,同時響應N個…

    2017-08-29
  • 馬哥教育網絡班20期 第8周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋:工作于數據鏈路層,實現多個lan之間數據的轉發,隔離沖突域,類似二層交換機。 集線器:工作于物理層,實現設備的接入,數據信號放大、中轉,共享信道。把一個端口接收的所有信號向所有端口分發出去 二層交換機:工作于數據鏈路層,可連接多個lan,根據幀的mac來轉發數據,隔離沖突域…

    Linux干貨 2016-08-15
  • 鏈接的“軟”與“硬”

    前言     類似Windows系統,Linux系統在進行文件管理時,也會引入鏈接概念。而鏈接又分為軟鏈接和硬鏈接,兩種鏈接適用于不同場合、不同用途,各有優缺點。在介紹軟硬兩種鏈接之前,需要先引入inode的概念。 Inode:     系統在管理文件時,為了有序尋址,會將元數據(metadata)和用戶數據…

    Linux干貨 2016-10-20
  • linux 進程及作業管理

     1、Process: 運行中的程序的一個副本,是被載入內存的一個指令集合 進程ID(Process ID,PID)號碼被用來標記各個進程 UID、GID、和SELinux語境決定對文件系統的存取和訪問權限, 通常從執行進程的用戶來繼承 存在生命周期 Uninterruptible sleep: 不可中斷的睡眠 Interruptible slee…

    Linux干貨 2017-08-28
  • 馬哥linux0726課程內容

    課堂內容筆記   使用幾個符號可以使用原始命令 \,’’,絕對路徑運行 這三種方法都可以使用到原始命令,不使用別名   別名-內部命令-緩存-外部命令 使用命令的優先級   man幫助具體用法 makewhatis老版本安裝whatis mandb新版本安裝whatis man的具體路徑在/usr/share/man whati…

    Linux干貨 2016-08-04
欧美性久久久久