raspi-config
最简单的方法是使用系统自带的配置工具:
sudo raspi-config
选择 Advanced Options → Expand Filesystem,按照提示重启即可。
手动扩展
原理
通常 SD 卡有两个分区:启动分区(mmcblk0p1)和系统分区(mmcblk0p2)。要把未使用的空间加入系统分区,常用做法是删除 mmcblk0p2 并以相同起始扇区重新创建一个扩展到末尾的新分区,然后调整文件系统大小。
该操作会修改分区表,请先备份重要数据并确保使用的起始扇区与原分区一致。
操作步骤
查看当前挂载与空间情况:
df -h
查询 mmcblk0p2 的起始扇区:
cat /sys/block/mmcblk0/mmcblk0p2/start
记录该数字(后续创建分区时需相同起始扇区)。
使用 fdisk 修改分区表:
sudo fdisk /dev/mmcblk0
在 fdisk 交互中依次执行:
- 输入
d
,选择2
,删除第二分区; - 输入
n
,选择p
(主分区),分区号2
; - 当提示
First sector
时输入之前记录的起始扇区; - 当提示
Last sector
时直接回车使用默认(表示使用剩余空间); - 输入
w
写入分区表并退出。
- 输入
重启,使内核加载新的分区表:
sudo reboot
重启后调整文件系统大小:
sudo resize2fs /dev/mmcblk0p2
完成后再次运行 df -h
检查系统分区已扩展到可用空间。
注意事项
- 在修改分区表前务必备份重要数据;
- 确保使用的起始扇区与原分区一致,否则可能导致数据丢失;
- 对于使用其他文件系统(如 btrfs、xfs)的情况,调整文件系统的命令不同。