1. 程式人生 > >linux 目錄結構詳細介紹

linux 目錄結構詳細介紹

目錄

1、樹狀目錄結構圖

2、/目錄

3、/etc/目錄

4、/usr/目錄

5、/var/目錄

6、/proc/目錄

7、/dev/目錄

該文章主要來自於網路進行整理。

目錄結構參考地址:

下面紅色字型為比較重要的目錄

1、樹狀目錄結構

在這裡插入圖片描述

2、/目錄

目錄

描述

/

第一層次結構的根、整個檔案系統層次結構的根目錄。

/bin/

需要在單使用者模式可用的必要命令(可執行檔案);面向所有使用者,例如:cat、ls、cp,和/usr/bin類似。

/boot/

載入程式檔案,例如:kernel、initrd;時常是一個單獨的分割槽[6]

/dev/

必要裝置, 例如:, /dev/null.

/etc/

特定主機,系統範圍內的配置檔案。

關於這個名稱目前有爭議。在貝爾實驗室關於UNIX實現文件的早期版本中,/etc 被稱為/etcetra 目錄,[7]這是由於過去此目錄中存放所有不屬於別處的所有東西(然而,FHS限制/etc存放靜態配置檔案,不能包含二進位制檔案)。[8]自從早期文件出版以來,目錄名稱已被以各種方式重新稱呼。最近的解釋包括反向縮略語如:“可編輯的文字配置”(英文 “Editable Text Configuration”)或"擴充套件工具箱"(英文 “Extended Tool Chest”)。[9]

/etc/opt/

/opt/的配置檔案

/etc/X11/

X_Window系統(版本11)的配置檔案

/etc/sgml/

SGML的配置檔案

/etc/xml/

XML的配置檔案

/home/

使用者的家目錄,包含儲存的檔案、個人設定等,一般為單獨的分割槽。

/lib/

/bin/ and /sbin/中二進位制檔案必要的庫檔案。

/media/

可移除媒體(如CD-ROM)的掛載點 (在FHS-2.3中出現)。

/lost+found

在ext3檔案系統中,當系統意外崩潰或機器意外關機,會產生一些檔案碎片在這裡。當系統在開機啟動的過程中fsck工具會檢查這裡,並修復已經損壞的檔案系統。當系統發生問題。可能會有檔案被移動到這個目錄中,可能需要用手工的方式來修復,或移到檔案到原來的位置上。

/mnt/

臨時掛載的檔案系統。比如cdrom,u盤等,直接插入光碟機無法使用,要先掛載後使用

/opt/

可選應用軟體包。

/proc/

虛擬檔案系統,將核心與程序狀態歸檔為文字檔案(系統資訊都存放這目錄下)。例如:uptime、 network。在Linux中,對應Procfs格式掛載。該目錄下檔案只能看不能改(包括root)

/root/

超級使用者的家目錄

/sbin/

必要的系統二進位制檔案,例如: init、 ip、 mount。sbin目錄下的命令,普通使用者都執行不了。

/srv/

站點的具體資料,由系統提供。

/tmp/

臨時檔案(參見 /var/tmp),在系統重啟時目錄中檔案不會被保留。

/usr/

預設軟體都會存於該目錄下。用於儲存只讀使用者資料的第二層次;包含絕大多數的(多)使用者工具和應用程式。

/var/

變數檔案——在正常執行的系統中其內容不斷變化的檔案,如日誌,離線檔案和臨時電子郵件檔案。有時是一個單獨的分割槽。如果不單獨分割槽,有可能會把整個分割槽充滿。如果單獨分割槽,給大給小都不合適。

3、/etc/目錄

特定主機系統範圍內的配置檔案。

目錄

描述

/etc/rc /etc/rc.d

/etc/rc*.d

啟動、或改變執行級時執行的scripts或scripts的目錄.

/etc/hosts

本地域名解析檔案

/etc/sysconfig/network

IP、掩碼、閘道器、主機名配置

/etc/resolv.conf

DNS伺服器配置

/etc/fstab

開機自動掛載系統,所有分割槽開機都會自動掛載

/etc/inittab

設定系統啟動時Init程序將把系統設定成什麼樣的runlevel及載入相關的啟動檔案配置

/etc/exports

