最近有朋友問我「linux df 意思」是什麼,其實這個指令超實用的啦!df 就是 “disk filesystem” 的縮寫,專門用來查看 Linux 系統中磁碟空間的使用情況。每次覺得電腦變慢或檔案存不進去的時候,我都會先打這個指令看看是不是硬碟快滿了,根本就是 Linux 使用者的必備技能啊~
df 指令最基本的用法就是直接在終端機輸入 df
,它會列出所有掛載的檔案系統資訊。不過這樣看有點亂,我通常會加上 -h
參數讓數字變成人類看得懂的單位(像是 GB、MB),指令變成 df -h
後整個清爽很多!有時候還會搭配 -T
參數顯示檔案系統類型,這樣就能一眼看出是 ext4 還是 tmpfs 之類的。
參數 | 功能說明 | 常用程度 |
---|---|---|
-h | 用易讀格式顯示(KB/MB/GB) | ★★★★★ |
-T | 顯示檔案系統類型 | ★★★☆☆ |
-i | 顯示 inode 使用情況 | ★★☆☆☆ |
-a | 顯示所有檔案系統 | ★★★☆☆ |
-x | 排除特定檔案系統 | ★★☆☆☆ |
除了看整體空間,df 還能檢查特定目錄的磁碟使用量。像我有次發現 /var
目錄突然暴增,就是用 df -h /var
找出原來是 log 檔案沒清理。進階一點的用法可以搭配 du
指令,先用 df 找出有問題的掛載點,再用 du 深入檢查是哪個子目錄在佔空間。
有些伺服器管理員會把 df 指令寫進 crontab 自動檢查,當空間使用超過 90% 就發郵件通知,這個在[自動檢查寄信通知Linux空間容量]那篇文章有詳細教學。我自己是習慣每天上班第一件事先跑 df -h,畢竟現在硬碟便宜歸便宜,但臨時爆滿還是很麻煩的~
Linux df指令到底是什麼?新手必學的磁碟檢查工具,簡單來說就是Linux系統裡用來檢查硬碟使用情況的實用小工具。每次覺得電腦跑很慢或是檔案存不進去的時候,用這個指令就能馬上知道是不是硬碟空間不夠了,超級方便的啦!而且它不只會告訴你剩多少空間,連總容量、已用量、掛載點這些資訊都會一併顯示,對系統管理或日常維護都很實用。
df指令的基本用法很簡單,打開終端機直接輸入df
就會列出所有檔案系統的使用情況。不過你可能會發現預設顯示的單位是KB,數字一大串看得眼睛很花,這時候可以加上-h
參數讓它用比較人性化的MB或GB來顯示。像這樣df -h
,馬上清楚明瞭!另外如果想看特定檔案系統的狀況,直接在後面加上路徑就好,例如df -h /home
就能只看家目錄的使用情況。
這邊整理幾個常用的df指令參數給大家參考:
參數 | 說明 | 使用範例 |
---|---|---|
-h | 以易讀格式顯示(自動換算單位) | df -h |
-T | 顯示檔案系統類型 | df -T |
-i | 顯示inode使用情況 | df -i |
–total | 顯示總計資訊 | df --total |
除了這些基本功能,df指令還有很多進階用法。比如說當你想要檢查遠端掛載的NFS或Samba分享空間時,df一樣可以派上用場。有時候刪了檔案但空間沒釋放,可能是還有程序在使用,這時候可以搭配lsof
指令來找出問題。雖然是簡單的指令,但熟悉之後真的能幫你省下不少 troubleshooting 的時間,建議大家有空可以多玩玩看不同的參數組合。
為什麼我的Linux系統老是空間不足?用df指令找出原因
最近是不是常常遇到Linux系統跳出「空間不足」的警告?明明沒裝什麼東西卻一直提示硬碟快滿了,真的很困擾對吧!其實用一個簡單的df
指令就能快速找出問題所在,今天就來教大家怎麼用這個指令當個Linux空間偵探。
首先打開終端機輸入df -h
,那個-h
參數是讓顯示結果用比較人性化的單位(像是GB、MB),不然看到一堆數字真的會頭痛。跑完指令後你會看到類似這樣的表格:
檔案系統 | 大小 | 已用 | 可用 | 已用% | 掛載點 |
---|---|---|---|---|---|
/dev/sda1 | 20G | 18G | 1.2G | 94% | / |
/dev/sda2 | 50G | 12G | 35G | 25% | /home |
tmpfs | 3.9G | 0 | 3.9G | 0% | /dev/shm |
從表格裡面最要注意的就是「已用%」這欄,通常超過90%就差不多要準備清理了。像上面例子中的/dev/sda1
掛載在根目錄/
已經用了94%,這可能就是系統一直警告的原因。這時候就要檢查根目錄底下哪些檔案在佔空間,可以用du -sh /*
指令一層層找下去。
有時候會發現是/var/log
裡面的日誌檔案太大,或是/tmp
暫存檔沒清乾淨。像我之前就遇過MySQL的binlog吃掉了10幾G,用sudo du -sh /var/lib/mysql
才發現這個隱藏的大胃王。另外要注意的是如果看到/boot
分區快滿了,可能是舊的kernel版本沒刪除,這個用apt autoremove
就能解決。
什麼時候該用df指令?這些情境你一定要知道!如果你是Linux系統管理員或是經常在終端機工作的工程師,df指令絕對是你日常必備的工具之一。這個看似簡單的指令其實藏著很多實用技巧,今天就來跟大家分享幾個最常見的使用情境,讓你徹底掌握這個好幫手。
當你發現系統變慢或是程式突然無法執行時,第一時間就該想到可能是磁碟空間不足。這時候輸入df -h
指令,馬上就能看到所有掛載點的空間使用情況,那個-h
參數會把容量轉換成人類看得懂的單位(像是GB、MB),不用再自己換算數字超方便。特別是當你在處理伺服器維護時,這個指令可以快速幫你找出哪個分割區快爆了,避免系統當機的危機。
另外在做系統備份前,最好也先用df指令檢查一下目標磁碟的剩餘空間夠不夠。我曾經遇過備份到一半才發現空間不足的慘劇,浪費了好多時間。現在我都會先確認空間再開始動作,省去很多麻煩。下面這個表格整理了幾種常見的使用情境:
使用情境 | 建議指令 | 說明 |
---|---|---|
快速檢查磁碟空間 | df -h |
顯示人類易讀的容量單位 |
查看特定檔案系統 | df -h /dev/sda1 |
只顯示指定分割區資訊 |
顯示inode使用量 | df -i |
檢查檔案系統的inode剩餘數量 |
排除特定檔案系統 | df -x tmpfs |
不顯示tmpfs類型的檔案系統 |
有時候你會發現明明df顯示還有空間,但系統卻說磁碟已滿,這時候就要記得加上df -i
查看inode使用狀況。特別是伺服器上有大量小檔案時,inode很容易就被用完,這種情況增加磁碟容量也沒用,必須刪除一些檔案或調整檔案系統配置才能解決。