文件系統(tǒng)是一個(gè)分區(qū)或磁盤上的文件的邏輯集合。一個(gè)分區(qū)是一個(gè)信息的容器,如果需要可以跨整個(gè)硬盤。
你的硬盤可以有不同的分區(qū),但通常只包含一個(gè)文件系統(tǒng),如一個(gè)文件系統(tǒng)涵蓋 /file
系統(tǒng),另一個(gè)包含 /home
文件系統(tǒng)。
一個(gè)文件系統(tǒng)分區(qū)允許不同文件系統(tǒng)的邏輯維護(hù)和管理。
UNIX 中一切都被認(rèn)為是一個(gè)文件,包括物理設(shè)備,如 DVD-ROMs、USB 設(shè)備、軟盤驅(qū)動(dòng)器等等。
UNIX 使用文件系統(tǒng)層次結(jié)構(gòu),就像一棵倒置的樹,根目錄(/) 是文件系統(tǒng)的底部,所有其他的目錄都從那里蔓延。
UNIX 文件系統(tǒng)是文件和目錄的集合,具有以下屬性:
目錄有特定的目的,通常存儲(chǔ)相同類型的信息以實(shí)現(xiàn)更容易定位文件的目的。以下是主要的 UNIX 版本上存在的目錄:
目錄 | 描述 |
---|---|
/ | 這是根目錄,只包含頂層文件結(jié)構(gòu)所需的目錄。 |
/bin | 這是可執(zhí)行文件所在的地方。他們提供給所有用戶使用。 |
/dev | 這些是設(shè)備驅(qū)動(dòng)程序。 |
/etc | 上級(jí)目錄的命令,配置文件,磁盤配置文件,有效的用戶列表,組,以太網(wǎng),主機(jī)等各種發(fā)送重要信息的地方。 |
/lib | 包含共享庫(kù)文件,例如其他內(nèi)核相關(guān)文件。 |
/boot | 包含系統(tǒng)啟動(dòng)相關(guān)的文件。 |
/home | 包含用戶的主目錄和其他賬戶。 |
/mnt | 用來掛載其他臨時(shí)文件系統(tǒng),比如分別針對(duì)光盤和軟盤的 CD-ROM 驅(qū)動(dòng)器和軟盤驅(qū)動(dòng)器。 |
/proc | 標(biāo)記為一個(gè)包含所有進(jìn)程的文件,這些進(jìn)程使用進(jìn)程編號(hào)或其他信息標(biāo)記。這個(gè)文件是一個(gè)動(dòng)態(tài)的系統(tǒng)。 |
/tmp | 包含系統(tǒng)啟動(dòng)期間所有的臨時(shí)文件。 |
/uer | 用于各種各樣的用途,可以被許多用戶使用。包括行政命令、共享文件、庫(kù)文件等等。 |
/var | 通常包含變長(zhǎng)文件,如日志和打印文件和任何其他類型的文件,該文件包含的數(shù)據(jù)的量可能是變化的。 |
/sbin | 包含二進(jìn)制(可執(zhí)行的)文件,通常用于系統(tǒng)管理。比如 fdisk 和 ifconfig 功能。 |
/kernel | 包含內(nèi)核文件。 |
既然已經(jīng)了解了文件系統(tǒng)的基本知識(shí),現(xiàn)在就可以開始導(dǎo)航到所需要的文件。以下列出導(dǎo)航到文件系統(tǒng)可以使用的命令:
命令 | 描述 |
---|---|
cat filename | 顯示文件名。 |
cd dirname | 移動(dòng)到確定的目錄。 |
cp file1 file2 | 復(fù)制一個(gè)文件/目錄到指定位置。 |
file filename | 識(shí)別文件類型(二進(jìn)制、文本等)。 |
find filename dir | 發(fā)現(xiàn)一個(gè)文件/目錄。 |
head filename | 顯示一個(gè)文件的開始。 |
less filename | 從結(jié)束或開始位置瀏覽一個(gè)文件。 |
ls dirname | 顯示指定目錄的內(nèi)容。 |
mkdir dirname | 創(chuàng)建指定目錄。 |
more filename | 從頭到尾瀏覽一個(gè)文件。 |
mv file1 file2 | 移動(dòng)一個(gè)文件/目錄的位置或重命名一個(gè)文件/目錄。 |
pwd | 顯示用戶當(dāng)前所在的目錄。 |
rm filename | 刪除一個(gè)文件。 |
rmdir dirname | 刪除一個(gè)目錄。 |
tail filename | 顯示一個(gè)文件的結(jié)束。 |
touch filename | 創(chuàng)建一個(gè)空白文件或修改現(xiàn)有文件的屬性。 |
whereis filename | 顯示一個(gè)文件的位置。 |
which filename | 如果文件在你的路徑內(nèi),顯示它的位置,。 |
管理分區(qū)空間的第一種方式是 df (磁盤空閑)命令。命令 df -k(磁盤空閑)以千字節(jié)的形式顯示磁盤空間的使用情況,如下所示:
$df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vzfs10485760 7836644 2649116 75% /
/devices0 0 0 0% /devices
$
一些目錄,比如 /devices
,以千字節(jié)形式顯示使用為 0,且可用列以及能力都為 0%。這些特殊的(或虛擬的)文件系統(tǒng),雖然他們駐留在磁盤上,但他們本身不占用磁盤空間。
在所有 UNIX 系統(tǒng)上 df -k
的輸出通常都是相同的。它一般包括:
列 | 描述 |
---|---|
Filesystem | 物理文件系統(tǒng)名稱。 |
kbytes | 存儲(chǔ)介質(zhì)上的可用空間總字節(jié)。 |
used | 被文件使用過的空間的總字節(jié)。 |
avail | 可用空間的總字節(jié)。 |
capacity | 被文件使用的空間和總額的比例。 |
Mounted on | 文件系統(tǒng)正在安裝的。 |
您可以使用 -h
(可讀的)選項(xiàng)來設(shè)置顯示,使用易于理解的符號(hào),合適的大小等輸出格式。
du (磁盤使用量) 命令使您能夠按指定目錄來顯示一個(gè)特定的目錄中磁盤空間的使用情況。
如果你想判斷一個(gè)特定的目錄正在使用多少空間,這個(gè)命令是很有用的。以下命令將顯示被每個(gè)目錄消耗的塊的數(shù)量。根據(jù)系統(tǒng)的不同,一個(gè)塊可能需要 512 字節(jié)或 1 千字節(jié)。
$du /etc
10 /etc/cron.d
126/etc/default
6 /etc/dfs
...
$
-h
選項(xiàng)使輸出更容易理解:
$du -h /etc
5k/etc/cron.d
63k /etc/default
3k/etc/dfs
...
$
文件系統(tǒng)必須安裝以用于系統(tǒng)的正常使用。為了查看您的系統(tǒng)上目前安裝(可用)的文件系統(tǒng),可以使用這個(gè)命令:
$ mount
/dev/vzfs on / type reiserfs (rw,usrquota,grpquota)
proc on /proc type proc (rw,nodiratime)
devpts on /dev/pts type devpts (rw)
$
UNIX 協(xié)定的 /mnt
目錄,就是臨時(shí)掛載的地方(例如 CD-ROM 驅(qū)動(dòng)器,遠(yuǎn)程網(wǎng)絡(luò)驅(qū)動(dòng)器,軟盤驅(qū)動(dòng)器)。如果你需要掛載文件系統(tǒng),您可以使用 mount 命令,語法如下:
mount -t file_system_type device_to_mount directory_to_mount_to
例如,如果你想掛載 CD-ROM 到目錄 /mnt/cdrom
,你可以輸入:
$ mount -t iso9660 /dev/cdrom /mnt/cdrom
假設(shè)您的 CD-ROM 設(shè)備稱為 /dev/cdrom
,你想掛載到 /mnt/cdrom
??梢詤⒖及惭b手冊(cè)頁(yè)獲得更具體的信息或類型,在命令行輸入 -h
得到幫助信息。
安裝之后,您可以使用 cd 命令通過掛載點(diǎn)來瀏覽可用的新文件系統(tǒng)。
通過識(shí)別掛載點(diǎn)或設(shè)備,從你的系統(tǒng)中卸載(刪除)文件系統(tǒng)。使用 umount 命令實(shí)行。
例如,可以使用以下命令卸載光盤:
$ umount /dev/cdrom
mount 命令使你能夠訪問你的文件系統(tǒng),但在大多數(shù)現(xiàn)代 UNIX 系統(tǒng)中,加載函數(shù)使這個(gè)過程對(duì)用戶不可見且不需要用戶干預(yù)。
提供用戶和組配額的機(jī)制:?jiǎn)蝹€(gè)用戶或特定組中的所有用戶所使用的空間量可以由管理員定義的值限制。
配額操作有兩種限制。如果空間的數(shù)量或磁盤塊的數(shù)量開始超過管理員定義的限制,允許用戶采取行動(dòng):
有許多命令來管理配額:
命令 | 描述 |
---|---|
quota | 顯示組中一個(gè)用戶的磁盤使用情況和限制。 |
edquota | 這是一個(gè)配額編輯器??梢允褂眠@個(gè)命令編輯用戶或組配額。 |
quotacheck | 掃描文件系統(tǒng),為了磁盤使用、制造、檢查和修復(fù)配額文件 |
setquota | 這也是一個(gè)命令行配額編輯器。 |
quotaon | 系統(tǒng)宣布應(yīng)該在一個(gè)或多個(gè)文件系統(tǒng)上啟用磁盤配額。 |
quotaoff | 系統(tǒng)宣布應(yīng)該禁用一個(gè)或多個(gè)文件系統(tǒng)上的磁盤配額。 |
repquota | 打印指定文件系統(tǒng)的磁盤使用和配額的匯總 |
您可以使用 Manpage 幫助 查看這里提到每個(gè)命令的完整語法。
更多建議: