【linux磁盘管理——SWAP】

SWAP

什么是SWAP

SWAP分区在系统的物理内存不够时,将硬盘中的一部分空间供当前运行的程序使用

为什么需要SWAP

  • 当物理内存不够时,会随机kill占用内存的进程,从而产生oom,临时使用swap可以解决
1.关闭swap
[root@localhost ~]# swapoff -a
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1819         130        1598           9          90        1548
Swap:             0           0           0

[root@localhost ~]# dd if=/dev/zero of=/dev/null bs=1550M count=1000
已杀死

#故障日志
[root@localhost ~]# tail -f /var/log/messages
Dec 14 11:11:01 localhost kernel: Out of memory: Kill process 17123 (dd) score 828 or sacrifice child
=============================================================================================
为了避免物理内存不够用(使用swap硬盘空间来临时充当内存)
[root@localhost ~]# swapon -a

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1819         132        1595           9          92        1545
Swap:          2047           0        2047

[root@localhost ~]# dd if=/dev/zero of=/dev/null bs=1000M count=1000
swap一但被使用,系统会越来越卡。 ( 分配内存,硬件空间模拟内存介质 所以就很卡)

SWAP基础应用

 1.创建分区,并格式化为swap分区
 [root@localhost ~]# fdisk /dev/sda
#格式化为swap
[root@localhost ~]# mkswap /dev/sda1

2.查看当前swap分区大小
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1819         131        1595           9          92        1545
Swap:          2047           0        2047

创建swap

如何将磁盘空间划分一部分给swap使用
1.先找一块硬盘,划分1Gb空间 fdisk
[root@localhost ~]# fdisk /dev/sdb

2.格式化为一个swap的设备 mkswap /dev/sdb1
[root@localhost ~]# mkswap /dev/sdb1

3.通过 swapon -a /dev/sdb1 将该设备加入swap
[root@localhost ~]# swapon -a /dev/sdb1

4.使用free -m 检查swap的大小 free -m
[root@localhost ~]# free -m

5.如果不想使用swap了 swapoff /dev/sdb1 移除
[root@localhost ~]# swapoff /dev/sdb1

如上操作都是临时的,如需永久生效,需要添加到/etc/fstab

扩张swap分区

  • 扩张swap分区,使用swapon命令
    swapon device:将某个磁盘大小添加到swap分区中
    swapon -a:添加所有swap分区
[root@localhost ~]# swapon /dev/sdb1
[root@localhost ~]# free -m

缩小swap分区

  • 缩小swap分区,使用swapoff命令
    swapoff device:关闭某个磁盘的swap分区
    swapoff -a:关闭所有swap分区
[root@localhost ~]# swapoff /devsdb1
[root@localhost ~]# free -m

文件系统恢复

  1. 在系统中,为了增加系统性能,通常系统会将一些数据先写 入内存中,然后在刷新到磁盘中
  2. 服务器突然断电或其他原因,导致重启,会造成文件系统错误
[root@localhost ~]# fdisk /dev/sdb
[root@localhost ~]# mkfs.xfs /dev/sdb1
[root@localhost ~]# mount /dev/sdb1 /mnt
[root@localhost ~]# echo "Hello" > /mnt/new.txt
#模拟损坏
[root@localhost ~]# dd if=/dev/zero	of=/dev/sdc	bs=300M	count=1
[root@localhost ~]# umount /mnt
[root@localhost ~]# mount /dev/sdb1	/mnt(无法挂载)
#尝试修复
[root@localhost ~]# xfs_repair /dev/sdb1
#强制修复
[root@localhost ~]# xfs_repair -L /dev/sdb1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿赵的小记录

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值