設定NFS系統用的配置檔案路徑

/etc/init.d

這個目錄來存放系統啟動指令碼

/etc/profile, /etc/csh.login, /etc/csh.cshrc

全域性系統環境配置變數

/etc/issue

認證前的輸出資訊,預設輸出版本核心資訊

/etc/motd

設定認證後的輸出資訊,

/etc/mtab

當前安裝的檔案系統列表.由scripts初始化,並由mount 命令自動更新.需要一個當前安裝的檔案系統的列表時使用,例如df 命令

/etc/group

類似/etc/passwd ,但說明的不是使用者而是組.

/etc/passwd

使用者資料庫,其中的域給出了使用者名稱、真實姓名、家目錄、加密的口令和使用者的其他資訊.

/etc/shadow

在安裝了影子口令軟體的系統上的影子口令檔案.影子口令檔案將/etc/passwd 檔案中的加密口令移動到/etc/shadow 中,而後者只對root可讀.這使破譯口令更困難.

/etc/sudoers

可以sudo命令的配置檔案

/etc/syslog.conf

系統日誌引數配置

/etc/login.defs

設定使用者帳號限制的檔案

/etc/securetty

確認安全終端,即哪個終端允許root登入.一般只列出虛擬控制檯,這樣就不可能(至少很困難)通過modem或網路闖入系統並得到超級使用者特權.

/etc/printcap

類似/etc/termcap ,但針對印表機.語法不同.

/etc/shells

列出可信任的shell.chsh 命令允許使用者在本檔案指定範圍內改變登入shell.提供一臺機器FTP服務的服務程序ftpd 檢查使用者shell是否列在 /etc/shells 檔案中,如果不是將不允許該使用者登入.

/etc/xinetd.d

如果伺服器是通過xinetd模式執行的,它的指令碼要放在這個目錄下。有些系統沒有這個目錄,比如Slackware,有些老的版本也沒有。在Redhat Fedora中比較新的版本中存在。

/etc/opt/

/opt/的配置檔案

/etc/X11/

X_Window系統(版本11)的配置檔案

/etc/sgml/

SGML的配置檔案

/etc/xml/

XML的配置檔案

/etc/skel/

預設建立使用者時,把該目錄拷貝到家目錄下

4、/usr/目錄

預設軟體都會存於該目錄下。用於儲存只讀使用者資料的第二層次;包含絕大多數的使用者工具和應用程式。

目錄

描述

/usr/X11R6

存放X-Windows的目錄;

/usr/games

存放著XteamLinux自帶的小遊戲;

/usr/doc

Linux技術文件;

/usr/include

用來存放Linux下開發和編譯應用程式所需要的標頭檔案;

/usr/lib

存放一些常用的動態連結共享庫和靜態檔案庫;

/usr/man

幫助文件所在的目錄;

/usr/src

Linux開放的原始碼,就存在這個目錄,愛好者們別放過哦;

/usr/bin/

非必要可執行檔案 (在單使用者模式中不需要);面向所有使用者。

/usr/lib/

/usr/bin/和/usr/sbin/中二進位制檔案的庫。

/usr/sbin/

非必要的系統二進位制檔案,例如:大量網路服務的守護程序。

/usr/share/

體系結構無關(共享)資料。

/usr/src/

原始碼,例如:核心原始碼及其標頭檔案。

/usr/X11R6/

X Window系統版本 11, Release 6.

/usr/local/

本地資料的第三層次,具體到本臺主機。通常而言有進一步的子目錄,例如:bin/、lib/、share/.這是提供給一般使用者的/usr目錄,在這裡安裝一般的應用軟體;

5、/var/目錄

/var 包括系統一般執行時要改變的資料.每個系統是特定的,即不通過網路與其他計算機共享.

目錄

描述

/var/log/message

日誌資訊,按周自動輪詢

/var/spool/cron/root

定時器配置檔案目錄,預設按使用者命名

/var/log/secure

記錄登陸系統存取資訊的檔案,不管認證成功還是認證失敗都會記錄

/var/log/wtmp

記錄登陸者資訊的檔案,last,who,w命令資訊來源於此

/var/spool/clientmqueue/

當郵件服務未開啟時,所有應發給系統管理員的郵件都將堆放在此

