Linux 开启 Swap分区(使用文件方式)

本文详细介绍了在Linux系统中如何创建、转换、激活swap文件,并将其设置为开机自动挂载。首先在/var目录下创建swap文件,然后通过mkswap命令将其转换,接着使用swapon挂载,最后在/etc/fstab中添加条目实现开机自动挂载。此外,还提到了调整swappiness值以适应生产服务器的建议。

1.创建一个swap文件。(count代表的是大小,我这里是2G。)
cd /var
sudo mkdir swap
sudo dd if=/dev/zero of=swapfile bs=1024 count=2000000

2.把文件转换为swap文件,在 var目录执行:
sudo mkswap swapfile

3.激活swap文件
这里可以直接用命令挂载上一个swap分区,但是重启后要重新挂载:
挂载: sudo swapon /var/swapfile
如果不需要了,可以也可以卸载:
卸载:sudo swapoff /var/swapfile

4、如果需要开机启动后自动挂载的话,可以把它添加到/etc/fstab文件中。
开机自动挂载SWAP分区,编辑 /etc/fstab,末行添加:
/var/swapfile swap swap defaults 0 0

这样就已经完成增加swap分区了。可以用free -m来参看结果。

5、对于大多数 Linux 系统,swappiness 值为60是可以的,但是对于生产服务器,应该设置较低的值。
例如,要将 swappiness 值设置为10,输入:
sudo sysctl vm.swappiness=10

为了使这个参数在重新引导过程中持久化,在/etc/sysctl.conf 文件中添加以下行:
vm.swappiness=10

<think>我们参考用户的问题和之前的回答,用户现在想了解如何关闭和开启swap分区。根据引用内容,我们可以总结如下:关闭swap分区:1.使用`swapoff`命令关闭swap分区。例如:`swapoff/dev/sda2`(其中`/dev/sda2`是swap分区的设备名)[^2]。2.若要关闭所有swap分区,可以使用`swapoff-a`。开启swap分区:1.使用`swapon`命令开启swap分区。例如:`swapon/dev/sda2`。2.若要开启所有在`/etc/fstab`中定义的swap分区,可以使用`swapon-a`。此外,我们还可以通过以下步骤来确保操作持久化(即重启后生效):-关闭swap分区后,如果想永久禁用,需要从`/etc/fstab`文件中删除或注释掉对应的swap分区条目。-开启swap分区后,如果已经在`/etc/fstab`中有配置,则重启后会自动开启;如果没有,需要添加到`/etc/fstab`中。操作步骤详细说明:###关闭swap分区1.首先查看当前启用的swap分区:```bashswapon--show```或者```bashfree-h```这样可以确定要关闭的swap分区设备名(如`/dev/sda2`)或swap文件路径。2.关闭指定的swap分区:```bashsudoswapoff/dev/sda2```或者关闭所有swap分区:```bashsudoswapoff-a```3.如果希望永久禁用该swap分区,需要编辑`/etc/fstab`文件,将对应的swap行注释掉(在行首添加`#`)或删除。例如:```bashsudovim/etc/fstab```找到类似下面的行:```/dev/sda2swapswapdefaults00```在行首添加`#`,保存退出。###开启swap分区1.如果swap分区已经在`/etc/fstab`中配置,可以直接使用以下命令开启所有在`/etc/fstab`中定义的swap分区:```bashsudoswapon-a```2.如果swap分区没有在`/etc/fstab`中配置,可以手动开启指定分区:```bashsudoswapon/dev/sda2```3.为了确保每次启动时自动开启swap分区,需要将其添加到`/etc/fstab`中。编辑`/etc/fstab`文件,添加一行(如果不存在的话):```/dev/sda2swapswapdefaults00```保存退出。注意:操作swap分区需要root权限,所以命令前要加`sudo`。###验证使用以下命令验证swap分区的状态:```bashswapon--showfree-h```###注意事项-在关闭swap分区之前,确保系统有足够的物理内存,否则可能会导致系统不稳定。-调整swap分区涉及到系统内存管理,请谨慎操作。根据引用[2]中的内容,调整swap分区大小是一个高级任务,需要谨慎操作。但用户的问题仅涉及关闭和开启,因此我们只需关注上述命令即可。###相关问题根据用户的问题,我们生成以下相关问题:1.如何查看系统当前正在使用swap分区?2.如何永久移除swap分区?3.开启swap分区后如何验证是否成功?</think>### Linux 关闭/开启 Swap 分区操作指南 #### 一、查看 Swap 分区状态 首先确认系统当前的 Swap 使用情况: ```bash # 查看 Swap 分区信息 swapon --show # 查看内存和 Swap 使用情况 free -h ``` [^1] #### 二、关闭 Swap 分区 1. **临时关闭单个 Swap 分区**: ```bash sudo swapoff /dev/sda2 # 替换为你的 Swap 分区设备名 ``` 2. **关闭所有 Swap 分区**: ```bash sudo swapoff -a ``` 3. **永久关闭**(重启后生效): ```bash # 编辑 fstab 文件 sudo vim /etc/fstab # 注释掉 Swap 分区行(在行首添加 #) # /dev/sda2 swap swap defaults 0 0 ``` #### 三、开启 Swap 分区 1. **临时开启单个 Swap 分区**: ```bash sudo swapon /dev/sda2 ``` 2. **开启所有 fstab 中的 Swap 分区**: ```bash sudo swapon -a ``` 3. **永久开启**: ```bash # 编辑 fstab 文件 sudo vim /etc/fstab # 取消 Swap 分区行的注释 /dev/sda2 swap swap defaults 0 0 ``` #### 四、验证操作结果 ```bash # 验证 Swap 状态 swapon --show free -h # 检查内核参数 cat /proc/sys/vm/swappiness ``` #### 五、注意事项 1. **内存警告**:关闭 Swap 前确保物理内存充足,否则可能导致系统崩溃 2. **权限要求**:所有操作需要 root 权限 3. **持久化修改**:fstab 修改需重启或执行 `swapon -a` 生效 4. **性能影响**:Swap 关闭后内存不足时进程会被 OOM Killer 终止[^2] > **关键区别**:Swap 分区是磁盘上的专用区域,而 Swap 文件是普通文件系统上的文件分区性能更好,文件更灵活[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值