天天看點

linux檢視硬碟大小與挂載硬碟

linux檢視硬碟大小與挂載硬碟

ps:本人親測,阿裡雲2核4G5M的伺服器成本效益很高,新使用者一塊多一天,老使用者三塊多一天,最高可以買三年,感興趣的可以戳一下:阿裡雲折扣伺服器

linux的硬碟有挂載和未挂載兩種(類似windows上的硬碟分區(C、D、E盤))

(1)檢視已經挂載的硬碟大小:df -h

(2)檢視詳細的硬碟分區情況(包括挂載和未挂載兩種的硬碟大小):fdisk -l


介紹:

(1)df用于檢查檔案系統磁盤占用情況

(2)du檢查磁盤空間占用情況

(3)fdisk用于磁盤分區


詳解:

1.df
df指令可以擷取硬碟被占用了多少空間,目前還剩下多少空間等資訊,它也可以顯示所有檔案系統對i節點和磁盤塊的使用情況。
df指令各個選項的含義如下:

  -a:顯示所有檔案系統的磁盤使用情況,包括0塊(block)的檔案系統,如/proc檔案系統。
  -k:以k位元組為機關顯示。
  -i:顯示i節點資訊,而不是磁盤塊。
  -t:顯示各指定類型的檔案系統的磁盤空間使用情況。
  -x:列出不是某一指定類型檔案系統的磁盤空間使用情況(與t選項相反)。
  -T:顯示檔案系統類型。

我們先看看使用df指令的例子:
//列出各檔案系統的磁盤空間使用情況
#df
Filesystem           1k-blocks      Used   Available Use% Mounted on
/dev/hda5               381139     332921     28540  93% /
/dev/hda1                46636      6871     37357  16% /boot
/dev/hda3             10041144   6632528   2898556  70% /home
none                    127372         0    127372   0% /dev/shm
/dev/hda2             27474876  24130460   1948772  93% /usr
/dev/hda6               256667    232729     10686  96% /var
第1列是代表檔案系統對應的裝置檔案的路徑名(一般是硬碟上的分區);第2列給出分區包含的資料塊(1024位元組)的數目;第3,4列分别表示已用的和可用的資料塊數目。
◆使用者也許會感到奇怪,第3,4列塊數之和不等于第2列中的塊數。這是因為預設的每個分區都留了少量空間供系統管理者使用的緣故。即使遇到普通使用者空間已滿的情況,管理者仍能登入和留有解決問題所需的工作空間。清單中Use%清單示普通使用者空間使用的百分比,若這一數字達到100%,分區仍然留有系統管理者使用的空間。
最後,Mounted on清單示檔案系統的安裝點。
//列出各檔案系統的i節點使用情況。
#df -ia
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/hda5              98392   23919   74473   25% /
none                       0       0       0    -  /proc
/dev/hda1              12048      38   12010    1% /boot
none                       0       0       0    -  /dev/pts
/dev/hda3            1275456  355008  920448   28% /home
none                   31843       1   31842    1% /dev/shm
/dev/hda2            3489792  133637 3356155    4% /usr
/dev/hda6              66264    9876   56388   15% /var
 
