Linux學習之 df命令, du命令,磁盤分區

一、df命令

命令df(disk filesystem)用於查看盤的信息 默認以K爲單位:

[root@localhost ~]# df
文件系統          1K-塊    已用     可用 已用% 掛載點
/dev/sda2      28289540 1022236 27267304    4% /
devtmpfs         494224       0   494224    0% /dev
tmpfs            504076       0   504076    0% /dev/shm
tmpfs            504076    6908   497168    2% /run
tmpfs            504076       0   504076    0% /sys/fs/cgroup
/dev/sda1        201380   99168   102212   50% /boot
tmpfs            100816       0   100816    0% /run/user/0
[root@localhost ~]# 

tmpfs、devtmpfs 臨時的文件系統,/dev、/dev/shm 爲內存分區,默認大小爲內存的1/2,如果我們把文件放在這個分區下,相當於放在內存中,好處是讀寫速度很快,壞處是系統重啓文件會丟失

上面swap分區沒看到,我們可以是free命令查看,默認單位是kb:

[root@localhost ~]# free
              total        used        free      shared  buff/cache   available
Mem:        1008152      115220      753236        6908      139696      733472
Swap:       2097148           0     2097148
[root@localhost ~]# 
df -k 以K爲單位
df -m 以m爲單位
df -h 以合適單位來顯示
df -i 以inode來顯示

df -T 可用顯示磁盤文件類型

例如:df -h

[root@localhost ~]# df -h
文件系統        容量  已用  可用 已用% 掛載點
/dev/sda2        27G  998M   27G    4% /
devtmpfs        483M     0  483M    0% /dev
tmpfs           493M     0  493M    0% /dev/shm
tmpfs           493M  6.8M  486M    2% /run
tmpfs           493M     0  493M    0% /sys/fs/cgroup
/dev/sda1       197M   97M  100M   50% /boot
tmpfs            99M     0   99M    0% /run/user/0
[root@localhost ~]# 

df -i

[root@localhost ~]# df -i
文件系統          Inode 已用(I)  可用(I) 已用(I)% 掛載點
/dev/sda2      14151680   25955 14125725       1% /
devtmpfs         123556     380   123176       1% /dev
tmpfs            126019       1   126018       1% /dev/shm
tmpfs            126019     474   125545       1% /run
tmpfs            126019      16   126003       1% /sys/fs/cgroup
/dev/sda1        102400     327   102073       1% /boot
tmpfs            126019       1   126018       1% /run/user/0
[root@localhost ~]# 

  • 注意:inode號是磁盤格式化的時候就自動按一定的比例4k:1分配好了,當創建一個文件是就會拿一個inode給這個文件使用。inode裏面存的是文件的相關屬性比如大小,權限,屬組和存在磁盤的位置,如果創建文件提示空間不夠,但是df查看磁盤空間的時候,發現還有空間,但是就是創建不了,這個時候就應該是inode被佔滿了,可以通過刪除文件來回收inode

df -T

[root@localhost ~]# df -T
文件系統       類型        1K-塊    已用     可用 已用% 掛載點
/dev/sda2      xfs      28289540 1021700 27267840    4% /
devtmpfs       devtmpfs   494224       0   494224    0% /dev
tmpfs          tmpfs      504076       0   504076    0% /dev/shm
tmpfs          tmpfs      504076    6940   497136    2% /run
tmpfs          tmpfs      504076       0   504076    0% /sys/fs/cgroup
/dev/sda1      xfs        201380   99168   102212   50% /boot
tmpfs          tmpfs      100816       0   100816    0% /run/user/0
[root@localhost ~]# 

二、du命令

命令du(disk useage)用來查看某個目錄或文件所佔空間的大小

  • du -s 查看目錄本身
  • du –c表示最後加總,不常用
  • du -h 表示系統自動調節單位
  • du -sb 以字節(b)單位,可以查看文件真實大小
  • du -k 以k爲單位
  • du -m 以m爲單位
[root@localhost ~]# du -s
32	.
[root@localhost ~]# du -s /tmp/
4	/tmp/

[root@localhost ~]# du -sh /root
32K	/root
[root@localhost ~]# du -c /root
4	/root/.ssh
32	/root
32	總用量
[root@localhost ~]# 

du -sb 查看文件的真實大小,和ls -lb查看大小一樣(它們單位爲b字節)

[root@localhost ~]# du -sb /root
4867	/root
[root@localhost ~]# du -sb /root/anaconda-ks.cfg
1418	/root/anaconda-ks.cfg
[root@localhost ~]# ls -lb /root/anaconda-ks.cfg
-rw-------. 1 root root 1418 1月  13 00:47 /root/anaconda-ks.cfg
[root@localhost ~]# 
  • du -sh 和ls -lh 查看文件大小的區別:
        對於同一個文件,一般du -sh 出來的比ls -lh 的要大,這是由於k引起來的。原因是在格式化磁盤分區時,磁盤會被分割成一個個的block塊,一個block是4K大小,且一個block只能放一個文件,如果這個文件很大,如大於4K,一個block是放不了的,需要另放在其他的塊裏;如果一個文件很小,不到4K,這個快也不會再放其他的文件了,這樣du -sh其實是讀取文件的block的大小,ls -lh讀取的是文件本身大小。如果一個文件的大小正好是4K或者4K的倍數,則du -sh 和ls -lh讀取的大小是一樣的


三、磁盤分區

fdisk命令:

  • fdisk -l 查看磁盤分區信息
  • fdisk -l /dev/sda 查看指定磁盤分區信息
  • fdisk 只能劃分小於2T的分區,超過2T要用part來分區。
  • 主分區+擴展分區大於等於4
  • 擴展分區下面可以建邏輯分區,邏輯分區從sdb5開始
[root@localhost ~]# fdisk -l

磁盤 /dev/sda:32.2 GB, 32212254720 字節,62914560 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0x00000235

   設備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      411647      204800   83  Linux
/dev/sda2          411648    57018367    28303360   83  Linux
/dev/sda3        57018368    61212671     2097152   82  Linux swap / Solaris
[root@localhost ~]# 
[root@localhost ~]# fdisk -l /dev/sda
磁盤 /dev/sda:32.2 GB, 32212254720 字節,62914560 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0x00000235


   設備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      411647      204800   83  Linux
/dev/sda2          411648    57018367    28303360   83  Linux
/dev/sda3        57018368    61212671     2097152   82  Linux swap / Solaris


fdisk 命令如果不加-l選項,就會進入磁盤分區模式

[root@localhost ~]# fdisk /dev/sda
歡迎使用 fdisk (util-linux 2.23.2)。


更改將停留在內存中,直到您決定將更改寫入磁盤。
使用寫入命令前請三思。




命令(輸入 m 獲取幫助):
分區最常用的幾個命令:
  • p :表示打印當前磁盤的分區情況
  • n:表示建立一個新的分區
  • w:表示保存
  • q:表示退出
  • d:表示刪除已分區
命令(輸入 m 獲取幫助):p

磁盤 /dev/sda:32.2 GB, 32212254720 字節,62914560 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0x00000235

   設備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      411647      204800   83  Linux
/dev/sda2          411648    57018367    28303360   83  Linux
/dev/sda3        57018368    61212671     2097152   82  Linux swap / Solaris

命令(輸入 m 獲取幫助):
注意:這裏的p表示主分區,e表示擴展分區,l表示邏輯分區


發佈了29 篇原創文章 · 獲贊 4 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章