EXT4 分区扩展后没有任何可用空间

EXT4 分区扩展后没有任何可用空间

我使用以下脚本扩展了我的 Banana Pi 上的根分区:

fdisk /dev/mmcblk0 <<EOF
p
d
$PART_NUM
n
p
$PART_NUM
$PART_START

p
w
EOF

重新启动后,我得到了一个 32 GB 的分区fdisk

root@bananapi /usr/local/bin # fdisk /dev/mmcblk0
Command (m for help): p
Disk /dev/mmcblk0: 31.9 GB, 31914983424 bytes

        Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk0p1            2048       43007       20480   83  Linux
/dev/mmcblk0p2           43008    62333951    31145472   83  Linux

但是,df显示旧的 8 GB 分区,并且我没有获得任何额外的空间:

root@bananapi /usr/local/bin # df
Filesystem     1K-blocks    Used Available Use% Mounted on
rootfs           8254904 5702140   2133448  73% /
/dev/root        8254904 5702140   2133448  73% /
devtmpfs          447624       0    447624   0% /dev
tmpfs              89548     292     89256   1% /run
tmpfs               5120       0      5120   0% /run/lock
tmpfs             179080       0    179080   0% /run/shm

我已尝试过:

基本上我尝试了所有的方法这个问题除了第三个需要物理键盘存在。但是,我似乎无法在重启时强制执行 fsck:

root@bananapi /usr/local/bin # dmesg |grep fsck     
[    4.796771] EXT4-fs (mmcblk0p2): warning: mounting unchecked fs,
running e2fsck is recommended

除了显而易见的解决方案(获取读卡器并在另一台计算机上修复分区)之外,我还能尝试其他方法吗?为什么fsck无法在启动时启动?

请随意将我的问题迁移至http://raspberrypi.stackexchange.com然而,据我所知他们不喜欢异国水果在上面。

答案1

fdisk显示(并使用)分区列表,df使用文件系统列表。在 *nix 上,两者是不同的;原则上,一个分区可以容纳多个文件系统(在 Linux 上,可以使用基于文件的文件系统,或者使用或类似losetup偏移和大小参数来创建多个单独的块设备)。

扩大保存文件系统的分区后调整文件系统的大小是一个与扩大保存文件系统的设备(分区)分开的操作。

使用 ext2、ext3 和 ext4,调整文件系统大小是使用 完成的resize2fs 其他文件系统类型则有所不同。

对于简单的情况,看起来您应该能够仅sudo resize2fs /dev/mmcblk0p2调整 /dev/mmcblk0p2 上的文件系统的大小以覆盖整个分区。man 8 resize2fs是你的朋友。

就我个人而言,我会运行一个首先手动 e2fsck,然后调整文件系统的大小,然后立即再次运行 e2fsck 以确保磁盘上的所有内容都正确。另外确保您有最近的备份文件系统上任何重要文件的信息,以防出现问题。出现问题的几率很小,但问题的后果可能很大,因此小心谨慎是值得的。

相关内容