温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Linux交换分区SWAP的方法和lvm管理教程

发布时间:2021-09-07 13:04:59 来源:亿速云 阅读:174 作者:chen 栏目:开发技术

这篇文章主要介绍“Linux交换分区SWAP的方法和lvm管理教程”,在日常操作中,相信很多人在Linux交换分区SWAP的方法和lvm管理教程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux交换分区SWAP的方法和lvm管理教程”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

目录
  • 1.交换分区SWAP

    • 1.1创建swapfile

    • 1.2格式化swap分区

    • 1.3检测当前swap分区情况

    • 1.4开启新建的SWAP分区

    • 1.5关闭新建的swap分区

    • 1.6给新区增加一个交换分区swap

  • 2. lvm管理

    • 步骤lvm

      • 1.准备物理磁盘(加磁盘参考上一博客)

  • 3.卷组管理

    • 扩展卷组,将新磁盘加入卷组

    • 4.逻辑卷管理

      • 逻辑卷扩展的容量不能超过卷组的容量

        • 对ext4文件系统的逻辑卷裁剪容量

          • 首先自己创建一个1G的逻辑卷作为裁剪的对象

          • 1、如果已经挂载,必须先卸载

          • 2、裁剪容量,必须是先检测文件系统

          • 3、调整完毕后采取裁剪逻辑卷容量

          • 4、强烈建议裁剪后,再次检测文件系统

          • 5、挂载测试

      1.交换分区SWAP

      交换分区一般指定虚拟内存的大小为实际内存的1~1.5倍。如果实际内存超过8GB,可以直接划分16GB给虚拟内存即可,如果虚拟内存不够用的情况,须增加一个虚拟磁盘,由于不能给原有的磁盘重新分区,所以可以选择新建。

      1.1创建swapfile

      [root@clq0917 ~]# dd if=/dev/zero of=/opt/www bs=1M count=1024
      记录了1024+0 的读入
      记录了1024+0 的写出
      1073741824字节(1.1 GB)已复制,10.7409 秒,100 MB/秒
      [root@clq0917 ~]#

      1.2格式化swap分区

      [root@clq0917 ~]# mkswap -f /opt/www
      正在设置交换空间版本 1,大小 = 1048572 KiB
      无标签,UUID=9928fe54-9639-4dd9-90ef-82d3f69e94fe
      [root@clq0917 ~]#

      1.3检测当前swap分区情况

      [root@clq0917 ~]# free -m
                   total       used       free     shared    buffers     cached
      Mem:          1840       1304        535          8          1       1115
      -/+ buffers/cache:        188       1652
      Swap:         2047          0       2047
      [root@clq0917 ~]#

      1.4开启新建的SWAP分区

      [root@clq0917 ~]# swapon /opt/www
      swapon: /opt/www:不安全的权限 0644,建议使用 0600。
      //使用权限命令
      [root@clq0917 ~]# chown 600 /opt/www
      [root@clq0917 ~]# free -m
                   total       used       free     shared    buffers     cached
      Mem:          1840       1305        535          8          1       1115
      -/+ buffers/cache:        188       1651
      Swap:         3071          0       3071//swap分区多出来1G

      1.5关闭新建的swap分区

      [root@clq0917 ~]# swapoff /opt/www
      [root@clq0917 ~]# free -m
                   total       used       free     shared    buffers     cached
      Mem:          1840       1304        535          8          1       1115
      -/+ buffers/cache:        188       1652
      Swap:         2047          0       2047//还原到没有增加虚拟磁盘

      1.6给新区增加一个交换分区swap

      1.[root@clq0917 ~]# fdisk -l /dev/sdb
      磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
      Units = 扇区 of 1 * 512 = 512 bytes
      扇区大小(逻辑/物理):512 字节 / 512 字节
      I/O 大小(最小/最佳):512 字节 / 512 字节
      磁盘标签类型:dos
      磁盘标识符:0x1f8fccca
         设备 Boot      Start         End      Blocks   Id  System
      /dev/sdb1            2048      393215      195584   83  Linux
      /dev/sdb2          393216    41943039    20774912    5  Extended
      /dev/sdb5          395264      589823       97280   82  Linux swap  ~准备该区为交换分区
      2.把分区类型改为82
      命令(输入 m 获取帮助):l
       0  空              24  NEC DOS         81  Minix / 旧 Linu bf  Solaris        
       1  FAT12           27  隐藏的 NTFS Win 82  Linux 交换 / So c1  DRDOS/sec (FAT-
       2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
       3  XENIX usr       3c  PartitionMagic  84  OS/2 隐藏的 C:  c6  DRDOS/sec (FAT-
       4  FAT16 <32M      40  Venix 80286     85  Linux 扩展      c7  Syrinx         
       5  扩展            41  PPC PReP Boot   86  NTFS 卷集       da  非文件系统数据 
       6  FAT16           42  SFS             87  NTFS 卷集       db  CP/M / CTOS / .
       7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux 纯文本    de  Dell 工具      
       8  AIX             4e  QNX4.x 第2部分  8e  Linux LVM       df  BootIt         
       9  AIX 可启动      4f  QNX4.x 第3部分  93  Amoeba          e1  DOS 访问       
       a  OS/2 启动管理器 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
       b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
       c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad 休 eb  BeOS fs        
       e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT            
       f  W95 扩展 (LBA)  54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
      10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC  
      11  隐藏的 FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor      
      命令(输入 m 获取帮助):t       
      分区号 (1,2,5,默认 5):5
      Hex 代码(输入 L 列出所有代码):82
      已将分区“Linux”的类型更改为“Linux swap / Solaris”
      命令(输入 m 获取帮助):p
      磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
      Units = 扇区 of 1 * 512 = 512 bytes
      扇区大小(逻辑/物理):512 字节 / 512 字节
      I/O 大小(最小/最佳):512 字节 / 512 字节
      磁盘标签类型:dos
      磁盘标识符:0x1f8fccca
         设备 Boot      Start         End      Blocks   Id  System
      /dev/sdb1            2048      393215      195584   83  Linux
      /dev/sdb2          393216    41943039    20774912    5  Extended
      /dev/sdb5          395264      589823       97280   82  Linux swap / Solaris
      命令(输入 m 获取帮助):w
      The partition table has been altered!
      Calling ioctl() to re-read partition table.
      WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
      The kernel still uses the old table. The new table will be used at
      the next reboot or after you run partprobe(8) or kpartx(8)
      正在同步磁盘。
      3.更新一下
      [root@clq0917 ~]# partprobe /dev/sdb5
      4.把sdb5作为交换分区
      [root@clq0917 ~]# mkswap /dev/sdb5
      正在设置交换空间版本 1,大小 = 97276 KiB
      无标签,UUID=d146ac2b-6d08-4b9b-b18d-0b1fc0f3896e
      5.启动交换分区
      [root@clq0917 ~]# swapon /dev/sdb5
      查看
      [root@clq0917 ~]# swapon -s
      文件名				类型		大小	已用	权限
      /dev/dm-1                              	partition	2097148	0	-1
      /dev/sdb5                              	partition	97276	0	-2
      6.长久保存分区使用
      [root@clq0917 ~]# blkid /dev/sdb5
      /dev/sdb5: UUID="d146ac2b-6d08-4b9b-b18d-0b1fc0f3896e" TYPE="swap"
      [root@clq0917 ~]# vi /etc/fstab
      /dev/mapper/rhel-swap   swap                    swap    defaults        0 0
      UUID="00e35670-d6c9-44d1-8e8c-f52bd71edf59" /mnt  xfs  defaults   0 0
      UUID="d146ac2b-6d08-4b9b-b18d-0b1fc0f3896e"  swap swap   defaults 0 0
      ~

      2. lvm管理

      步骤lvm

      1.添加物理磁盘,创建物理卷
      2.创建卷组,将物理卷加入卷组
      3.在 卷组在划分逻辑卷
      4.格式化逻辑卷
      5.挂载使用

      1.准备物理磁盘(加磁盘参考上一博客)

      上一篇链接Linux运维基础系统磁盘管理教程

      [root@clq0917 ~]# lsblk |grep "sd[cd]"
      sdc             8:32   0   20G  0 disk 
      sdd             8:48   0   20G  0 disk 
      查看pv创建情况
      [root@clq0917 ~]# pvs
        PV         VG   Fmt  Attr PSize  PFree 
        /dev/sda2  rhel lvm2 a--  19.51g     0 
        /dev/sdc        lvm2 a--  20.00g 20.00g
      2.创建名字为hongmao的卷组
      [root@clq0917 ~]# vgcreate hongmao /dev/sdc
        Volume group "hongmao" successfully created
      检查卷组
      [root@clq0917 ~]# vgs
        VG      #PV #LV #SN Attr   VSize  VFree 
        hongmao   1   0   0 wz--n- 20.00g 20.00g
        rhel      1   2   0 wz--n- 19.51g     0 
      3.创建逻辑卷,分配名称,以及大小,制定卷组
      [root@clq0917 ~]# lvcreate -L 1000M -n lv1 hongmao
        Logical volume "lv1" created
       检查逻辑卷
       [root@clq0917 ~]# lvs
      lvs     lvscan  
      [root@clq0917 ~]# lvscan
        ACTIVE            '/dev/hongmao/lv1' [1000.00 MiB] inherit
        ACTIVE            '/dev/rhel/swap' [2.00 GiB] inherit
        ACTIVE            '/dev/rhel/root' [17.51 GiB] inherit
       4.格式化文件系统
       [root@clq0917 ~]# mkfs.xfs /dev/hongmao/lv1
      meta-data=/dev/hongmao/lv1       isize=256    agcount=4, agsize=64000 blks
               =                       sectsz=512   attr=2, projid32bit=1
               =                       crc=0
      data     =                       bsize=4096   blocks=256000, imaxpct=25
               =                       sunit=0      swidth=0 blks
      naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
      log      =internal log           bsize=4096   blocks=853, version=2
               =                       sectsz=512   sunit=0 blks, lazy-count=1
      realtime =none                   extsz=4096   blocks=0, rtextents=0
      5.临时挂载
      [root@clq0917 ~]# mkdir /lv1
      [root@clq0917 ~]# mount /dev/hongmao/lv1 /lv1/
      [root@clq0917 ~]# df -h
      文件系统                 容量  已用  可用 已用% 挂载点
      /dev/mapper/rhel-root     18G  1.8G   16G   11% /
      devtmpfs                 915M     0  915M    0% /dev
      tmpfs                    921M     0  921M    0% /dev/shm
      tmpfs                    921M  8.6M  912M    1% /run
      tmpfs                    921M     0  921M    0% /sys/fs/cgroup
      /dev/sdb1                188M  9.8M  178M    6% /mnt
      /dev/sda1                497M   96M  401M   20% /boot
      /dev/mapper/hongmao-lv1  997M   33M  965M    4% /lv1

      3.卷组管理

      扩展卷组,将新磁盘加入卷组

      1.新磁盘加入pv
      [root@clq0917 ~]# pvcreate /dev/sdd
        Physical volume "/dev/sdd" successfully created
      2.使用vgextend扩展
      [root@clq0917 ~]# vgextend hongmao /dev/sdd
        Volume group "hongmao" successfully extended
      ***3将指定的磁盘从卷组中删除(一般不删)
      bgreduce hongmao /dev/sdd
      4.数据迁移卷组,同一的磁盘才可以进行在线迁移
      检查当前逻辑卷vg中pv使用情况
      [root@clq0917 ~]# pvs
        PV         VG      Fmt  Attr PSize  PFree 
        /dev/sda2  rhel    lvm2 a--  19.51g     0 
        /dev/sdc   hongmao lvm2 a--  20.00g 19.02g
        /dev/sdd   hongmao lvm2 a--  20.00g 20.00g
      pvmove在线数据迁移至其它pv
      [root@clq0917 ~]# pvmove /dev/sdc
        /dev/sdc: Moved: 27.6%
        /dev/sdc: Moved: 100.0%
      [root@clq0917 ~]# pvs
        PV         VG      Fmt  Attr PSize  PFree 
        /dev/sda2  rhel    lvm2 a--  19.51g     0 
        /dev/sdc   hongmao lvm2 a--  20.00g 20.00g
        /dev/sdd   hongmao lvm2 a--  20.00g 19.02g

      4.逻辑卷管理

      逻辑卷扩展的容量不能超过卷组的容量

      1.增加999M分配给逻辑卷(999 +999是不一样的)
      [root@clq0917 ~]# lvextend -L +999M  /dev/hongmao/lv1
        Rounding size to boundary between physical extents: 1000.00 MiB
        Extending logical volume lv1 to 1.95 GiB
        Logical volume lv1 successfully resized
        分配磁盘池至多少百分比给逻辑卷(50%约等于499)
        [root@clq0917 ~]# lvextend -l +50%free /dev/hongmao/lv1
        Extending logical volume lv1 to 20.97 GiB
        Logical volume lv1 successfully resized
      ***文件系统扩展
      xfs--->xfs_growfs /dev/hongmao/lv1
      ext--->resize2fs /dev/hongmao/lv1

      对ext4文件系统的逻辑卷裁剪容量

      首先自己创建一个1G的逻辑卷作为裁剪的对象

      lvcreate -n uplooking -L 1G finance
      mkfs.ext4 /dev/finance/uplooking
      #mkdir -p /finance/uplooking
      #mount /dev/finance/uplooking /finance/uplooking/
      #cp /etc/host* /finance/uplooking/

      1、如果已经挂载,必须先卸载

      umount /dev/finance/uplooking

      2、裁剪容量,必须是先检测文件系统

      e2fsck -f /dev/finance/uplooking
      resize2fs /dev/finance/uplooking 512M

      3、调整完毕后采取裁剪逻辑卷容量

      lvreduce -L 512M /dev/finance/uplooking
      WARNING: Reducing active logical volume to 512.00 MiB
      THIS MAY DESTROY YOUR DATA (filesystem etc.)
      Do you really want to reduce uplooking? [y/n]: y

      4、强烈建议裁剪后,再次检测文件系统

      e2fsck -f /dev/finance/uplooking

      5、挂载测试

      如果能够挂载,一般说明裁剪成功,文件系统没有损坏

      mount /dev/finance/uplooking /mnt

      /dev/mapper/finance-uplooking 472M 1.6M 435M 1% /mnt 而且文件系统容量被刷新了

      • 缩减逻辑卷注意事项:

      • 不能在线缩减,得先卸载;

      • 确保缩减后的空间大小依然能存储原有的所有数据;

      • 在缩减之前应该先强行检查文件,以确保文件系统处于一致性状态。

      • 使用命令

      e2fsck -f /PATH/TO/LV

      到此,关于“Linux交换分区SWAP的方法和lvm管理教程”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

      向AI问一下细节

      免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

      AI