通过配置Linux机器以将LVM用作交换空间来修改交换空间。

时间:2020-03-21 11:49:37  来源:igfitidea点击:

每当我们增加内存时,计算机专家总是建议我们相应地增加交换,因为相应地增加交换空间总是有益的,这样即使内存密集(消耗内存)操作和消耗更多内存的应用程序,Linux机器也能平稳运行。

这不是唯一的方法,它还是在linux中修改交换空间的方法之一。
因此,在今天的本文中,我们将讨论如何在需要时在linux中修改交换空间,并且将详细介绍如何在Linux中修改交换空间。
几个简单的步骤..

由于我们将在此处讨论使用lvm修改交换空间的原因,因此,我们首先要通过配置LVM来启动该过程。

如果我们不熟悉LVM,则可以阅读有关LVM的文章,因为在这里我们仅讨论有关lvm配置及其与交换文件的集成的简要介绍。

由于需要创建LVM来完成本文,因此让我们从创建分区和配置lvm开始。

为了扩展在lvm上的交换,让我首先创建lvm。

步骤1:创建分区并将其类型设置为LVM。

[root@localhost ~]# fdisk /dev/hda
The number of cylinders for this disk is set to 9729.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): n
First cylinder (9435-9729, default 9435):  
Using default value 9435
Last cylinder or +size or +sizeM or +sizeK (9435-9729, default 9729): +100M
Command (m for help): n
First cylinder (9448-9729, default 9448):
Using default value 9448
Last cylinder or +size or +sizeM or +sizeK (9448-9729, default 9729): +100M
Command (m for help): p
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        2550    20482843+   7  HPFS/NTFS
/dev/hda2            2551        8924    51199155   83  Linux
/dev/hda3            8925        9434     4096575   82  Linux swap/Solaris
/dev/hda4            9435        9729     2369587+   5  Extended
/dev/hda5            9435        9447      104391   83  Linux
/dev/hda6            9448        9460      104391   83  Linux
Command (m for help): t
Partition number (1-6): 6
Hex code (type L to list codes): 8e
Changed system type of partition 6 to 8e (Linux LVM)
Command (m for help): t
Partition number (1-6): 5
Hex code (type L to list codes): 8e
Changed system type of partition 5 to 8e (Linux LVM)
Command (m for help): p
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        2550    20482843+   7  HPFS/NTFS
/dev/hda2            2551        8924    51199155   83  Linux
/dev/hda3            8925        9434     4096575   82  Linux swap/Solaris
/dev/hda4            9435        9729     2369587+   5  Extended
/dev/hda5            9435        9447      104391   8e  Linux LVM
/dev/hda6            9448        9460      104391   8e  Linux LVM
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

在此处阅读如何在Linux中创建分区。

步骤2:使用partprobe更新内核。

在分区表中进行了很多更改之后,我们需要将这些更改通知内核。
为此,我们使用partprobe命令。

[root@localhost ~]# partprobe

步骤:3使用“ pvcreate”初始化物理卷,然后使用“ vgcreate”创建卷组。

[root@localhost ~]# pvcreate /dev/hda5 /dev/hda6
  Physical volume "/dev/hda5" successfully created
  Physical volume "/dev/hda6" successfully created

[root@localhost ~]# vgcreate vg00 /dev/hda5 /dev/hda6
  Volume group "vg00" successfully created

步骤:4使用命令行工具配置LVM的设置。

[root@localhost ~]# lvcreate -L 200M vg00 -n lv00
  Logical volume "lv00" created

步骤:5在LVM上创建文件系统。

[root@localhost ~]# mkfs.ext3 /dev/vg00/lv00

This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

步骤:6将Logical Volume(逻辑卷)配置为用作交换空间。

现在我们将使用逻辑卷/dev/vg00/lv00作为交换分区。
我们要做的第一件事是使用mkswap格式化逻辑卷,然后使用swapon命令在该分区上激活交换。

[root@localhost ~]# mkswap /dev/vg00/lv00
Setting up swapspace version 1, size = 209711 kB

[root@localhost ~]# swapon -a

步骤:7在/etc/fstab文件中创建一个永久存在的条目。

即使重新启动后也需要永久安装才能保持原样。
我假设我们已经知道如何安装。
我在许多文章中都提到了永久安装。

了解如何在逻辑卷上扩展交换

1,我们要做的第一件事就是禁用相关逻辑卷的交换:

# swapoff -v /dev/vg00/lv00

2.然后,我们可以在此处调整逻辑卷的大小,我们将其调整为200MB

# lvresize /dev/vg00/lv00 -L +200M

3.格式化新创建的交换空间:

# mkswap /dev/vg00/lv00

4.现在启用扩展逻辑卷:

# swapon -v /dev/vg00/lv00

#要永久安装,请在/etc/fstab文件中输入以下内容:

# /dev/vg00/lv00 swap swap defaults 0 0

现在是时候测试逻辑卷是否成功扩展了。

#cat /proc/swaps
 or
#free

这两个命令我们检查交换空间。

现在如何减少逻辑卷上的交换

减少LVM2交换逻辑卷

(这里我们假设/dev/vg00/lv00是我们要减少的卷):
减少LVM2交换逻辑卷

1.禁用对关联逻辑卷的交换:

# swapoff -v /dev/vg00/lv00

2.将LVM2逻辑卷减少100MB

# lvreduce /dev/vg00/lv00 -L -100M

3.格式化新的交换空间:

# mkswap /dev/vg00/lv00

4.启用扩展逻辑卷:

# swapon -v /dev/vg00/lv00--

因此,我们已经看到了如何根据需要使用lvm来增加或者减少交换空间。
如果我们增加物理内存,我们需要相应地增加交换内存,为此我们需要减少交换lvm2空间以及是否要减少交换空间。
物理内存由于某种原因,我们将需要相应地减少交换空间。