swap space交换空间
交换空间的主要功能:当全部的 RAM 被占用并且需要更多内存时,用磁盘空间代替 RAM 内存。
-
swapoff -a
:关闭(卸载)所有交换空间 -
swapoff /dev/sda2
卸载某个交换空间,还可以关闭文件swapoff /tmp/swapfile
-
swapon -a
:启动所有交换空间(enable all swaps from /etc/fstab) -
cat /proc/swaps
|swapon -s
查看swap分区 -
free -h
|free -m
查看内存,可以看到swap总大小
swap大小规则
参照oracle官方文档设定的标准应这样配置:
- 4G以内的物理内存,SWAP 设置为内存的2倍。
- 4-8G的物理内存,SWAP 等于内存大小。
- 8-64G 的物理内存,SWAP设置为8G。
- 64-256G物理内存,SWAP 设置为16G
swap space扩容
swap分区有两种方式:
- 使用一个交换分区
- 利用一个共享文件来实现
文件扩容swap space
# 查看swap内存大小
free -h
# 关闭所有交换空间
swapoff -a
# dd命令创建一个swap文件,/dev/zero不要改动,swapfile可以改名
dd if=/dev/zero of=/tmp/swapfile bs=1024 count=2048000
# 修改swapfile文件权限,就是600,不然会warning
chmod 600 /tmp/swapfile
# 格式化为swap分区
mkswap /tmp/swapfile
# 挂载并激活swap分区
swapon /tmp/swapfile
# 设置扩展的swap分区为自动挂载,这一步不做,swapoff和swapon的-a对这个文件swap分区不起效
echo /tmp/swapfile swap swap defaults 0 0 >> /etc/fstab
if
输入文件名of
输出文件名bs
输入和输出块的大小,字节count
仅拷贝的块个数/dev/zero
文件是一个特殊的字符设备文件,常见用法:1:用它提供的字符流来覆盖信息(它会提供无限连续不断的空数据流(特殊的数据格式流));2:产生一个特定大小的空白文件。
写内容到文件的其他方式记录
方法一:可以多行
回车输入内容,再回车继续输入,CTRL D保存退出
cat >> /etc/fstab
/tmp/swapfile swap swap defaults 0 0 #这是写入的内容
方法二:多行内容
cat >> /etc/fstab >> END
/tmp/swapfile swap swap defaults 0 0
END
方法三:一行内容
echo /tmp/swapfile swap swap defaults 0 0 >> /etc/fstab
# 一样效果
echo >> /etc/fstab /tmp/swapfile swap swap defaults 0 0
分区扩容swap space
lsblk
:查看本机的磁盘分区基本情况;fdisk -l
:查看本机的磁盘基本情况;df /dev/sda
:查看磁盘空间利用率;parted /dev/sda print
: 列出磁盘的分区表类型与分区信息;- Partition Table(分区表)是 msdos,说明本系统的分区表为MBR类型,使用fdisk!
- fdisk和gdisk是是用来管理磁盘分区的两个工具软件。MBR分区表使用fdisk,GPT分区表使用gdisk
fdisk /dev/sda
:就可以管理磁盘sda
了,这里保存后,需要重启或刷新下分区表才能生效。partprobe
:刷新分区表,重启也能达到效果。-s
会显示信息
Linux分区介绍
分区是物理层面,挂载点是逻辑层面,通过mount
命令实现两者的挂载。
Linux起码三个分区, fdisk -l
可查看硬盘上的现有分区
/boot
分区 :200~500M。启动时必需的东西,单独存在boot区便于管理swap
分区 :Linux的swap分区格式为内存交换做过专门优化,指定主分区上的一个文件也行,但性能方面都比不过专门的swap分区/
分区:安装了Linux系统以及你自己的用户文件