Saya akhirnya tahu apa itu. Setelah membatalkan pengubahan ukuran asli (hanya ctrl+C sederhana), saya menjalankan e2fsck -f -y /dev/sdb3
untuk memperbaiki masalah yang saya buat. Saya dapat memasang partisi masih di bawah ukuran aslinya, jadi tidak ada data yang hilang. Saya kemudian menjalankan resize2fs dengan flag debug (resize2fs -d 14 <xxx>
) dan memperhatikan bahwa ia terjebak dalam loop konstan mencoba untuk memindahkan potongan inode.
Saya akhirnya berhasil dengan menggunakan yang lebih tua versi e2fsprogs. Saya meletakkan Ubuntu 9.10 (Karmic Koala) pada stik USB, mem-boot ke dalamnya, menginstal driver rr232x open-source sehingga saya dapat memanipulasi array, dan menjalankan versi e2fsprogs yang lebih lama (resize2fs 1.41.9 (22-Agustus-2009) , tepatnya).
Saya awalnya mencoba resize2fs -p /dev/sdb3 863000000
, dan saya diberi tahu bahwa diperlukan ~26 juta blok. Jadi saya mengambil ukuran target, menambahkannya dan melakukan resize2fs -p /dev/sdb3 1000000000
. 10 menit kemudian saya disambut dengan pesan:
/dev/sdb3 sekarang mencapai 1000000000 blok
Sekarang saya kira pertanyaan pamungkasnya adalah mengapa versi e2fsprogs yang lebih baru tidak dapat/tidak mau memberi tahu saya bahwa saya meminta ukuran yang terlalu kecil (dan mengapa pada awalnya menawarkan ukuran yang sekecil itu)?