Linux文件系統(tǒng)介紹
一、簡介
文件系統(tǒng)就是分區(qū)或磁盤上的所有文件的邏輯集合。
文件系統(tǒng)不僅包含著文件中的數(shù)據(jù)而且還有文件系統(tǒng)的結(jié)構(gòu),所有Linux 用戶和程序看到的文件、目錄、軟連接及文件保護信息等都存儲在其中。
不同Linux發(fā)行版本之間的文件系統(tǒng)差別很少,主要表現(xiàn)在系統(tǒng)管理的特色工具以及軟件包管理方式的不同,文件目錄結(jié)構(gòu)基本上都是一樣的。
文件系統(tǒng)有多種類型
- ext2 : 早期linux中常用的文件系統(tǒng);
- ext3 : ext2的升級版,帶日志功能;
- RAMFS : 內(nèi)存文件系統(tǒng),速度很快;
- iso9660:光盤或光盤鏡像;
- NFS : 網(wǎng)絡(luò)文件系統(tǒng),由SUN發(fā)明,主要用于遠程文件共享;
- MS-DOS : MS-DOS文件系統(tǒng);
- FAT : Windows XP 操作系統(tǒng)采用的文件系統(tǒng);
- NTFS : Windows NT/XP 操作系統(tǒng)采用的文件系統(tǒng)。
二、分區(qū)與目錄
文件系統(tǒng)位于磁盤分區(qū)中;一個硬盤可以有多個分區(qū),也可以只有一個分區(qū);一個分區(qū)只能包含一個文件系統(tǒng)。
Linux文件系統(tǒng)與Windows有較大的差別。Windows的文件結(jié)構(gòu)是多個并列的樹狀結(jié)構(gòu),最頂部的是不同的磁盤(分區(qū)),如 C、D、E、F等。Linux的文件結(jié)構(gòu)是單個的樹狀結(jié)構(gòu),根目錄是“/”,其他目錄都要位于根目錄下。
每次安裝系統(tǒng)的時候我們都會進行分區(qū),
Linux下磁盤分區(qū)和目錄的關(guān)系
- 任何一個分區(qū)都必須對應(yīng)到某個目錄上,才能進行讀寫操作,稱為“掛載”。
- 被掛載的目錄可以是根目錄,也可以是其他二級、三級目錄,任何目錄都可以是掛載點。
- 目錄是邏輯上的區(qū)分。分區(qū)是物理上的區(qū)分。
- 根目錄是所有Linux的文件和目錄所在的地方,需要掛載上一個磁盤分區(qū)。
下圖是常見的目錄和分區(qū)的對應(yīng)關(guān)系:
為什么要分區(qū),如何分區(qū)?
- 可以把不同資料,分別放入不同分區(qū)中管理,降低風(fēng)險。
- 大硬盤搜索范圍大,效率低。
- /home、/var、/usr、/local 經(jīng)常是單獨分區(qū),因為經(jīng)常會操作,容易產(chǎn)生碎片。
為了便于定位和查找,Linux中的每個目錄一般都存放特定類型的文件,
各種Linux發(fā)行版本的常見目錄
- / :根目錄,只能包含目錄,不能包含具體文件。
- /bin:bin是Binary的縮寫,存放可執(zhí)行文件。很多命令就對應(yīng)/bin目錄下的某個程序,例如 ls、cp、mkdir。/bin目錄對所有用戶有效。
- /dev:dev是Device(設(shè)備)的縮寫,硬件驅(qū)動程序。例如聲卡、磁盤驅(qū)動等,還有如 /dev/null、/dev/console、/dev/zero、/dev/full 等文件。
- /etc:主要包含系統(tǒng)管理所需要的配置文件和用戶、用戶組配置文件。
- /lib:主要包含共享庫文件,類似于Windows下的DLL;有時也會包含內(nèi)核相關(guān)文件。
- /boot:系統(tǒng)啟動文件,例如Linux內(nèi)核、引導(dǎo)程序等。
- /home:用戶工作目錄(主目錄),每個用戶都會分配一個目錄。
- /mnt:臨時掛載文件系統(tǒng)。這個目錄一般是用于存放掛載儲存設(shè)備的掛載目錄的,例如掛載CD-ROM的/mnt/cdrom目錄,然后進入該目錄就可以查看光驅(qū)里的內(nèi)容了。
- /proc:這個目錄是一個虛擬的目錄,它是系統(tǒng)內(nèi)存的映射,我們可以通過直接訪問這個目錄來獲取系統(tǒng)信息。這個目錄的內(nèi)容不在硬盤上而是在內(nèi)存里,我們也可以直接修改里面的某些文件。
- /tmp:臨時文件目錄,系統(tǒng)重啟后不會被保存。
- /lost+found:這個目錄一般情況下是空的,當系統(tǒng)非法關(guān)機后,這里就存放了一些文件。
- /run:是一個臨時文件系統(tǒng),存儲系統(tǒng)啟動以來的信息。當系統(tǒng)重啟時,這個目錄下的文件應(yīng)該被刪掉或清除。如果你的系統(tǒng)上有 /var/run 目錄,應(yīng)該讓它指向 run。
- /usr:這是一個非常重要的目錄,用戶的很多應(yīng)用程序和文件都放在這個目錄下,類似于windows下的program files目錄。user目下的文件比較混雜,包含了管理命令、共享文件、庫文件等,可以被很多用戶使用。
/usr/bin:系統(tǒng)用戶使用的應(yīng)用程序。
/usr/sbin:超級用戶使用的比較高級的管理程序和系統(tǒng)守護程序。
/usr/src:內(nèi)核源代碼默認的放置目錄。
- /var:這個目錄中存放著在不斷擴充著的東西,主要包含一些可變長度的文件,會經(jīng)常對數(shù)據(jù)進行讀寫,例如日志文件和打印隊列里的文件。
- /sbin:s就是Super User的意思,和 /bin 類似,主要包含可執(zhí)行文件,不過一般是系統(tǒng)管理所需要的,不是所有用戶都需要。
- /media:linux系統(tǒng)會自動識別一些設(shè)備,例如U盤、光驅(qū)等等,當識別后,linux會把識別的設(shè)備掛載到這個目錄下。
- /opt: 這是給主機額外安裝軟件所擺放的目錄。比如你安裝一個ORACLE數(shù)據(jù)庫則就可以放到這個目錄下。默認是空的。
- /root:該目錄為系統(tǒng)管理員,也稱作超級權(quán)限者的用戶主目錄。
- /srv: 該目錄存放一些服務(wù)啟動之后需要提取的數(shù)據(jù)。
在 Linux 系統(tǒng)中,有幾個目錄是比較重要的,平時需要注意不要誤刪除或者隨意更改內(nèi)部文件。
- /etc: 上邊也提到了,這個是系統(tǒng)中的配置文件,如果你更改了該目錄下的某個文件可能會導(dǎo)致系統(tǒng)不能啟動。
- /bin, /sbin, /usr/bin, /usr/sbin: 這是系統(tǒng)預(yù)設(shè)的執(zhí)行文件的放置目錄,比如 ls 就是在/bin/ls 目錄下的。
值得提出的是,/bin, /usr/bin 是給系統(tǒng)用戶使用的指令(除root外的通用戶),而/sbin, /usr/sbin 則是給root使用的指令。 - /var: 這是一個非常重要的目錄,系統(tǒng)上跑了很多程序,那么每個程序都會有相應(yīng)的日志產(chǎn)生,而這些日志就被記錄到這個目錄下,具體在/var/log 目錄下,另外mail的預(yù)設(shè)放置也是在這里。
三、常用文件管理命令
你可以通過下面的命令來管理文件:
- catfilename:查看文件內(nèi)容。
- cddirname:改變所在目錄。
- cpfile1 file2:復(fù)制文件或目錄。
- filefilename:查看文件類型(binary, text, etc)。
- findfilename dir:搜索文件或目錄。
- headfilename:顯示文件的開頭,與tail命令相對。
- lessfilename:查看文件的全部內(nèi)容,可以分頁顯示,比more命令要強大。
- lsdirname:遍歷目錄下的文件或目錄。
- mkdirdirname:創(chuàng)建目錄。
- morefilename:查看文件的全部內(nèi)容,可以分頁顯示。
- mvfile1 file2:移動文件或重命名。
- pwd:顯示用戶當前所在目錄。
- rmfilename:刪除文件。
- rmdirdirname:刪除目錄。
- tailfilename:顯示文件的結(jié)尾,與head命令相對。
- touchfilename:文件不存在時創(chuàng)建一個空文件,存在時修改文件時間戳。
- whereisfilename:查看文件所在位置。
- whichfilename:如果文件在環(huán)境變量PATH中有定義,那么顯示文件位置。
四、用戶和群組配額
用戶和群組配額可以讓管理員為每個用戶或群組分配固定的磁盤空間。
管理員有兩種方式來分配磁盤空間:
- 軟限制:如果用戶超過指定的空間,會有一個寬限期,等待用戶釋放空間。
- 硬限制:沒有寬限期,超出指定空間立即禁止操作。
下面的命令可以用來管理配額:
- quota:顯示磁盤使用情況以及每個用戶組的配額。
- edquota:編輯用戶和群組的配額。
- quotacheck:查看文件系統(tǒng)的磁盤使用情況,創(chuàng)建、檢查并修復(fù)配額文件。
- setquota:設(shè)置配額。
- quotaon:開啟用戶或群組的配額功能。
- quotaoff:關(guān)閉用戶或群組的配額功能。
- repquota:打印指定文件系統(tǒng)的配額。
到此這篇關(guān)于Linux文件系統(tǒng)的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持本站。
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。