23.3 UFS 文件系统
关于 UFS
UFS 全称是 Unix File System,即 UNIX 文件系统,基于 UNIX v7。过去,macOS 也使用该文件系统作为 root 文件系统。目前 FreeBSD 在使用的是 UFS2。Linux 对 UFS 的读写支持也不完整。这个文件系统只能扩大不能被缩小。
注意
UFS 文件系统和手机等设备中使用的 UFS 存储完全不是一回事,那个 UFS 是 Universal Flash Storage(通用闪存存储)的缩写,已经出到 4.0 了(FreeBSD 于 10.4 支持 eMMC;而 UFS 出现在 FreeBSD 15.0 的开发计划中,尚不支持)。而作为文件系统的 UFS 版本号才是 2。而且手机内部的系统也不可能是 UFS 文件系统,因为基于 Linux 的安卓根本不支持 UFS 这个文件系统,这些设备一般的根文件系统是 ext4(一些新设备是 F2FS)。
警告
UFS 只能扩大不能缩小!
磁盘扩容
注意
此方案仅适用于向后扩展,如果 freebsd-ufs 分区前面有空余空间则无法使用此方法扩展。
gpart show查看磁盘分区
root@freebsd:~ # gpart show
=> 3 41943035 da0 GPT (20G)
3 122 1 freebsd-boot (61K)
125 66584 2 efi (33M)
66709 2097152 3 freebsd-swap (1.0G)
2163861 10486633 4 freebsd-ufs (5.0G)
12650494 29292544 - free - (14G)查看系统盘大小只有 5G,显示 da0 只有这一个盘。
执行扩容命令
警告
如果你使用的是 GPT 分区表,上边的扩容操作(在虚拟机或云服务器上的)会破坏 GPT 分区表,所以需要先恢复之:
# gpart recover da0执行后下面步骤相同。
i 为要扩容的分区,这里扩容 / 分区 freebsd-ufs。
root@freebsd:~ # gpart resize -i 4 da0
da0p4 resized启动
growfs服务,自动完成扩展
root@freebsd:~ # service growfs onestart
Growing root partition to fill device
da0 recovering is not needed
da0p4 resized
growfs: no room to allocate last cylinder group; leaving 7.7MB unused
super-block backups (for fsck_ffs -b #) at:
11544384, 12827072, 14109760, 15392448, 16675136, 17957824, 19240512, 20523200, 21805888, 23088576, 24371264,
25653952, 26936640, 28219328, 29502016, 30784704, 32067392, 33350080, 34632768, 35915456, 37198144, 38480832用
df -h命令查看结果。
root@freebsd:~ # df -hl
Filesystem Size Used Avail Capacity Mounted on
/dev/gpt/rootfs 18G 4.8G 12G 29% /
devfs 1.0K 0B 1.0K 0% /dev
/dev/gpt/efiesp 32M 651K 31M 2% /boot/efi
tmpfs 20M 4.0K 20M 0% /tmp
tmpfs 32M 156K 32M 0% /var分区扩展完成。
最后更新于
这有帮助吗?