在Linux中,所有的文件與目錄都由根目錄 / 開始。
反正開頭不是 / 就屬于相對(duì)路徑的寫法
.:表示當(dāng)前目錄,也可以使用 ./ 來表示。 ..:表示上一層目錄,也可以 ../ 來表示。
目錄
|
應(yīng)放置的文件內(nèi)容
|
/
|
根目錄root(/),一般建議在根目錄下面只有目錄,不要直接有文件。根目錄是啟動(dòng)時(shí)系統(tǒng)第一個(gè)載入的分區(qū),所以,所有啟動(dòng)過程會(huì)用到的文件應(yīng)該都放在這個(gè)分區(qū)中。舉例來說,/etc、/bin、/dev、/lib、/sbin這5個(gè)子目錄都應(yīng)該要與根目錄連在一起,不可獨(dú)立成為某個(gè)分區(qū)
|
/bin, /usr/bin, /usr/local/bin
|
除了 /bin之外,/usr/local/bin、/usr/bin也是放置“用戶可執(zhí)行的二進(jìn)制文件的目錄”。舉例來說,ls、mv、rm、mkdir、rmdir、gzip、tar、cat、cp、mount等重要命令都放在這個(gè)目錄中
|
/boot
|
這個(gè)目錄的主要目的是放置Linux系統(tǒng)啟動(dòng)會(huì)用到的文件。啟動(dòng)會(huì)用到Linux的核心文件。這個(gè)目錄下面的文件vmlinuz就是Linux的核心。非常重要。如果引導(dǎo)程序(loader)選擇grub,那么這個(gè)目錄內(nèi)還有 /boot/grub子目錄
|
/dev
|
在Linux系統(tǒng)上,任何設(shè)備都以文件類型存在于這個(gè)目錄中。存取這個(gè)目錄下面的某個(gè)文件,就等于存取某個(gè)設(shè)備。設(shè)備又分為字符設(shè)備(character device),例如鍵盤、鼠標(biāo)等;以及塊設(shè)備(block device),例如硬盤、光盤等等。在此目錄下的文件會(huì)多出兩個(gè)屬性,分別是主設(shè)備號(hào)(major device number)與輔設(shè)備號(hào)(minor device number)。系統(tǒng)核心就是通過這兩個(gè)號(hào)碼來判斷設(shè)備的。重要的文件有 /dev/null、/dev/tty[1-6]、/dev/ttyS*、/dev/lp*、/dev/hd*、/dev/sd* 等等
|
/etc
|
系統(tǒng)主要的設(shè)置文件幾乎都放在這個(gè)目錄內(nèi),例如人員的賬號(hào)密碼文件、各種服務(wù)的起始文件等等。一般來說,這個(gè)目錄下的各文件屬性是可以讓一般用戶查看的,但只有root有權(quán)修改。并且,在此目錄下的文件幾乎都是ASCII的純文本文件。不過,FHS建議不要在這個(gè)目錄中放置可執(zhí)行文件。比較重要的文件有:/etc/inittab、/etc/init.d/、/etc /modprobe.conf、/etc/X11、/etc/fstab、 /etc/sysconfig/ 等等。另外,其下重要的目錄有:
· /etc/init.d/:所有服務(wù)的默認(rèn)啟動(dòng)腳本都放在這里,例如要啟動(dòng)或者關(guān)閉iptables的話:
/etc/init.d/iptables start
/etc/init.d/iptables stop
|
|
· /etc/xinetd.d/:這就是所謂的超級(jí)守護(hù)程序(super daemon)管理的各項(xiàng)服務(wù)的設(shè)置文件目錄。
· /etc/X11:與X Window有關(guān)的各種設(shè)置文件都在這里,尤其是xorg.conf或XF86Config這兩個(gè)X Server的設(shè)置文件
|
/home
|
這是系統(tǒng)默認(rèn)的用戶家目錄(home directory)。在新增一般用戶賬號(hào)時(shí),默認(rèn)的用戶家目錄都會(huì)放到這里。比較重要的是,家目錄有兩種代號(hào):
~:表示當(dāng)前這個(gè)用戶的家目錄,而
~dmtsai:則表示dmtsai的家目錄
|
/lib, /usr/lib, /usr/local/lib
|
系統(tǒng)會(huì)使用到的函數(shù)庫的目錄。程序在運(yùn)行過程中,可能會(huì)調(diào)用一些額外的功能參數(shù),這需要函數(shù)庫的協(xié)助。這些函數(shù)庫就放在此處。比較重要的是 /lib/modules目錄內(nèi)會(huì)放核心的相關(guān)模塊
|
/lost+found
|
系統(tǒng)出現(xiàn)異常,產(chǎn)生錯(cuò)誤時(shí),會(huì)將一些遺失的片段放于此目錄下,通常這個(gè)目錄會(huì)自動(dòng)出現(xiàn)在某個(gè)分區(qū)最頂層的目錄下。例如在 /disk中加裝硬盤,在這個(gè)目錄下就會(huì)自動(dòng)產(chǎn)生一個(gè)這樣的目錄: /disk/lost+found
|
/mnt
/media
|
這是軟盤與光盤的默認(rèn)載入點(diǎn);通常軟盤掛在 /mnt/floppy下,而光盤掛在 /mnt/cdrom下,不過也不一定。隨便找一個(gè)地方來載入也可以。另外,當(dāng)前也規(guī)劃出另一個(gè) /media的目錄。與 /mnt有點(diǎn)類似
|
/opt
|
這是給主機(jī)額外安裝軟件所放的目錄。舉例來說,FC4使用Fedora團(tuán)體開發(fā)的軟件,如果今天想要自行安裝新的KDE桌面軟件,可以將該軟件安裝在這個(gè)目錄下。不過,以前的Linux系統(tǒng)中,我們還是習(xí)慣放在 /usr/local目錄下
|
/proc
|
這個(gè)目錄本身是一個(gè)“虛擬文件系統(tǒng)”。它放置的數(shù)據(jù)都在內(nèi)存中,例如系統(tǒng)核心、形成信息、外部設(shè)備的狀態(tài)及網(wǎng)絡(luò)狀態(tài)等等。因?yàn)檫@個(gè)目錄下的數(shù)據(jù)都在內(nèi)存中,所以本身不占任何硬盤空間。比較重要的文件有/proc/cpuinfo、/proc/dma、/proc/ interrupts、/proc/ioports、/proc/net/* 等等
|
/root
|
系統(tǒng)管理員(root)的家目錄。之所以放在這里,是因?yàn)槲覀兲徇^,系統(tǒng)第一個(gè)啟動(dòng)就載入的分區(qū)為 /,而我們希望 /root能夠與 / 放在同一塊分區(qū)上
|
/sbin, /usr/sbin, /usr/local/sbin
|
放一些系統(tǒng)管理員才會(huì)用到的執(zhí)行命令,例如:fdisk、mke2fs、fsck、mkswap、mount等等。與 /bin不太一樣的地方是,這幾個(gè)目錄是給root等系統(tǒng)管理用的。但本目錄下的執(zhí)行文件還是可以讓一般用戶用來“查看”而不能設(shè)置
|
/srv
|
一些服務(wù)啟動(dòng)之后,這些服務(wù)所需要取用的數(shù)據(jù)目錄。舉例來說,WWW服務(wù)器需要的網(wǎng)頁數(shù)據(jù)就可以放在 /srv/www里
|
/tmp
|
這是讓一般用戶或者是正在執(zhí)行的程序臨時(shí)放置文件的地方。這個(gè)目錄是任何人都能存取的,所以需要定期清理。當(dāng)然,重要數(shù)據(jù)不可放在此目錄
|
/usr
|
根據(jù)FHS規(guī)范的第二層內(nèi)容,在 /usr目錄下,包含系統(tǒng)的主要程序、圖形界面所需要的文件、額外的函數(shù)庫、本機(jī)自行安裝的軟件,以及共享的目錄與文件等等。事實(shí)上,它有點(diǎn)像Windows操作系統(tǒng)中的“Program files”與“WinNT”這兩個(gè)目錄的結(jié)合。在此目錄下的重要子目錄有:
· /usr/bin, /usr/sbin:一般身份用戶與系統(tǒng)管理員可執(zhí)行的文件放置目錄。
· /usr/include:c/c++ 等程序語言的文件頭(header)與包含文件(include)放置處,當(dāng)以tarball方式(*.tar.gz的方式安裝軟件)安裝某些數(shù)據(jù)時(shí),會(huì)使用到里頭的許多包含文件。
· /usr/lib:各應(yīng)用軟件的函數(shù)庫文件放置目錄。
· /usr/local:本機(jī)自行安裝的軟件默認(rèn)放置的目錄。當(dāng)前也適用于 /opt目錄。在安裝完Linux之后,基本上所有的配置都有了,但軟件總是可以升級(jí)的,例如要升級(jí)代理服務(wù),則通常軟件默認(rèn)的安裝地方就是在 /usr/local(local是“當(dāng)?shù)?#8221;的意思),同時(shí),安裝完畢之后所得到的執(zhí)行文件,為了與系統(tǒng)原執(zhí)行文件有分別,升級(jí)后的執(zhí)行文件通常放在 /usr/local/bin。建議將后來才安裝的軟件放在這里,便于管理
|
|
· /usr/share:共享文件放置的目錄,例如下面兩個(gè)目錄:
n /usr/share/doc:放置一些系統(tǒng)幫助文件的地方,例如安裝了grub,那么在該目錄下面找一找,就可以查到lilo的幫助文件了。很方便。
n /usr/share/man:manpage的文件文件目錄。就是使用man的時(shí)候查詢的路徑。例如使用man ls命令時(shí),就會(huì)查出 /usr/share/ man/man1/ls.1.gz幫助文件的內(nèi)容。
Ÿ /usr/src:Linux系統(tǒng)相關(guān)的程序代碼放置目錄,例如 /usr/ src/linux為核心源碼。
Ÿ /usr/X11R6:系統(tǒng)內(nèi)的X Window System所需的執(zhí)行文件幾乎都放在這里
|
/var
|
這個(gè)目錄也很重要,也是FHS規(guī)范的第二層目錄內(nèi)容。它主要放置系統(tǒng)執(zhí)行過程中經(jīng)常變化的文件。舉例來說,例如緩存(cache)或者是隨時(shí)更改的登錄文件(log file)。此外,某些軟件執(zhí)行過程中會(huì)寫入的數(shù)據(jù)庫文件,例如MySQL數(shù)據(jù)庫,也都寫入這個(gè)目錄中。很重要。它下面的重要目錄有:
· /var/cache:程序文件在運(yùn)行過程當(dāng)中的一些暫存盤。
· /var/lib:程序執(zhí)行的過程中,需要使用到的數(shù)據(jù)文件放置的目錄。舉例來說,locate數(shù)據(jù)庫與MySQL及rpm等數(shù)據(jù)庫系統(tǒng),都寫在這個(gè)目錄內(nèi)。
· /var/log:登錄文件放置的目錄。很重要。例如 /var/log/ messages就是總管所有登錄文件的文件。
· /var/lock:某些設(shè)備具有一次性寫入的特點(diǎn),例如tab(磁帶機(jī)),此時(shí),為了避免被其他人干擾而破壞正在運(yùn)行的操作,因此,會(huì)將該設(shè)備lock(鎖)起來,以確定該設(shè)備只能被單一程序所用。
· /var/run:某些程序或者是服務(wù)啟動(dòng)后,會(huì)將它們的PID放在這個(gè)目錄下。
· /var/spool:是一些隊(duì)列數(shù)據(jù)存放的地方。舉例來說,主機(jī)收到電子郵件后,就會(huì)放到 /var/spool/mail中,若信件暫時(shí)發(fā)不出去,就會(huì)放到 /var/spool/mqueue目錄下,用戶工作任務(wù)分配(cron)則是放在 /var/spool/cron中
|
cd是Change Directory(改變目錄)的縮寫,這是用來切換工作目錄的命令。
pwd是Print Working Directory(顯示工作目錄)的縮寫,也就是顯示當(dāng)前所在目錄,
加上pwd -P的參數(shù)后,會(huì)不以連接文件的數(shù)據(jù)顯示,而是顯示正確的完整路徑。
mkdir(make directory,生成目錄)。請(qǐng)注意,在默認(rèn)情況下,目錄需要一層一層的建立。
就是加上 -p參數(shù)。直接使用命令:“mkdir -p /home/bird/testing/test1”,系統(tǒng)會(huì)自動(dòng)幫你將 /home、/home/bird、/home/bird/testing按順序建立起目錄。并且,如果該目錄本來就已經(jīng)存在時(shí),系統(tǒng)也不會(huì)顯示錯(cuò)誤信息。
-m強(qiáng)制給一個(gè)新目錄相關(guān)的屬性,例如上面的列表中,通過 -m 711給新目錄賦予drwx--x--x屬性。
rmdir(刪除“空”目錄)
目錄需要一層一層刪除才行。而且被刪除的目錄里,必定不能有其他目錄或文件。這也是空目錄(empty directory)的含義。如果要將所有目錄下的東西都刪除,就必須使用rm -rf test。
在執(zhí)行命令時(shí),系統(tǒng)會(huì)按照PATH的設(shè)置,去每個(gè)PATH定義的路徑下搜索執(zhí)行文件,先搜索到的命令先執(zhí)行。
|