Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍
From: http://fedora.linuxsir.org/main/?q=node/41
作者:北南南北
來自:LinuxSir.Org
提要:Linux 磁盤分區(qū)表、文件系統(tǒng)的查看、統(tǒng)計的工具很多,有些工具是多功能的,不僅僅是查看磁盤的分區(qū)表,而且也能進行磁盤分區(qū)的操作;但在本文,我們只講磁盤分區(qū)的查看,以及分區(qū)的使用情況的查看;本文只是給新手上路之用;關于分區(qū)工具的操作,我將在以后做專門介紹;
此文目的:主要是向初學者介紹一下入門必備的一點基礎知識,有了基礎知識才能進階;如果把所有的磁盤操作工具都放在一個文檔里,大家看了也累;基于這種想法,所以我寫文檔的時候,就想讓新手弟兄一目了解,能輕松點就輕松點;生活、工作和學習無不是如此;
操作環(huán)境:Fedora core 4.0 i686 & Slackware 10.1
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
正文
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
一、df 命令;
df 是來自于coreutils 軟件包,系統(tǒng)安裝時,就自帶的;我們通過這個命令可以查看磁盤的使用情況以及文件系統(tǒng)被掛載的位置;
舉例:
[root@localhost beinan]# df -lh Filesystem 容量 已用 可用 已用% 掛載點 /dev/hda8 11G 6.0G 4.4G 58% / /dev/shm 236M 0 236M 0% /dev/shm /dev/sda1 56G 22G 35G 39% /mnt/sda1我們從中可以看到,系統(tǒng)安裝在/dev/hda8 ;還有一個56G的磁盤分區(qū)/dev/sda1掛載在 /mnt/sda1中;
其它的參數(shù)請參考 man df
二、fdsik
fdisk 是一款強大的磁盤操作工具,來自util-linux軟件包,我們在這里只說他如何查看磁盤分區(qū)表及分區(qū)結(jié)構(gòu);參數(shù) -l ,通過-l 參數(shù),能獲得機器中所有的硬盤的分區(qū)情況;
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
?? Device Boot????? Start???????? End????? Blocks?? Id? System
/dev/hda1?? *?????????? 1???????? 765???? 6144831??? 7? HPFS/NTFS
/dev/hda2???????????? 766??????? 2805??? 16386300??? c? W95 FAT32 (LBA)
/dev/hda3??????????? 2806??????? 7751??? 39728745??? 5? Extended
/dev/hda5??????????? 2806??????? 3825???? 8193118+? 83? Linux
/dev/hda6??????????? 3826??????? 5100??? 10241406?? 83? Linux
/dev/hda7??????????? 5101??????? 5198????? 787153+? 82? Linux swap / Solaris
/dev/hda8??????????? 5199??????? 6657??? 11719386?? 83? Linux
/dev/hda9??????????? 6658??????? 7751???? 8787523+? 83? Linux
在上面Blocks中,表示的是分區(qū)的大小,Blocks的單位是byte ,我們可以換算成M,比如第一個分區(qū)/dev/hda1的大小如果換算成M,應該是6144831/1024=6000M,也就是6G左右,其實沒有這么麻煩,粗略的看一下把小數(shù)點向前移動三位,就知道大約的體積有多大了;
System 表示的文件系統(tǒng),比如/dev/hda1 是NTFS格式的;/dev/hda2 表示是fat32格式的文件系統(tǒng);.
在此例中,我們要特別注意的是/dev/hda3分區(qū),這是擴展分區(qū);他下面包含著邏輯分區(qū),其實這個分區(qū)相當于一個容器;從屬于她的有 hda5,hda6,hda7,hda8,hda9 ;
我們還注意到一點,怎么沒有hda4呢?為什么hda4沒有包含在擴展分區(qū)?一個磁盤最多有四個主分區(qū); hda1-4算都是主分區(qū);hda4不可能包含在擴展分區(qū)里,另外擴展分區(qū)也算主分區(qū);在本例中,沒有hda4這個分區(qū),當然我們可以把其中的一個分區(qū)設置為主分區(qū),只是我當時分區(qū)的時候沒有這么做而已;
再仔細統(tǒng)計一下,我們看一看這個磁盤是不是還有空間?hda1+hda2+hda3=實際已經(jīng)分區(qū)的體積,所以我們可以這樣算 hda1+hda2+hda3=6144831+16386300+39728745 = 62259876 (b),換算成M單位,小數(shù)點向前移三位,所以目前已經(jīng)劃分好的分區(qū)大約占用體積是62259.876(M),其實最精確的計算62259876/1024=60800.67(M);而這個磁盤大小是80.0 GB (80026361856byte),其實實際大小也就是78150.744(M);通過我們一系列的計算,我們可以得出這個硬盤目前還有使用的空間;大約還有18G未分區(qū)的空間;
fdisk -l 能列出機器中所有磁盤的個數(shù),也能列出所有磁盤分區(qū)情況;比如:
[root@localhost beinan]# fdisk -lDisk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
?? Device Boot????? Start???????? End????? Blocks?? Id? System
/dev/hda1?? *?????????? 1???????? 765???? 6144831??? 7? HPFS/NTFS
/dev/hda2???????????? 766??????? 2805??? 16386300??? c? W95 FAT32 (LBA)
/dev/hda3??????????? 2806??????? 7751??? 39728745??? 5? Extended
/dev/hda5??????????? 2806??????? 3825???? 8193118+? 83? Linux
/dev/hda6??????????? 3826??????? 5100??? 10241406?? 83? Linux
/dev/hda7??????????? 5101??????? 5198????? 787153+? 82? Linux swap / Solaris
/dev/hda8??????????? 5199??????? 6657??? 11719386?? 83? Linux
/dev/hda9??????????? 6658??????? 7751???? 8787523+? 83? Linux
Disk /dev/sda: 60.0 GB, 60011642880 bytes
64 heads, 32 sectors/track, 57231 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
?? Device Boot????? Start???????? End????? Blocks?? Id? System
/dev/sda1?????????????? 1?????? 57231??? 58604528?? 83? Linux
通過上面我們可以知道此機器有兩塊硬盤,我們也可以指定fdisk -l 來查看其中一個硬盤的分區(qū)情況;
[root@localhost beinan]# fdisk -l /dev/sdaDisk /dev/sda: 60.0 GB, 60011642880 bytes
64 heads, 32 sectors/track, 57231 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
?? Device Boot????? Start???????? End????? Blocks?? Id? System
/dev/sda1?????????????? 1?????? 57231??? 58604528?? 83? Linux
通過上面情況可以知道,在/dev/sda 這個磁盤中,只有一個分區(qū);使用量差不多是百分百了;
我們還可以來查看 /dev/hda的
自己試試看?
三、cfdisk 來自于util-linux的軟件包;
cfdisk 也是一款不錯的分區(qū)工具;在有些發(fā)行版中,此工具已經(jīng)從util-linux包中剔除;cfdisk 簡單易用是他的特點;和DOS中的fdisk 相似;在本標題中,我們只來解說如何查看機器的中的磁盤分區(qū)狀況及所用的文件系統(tǒng)等;
查看磁盤分區(qū)的用法 cfdisk -Ps 磁盤設備名;
比如
[root@localhost beinan]cfdisk -Ps?? /dev/hda
[root@localhost beinan]cfdisk -Ps
Partition Table for /dev/hda
?????????????? First?????? Last
# Type?????? Sector????? Sector?? Offset??? Length?? Filesystem Type (ID) Flag
-- ------- ----------- ----------- ------ ----------- -------------------- ----
1 Primary?????????? 0??? 23438834???? 63??? 23438835 Linux (83)?????????? Boot
2 Primary??? 23438835?? 156296384????? 0?? 132857550 Extended (05)??????? None
5 Logical??? 23438835?? 155268224???? 63?? 131829390 Linux (83)?????????? None
6 Logical?? 155268225?? 156296384???? 63???? 1028160 Linux swap (82)????? None
我們只用的參數(shù) -Ps,就列出了磁盤的分區(qū)情況;目前在Slackware Debian Mandrake 等主流發(fā)行版中存在cfdisk ,而fedora 4.0把這個小工具剔除了;有點可惜;這是我在Slackware中操作的;
如果您這樣操作,就更直觀了;
舉例:
[root@localhost beinan]cfdisk? /dev/hda?
您所看到的是如下的模式:
??????????????????????????????????????? cfdisk 2.12a??????????????????????????????????? Disk Drive: /dev/hda
????????????????????????????? Size: 80026361856 bytes, 80.0 GB
??????????????????? Heads: 255?? Sectors per Track: 63?? Cylinders: 9729
??? Name????????? Flags??????? Part Type??? FS Type??????????? [Label]?????????? Size (MB)
-------------------------------------------------------------------------------------------
??? hda1????????? Boot????????? Primary???? Linux ReiserFS??????????????????????? 12000.69
??? hda5??????????????????????? Logical???? Linux ReiserFS??????????????????????? 67496.65
??? hda6??????????????????????? Logical???? Linux swap????????????????????????????? 526.42
???? [Bootable]? [ Delete ]? [? Help? ]? [Maximize]? [ Print? ]? [? Quit? ]
???? [? Type? ]? [ Units? ]? [ Write? ]
??????????????????????? Toggle bootable flag of the current partition
您進入了cfdisk 的操作界面;用鍵盤移動指針到[Quit]就可以退出;
四、parted 功能不錯的分區(qū)工具;在Fedora 4.0中有帶,可以自己安裝上;在此主題中,我們只說如何查看磁盤的分區(qū)情況;
調(diào)用方法簡單,parted 默認是打開的設備是/dev/hda ,也可以自己指定;比如 parted /dev/hda 或/dev/sda 等;退出的方法是 quit
使用 /dev/hda
(parted) p
/dev/hda 的磁盤幾何結(jié)構(gòu):0.000-76319.085 兆字節(jié)
磁盤標簽類型:msdos
Minor??? 起始點??????? 終止點? 類型????? 文件系統(tǒng)??? 標志
1????????? 0.031?? 6000.842? 主分區(qū) ntfs??????? 啟動
2?????? 6000.842? 22003.088? 主分區(qū) fat32?????? lba
3????? 22003.088? 60800.690? 擴展分區(qū)
5????? 22003.119? 30004.211? 邏輯分區(qū) reiserfs
6????? 30004.242? 40005.615? 邏輯分區(qū) reiserfs
7????? 40005.646? 40774.350? 邏輯分區(qū) linux-swap
8????? 40774.381? 52219.094? 邏輯分區(qū) ext3
9????? 52219.125? 60800.690? 邏輯分區(qū) reiserfs
我們在partd 的操作面上,用p就可以列出當前磁盤的分區(qū)情況,如果想要查看其它磁盤,可以用 select 功能,比如 select /dev/sda ;
五、qtparted ,與parted 相關的軟件還有qtparted ,也能查看到磁盤的結(jié)構(gòu)和所用的文件系統(tǒng),是圖形化的;
[beinan@localhost ~]# qtparted
圖形化的查看,一目了然;
六、sfdisk 也是一個分區(qū)工具,功能也多多;我們在這里只說他的列磁盤分區(qū)情況的功能;
自己看看吧;
sfdisk 有幾個很有用的功能;有興趣的弟兄不妨看看;
七、partx 也簡要的說一說,有些系統(tǒng)自帶了這個工具,功能也簡單,和fdisk 、parted、cfdisk 來說不值一提;不用也罷;
用法: partx 設備名
# 1:??????? 63- 12289724 ( 12289662 sectors,?? 6292 MB)
# 2:? 12289725- 45062324 ( 32772600 sectors,? 16779 MB)
# 3:? 45062325-124519814 ( 79457490 sectors,? 40682 MB)
# 4:???????? 0-?????? -1 (??????? 0 sectors,????? 0 MB)
# 5:? 45062388- 61448624 ( 16386237 sectors,?? 8389 MB)
# 6:? 61448688- 81931499 ( 20482812 sectors,? 10487 MB)
# 7:? 81931563- 83505869 (? 1574307 sectors,??? 806 MB)
# 8:? 83505933-106944704 ( 23438772 sectors,? 12000 MB)
# 9: 106944768-124519814 ( 17575047 sectors,?? 8998 MB)
八、查看目前機器中的所有磁盤及分區(qū)情況:
major minor? #blocks? name
?? 3???? 0?? 78150744 hda
?? 3???? 1??? 6144831 hda1
?? 3???? 2?? 16386300 hda2
?? 3???? 5??? 8193118 hda5
?? 3???? 6?? 10241406 hda6
?? 3???? 7???? 787153 hda7
?? 3???? 8?? 11719386 hda8
?? 3???? 9??? 8787523 hda9
?? 8???? 0?? 58605120 sda
?? 8???? 1?? 58604528 sda1
九、mac-fdisk 這個工具主要是用在Powerpc版本的Linux中,咱們常用X86版本中沒有這個工具;這個只是介紹一下;
| qtpartedlinuxsir.org0001.jpg | 101.59 千字節(jié) |
總結(jié)
以上是生活随笔為你收集整理的Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VC下加载多种格式图片的方法总结
- 下一篇: Linux shell逐行读取文件的方法