//列出檔案系統的類型。
#df -T
Filesystem    Type   1k-blocks      Used Available Use% Mounted on
/dev/hda5     ext3      381139    332921     28540  93% /
/dev/hda1     ext3       46636      6871     37357  16% /boot
/dev/hda3     ext3    10041144   6632528   2898556  70% /home
none         tmpfs      127372         0    127372   0% /dev/shm
/dev/hda2     ext3    27474876  24130460   1948772  93% /usr
/dev/hda6     ext3      256667    232729     10686  96% /var2
2. du
du的英文原義為“disk usage”,含義為顯示磁盤空間的使用情況,統計目錄(或檔案)所占磁盤空間的大小。該指令的功能是逐級進入指定目錄的每一個子目錄并顯示該目錄占用檔案系統資料塊(1024位元組)的情況。若沒有給出指定目錄,則對目前目錄進行統計。
df指令的各個選項含義如下:

  -s:對每個Names參數隻給出占用的資料塊總數。
  -a:遞歸地顯示指定目錄中各檔案及子目錄中各檔案占用的資料塊數。若既不指定-s,也不指定-a,則隻顯示Names中的每一個目錄及其中的各子目錄所占的磁盤塊數。
  -b:以位元組為機關列出磁盤空間使用情況(系統預設以k位元組為機關)。
  -k:以1024位元組為機關列出磁盤空間使用情況。
  -c:最後再加上一個總計(系統預設設定)。
  -l:計算所有的檔案大小,對硬連結檔案,則計算多次。
  -x:跳過在不同檔案系統上的目錄不予統計。
  -h:轉化成友善閱讀的2M、2G這種格式的顯示出來。

下面舉例說明du指令的使用:
//檢視/mnt目錄占用磁盤空間的情況
#du –abk /mnt
1       /mnt/cdrom
1       /mnt/floppy
3       /mnt
 
//列出各目錄所占的磁盤空間,但不詳細列出每個檔案所占的空間
#du
3684    ./log
84      ./libnids-1.17/doc
720     ./libnids-1.17/src
32      ./libnids-1.17/samples
1064    ./libnids-1.17
4944    .
輸出清單中的第1列是以塊為機關計的磁盤空間容量,第2列列出目錄中使用這些空間的目錄名稱。
◆這可能是一個很長的清單,有時隻需要一個總數。這時可在du指令中加-s選項來取得總數:
#du –s /mnt 
3       /mnt
 
//列出所有檔案和目錄所占的空間(使用a選項),并以位元組為機關(使用b選項)來計算大小
#du –ab /root/mail
6144    mail/sent-mail
1024    mail/saved-messages
8192    mail
3、fdisk
fdisk可以劃分磁盤分區。下面給出使用Fdisk指令進行磁盤分區的操作步驟:
#fdisk /dev/had    //使用/dev/had作為預設的分區裝置
Command (m for help): m  //選擇指令選項
Command action

   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

使用者通過提示鍵入“m”,可以顯示Fdisk指令各個參數的說明。
Fdisk有很多參數,可是經常使用的隻有幾個。
◆在Linux分區過程,一般是先通過p參數來顯示硬碟分區表資訊,然後根據資訊确定将來的分區。如下所示:
Disk /dev/sda: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot    Start       End    Blocks   Id  System
/dev/hda1   *        41       522   3871665   83  Linux
/dev/hda2             1        40    321268+  82  Linux swap
 
Partition table entries are not in disk order
Command (m for help):
◆如果想完全改變硬碟的分區格式,就可以通過d參數一個一個地删除存在的硬碟分區。删除完畢,就可以通過n參數來增加新的分區。當按下“n”後,可以看到如下所示:
Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
   p
   Partiton number(1-4):1
   First cylinder(1-1023):1
   Last cylinder or + size or +sizeK or + sizeM(1-1023):+258M
這裡要選擇建立的分區類型,是主分區還是擴充分區;并選擇p或是e。然後就是設定分區的大小。
◆要提醒注意的是,如果硬碟上有擴充分區,就隻能增加邏輯分區,不能增加擴充分區。
◆在增加分區的時候,其類型都是預設的Linux Native,如果要把其中的某些分區改變為其他類型,例如Linux Swap或FAT32等,可以通過指令t來改變,當按下“t”改變分區類型的時候,系統會提示要改變哪個分區、以及改變為什麼類型(如果想知道系統所支援的分區類型,鍵入l),如下所示:
Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): 82
Changed system type of partition 1 to 82 (Linux swap)
改變完了分區類型,就可以按下“w”,儲存并退出。如果不想儲存,那麼可以選擇“q”直接退出,如下所示:
Command (m for help):w
通過如上的操作,就可以按照需要成功地劃分磁盤分區了。
           

繼續閱讀