1、概述
這是我在51cto開博的第一篇博客,從事運(yùn)維將近10年,經(jīng)驗(yàn)豐富、接觸面廣。今天我利用2個小時的時間詳解了linux系統(tǒng)目錄,其中有一些是自我了解,有一些是以前的學(xué)習(xí)資料。我開博的目的其一是與網(wǎng)友共享知識資源,其二是自我學(xué)習(xí)過程記錄。
2、目錄詳解
/ 處于linux系統(tǒng)樹形結(jié)構(gòu)的最頂端,它是linux文件系統(tǒng)的入口,所有的目錄、文件、設(shè)備都在/之下。
/bin bin是Binary的縮寫,存放著linux系統(tǒng)命令。
/dev dev是Device的縮寫。存放的是linux的外部設(shè)備,在linux中訪問設(shè)備的方式和訪問文件的方式是相同的。(注意:設(shè)備文件不是驅(qū)動程序。過去,在添加新磁盤或設(shè)備后,往往需要手動增加設(shè)備文件?,F(xiàn)在通常我們不需要手動增加設(shè)備文件,運(yùn)行一下service kudzu start ,系統(tǒng)就會自動配置相應(yīng)的設(shè)備。)
/home 用戶的主目錄。在liunx系統(tǒng)中,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。
/lib 這個目錄里存放著系統(tǒng)最基本的動態(tài)鏈接共享庫,包含許多被/bin/和/sbin/中的程序使用的庫文件,目錄/usr/lib/中含有更多用于用戶程序的庫文件。作用類似于windows里的DLL文件,幾乎所有的應(yīng)用程序都需要用到這些共享庫。
/media linux系統(tǒng)自動識別的一些設(shè)備,例如U盤、光驅(qū)、移動硬盤等,linux會把識別的設(shè)備掛載到這個目錄下。
/mnt 系統(tǒng)提供該目錄是為了讓用戶臨時掛載別的文件系統(tǒng)的,可以將光驅(qū)掛載到/mnt/上,然后進(jìn)入該目錄就可以查看光驅(qū)里的內(nèi)容。
/opt 主機(jī)額外安裝軟件所擺放的目錄。默認(rèn)是空的。
/root 這個不用介紹了吧,呵呵。超級管理員的用戶主目錄。
/selinux 這個目錄是RedHat/CentOS所特有的目錄,Selinux是一個安全機(jī)制,這個比較復(fù)雜,這個目錄就是存放Selinux相關(guān)的文件的,一般我們安裝操作系統(tǒng)的時候禁止使用它。
/sys 這是linux2.6內(nèi)核的一個很大的變化。該目錄下安裝了2.6內(nèi)核中新出現(xiàn)的一個文件系統(tǒng)sysfs,sysfs文件系統(tǒng)集成了下面3種文件系統(tǒng)的信息:針對進(jìn)程信息的proc文件系統(tǒng)、針對設(shè)備的devfs文件系統(tǒng)以及針對偽終端的devpts文件系統(tǒng)。該文件系統(tǒng)是內(nèi)核設(shè)備樹的一個直觀反映。該文件系統(tǒng)是內(nèi)核設(shè)備樹的一個直觀反映。當(dāng)一個內(nèi)核對象被創(chuàng)建的時候,對應(yīng)的文件和目錄也在內(nèi)核對象子系統(tǒng)種被創(chuàng)建。
/usr 包括與系統(tǒng)用戶直接有關(guān)的文件和目錄,例如應(yīng)用程序及支持它們的庫文件。類似于windows下的program files目錄。
/boot 包括內(nèi)核和其它系統(tǒng)啟動期間使用的文件。是啟動linux時使用的核心文件,有連接文件和鏡像文件。
/etc 存放系統(tǒng)配置文件和目錄,非常重要,經(jīng)常會用到它,要牢記。
/lost+found 默認(rèn)為空,被FSCK(file system check用來檢查和維護(hù)不一致的文件系統(tǒng)。若系統(tǒng)掉電或磁盤發(fā)生問題,可利用fsck命令對文件系統(tǒng)進(jìn)行檢查)用來放置零散文件(沒有名稱的文件)。當(dāng)系統(tǒng)非法關(guān)機(jī)后,這里就會存放一些文件。
/misc 存放雜項(xiàng)文件或目錄,即那些用途或含義不明確的文件或目錄可以存放在該目錄下。
/proc 操作系統(tǒng)運(yùn)行時,進(jìn)程(正在運(yùn)行中的程序)信息及內(nèi)核信息(比如cpu、硬盤分區(qū)、內(nèi)存信息等)存放在這里。/proc目錄是偽裝的文件系統(tǒng)proc的掛載目錄,proc并不是真正的文件系統(tǒng)。因此,這個目錄是一個虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,我們可以通過直接訪問這個目錄來獲取系統(tǒng)信息。也就是說,這個目錄的內(nèi)容不在硬盤上而是在內(nèi)存里。
/sbin 大多數(shù)涉及系統(tǒng)管理的命令都存放在該目錄中,它是超級權(quán)限用戶root的可執(zhí)行命令存放地,普通用戶無權(quán)限執(zhí)行這個目錄下的命令,凡是目錄sbin中包含的命令都是root權(quán)限才能執(zhí)行的。
/srv 該目錄存放一些服務(wù)啟動之后需要提取的數(shù)據(jù)。
/tmp 該目錄用于存放臨時文件,有時用戶運(yùn)行程序的時候,會產(chǎn)生一些臨時文件。/tmp就是用來存放臨時文件的。/var/tmp目錄和該目錄的作用是相似的。
/var 該目錄的內(nèi)容是經(jīng)常變動的,/var下有/var/log目錄用來存放系統(tǒng)日志的目錄。/var/www目錄用來定義Apache服務(wù)器站點(diǎn)存放目錄。/var/lib用來存放一些庫文件。
=======================================================================
其它重要系統(tǒng)目錄
/usr/bin 這個目錄是可執(zhí)行程序的目錄,普通用戶就有權(quán)限執(zhí)行。當(dāng)我們從系統(tǒng)自帶的軟件包安裝一個程序時,他的可執(zhí)行文件大多會放在這個目錄。相似的目錄是/usr/local/bin目錄。有時/usr/bin中的文件是/usr/local/bin的鏈接文件。
/usr/sbin 這個目錄也是可執(zhí)行程序的目錄,但大多存放涉及系統(tǒng)管理的命令。只有root權(quán)限才能執(zhí)行,相似目錄是/sbin或/usr/local/sbin或/usr/X11R6/sbin等。
/usr/src 內(nèi)核源碼默認(rèn)的放置目錄
/proc/cpuinfo 關(guān)于處理器的信息,如類似、廠家、型號和性能等。比如cat /proc/cpuinfo
/proc/devices 當(dāng)前運(yùn)行內(nèi)核所配置的所有設(shè)備清單。
/proc/filesystems 當(dāng)前運(yùn)行內(nèi)核所配置的文件系統(tǒng)。
/proc/dma 當(dāng)前正在使用的DMA通道。
/proc/interrupts 正在使用的中斷和曾經(jīng)有多少個中斷。
/proc/ioports 當(dāng)前正在使用的I/O端口。
/etc/init.d 這個目錄是用來存放系統(tǒng)或服務(wù)器以System V模式啟動的腳本,這在以System V模式啟動或初始化的系統(tǒng)中常見。比如RedHat Fedora。
/etc/xinetd.d 如果服務(wù)器是通過xinetd模式運(yùn)行的,它的腳本要放在這個目錄下。有些系統(tǒng)沒有這個目錄,比如Slackware,有些老的版本也沒有。在Redhat Fedora中比較新的版本中存在。
/etc/rc.d 這是Slackware發(fā)行版中有的一個目錄,是BSD方式啟動腳本的存放地,比如定義網(wǎng)卡,服務(wù)器開啟腳本等。
/etc/X11 是X-Window相關(guān)的配置文件存放地。
/usr/local 這個目錄一般是用來存放用戶自編譯安裝軟件的存放目錄。一般是通過源碼包安裝的軟件,如果沒有特別指定安裝目錄的話,一般是安裝在這個目錄中。
/usr/lib 該目錄和/lib目錄相似,是庫文件的存儲目錄。存放一些常用的共享庫。
/usr/share 該目錄用于存放系統(tǒng)共用的東西,比如/usr/share/fonts是字體目錄,是用戶都共用的。
/usr/share/doc 該目錄是Linux共享文檔的存放地。
/usr/share/man 該目錄是共享的幫助文件的存放地。
/var/adm 比如軟件包安裝信息、日志、管理信息等就存放在該目錄下,在Slackware操作系統(tǒng)中是有這個目錄的。在Fedora中好象沒有。
/var/log 該目錄用于存放系統(tǒng)日志。
/var/spool 打印機(jī)、郵件、代理服務(wù)器等假脫機(jī)目錄存放在該目錄下。