June 30, 2009 posted by Christopher Berardi
The utility resize_ffs is a program intended to resize Berkeley Fast File Systems (FFS) by either growing or shrinking them. This filesystem is the standard filesystem for the NetBSD operating system -- a free, fast, secure, and highly portable Unix-like Open Source operating system.
There is already a preliminary utility in the NetBSD source tree, and this project will first and primarily thoroughly test it with a regression test suite and code review, and correct and fix any bugs encountered. After this is accomplished, and the utility is stable, this project will attempt to extend the utility with features such as "live" resizing, that is the ability to dynamically resize the filesystem without first having to unmount it.
More information is available on the project website.
After a little bit of a slow start, the project is back on track. I am moving from the "just testing" phase to using that test information to hunt down bugs and also improve the program. One addition I have already added is the ability to choose the new filesystem size in kilo-, mega-, or gigabytes - as well as the default of sectors. However, it does currently assume a sector size of 512 KB in the conversion. I have identified several potential bugs, the worst of which is data corruption which seems limited to when the filesystem is growing.