2 调整文件系统大小 #
调整文件系统大小(不要与调整分区或卷大小混淆)可用于将物理卷上的空间变为可用状态,或使用物理卷上可用的其他空间。
2.1 使用案例 #
强烈建议您使用 YaST 分区程序来调整分区或逻辑卷的大小。这样一来,文件系统将自动调整为分区或卷的新大小。不过,在某些情况下,您需要手动调整文件系统的大小,因为 YaST 不支持它们:
调整虚拟机 Guest 的虚拟磁盘大小之后。
调整网络附加储存中的卷大小之后。
手动调整分区(例如通过使用
fdisk
或parted
)或逻辑卷(例如通过使用lvresize
)的大小之后。要缩小 Btrfs 文件系统的大小时(从 SUSE Linux Enterprise Server 12 开始,YaST 仅支持增大 Btrfs 文件系统)。
2.2 调整大小指导原则 #
调整任何文件系统的大小都存在一定的风险,可能会造成数据遗失。
为了避免数据丢失,请确保在开始任何调整大小任务之前备份您的数据。
计划调整文件系统大小时,请考虑以下指导原则。
2.2.1 支持调整大小的文件系统 #
文件系统必须支持调整大小才能利用卷可用空间增加功能。SUSE Linux Enterprise Server 中提供了适用于文件系统 Ext2、Ext3、Ext4 及 ReiserFS 的文件系统重设置大小实用程序。这些实用程序支持如下增加和减小大小:
文件系统 |
实用程序 |
增大大小(增大) |
减小大小(收缩) |
---|---|---|---|
Btrfs |
|
联机 |
联机 |
XFS |
|
联机 |
不支持 |
Ext2 |
|
联机或脱机 |
仅限脱机 |
Ext3 |
|
联机或脱机 |
仅限脱机 |
Ext4 |
|
联机或脱机 |
仅限脱机 |
ReiserFS |
|
联机或脱机 |
仅限脱机 |
2.2.2 增加文件系统的大小 #
您可以将文件系统增大到设备上的最大可用空间,或指定一个准确大小。请确保在尝试增加文件系统的大小之前先增加设备或逻辑卷的大小。
为文件系统指定精确大小时,请确保新大小满足以下条件:
新大小必须大于现有数据的大小;否则会发生数据丢失。
新大小必须等于或小于当前设备大小,因为文件系统大小不能超出可用空间。
2.2.3 减小文件系统的大小 #
当减小设备上的文件系统的大小时,请确保新的大小满足以下条件:
新大小必须大于现有数据的大小;否则会发生数据丢失。
新大小必须等于或小于当前设备大小,因为文件系统大小不能超出可用空间。
如果还计划减小用于保存文件系统的逻辑卷的大小,请确保在尝试减小设备或逻辑卷的大小之前先减小文件系统的大小。
XFS 格式文件系统的大小无法减少,因为 XFS 不支持此功能。
2.3 更改 Btrfs 文件系统的大小 #
装入 Btrfs 文件系统后,您可以使用 btrfs filesystem resize
命令来更改该文件系统的大小。装入了文件系统时,增加和缩小大小均受支持。
打开一个终端控制台。
确定您要更改的文件系统已装入。
使用
btrfs filesystem resize
命令通过下列其中一种方法更改文件系统的大小:要将文件系统大小扩展为设备的最大可用大小,请输入
sudo btrfs filesystem resize max /mnt
要将文件系统扩展为指定大小,请输入
sudo btrfs filesystem resize SIZE /mnt
将 SIZE 替换为所需大小(以字节为单位)。您还可以为值指定单位,例如 50000K (KB)、250M (MB) 或 2G (GB)。您也可以在值前面加上加号 (
+
) 或减号 (-
),分别指定增加或缩小至目前的大小:sudo btrfs filesystem resize +SIZE /mnt sudo btrfs filesystem resize -SIZE /mnt
通过输入以下命令,检查已装入文件系统的调整大小的结果
df -h
磁盘可用 (
df
) 命令显示磁盘的总大小、使用的块数以及文件系统上可用的块数。-h 选项会以可辨识的格式列印大小,如 1K、234M 或 2G。
2.4 更改 XFS 文件系统的大小 #
装入 XFS 文件系统后,您可以使用 xfs_growfs
命令来增加该文件系统的大小。XFS 文件系统的大小无法减少。
打开一个终端控制台。
确定您要更改的文件系统已装入。
使用
xfs_growfs
命令增加文件系统的大小。下面的示例会将文件系统的大小扩充为最大可用值。请参见man 8 xfs_growfs
了解更多选项。sudo xfs_growfs -d /mnt
通过输入以下命令,检查已装入文件系统的调整大小的结果
df -h
磁盘可用 (
df
) 命令显示磁盘的总大小、使用的块数以及文件系统上可用的块数。-h 选项会以可辨识的格式列印大小,如 1K、234M 或 2G。
2.5 更改 Ext2、Ext3 或 Ext4 文件系统的大小 #
不管是否装入了相应的分区,都可以使用 resize2fs
命令增加 Ext2、Ext3 和 Ext4 文件系统的大小。若要减少 Ext 文件系统的大小,需要将其卸载。
打开一个终端控制台。
如果应减少文件系统的大小,请将它卸载。
使用下列方法之一更改文件系统的大小:
要将文件系统大小扩展为名为
/dev/sda1
的设备的最大可用大小,请输入sudo resize2fs /dev/sda1
如果未指定大小参数,大小将默认为该分区的大小。
若要将文件系统更改为特定大小,请输入
sudo resize2fs /dev/sda1 SIZE
SIZE 参数指定为文件系统请求的新大小。如果不指定任何单位,则大小参数的单位是文件系统的块大小。也可以选择在大小参数后面加上下列其中一种单位指示项:
s
表示 512 字节扇区;K
表示 KB(1 KB 为 1024 字节);M
表示 MB;G
表示 GB。
等到调整大小完成再继续。
如果未装入该文件系统,则现在装入它。
通过输入以下命令,检查已装入文件系统的调整大小的结果
df -h
磁盘可用 (
df
) 命令显示磁盘的总大小、使用的块数以及文件系统上可用的块数。-h 选项会以可辨识的格式列印大小,如 1K、234M 或 2G。
2.6 更改 Reiser 文件系统的大小 #
ReiserFS 文件系统在装入或卸载时可增加大小。若要减少其大小,则需要将其卸载。
打开一个终端控制台。
如果您要减少文件系统的大小,而文件系统已装入,请将其卸除。
使用以下其中一种方法,更改名为
/dev/sda2
的设备上文件系统的大小:要将文件系统大小扩展为设备的最大可用大小,请输入
sudo resize_reiserfs /dev/sda2
不指定大小时,这会将卷增加到分区的完整大小。
要将文件系统扩展为指定大小,请输入
sudo resize_reiserfs -s SIZE /dev/sda2
将 SIZE 替换为所需大小(以字节为单位)。您还可以为值指定单位,例如 50000K (KB)、250M (MB) 或 2G (GB)。您也可以在值前面加上加号 (
+
) 或减号 (-
),分别指定增加或缩小至目前的大小:sudo resize_reiserfs -s +SIZE /dev/sda2 sudo resize_reiserfs -s -SIZE /dev/sda2
等到调整大小完成再继续。
如果未装入该文件系统,则现在装入它。
通过输入以下命令,检查已装入文件系统的调整大小的结果
df -h
磁盘可用 (
df
) 命令显示磁盘的总大小、使用的块数以及文件系统上可用的块数。-h 选项会以可辨识的格式列印大小,如 1K、234M 或 2G。