iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 20
1
Software Development

如何使用 Linux 從土裡到冒出頭來系列 第 20

Day 20 檔案工具

Day 20 檔案工具

操作 CetnOS 沒有圖形化介面查看目錄空間使用是否超出分割區的範圍,或是想得到文字檔案的行數等資訊,這時候怎麼辦,別擔心!CentOS 還是有提供相關指令做操作,以方便查看。

  • du 檢視目錄大小
  • df 檢視磁碟使用情況

計算目錄使用空間大小【du】

透過掃描目錄結構,並透過 stat 逐一累加檔案大小。

[root@localhost /]# du [參數] [目錄或檔案]
  • -a 顯示全部的檔案系統和各分割區的磁碟使用情形。
  • -b 顯示目錄或檔案大小時,以byte為單位。
  • -c 除了顯示個別目錄或檔案的大小外,同時也顯示所有目錄或檔案的總和。
  • -D 顯示指定符號連線的原始檔大小。
  • -h 磁碟單位顯示空間大小,以K,M,G為單位,提高資訊的可讀性。
  • -H 與-h引數相同,但是K,M,G是以1000為換算單位。
  • -k 以1024 bytes為單位。
  • -l 重複計算硬體連線的檔案。
  • -i 顯示i -nodes的使用量。
  • -L<符號連線> --dereference<符號連線> 顯示選項中所指定符號連線的原始檔大小。
  • -m 以1MB為單位。
  • -s 顯示該目錄使用空間大小,不顯示子目錄。
  • -S 顯示個別目錄的大小時,並不含其子目錄的大小。
  • -t 顯示某一個檔案系統的所有分割區磁碟使用量。
  • -T 顯示每個分割區所屬的檔案系統名稱。
  • -x 以一開始處理時的檔案系統為準,若遇上其它不同的檔案系統目錄則略過。
  • -X<檔案> 在<檔案>指定目錄或檔案。
  • -exclude=<目錄或檔案> 略過指定的目錄或檔案。
  • -max-depth=<目錄層數> 超過指定層數的目錄後,予以忽略。
  • -help 顯示幫助。
  • -version 顯示版本資訊。

顯示目錄內的所有目錄大小

[root@localhost /]# du /boot/

0       /boot/efi/EFI/centos
0       /boot/efi/EFI
0       /boot/efi
2400    /boot/grub2/i386-pc
3176    /boot/grub2/locale
2504    /boot/grub2/fonts
8096    /boot/grub2
4       /boot/grub
164320  /boot/

顯示檔案大小

[root@localhost tmp]# du index.html

4       index.html

顯示當前目錄內

加上兩項參數

  • s 以K,M,G為單位顯示大小。
  • h 顯示該目錄使用空間大小,不顯示子目錄。
[root@localhost tmp]# du -sh *

0       edm.php
4.0K    index.html
0       tmp2

依照目錄或檔案大小排序

另外加一條槓| 一起執行另一個指令 sort 進行排序。

sort 參數

  • -ns 由小到大排序
  • -nr 由大到小排序
[root@localhost /]# du -s * | sort -ns

0       srv
0       sys
4       tmp
60      root
68      home
8760    run
35716   etc
164320  boot
179276  var
1532728 usr

顯示幾層內目錄大小

  • --max-depth=N 指參數為顯示幾層內目錄
[root@localhost /]# du -h --max-depth=1 /boot/

0       /boot/efi
8.0M    /boot/grub2
4.0K    /boot/grub
161M    /boot/

硬碟分割區資訊【du】

檔案系統(file system)取得空間的分配資訊,可以完整的顯示當時系統中還可以使用的檔案空間。

[root@localhost /]# df [參數] [目錄或檔案]

-a 顯示全部目錄和其次目錄下的每個檔案所佔的磁碟空間。
-b 大小用bytes來表示(預設值為k bytes)。
-c 最後再加上總計(預設值)。
-h 磁碟單位顯示空間大小,以K,M,G為單位,提高資訊的可讀性。
-H 與-h引數相同,但是K,M,G是以1000為換算單位。
-k 以1024 bytes為單位。
-L 計算所有的檔案大小。
-m 以1MB為單位。
-s 只顯示各檔案大小的總合(summarize)。
-T 只顯示指定檔案系統類型。
-x 只計算同屬同一個檔案系統的檔案。

檢查硬碟使用量

[root@localhost /]# df

檔案系統                1K-區段    已用    可用 已用% 掛載點
devtmpfs                 929028       0  929028    0% /dev
tmpfs                    940816       0  940816    0% /dev/shm
tmpfs                    940816    8760  932056    1% /run
tmpfs                    940816       0  940816    0% /sys/fs/cgroup
/dev/mapper/centos-root 6486016 1817512 4668504   29% /
/dev/sda1               1038336  197536  840800   20% /boot
tmpfs                    188164       0  188164    0% /run/user/0

指定掛載點使用量

[root@localhost /]# df /

檔案系統                1K-區段    已用    可用 已用% 掛載點
/dev/mapper/centos-root 6486016 1817512 4668504   29% /

顯示檔案系統

  • -T 檢視各個硬碟分割區的檔案系統類型。
[root@localhost /]# df -T

檔案系統                類型     1K-區段    已用    可用 已用% 掛載點
devtmpfs                devtmpfs  929028       0  929028    0% /dev
tmpfs                   tmpfs     940816       0  940816    0% /dev/shm
tmpfs                   tmpfs     940816    8760  932056    1% /run
tmpfs                   tmpfs     940816       0  940816    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs      6486016 1817512 4668504   29% /
/dev/sda1               xfs      1038336  197536  840800   20% /boot
tmpfs                   tmpfs     188164       0  188164    0% /run/user/0

上一篇
Day 19 防火牆
下一篇
Day 21 系統服務
系列文
如何使用 Linux 從土裡到冒出頭來30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言