目录
1. 找到swap文件位置
cat /proc/swaps
说明swap文件名称为swapfile,位于 / 根目录下
2. 停止swap文件
sudo swapoff /swapfile
3. 删除swap文件
sudo rm /swapfile
在根目录下找不到swapfile,说明删除成功
4. 创建新的swap文件,以创建64G大小为例
sudo dd if=/dev/zero of=/swapfile bs=1GB count=64
Linux dd 命令用于读取、转换并输出数据。dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。
if=文件名:输入文件名,默认为标准输入。即指定源文件。of=文件名:输出文件名,默认为标准输出。即指定目的文件。ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。bs=bytes:同时设置读入/输出的块大小为bytes个字节。cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。skip=blocks:从输入文件开头跳过blocks个块后再开始复制。seek=blocks:从输出文件开头跳过blocks个块后再开始复制。count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。conv=<关键字>,关键字可以有以下11种:conversion:用指定的参数转换文件。ascii:转换ebcdic为asciiebcdic:转换ascii为ebcdicibm:转换ascii为alternate ebcdicblock:把每一行转换为长度为cbs,不足部分用空格填充unblock:使每一行的长度都为cbs,不足部分用空格填充lcase:把大写字符转换为小写字符ucase:把小写字符转换为大写字符swap:交换输入的每对字节noerror:出错时不停止notrunc:不截短输出文件sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。--help:显示帮助信息--version:显示版本信息
5. 启用新的swap文件
# 先修改文件权限sudo chMod 600 /swapfile# 然后设置为swap文件sudo mkswap -f /swapfile# 最后启用swap文件sudo swapon /swapfile
6. 查看当前swap文件大小
free --giga
用法: free [选项]选项: -b, --bytes以字节显示输出--kilo使用千字节显示输出--mega使用兆字节显示输出--giga使用吉字节显示输出--tera使用太字节显示输出--petashow output in petabytes -k, --kibishow output in kibibytes -m, --mebishow output in mebibytes -g, --gibishow output in gibibytes--tebishow output in tebibytes--pebishow output in pebibytes -h, --human显示人类可读的输出--si使用 1000 的倍数而非使用 1024 -l, --lohishow detailed low and high memory statistics -t, --totalshow total for RAM + swap -s N, --seconds Nrepeat printing every N seconds -c N, --count Nrepeat printing N times, then exit -w, --wide宽版输出--help显示此帮助信息并退出 -V, --version显示程序版本然后离开
在根目录下也能看到新建的swapfile
7. 永久启用swap
vim /etc/fstab
swapfile所在行内容如下即可
Ubuntu修改Swap交换空间大小
一、查看本机Swap交换空间的内存大小
命令如下
执行结果如下:
longzhiye@longzhiye-lapTop:~$ free -mtotalusedfreesharedbuff/cacheavailableMem:31995374306039101631142Swap:97665911
可以看到本机的Swap空间为976M左右,即1G空间。
下面我们将其扩大64G
二、创建Swap文件
输入密码后,切换root。
MKDIR /swap
建立swap文件夹
进入到swap文件夹
sudo dd if=/dev/zero of=swapfile bs=64M count=1k
建立swapfile,大小为bs*count = 64M * 1k = 64G
sudo mkswap -f swapfile
将生成的文件转换为Swap文件
执行结果如下:
longzhiye@longzhiye-laptop:~$ sudo -i[sudo] longzhiye 的密码:root@longzhiye-laptop:~# cd /root@longzhiye-laptop:/# mkdir /swaproot@longzhiye-laptop:/# cd swap/root@longzhiye-laptop:/swap# sudo dd if=/dev/zero of=swapfile bs=64M count=1k记录了1024+0 的读入记录了1024+0 的写出68719476736 bytes (69 GB, 64 GiB) copied, 276.311 s, 249 MB/sroot@longzhiye-laptop:/swap# sudo mkswap -f swapfileSetting up swapspace version 1, size = 64 GiB (68719472640 bytes)无标签, UUID=c7feaf13-7f02-4941-a07f-86a43bdf3ef5
三、激活Swap文件
sudo swapon swapfile
激活Swap文件,并重新查看Swap空间 内存
执行结果如下:
root@longzhiye-laptop:/swap# sudo swapon swapfileswapon: /swap/swapfile:不安全的权限 0644,建议使用 0600。root@longzhiye-laptop:/swap# free -mtotalusedfreesharedbuff/cacheavailableMem:3199538137493123831065Swap:665126466448
可以看到Swap空间内存从1G变为64G = 我们扩大的64G+原始的1G。
四、设置为永久Swap
未做此步骤,重启之前的设置都失效!!!!
sudo gedit /etc/fstab
更改swap路径。
# /etc/fstab: static file system information.## Use 'blkid' to print the universally unique identifier for a# device; this may be used with UUID= as a more robust way to name devices# that works even if disks are added and removed. See fstab(5).### / was on /dev/sda2 during installationUUID=b726da21-83a0-497b-b3eb-a09f16403d60 /ext4errors=remount-ro 01# /boot/efi was on /dev/sda1 during installationUUID=C0BE-3630/boot/efivfatumask=007701#UUID=c7bb6d12-b247-4119-9c27-797f9995884e noneswapsw00/swap/swapfileswapswapsw00
五、扩展
如果需要卸载这个 swap 文件,可以进入建立的 swap 文件目录。执行下列命令。
sudo swapoff swapfile
如果需要一直保持这个 swap ,可以把它写入 /etc/fstab 文件。
/swap/swapfile /swap swap defaults 0 0
以上就是Ubuntu调整swap大小的详细内容,更多相关资料请阅读主机测评网其它文章!














发表评论