我有一个 Ubuntu 18.04.5 系统 (ext4),逻辑卷中有 1 GB 的交换空间。我需要将总交换空间增加到 5 GB。
目前,我有这样的配置:
$ sudo pvs
PV VG Fmt Attr PSize PFree
/dev/sda1 ubuntu-vg lvm2 a-- <931.51g 0
/dev/sdb1 ubuntu-vg lvm2 a-- <1.82t 0
$ sudo vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu-vg 2 2 0 wz--n- <2.73t 0
$ sudo lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root ubuntu-vg -wi-ao---- <2.73t
swap_1 ubuntu-vg -wi-ao---- 976.00m
$ sudo pvscan
PV /dev/sdb1 VG ubuntu-vg lvm2 [<1.82 TiB / 0 free]
PV /dev/sda1 VG ubuntu-vg lvm2 [<931.51 GiB / 0 free]
Total: 2 [<2.73 TiB] / in use: 2 [<2.73 TiB] / in no VG: 0 [0 ]
$ sudo lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu-vg/root
LV Name root
VG Name ubuntu-vg
LV UUID Dt0Ebq-IBqb-J2WE-rCNW-lAZ2-BTxf-V45T0f
LV Write Access read/write
LV Creation host, time ubuntu, 2018-11-16 18:18:30 -0700
LV Status available
# open 1
LV Size <2.73 TiB
Current LE 715153
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/ubuntu-vg/swap_1
LV Name swap_1
VG Name ubuntu-vg
LV UUID FDmki1-o0Jk-aXP5-bip8-du01-HCoZ-AdFiGC
LV Write Access read/write
LV Creation host, time ubuntu, 2018-11-16 18:18:30 -0700
LV Status available
# open 2
LV Size 976.00 MiB
Current LE 244
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
$ sudo vgdisplay
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size <2.73 TiB
PE Size 4.00 MiB
Total PE 715397
Alloc PE / Size 715397 / <2.73 TiB
Free PE / Size 0 / 0
VG UUID MU6s8C-OQZp-n7m7-BWF7-JyYi-QRbe-Tq1klP
我读过这篇文章Ubuntu – 如何使用 LVM 分区修改交换大小,这个过程看起来很简单。然而,我又读了一些书,增加 LVM 逻辑卷的大小,如果我犯了错误,整个过程似乎会变得更加复杂,并且会出现更多严重的问题。
第一篇文章是否适合我的系统,还是我需要按照第二篇文章来增加交换大小?我也可以只创建一个 4 GB 的额外交换文件,而不是更改当前交换卷。从性能角度来看,这是否相当于增加当前 1 GB 的交换卷?
谢谢!
标记
答案1
如果您不打算重做 LVM 架构,根据我的评论,那么有捷径:
您可以使用第一篇文章中的 swapoff 技术。[Ubuntu – 如何使用 LVM 分区修改交换分区的大小][1],
但首先,让我们确定您的交换位置(无论是文件还是分区)。
sudo swapon --show
我希望是这样的:
NAME TYPE SIZE USED PRIO
/dev/ubuntu-vg/swap_1 partition 976M 0B -2
如果是这种情况,那么您可以执行以下命令:
sudo swapoff /dev/ubuntu-vg/swap_1
然后,您可以按照此处的说明在根目录中创建一个新的交换文件交换文件在哪里创建?
不要选择 2GB 的文件,而要选择 5GB 的文件。如果交换区域仍然不够大,您可以重复上述方法,直到获得适合您需要的大小。
sudo fallocate -l 5g /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
此后您将不再需要 LV 进行交换。
请注意,这是一条捷径。请认真考虑您的架构和存储需求。您仍然可以重做,并通过整合良好的备份和恢复计划为自己提供灵活性。