/var/spool/mail/

郵件目錄

/var/tmp

比/tmp 允許的大或需要存在較長時間的臨時檔案. (雖然系統管理員可能不允許/var/tmp 有很舊的檔案.)

/var/lib

系統正常執行時要改變的檔案.

/var/local

/usr/local 中安裝的程式的可變資料(即系統管理員安裝的程式).注意,如果必要,即使本地安裝的程式也會使用其他/var 目錄,例如/var/lock .

/var/lock

鎖定檔案.許多程式遵循在/var/lock 中產生一個鎖定檔案的約定,以支援他們正在使用某個特定的裝置或檔案.其他程式注意到這個鎖定檔案,將不試圖使用這個裝置或檔案.

/var/log/

各種程式的Log檔案,特別是login (/var/log/wtmp log所有到系統的登入和登出) 和syslog (/var/log/messages 裡儲存所有核心和系統程式資訊. /var/log 裡的檔案經常不確定地增長,應該定期清除.

/var/run

儲存到下次引導前有效的關於系統的資訊檔案.例如, /var/run/utmp 包含當前登入的使用者的資訊.

/var/cache/

應用程式快取資料。這些資料是在本地生成的一個耗時的I/O或計算結果。應用程式必須能夠再生或恢復資料。快取的檔案可以被刪除而不導致資料丟失。

6、/proc/目錄

虛擬檔案系統,將核心與程序狀態歸檔為文字檔案(系統資訊都存放這目錄下)。

例如:uptime、 network。在Linux中,對應Procfs格式掛載。該目錄下檔案只能看不能改(包括root)

目錄

描述

/proc/meminfo

檢視記憶體資訊

/proc/loadavg

還記得 top 以及 uptime 吧?沒錯!上頭的三個平均數值就是記錄在此!

/proc/uptime

就是用 uptime 的時候,會出現的資訊啦!

/proc/cpuinfo

關於處理器的資訊,如型別、廠家、型號和效能等。

/proc/cmdline

載入 kernel 時所下達的相關引數!查閱此檔案,可瞭解系統是如何啟動的!

/proc/filesystems

目前系統已經載入的檔案系統羅!

/proc/interrupts

目前系統上面的 IRQ 分配狀態。

/proc/ioports

目前系統上面各個裝置所配置的 I/O 位址。

/proc/kcore

這個就是記憶體的大小啦!好大對吧!但是不要讀他啦!

/proc/modules

目前我們的 Linux 已經載入的模組列表,也可以想成是驅動程式啦!

/proc/mounts

系統已經掛載的資料,就是用 mount 這個命令呼叫出來的資料啦!

/proc/swaps

到底系統掛載入的記憶體在哪裡?呵呵!使用掉的 partition 就記錄在此啦!

/proc/partitions

使用 fdisk -l 會出現目前所有的 partition 吧?在這個檔案當中也有紀錄喔!

/proc/pci

在 PCI 匯流排上面,每個裝置的詳細情況!可用 lspci 來查閱!

/proc/version

核心的版本,就是用 uname -a 顯示的內容啦!

/proc/bus/*

一些匯流排的裝置,還有 U盤的裝置也記錄在此喔!

7、/dev/目錄

裝置檔案分為兩種:塊裝置檔案(b)和字元裝置檔案© 裝置檔案一般存放在/dev目錄下,

對常見裝置檔案作如下說明:

目錄

描述

/dev/hd[a-t]

IDE裝置

/dev/sd[a-z]

SCSI裝置

/dev/fd[0-7]

標準軟碟機

/dev/md[0-31]

軟raid裝置

/dev/loop[0-7]

本地迴環裝置

/dev/ram[0-15]

記憶體

/dev/null

無限資料接收裝置,相當於黑洞

/dev/zero

無限零資源

/dev/tty[0-63]

虛擬終端

/dev/ttyS[0-3]

串列埠

/dev/lp[0-3]

並口

/dev/console

控制檯

/dev/fb[0-31]

framebuffer

/dev/cdrom

=> /dev/hdc

/dev/modem

=> /dev/ttyS[0-9]

/dev/pilot

=> /dev/ttyS[0-9]

/dev/random

隨機數裝置

/dev/urandom

隨機數裝置