Ubuntu Swapper扩展交换分区的完整步骤
扩展Ubuntu系统的交换空间(Swapper)可通过扩展现有交换分区或创建新的交换文件两种方式实现。其中,交换文件更灵活且风险更低,推荐优先使用;若需调整物理分区大小,则需使用GParted等工具。以下是详细操作流程:
sudo swapon --show
free -h
若系统已使用交换分区(如/dev/sda2),需先禁用它以释放空间:
sudo swapoff /dev/sdXY # 替换为你的交换分区名称(如/dev/sda2)
使用GParted图形工具(推荐新手)或fdisk命令行工具扩展分区:
sudo apt update && sudo apt install gparted;fdisk为例):
sudo fdisk /dev/sdX(sdX为磁盘名称,如/dev/sda);p查看分区表,记下交换分区号(如/dev/sda2对应分区号2);d删除交换分区(不会删除数据,仅移除分区表条目);n创建新分区,选择原分区号,设置更大的起始扇区(保持与原分区一致),结束扇区(增加所需大小);t将分区类型改为82(Linux swap);w保存并退出。扩展分区后,需重新格式化为交换文件系统:
sudo mkswap /dev/sdXY # 替换为你的交换分区名称
sudo swapon /dev/sdXY
sudo swapon --show # 查看新交换空间大小
free -h # 确认总虚拟内存增加
若没有现有交换分区,或希望快速扩展,创建交换文件是最便捷的方式:
使用fallocate(快速)或dd(兼容性好)命令创建指定大小的文件(如4GB):
sudo fallocate -l 4G /swapfile # 创建4GB交换文件
fallocate不可用):sudo dd if=/dev/zero of=/swapfile bs=1M count=4096 # 1M×4096=4GB
为确保安全,交换文件仅能被root用户读写:
sudo chmod 600 /swapfile
将文件转换为交换空间:
sudo mkswap /swapfile
sudo swapon /swapfile
编辑/etc/fstab文件,添加以下行(确保重启后自动启用):
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
sudo swapon --show # 查看新增的交换文件
free -h # 确认总虚拟内存增加
lvextend扩展逻辑卷,再用mkswap格式化,无需调整物理分区,更灵活。通过以上步骤,即可成功扩展Ubuntu系统的交换空间,提升系统在内存不足时的运行稳定性。