银河麒麟系统内存不足时需设置swap交换空间:先用free -h确认状态,再mkdir -p /usr/swap创建官方推荐目录;可用dd(兼容性强)或fallocate(仅ext4/xfs)创建swap文件,严格设置chmod 0600权限,mkswap格式化后swapon启用,并通过fstab配置开机自动挂载。

当银河麒麟系统运行内存密集型程序时出现卡顿、响应迟缓或提示“内存不足”,说明物理内存已接近耗尽,必须设置Swap交换空间来扩展虚拟内存容量,否则系统可能触发OOM Killer强制终止进程。
确认当前Swap状态并创建专用目录
以root身份打开终端,执行free -h查看Swap行是否为0或明显偏小;若无Swap或容量不足,立即执行mkdir -p /usr/swap创建专用目录——这一步必须做,【/usr/swap是Kylin V10官方推荐路径,其他路径可能导致fstab挂载失败】。
用dd命令创建Swap文件(兼容性最强)
方法一:适用于所有Kylin V10版本(含SP1/SP2/V11),尤其适合虚拟机或磁盘已满环境,不依赖文件系统类型。
第一步:生成8GB Swap文件:dd if=/dev/zero of=/usr/swap/swapfile bs=1M count=8192。注意:bs=1M比bs=4K更稳定,避免因块大小不匹配导致写入中断。
第二步:严格设置权限:chmod 0600 /usr/swap/swapfile。这一步不可跳过,否则mkswap会报错“Permission denied”。
第三步:格式化并启用:mkswap /usr/swap/swapfile && swapon /usr/swap/swapfile。
第四步:验证生效:swapon --show,确认输出中type列为file、size为8.0G、state为active。
用fallocate快速创建Swap文件(仅限ext4/xfs)
方法二:比dd快数倍,但要求目标分区支持fallocate操作,否则会报错“Operation not supported”。
先检查文件系统类型:df -T /usr | tail -1 | awk '{print $2}',输出必须是ext4或xfs才能继续。
创建16GB Swap文件:fallocate -l 16G /usr/swap/swapfile2。
设置权限并启用:chmod 0600 /usr/swap/swapfile2 && mkswap /usr/swap/swapfile2 && swapon /usr/swap/swapfile2。
配置开机自动挂载(必须完成否则重启失效)
编辑fstab文件:vim /etc/fstab。
在文件末尾新增一行:/usr/swap/swapfile none swap sw 0 0。注意路径必须与你创建的文件完全一致,不能写成/swapfile或/usr/swap/swapfile2。
保存退出后执行:swapon --verify检查语法是否正确,再运行mount -a加载新配置。











