A. linux下增加、删除Swap文件---2018-02-08
swapon -s
若返回的信息概要是空的,则表示 Swap 文件不存在。
dd if=/dev/zero of=/swapfile bs=1024 count=4194304
【参数说明】
if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
bs=bytes:同时设置读入/输出的块大小为bytes个字节
count=blocks:仅拷贝槐银blocks个块,块大小等于bs指定的字节数。
mkswap /swapfile
swapon /swapfile
用 vim 打开 /etc/fstab 文件,在其最后添加如下一行:
/swapfile swap swap defaults 0 0
当下一次系统缓明改启动时,新的swap文件就打开了。
chown root:root /swapfile
chmod 0600 /swapfile
9、删除SWAP分区
swapoff /swapfile #卸载swap文件
并修改/etc/fstab文件 #从配置总删除
rm -rf /swapfile #删除文扰判件
B. centos 设置虚拟内存SWAP
转自 ( https://www.cnblogs.com/chenminklutz/p/7218496.html?utm_source=itda&utm_medium=referral )
SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的。它类似于Windows中的虚拟内存。在Windows中,只可以使用文件来当作虚拟内存。而linux可以文件或者分区来当作虚拟内存。
首先查看当前的内存和swap 空间大小(默认单位为k, -m 单位为M):
free -m
此处可以看到总内存是503M,SWAP不存在。
查看swap信息,包括文件和分区的详细信息
swapon -s
或者
cat /proc/swaps
如果都没有,我们就需要手动添加交换分区。注意,OPENVZ架构的VPS是不支持手动添加交换分区的。
添加交换空间有两种选择:添加一个交换分区或添加一个交换文件。推荐你添加一个交换分区;不过,若你没有多少空闲空间可用, 则添加交换文件。
-增加swap交换文件
1、使用dd命令创建一个swap交换文件
dd if=/dev/zero of=/home/swap bs=1024 count=1024000
这样就建立一个/home/swap的分区文件,大小为1G,可以自行倍增。
2、制作为swap格式文件:
mkswap /home/swap
3、设置文件权限
chmod 600 /home/swap
4、再用swapon命令把这个文件分区挂载swap分区
swapon /home/swap
我们用free -m命令看一下,发现已经有交换分区了。
但是重启系统后,swap分区又变成0了。
5、为防止重启后swap分区变成0,要修改/etc/fstab文件
vi /etc/fstab
在文件末尾(最后一行)加上
/home/swap swap swap default 0 0
这样就算重启系统,swap分区还是有值。
-删除swap交换文件
1、先停止swap分区
swapoff /home/swap
2、删除swap分区文件
rm -rf /home/swap
3、删除自动挂谈缺载配置命令
vi /etc/fstab
这行删除
/home/swap swap swap default 0 0
这样就能把手动增加的交换文件删除了。
-注意:
1、增加删除swap的操作只能使用root用户来操作。
2、装系统时分配的swap分区貌似删除不了。
3、swap分区一般为内存的2倍,但最大不超过2G
-使用分含友辩区来做SWAP(虚拟内存).
1 使用fdisk来创建交换分区(假设 /dev/告巧sdb2 是创建的交换分区)
2 使用 mkswap 命令来设置交换分区:
3 启用交换分区:
4 写入/etc/fstab,以便在引导时启用:
/dev/sdb2 swap swap defaults 0 0
-删除交换分区
步骤如下:
1、先停止swap分区
swapoff /dev/sdb2
2、删除自动挂载配置命令
vi /etc/fstab
这行删除
/dev/sdb2 swap swap defaults 0 0
这样就能把手动增加的交换分区删除了。
C. Linux开启Swap分区
title: 2021-02-07-Linux开启Swap分区
date: 2021-02-07 11:20:20
categories: [linux]
tags: [linux分区扩容]
toc: true
场景: 华为云购买的机器,默认不会开启 swap 分区,服务器运行内存只有 4GB ,不满足使用,开启 swap 交换分区
1、 开启 swap 分区
新建一个专门的文件用于 swap 分区
注:此文件的大小是 count 的大小乘以 bs 大小,上面命令的大小是 8GB
2、 通过 mkswap 命令将上面新建出的文件做成 swap 分区
3、 查看内核参数 vm.swappiness
若 vm.swappiness 为 0 则根据实际需要调整成 30 或者 60
注:若想永久修改,则编辑 /etc/sysctl.conf 文件
4、 启用此交换分区的交换功能
这里有可能会有报错,如下
解决方法:
尝试激活 Swap 文件
5、 关闭 swap 分区
6、 重新激活 swap 分区,没有写入系统配置文件中,系统重启后,就需要重新激活
7、 如果需要一直保持这个 swap ,可以把它写入 /etc/fstab 文件
8、 关机重启确认 Swap 大小
D. Linux下直接在/etc/fstab 下修改swap的值 是否可以扩展swap空间
不可以。要先创建swap设备,再修改fstab
swap设备可以是分区,也可以是文件
分区的话:版权 mkswap /dev/xxx
文件的话:先创建指定大小的空文件(假设是1000M = 1M * 1000 ), dd if=/dev/zero of=xxx bs=1M count=1000, 然后再mkswap xxx
E. 创建磁盘分区及swap
1、fdisk工具分区
若还需要创建更多的分区,重复以上操作即可
2、将磁盘变化写入内核
3.格式化文件系统
4、查看分区的属性信息
5、挂载
6、将挂载信息写入/etc/fatab文件,将开机自动挂载
7、df 查看挂载信息
1、用新的磁盘分区做swap
fdisk /dev/sdb
4、写入/etc/fstab文件
5、swap挂载
6、显示所有swap设备
1、利用现有分区空间创建swap,创建/app/目录下的fileswap文件为交换分区,大小为2G
2、格式化swap
3、写入fstab文件
4、挂载
5、swapon -s查看swap交换分御困区
1、显示当前现有的swap交换分区
2、修改/etc/fstab文件,将/app/fileswap的优先级高于/dev/sdb3,pri为指定优先级,值越大优先级越高
3、重新挂如拆大载
4、swapon -s 显示所有swap分区
5、总结
/app/fileswap的优先级为10,大于/dev/sdb3的值,所以优先于/dev/sdb3和/dev/sda5使用,即可将/dev/sda5和/dev/渣竖sdb3上的数据迁移完毕之后,这时我们就可以将/dev/sdb3甚至/dev/sda5卸载然后删除,最终达到我们的迁移swap分区的目的和释放新分区的目的
F. 手机swapfile有什么用
使用 swap 有两种方式,一种是创建 SWAP 分区即交换分区,另一种是使用 swap 文件。
以前有一种说法是 swap 分区比 swap 文件在速度上要快一些,但是在 linux 内核 2.6.x 及以后版本,这两种方法在性能和速度上其实很接近了,特别是 swap 文件是连续存放在硬盘嫌团喊里的情况下。而且 swap 文件比 swap 分区更灵活,可以放芹野在硬盘的任何目录下,并且随时调整大小。基于这两种不同方式各自的优缺点,你可以根据实际情况选择使用哪种方式。
1、可以使用 swap -s 命令查看 swap 设置的情况。
daweibro@aliyun:~$ swapon -s
Filename Type Size Used Priority
/var/swap file 2097148 0 -1
上面是大伟哥阿里云 ECS 的情况,说明 swap 是文件的形式,大小是 2 GB 左右,文件位于/var/目录下面。
daweibro@Workstation:~$ swapon -s
Filename Type Size Used Priority
/dev/dm-2 partition 3999740 0 -1
上面是大伟哥工作用电脑的情况,这里 swap 是独立分区的形式,大小 4GB 左右。
2、使用 top 或者 free -m 命令可以查看当前内存和 swap 具体的使用情况。这里我们以 free -m 为例:
daweibro@aliyun:~$ free -m
total used free shared buffers cached
Mem: 992 875 116 65 101 370
-/+ buffers/cache: 404 588
Swap: 2047 0 2047
以上 Mem 部分第一二行是物理内存的使用情况 ,较后一行就是 swap 的使用情况了。完全没用到,说明目前阿里云的 ECS 很悠闲,一点也不累。
daweibro@Workstation:~$ free -m
total used free shared buff/cache available
Mem: 19954 10761 6701 416 2492 8327
Swap: 3905 0 3905
工作用的电脑也还行,内存占用率更低,交换分区也没用上。
3、创建 swap 分区或者 swap 文件。
创建 swap 分区要用到分区工具比如 fdisk 或者 parted,这里大伟哥就不讲了,只是提醒一下,磁盘操作需要小心谨慎,万一丢失数据就不好了。
要创建 swap 文件,可以用 dd 命令,下面的例子就是在/根目录下创建一个 2048 GB 大小的文件,名称是 swapfile:
dd if=/dev/zero of=/swapfile bs=1M count=2048
给予合适的权限:
chmod 600 /swapfile
4、建立 swap 的文件系统:
mkswap /swapfile
如果你创建的是 swap 分区/dev/sdb,则需要用同样的命令对 swap 分区进行格式化:
mkswap /dev/sdb
5、建立 swap 的文件系统:
swapon /或神swapfile
或者:
swapon /dev/sdb
6、编辑/etc/fstab 文件,在文件末尾根据情况加入下面这两行中的一行,然后保存退出,再重启系统运行 swapon -s 或者 top/free 命令应该就能看到新添加的 swap 交换区了。
/swapfile none swap defaults 0 0
或者:
/dev/sdb none swap defaults 0 0
7、如果你做了一个艰难的决定,要和之前的 swap 交换区说再见,只要反方向操作就可以了。首先 swapoff,然后删除 swap 文件或分区:
# swapoff -a
# rm -f /swapfile
较后把之前加入/etc/fstab 文件的行删除就好了。
三、如何使用 swappiness 参数设置用好 SWAP?
论坛上的朋友因为担心 swap 的使用会拖慢系统,所以才发贴寻求删除 swap 交换分区的方法,其实不用过分担心这一点,因为 linux 肯定不会那么傻,放着大量空闲的物理内存不用而去使用慢得多的 swap。就如大伟哥前面的例子,不管是 1 GB 内存的阿里云 ECS 服务器,还是 20 GB 内存的工作站,在物流内存还有富余的情况下,linux 默认是用不到 swap 分区的。如果到了大量使用 swap 分区的时候,那物理内存肯定是不够用了,这时候没有 swap 分区反而性能下降会更明显。所以没有太大的必要去删除 swap 分区。
“swap file”的意思是:n. [计] 交换文件。
1、相关短语:
swap the file names 交换的文件名
Permanent Swap File 永久交换档 ; 永久交换文件 ; 永久调换档 ; 固定交换文件
application swap file 应用程序交换文件 ; 应用程序交换文件英语
Swap File Size Sensor 交换文件大小传感器
Swap File Utilization Sensor 交换文件使用传感器
2、例句:A 2 GB RAM machine with no swap file performs almost every Eclipse operation faster.
G. Linux 开启 Swap分区 教程
最近在用一个自己装的debian系统的时候,发现运行很多脚本的时候出现:Cannot fork。
网上说有可能是因为swap分区空间不够导致的问题。然和亮后看了一下swap空间的大小。居然大小是0M。
查看的命令是free -m。
难道真的是swap分区导致的问题?不管了,先添加个swap分区再说吧。
1.创建一个swap文件。
count代表的是大小,我这里是2G。
2.把文件转换为swap文件
3.激活swap文件
这里可以直接用命令挂载上一个swap分区,但是重启后要重新挂载:
4、如果需要开机启动后自动挂载的话,可以厅郑把它添加到唤伏宽/etc/fstab文件中。
开机自动挂载SWAP分区,
在文件中增加:
4.这样就已经完成增加swap分区了。可以用free -m来参看结果。
H. CentOS7下swap分区创建(添加),删除以及相关配置
在添加swap分区之前我们可以了解下当前系统swap是否存在以及使用情况,可用:
了解硬盘使用情况(一般/dev/vda1为挂载硬盘):
使用dd命令创建名为液仿swapfile 的swap交换文件(文件名和目录任意):
或
执行完毕,对交换文件格式化并转换为swap分区:
挂载并激活分区:
执行以上命令可能会出现:“不安全的权限 0644,建议使用 0600”类似提示,不要紧张,实际上已经激活了,可以忽略肆埋祥提示,也可以听裂搏从系统的建议修改下权限:
这时候可以用 free –h 或 swapon –s命令查看新swap分区是否正常添加并激活使用。
修改 fstab 配置,设置开机自动挂载该分区:
在fstab文件末尾追加如下内容后:wq!保存即可:
/var/swapfile swap swap defaults 0 0
或直接对fstab进行echo追加:
先停止正在使用swap分区:
删除swap分区文件
删除或注释掉我们之前在fstab文件里追加的开机自动挂载配置内容:
/var/swapfile swap swap defaults 0 0
修改swappiness值,这里以50为例。
若希望vm.swappiness=50永久生效,则需要修改sysctl配置文件,直接echo追加配置内容,重启系统后即可生效:
dd if=/dev/zero of=/var/swapfile1 bs=1024 count=2097152
mkswap /var/swapfile1
swapon /var/swapfile1