先说原理:
海纳斯的备份分区,对我来说没有任何意义,并且还浪费了512m系统空间,因此我就在想能不能把这部分空间利用起来,然后就产生了移除原有Swap文件,把备份分区,变成Swap分区的想法,这样就能让系统多出来512m系统空间了。当让你也可以把它换成Swap内存。
详细操作步骤
查看当前Swap状态
首先,通过以下命令查看系统当前的Swap使用情况:
swapon --show
确认并定位备份分区
利用lsblk命令列出所有的分区,以确定哪个是您要转换成Swap分区的备份分区。
lsblk
最新版本的hinas 备份分区是:/dev/mmcblk0p8 或者 可以看哪个分区占用的512m,一般就是备份分区了
关闭并删除现有的Swap文件
为了优化空间,需先关闭并删除现有的Swap文件:
sudo swapoff /swapfile
sudo rm /swapfile
执行这两条命令后,原有用于Swap的文件就被删除了,释放出了相应的空间。
格式化备份分区为Swap分区
把备份分区格式化为Swap分区:
sudo mkswap /dev/mmcblk0p8
此步骤会将/dev/mmcblk0p8分区初始化为Swap分区。
修改Swap创建脚本和配置文件
更新系统启动时的Swap设置,首先创建或更新swap-create脚本,以便在启动时自动使用新的Swap分区:
备份原脚本:
cp /sbin/swap-create /sbin/swap-create.bak
创建新脚本:
sudo tee /sbin/swap-create <<-'EOF'
#!/bin/bash
swapFile="/dev/mmcblk0p8"
swapon "$swapFile"
swap=$(free -h | grep Swap | awk '{print $2}')
echo "Swap total size: $swap"
exit 0
EOF
并确保脚本可执行:
chmod +x /sbin/swap-create
运行swap-create脚本:
systemctl restart swap-create.service
然后,更新/etc/fstab文件,确保新的Swap分区在启动时自动挂载:
sudo sed -i 's|/swapfile|/dev/mmcblk0p8|' /etc/fstab
- 最终确认
重新启用Swap并查看:
sudo swapon --show
执行lsblk确认新的Swap分区已经启动:
lsblk
通过上述步骤,您不仅将备份分区有效地转换成了Swap分区,还通过删除之前根分区创建的Swap文件,减少了根分区的占用空间。这促使系统既优化了空间利用,也保证了更高效的内存管理。