為什麼 df -h 顯示的磁碟空間比 board 實際擁有的少?
# df -h Filesystem Size Used Avail Use% Mounted on /dev/root 4.3G 1.9G 2.2G 47% / devtmpfs 980M 0 980M 0% /dev tmpfs 981M 0 981M 0% /dev/shm tmpfs 981M 33M 948M 4% /run tmpfs 981M 0 981M 0% /sys/fs/cgroup tmpfs 981M 0 981M 0% /tmp tmpfs 981M 16K 981M 1% /var/volatile
# fdisk -l Disk /dev/mmcblk1: 7.3 GiB, 7818182656 bytes, 15269888 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: Device Start End Sectors Size Type /dev/mmcblk1p1 16384 24575 8192 4M unknown /dev/mmcblk1p2 24576 32767 8192 4M unknown /dev/mmcblk1p3 32768 69859 37092 18.1M unknown /dev/mmcblk1p4 81920 15269854 15187935 7.2G unknown
圖像是用 yocto 建構的。
我希望 /dev/root 的大小為 7.2GB,但它只顯示 4.3GB。
誰能解釋為什麼
df -h
顯示 /dev/root 的磁碟空間比 board 實際擁有的磁碟空間少(與 相比fdisk
)?
誰能解釋為什麼
df -h
顯示的磁碟空間/dev/root
比 board 實際擁有的更少(與 相比fdisk
)?
4.3G
是安裝在 下的文件系統的大小/
。是塊設備7.2G
的大小,是(?)的分區。/dev/mmcblk1p4``/dev/mmcblk1
文件系統和塊設備是不同的概念(比較我的這個答案)。文件系統通常存在於某個塊設備中。它可能比塊設備小;這種情況是完全可能的,而且很可能是這裡的情況。
請注意,您的問題中沒有任何內容真正表明安裝在下面的文件系統
/
直接或間接存在於/dev/mmcblk1p4
.df
將它與/dev/root
可能是符號連結的關聯/dev/mmcblk1p4
;雖然它可能是別的東西。在 和之間可能有一個附加層(或什至層)
mmcblk1p4
,/dev/root
例如 LVM。檢查
ls -l /dev/root
。如果它顯示你root -> mmcblk1p4
,那麼是的,安裝在下面的文件系統/
直接存在,/dev/mmcblk1p4
但它的大小更小。如果/dev/root
是其他情況,則需要進一步調查。這個答案的其餘部分假設
/dev/root
是一個符號連結到/dev/mmcblk1p4
.有一些工具可以擴大文件系統。首先,您需要知道文件系統類型。呼叫
mount
並檢查相關條目。它看起來像這樣:/dev/root on / type <type> …
<type>
會告訴你文件系統類型。下一個:
- 選擇正確的工具(
resize2fs
對於 ext2/ext3/ext4,btrfs filesystem resize
對於 btrfs,…)。- 閱讀手冊。
- 檢查該工具是否支持擴大已安裝的文件系統。
btrfs filesystem resize
需要掛載文件系統。resize2fs
允許在放大時安裝。特定於其他類型的工具可能需要解除安裝文件系統;在這種情況下,您無法調整安裝為/
.- 擴大文件系統。如果需要,一些工具可以自動檢查底層塊設備的大小並使文件系統佔用所有可用空間。檢查手冊以獲取正確的語法。
我不能給你一個確切的放大命令,因為我不知道你的確切設置。無論如何,我對您提出的明確問題(“為什麼
df -h
顯示更少的磁碟空間?”)的回答是:因為df
處理文件系統而fdisk
處理塊設備;文件系統和塊設備是不同的概念。