CentOS Swapper(交换空间)安装/配置步骤
Swapper是CentOS系统中用于扩展虚拟内存的关键组件,分为**交换分区(Swap Partition)和交换文件(Swap File)**两种形式。以下是详细的配置步骤:
在配置前,需了解系统当前内存使用情况及是否已有交换空间,避免过度分配。
执行命令:
free -h
输出结果中,“Swap”行显示当前交换空间大小(若为0则表示未配置)。
适用于物理磁盘无多余分区或希望灵活调整交换空间大小的场景。
步骤1:创建交换文件
使用dd命令创建指定大小的文件(以2GB为例):
sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
参数说明:if=/dev/zero(输入源为无限零流)、of=/swapfile(输出文件路径)、bs=1M(块大小为1MB)、count=2048(块数量,总大小=1M×2048=2GB)。
步骤2:设置文件权限
交换文件需仅root用户可读写,防止权限泄露:
sudo chmod 600 /swapfile
步骤3:格式化为交换分区
使用mkswap命令将文件转换为交换格式:
sudo mkswap /swapfile
步骤4:启用交换文件
立即激活交换空间:
sudo swapon /swapfile
步骤5:设置开机自动挂载
编辑/etc/fstab文件,添加以下行(确保系统重启后自动启用):
echo "/swapfile swap swap defaults 0 0" | sudo tee -a /etc/fstab
或使用文本编辑器(如vi)手动添加。
适用于需要更规范管理的场景(如服务器环境)。
步骤1:查看磁盘空间
确认磁盘有足够未分配空间(以/dev/sdb为例):
sudo fdisk -l
步骤2:创建新分区
使用fdisk工具创建分区:
sudo fdisk /dev/sdb
交互操作:
n(创建新分区)→ p(主分区)→ 分区号(如1)→ 回车(默认起始扇区)→ +2G(设置分区大小,如2GB)→ t(更改分区类型)→ 82(Linux swap类型)→ w(保存并退出)。步骤3:格式化分区
将新分区转换为交换格式:
sudo mkswap /dev/sdb1
步骤4:启用交换分区
立即激活分区:
sudo swapon /dev/sdb1
步骤5:设置开机自动挂载
编辑/etc/fstab文件,添加以下行:
echo "/dev/sdb1 swap swap defaults 0 0" | sudo tee -a /etc/fstab
执行以下命令,查看“Swap”行是否显示新增的空间:
free -h
# 或
sudo swapon --show
swappiness控制系统使用交换空间的倾向(范围0-100,默认60)。值越小,系统越倾向于保留物理内存;值越大,越倾向于使用交换空间。
cat /proc/sys/vm/swappiness
sudo sysctl vm.swappiness=10
/etc/sysctl.conf文件,添加以下行:echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
生效命令:sudo sysctl -p
swapoff(禁用),再从/etc/fstab中移除对应行。