Linux 中各個文件夾的作用


/  根目錄

  包含了幾乎所的文件目錄。相當於中央系統。進入的最簡單方法是:cd /。

 

/boot  引導程序,內核等存放的目錄

這個目錄,包括了在引導過程中所必需的文件。在最開始的啟動階段,通過引導程序將內核加載到內存,完成內核的啟動(這個時候,虛擬文件系統還不存在,加載的內核雖然是從硬盤讀取的,但是沒經過Linux的虛擬文件系統,這是比較底層的東西來實現的。然后內核自己創建好虛擬文件系統,並且從虛擬文件系統的其他子目錄中(例如/sbin 和 /etc加載需要在開機啟動的其他程序或者服務或者特定的動作(部分可以由用戶自己在相應的目錄中修改相應的文件來配制。如果我們的機器中包含多個操作系統,那么可以通過修改這個目錄中的某個配置文件(例如grub.conf來調整啟動的默認操作系統,系統啟動的擇菜單,以及啟動延遲等參數。

 

/sbin  超級用戶可以使用的命令的存放目錄

存放大多涉及系統管理的命令(例如引導系統的init程序,是超級權限用戶root的可執行命令存放地,普通用戶無權限執行這個目錄下的命令(但是有時普通用戶也可能會用到。)我們要記住,凡是目錄sbin中包含的都是root權限才能執行的。

 

 

/bin  普通用戶可以使用的命令的存放目錄
系統所需要的那些命令位於此目錄,比如ls、cp、mkdir等命令;類似的目錄還/usr/bin,/usr/local/bin等等。這個目錄中的文件都是可執行的、普通用戶都可以使用的命令。作為基礎系統所需要的最基礎的命令就是放在這里。


/lib  根目錄下的所程序的共享庫目錄
此目錄下包含系統引導和在根用戶執行命令時候所必需用到的共享庫。做個不太好但是比較形象的比喻,點類似於Windows上面的system32目錄。理說,這里存放的文件應該是/bin目錄下程序所需要的庫文件的存放地,也不排除一些例外的情況。類似的目錄還/usr/lib,/usr/local/lib等等。

 

/dev 設備文件目錄
在Linux中設備都是以文件形式出現,這里的設備可以是硬盤,鍵盤,鼠標,網卡,終端,等設備,通過訪問這些文件可以訪問到相應的設備。設備文件可以使用mknod命令來創建;而為了將對這些設備文件的訪問轉化為對設備的訪問,需要向相應的設備提供設備驅動模塊(一般將設備驅動編譯之后,生成的結果是一個*.ko類型的二進制文件,在內核啟動之后,再通過insmod等命令加載相應的設備驅動之后,我們就可以通過設備文件來訪問設備了。一般來說,想要Linux系統支持某個設備,需要 相應的硬件設備,支持硬件的驅動模塊,以及相應的設備文件。

 

/home  普通用戶的家目錄
在Linux機器上,用戶主目錄通常直接或間接地置在此目錄下。其結構通常由本地機的管理員來決定。通常而言,系統的每個用戶都自己的家目錄,目錄以用戶名作為名字存放在/home下面(例如quietheart用戶,其家目錄的名字為/home/quietheart。該目錄中保存了絕大多數的用戶文件(用戶自己的配置文件,定制文件,文檔,數據等),

/root  用戶root的$HOME目錄
系統管理員(就是root用戶或超級用戶)的主目錄比較特殊,不存放在/home中,而是直接放在/root目錄下了。

 

/etc 全局的配置文件存放目錄。
系統和程序一般都可以通過修改相應的配置文件,來進行配置。例如,要配置系統開機的時候啟動那些程序,配置某個程序啟動的時候顯示什么樣的風格等等。通常這些配置文件都集中存放在/etc目錄中,所以想要配置什么東西的話,可以在/etc下面尋找我們可能需要修改的文件。

1. /etc/rc或/etc/rc.d或/etc/rc?.d
啟動、或改變運行級時運行的腳本或腳本的目錄。
2. /etc/passwd
用戶數據庫,其中的域給出了用戶名、真實姓名、用戶起始目錄、加密口令和用戶的其
他信息。
3. /etc/fdprm
軟盤參數表,用以說明不同的軟盤格式。可用setfdprm 進行設置。更多的信息見setfdprm
的幫助頁。
4. /etc/fstab
指定啟動時需要自動安裝的文件系統列表。也包括用swapon -a啟用的s w a p區的信息。
5. /etc/group
類似/etc/passwd ,但說明的不是用戶信息而是組的信息。包括組的各種數據。
6. /etc/inittab
init 的配置文件。
7. /etc/issue
包括用戶在登錄提示符前的輸出信息。通常包括系統的一段短說明或歡迎信息。具體內
容由系統管理員確定。
8. /etc/magic
“file”的配置文件。包含不同文件格式的說明,“file”基於它猜測文件類型。
9. /etc/motd
motd是message of the day的縮寫,用戶成功登錄后自動輸出。內容由系統管理員確定。
常用於通告信息,如計划關機時間的警告等。
10. /etc/mtab
當前安裝的文件系統列表。由腳本(scritp)初始化,並由mount 命令自動更新。當需要一
個當前安裝的文件系統的列表時使用(例如df 命令)。
11. /etc/shadow
在安裝了影子(shadow)口令軟件的系統上的影子口令文件。影子口令文件將/etc/passwd
文件中的加密口令移動到/etc/shadow中,而后者只對超級用戶(root)可讀。這使破譯口令更困
難,以此增加系統的安全性。
12. /etc/login.defs
login命令的配置文件。
13. /etc/printcap
類似/etc/termcap ,但針對打印機。語法不同。
14. /etc/profile/etc/csh.login、/etc/csh.cshrc
登錄或啟動時bourne或c shells執行的文件。這允許系統管理員為所有用戶建立全局缺省環境。
15. /etc/securetty
確認安全終端,即哪個終端允許超級用戶(root)登錄。一般只列出虛擬控制台,這樣就不
可能(至少很困難)通過調制解調器(modem)或網絡闖入系統並得到超級用戶特權。
16. /etc/shells
列出可以使用的shell。chsh 命令允許用戶在本文件指定范圍內改變登錄的shell。提供一
台機器f t p服務的服務進程ftpd 檢查用戶s h e l l是否列在/etc/shells 文件中,如果不是,將不允
許該用戶登錄。
17. /etc/termcap
終端性能數據庫。說明不同的終端用什么“轉義序列”控制。寫程序時不直接輸出轉義
序列(這樣只能工作於特定品牌的終端),而是從/etc/termcap 中查找要做的工作的正確序列。
這樣,多數的程序可以在多數終端上運行。

 


/usr  這個目錄中包含了命令庫文件和在通常操作中不會修改的文件。
這個目錄對於系統來說也是一個非常重要的目錄,其地位類似Windows上面的”Program Files”目錄(安裝程序的時候,默認就是安裝在此文件內部某個子文件夾內。輸入命令后系統默認執行/usr/bin下的程序(當然,前提是這個目錄的路徑已經被添加到了系統的環境變量中。此目錄通常也會掛載一個獨立的磁盤分區,它應保存共享只讀類文件,這樣它可以被運行Linux的不同主機掛載。

/usr/lib
目標庫文件,包括動態連接庫加上一些通常不是直接調用的可執行文件的存放位置。
這個目錄功能類似/lib目錄,理說,這里存放的文件應該是/bin目錄下程序所需要的庫文件的存放地,也不排除一些例外的情況。

/usr/bin
一般使用者使用並且不是系統自檢等所必需可執行文件的目錄。
此目錄相當於根文件系統下的對應目錄(/bin,非啟動系統,非修復系統以及非本地安裝的程序一般都放在此目錄下。

/usr/sbin
管理員使用的非系統必須的可執行文件存放目錄。
此目錄相當於根文件系統下的對應目錄(/sbin,保存系統管理程序的二進制文件,並且這些文件不是系統啟動或文件系統掛載 /usr 目錄或修復系統所必需的。

/usr/share
存放共享文件的目錄。
在此目錄下不同的子目錄中保存了同一個操作系統在不同構架下工作時特定應用程序的共享數據(例如程序文檔信息)。使用者可以找到通常放在 /usr/doc 或 /usr/lib 或 /usr/man 目錄下的這些類似數據。

/usr/include
C程序語言編譯使用的頭文件。
linux下開發和編譯應用程序所需要的頭文件一般都存放在這里,通過頭文件來使用某些庫函數。默認來說這個路徑被添加到了環境變量中,這樣編譯開發程序的時候編譯器會自動搜索這個路徑,從中找到你的程序中可能包含的頭文件。

/usr/local
安裝本地程序的一般默認路徑。
當我們下載一個程序源代碼,編譯並且安裝的時候,如果不特別指定安裝的程序路徑,那么默認會將程序相關的文件安裝到這個目錄的對應目錄下。也就是說,這個目錄存放的內容,一般都是我們后來自己安裝的軟件的默認路徑,如果擇了這個默認路徑作為軟件的安裝路徑,被安裝的軟件的所文件都限制在這個目錄中,其中的子目錄就相應於根目錄的子目錄。

 

 

/proc  特殊文件目錄
這個目錄采用一種特殊的文件系統格式(proc格式,內核支持這種格式。其中包含了全部虛擬文件。它們並不保存在磁盤中,也不占據磁盤空間(盡管命令ls -c會顯示它們的大小)。當您查看它們時,您實際上看到的是內存里的信息,這些文件助於我們了解系統內部信息。例如:


1/ 關於進程1的信息目錄。每個進程在/proc 下一個名為其進程號的目錄。
cpuinfo 處理器信息,如類型、制造商、型號和性能。
devices 當前運行的核心配置的設備驅動的列表。
dma 顯示當前使用的DMA通道。
filesystems 核心配置的文件系統。
interrupts 顯示使用的中斷,and how many of each there have been.
ioports 當前使用的I/O端口。
kcore 系統物理內存映象。與物理內存大小一樣,但實際不占這么多內存;
kmsg 核心輸出的消息。也被送到syslog 。
ksyms 核心符號表。
loadavg 系統”平均負載”;3個沒意義的指示器指出系統當前的工作量。
meminfo 存儲器使用信息,包括物理內存和swap。
modules 當前加載了哪些核心模塊。
net 網絡協議狀態信息。
self 到查看/proc 的程序的進程目錄的符號連接。
stat 系統的不同狀態
uptime 系統啟動的時間長度。
version 核心版本。


/opt  可擇的文件目錄
這個目錄表示的是可擇的意思,些自定義軟件包或者第方工具,就可以安裝在這里。

 

/mnt  臨時掛載目錄
這個目錄一般是用於存放掛載儲存設備的掛載目錄的,比如磁盤,光驅,網絡文件系統等,當我們需要掛載某個磁盤設備的時候,可以把磁盤設備掛載到這個目錄上去,這樣我們可以直接通過訪問這個目錄來訪問那個磁盤了。一般來說,我們最好在/mnt目錄下面多建立幾個子目錄,掛載的時候掛載到這些子目錄上面,因為通常我們可能不僅僅是掛載一個設備吧?

 

/media  掛載的媒體設備目錄
掛載的媒體設備目錄,一般外部設備掛載到這里,例如cdrom等。比如我們插入一個U盤,我們一般會發現,Linux自動在這個目錄下建立一個disk目錄,然后把U盤掛載到這個disk目錄上,通過訪問這個disk來訪問U盤。

 

/var  內容經常變化的目錄
此目錄下文件的大小可能會改變,如緩沖文件,日志文件,緩存文件,等一般都存放在這里。

 

/tmp  臨時文件目錄
該目錄存放系統中的一些臨時文件,文件可能會被系統自動清空。

 

/lost+found   恢復文件存放的位置
當系統崩潰的時候,在系統修復過程中需要恢復的文件,可能就會在這里被找到了,這個目錄一般為空。

 

另外,有些目錄容易混淆,這里簡單區分一下:
/bin,/sbin與/usr/bin,/usr/sbin:
/bin一般存放對於用戶和系統來說“必須”的程序(二進制文件)。
/sbin一般存放用於系統管理的“必需”的程序(二進制文件),一般普通用戶不會使用,根用戶使用。
/usr/bin一般存放的只是對用戶和系統來說“不是必需的”程序(二進制文件)。
/usr/sbin一般存放用於系統管理的系統管理的不是必需的程序(二進制文件)。

/lib與/usr/lib:
/lib和/usr/lib的區別類似/bin,/sbin與/usr/bin,/usr/sbin。
/lib一般存放對於用戶和系統來說“必須”的庫(二進制文件)。
/usr/lib一般存放的只是對用戶和系統來說“不是必需的”庫(二進制文件)。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM