Hamıya salam. Yeni kurs qrupunun başlaması ərəfəsində
Bu məqalə disklərin dəyişdirilməsi və məlumatların massiv və fayl sisteminin daha da genişləndirilməsi ilə daha böyük tutumlu yeni disklərə ötürülməsinin 2 halını nəzərdən keçirəcəkdir. Birinci hal disklərin eyni MBR/MBR və ya GPT/GPT bölməsi ilə dəyişdirilməsinə aid olacaq, ikinci hal MBR bölməsi ilə disklərin 2 TB-dən çox tutumlu disklərlə dəyişdirilməsi ilə bağlı olacaq ki, onları da quraşdırmalı olacaqsınız. biosboot bölməsi olan GPT bölməsi. Hər iki halda məlumatları ötürəcəyimiz disklər artıq serverdə quraşdırılıb. Kök bölməsi üçün istifadə olunan fayl sistemi ext4-dür.
Məsələn 1: Kiçik diskləri daha böyük disklərlə əvəz etmək (2 TB-a qədər)
Vəzifə: Cari diskləri daha böyük disklərlə (2 TB-a qədər) məlumat ötürülməsi ilə əvəz edin. Bu halda, sistem quraşdırılmış 2 x 240 GB SSD (RAID-1) diskimiz və sistemin köçürülməsi lazım olan 2 x 1 TB SATA diskimiz var.
Mövcud disk tərtibatına baxaq.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sda2 8:2 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 931,5G 0 disk
sdd 8:48 0 931,5G 0 disk
Hazırda istifadə olunan fayl sistemi sahəsini yoxlayaq.
[root@localhost ~]# df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 9,6M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/mapper/vg0-root 204G 1,3G 192G 1% /
/dev/md126 1007M 120M 837M 13% /boot
tmpfs 6,3G 0 6,3G 0% /run/user/0
Diskləri dəyişdirməzdən əvvəl fayl sisteminin ölçüsü 204 GB-dır, quraşdırılmış 2 md126 proqram massivindən istifadə olunur. /boot
и md127
kimi istifadə olunur fiziki həcm VG qrupu üçün vg0.
1. Disk bölmələrinin massivlərdən çıxarılması
Massivin vəziyyətinin yoxlanılması
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sda1[0] sdb1[1]
1047552 blocks super 1.2 [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sda2[0] sdb2[1]
233206784 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
unused devices: <none>
Sistem 2 massivdən istifadə edir: md126
(montaj nöqtəsi /boot
) - bölmədən ibarətdir /dev/sda1
и /dev/sdb1
, md127
(LVM üçün dəyiş-düyüş və fayl sisteminin kökü) - ibarətdir /dev/sda2
и /dev/sdb2
.
Hər massivdə istifadə olunan ilk diskin bölmələrini pis kimi qeyd edirik.
mdadm /dev/md126 --fail /dev/sda1
mdadm /dev/md127 --fail /dev/sda2
/dev/sda blok cihaz bölmələrini massivlərdən çıxarırıq.
mdadm /dev/md126 --remove /dev/sda1
mdadm /dev/md127 --remove /dev/sda2
Diski massivdən çıxardıqdan sonra blok cihazı məlumatı belə görünəcək.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 931,5G 0 disk
sdd 8:48 0 931,5G 0 disk
Diskləri çıxardıqdan sonra massivlərin vəziyyəti.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdb1[1]
1047552 blocks super 1.2 [2/1] [_U]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sdb2[1]
233206784 blocks super 1.2 [2/1] [_U]
bitmap: 1/2 pages [4KB], 65536KB chunk
unused devices: <none>
2. Bölmə cədvəlini yeni diskə kopyalayın
Diskdə istifadə olunan bölmə cədvəlini aşağıdakı əmrlə yoxlaya bilərsiniz.
fdisk -l /dev/sdb | grep 'Disk label type'
MBR üçün çıxış belə olacaq:
Disk label type: dos
GPT üçün:
Disk label type: gpt
MBR üçün bölmə cədvəlinin kopyalanması:
sfdisk -d /dev/sdb | sfdisk /dev/sdc
Bu komandada birincisi disk göstərilir с bunlardan işarələmə kopyalanır, ikinci - harada surəti.
DİQQƏT: GPT üçün birincisi disk göstərilir hansının üstündə işarələməni kopyalayın, ikincisi disk diski göstərir hansından işarələməni kopyalayın. Diskləri qarışdırsanız, əvvəlcə yaxşı olan bölmənin üzərinə yazılacaq və məhv ediləcək.
GPT üçün tərtibat cədvəlinin kopyalanması:
sgdisk -R /dev/sdс /dev/sdb
Sonra, diskə təsadüfi UUID təyin edin (GPT üçün).
sgdisk -G /dev/sdc
Əmr yerinə yetirildikdən sonra bölmələr diskdə görünməlidir /dev/sdc
.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
└─sdc2 8:34 0 222,5G 0 part
sdd 8:48 0 931,5G 0 disk
Əgər hərəkət edildikdən sonra sistemdəki bölmələr diskdə /dev/sdc
qərar vermədikdə, bölmə cədvəlini yenidən oxumaq əmrini yerinə yetiririk.
sfdisk -R /dev/sdc
Cari disklər MBR cədvəlindən istifadə edirsə və məlumatı 2 TB-dən böyük disklərə köçürmək lazımdırsa, yeni disklərdə biosboot bölməsindən istifadə edərək GPT bölməsini əl ilə yaratmalısınız. Bu məsələ bu məqalənin 2-ci hissəsində müzakirə olunacaq.
3. Massivə yeni diskin bölmələrinin əlavə edilməsi
Müvafiq massivlərə disk bölmələrini əlavə edək.
mdadm /dev/md126 --add /dev/sdc1
mdadm /dev/md127 --add /dev/sdc2
Bölmələrin əlavə olunduğunu yoxlayırıq.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
Bundan sonra massivlərin sinxronizasiyasını gözləyirik.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdc1[2] sdb1[1]
1047552 blocks super 1.2 [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sdc2[2] sdb2[1]
233206784 blocks super 1.2 [2/1] [_U]
[==>..................] recovery = 10.6% (24859136/233206784) finish=29.3min speed=118119K/sec
bitmap: 2/2 pages [8KB], 65536KB chunk
unused devices: <none>
Utilitydən istifadə edərək sinxronizasiya prosesini davamlı olaraq izləyə bilərsiniz watch
.
watch -n 2 cat /proc/mdstat
Parametr -n
tərəqqini yoxlamaq üçün əmrin saniyələrlə hansı fasilələrlə yerinə yetirilməli olduğunu müəyyən edir.
Növbəti dəyişdirmə diski üçün 1-3 addımları təkrarlayın.
Hər massivdə istifadə olunan ikinci diskin bölmələrini pis kimi qeyd edirik.
mdadm /dev/md126 --fail /dev/sdb1
mdadm /dev/md127 --fail /dev/sdb2
Blok cihaz bölmələrinin çıxarılması /dev/sdb
massivlərdən.
mdadm /dev/md126 --remove /dev/sdb1
mdadm /dev/md127 --remove /dev/sdb2
Diski massivdən çıxardıqdan sonra blok cihazı məlumatı belə görünəcək.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
Diskləri çıxardıqdan sonra massivlərin vəziyyəti.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdc1[2]
1047552 blocks super 1.2 [2/1] [U_]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sdc2[2]
233206784 blocks super 1.2 [2/1] [U_]
bitmap: 1/2 pages [4KB], 65536KB chunk
unused devices: <none>
MBR bölmə cədvəlinin diskdən kopyalanması /dev/sdс
diskə /dev/sdd
.
sfdisk -d /dev/sdс | sfdisk /dev/sdd
Əmr yerinə yetirildikdən sonra bölmələr diskdə görünməlidir /dev/sdd
.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
├─sdd1 8:49 0 1G 0 part
└─sdd2 8:50 0 222,5G 0 part
Massivlərə disk bölmələrinin əlavə edilməsi.
mdadm /dev/md126 --add /dev/sdd1
mdadm /dev/md127 --add /dev/sdd2
Bölmələrin əlavə olunduğunu yoxlayırıq.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
├─sdd1 8:49 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdd2 8:50 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
Bundan sonra massivlərin sinxronizasiyasını gözləyirik.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdd1[3] sdc1[2]
1047552 blocks super 1.2 [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sdd2[3] sdc2[2]
233206784 blocks super 1.2 [2/1] [U_]
[>....................] recovery = 0.5% (1200000/233206784) finish=35.4min speed=109090K/sec
bitmap: 2/2 pages [8KB], 65536KB chunk
unused devices: <none>
5. GRUB-un yeni disklərə quraşdırılması
CentOS üçün:
grub2-install /dev/sdX
Debian/Ubuntu üçün:
grub-install /dev/sdX
hara X
— blok cihazının hərfi. Bu halda, siz GRUB-u quraşdırmalısınız /dev/sdc
и /dev/sdd
.
6. Kök bölmənin fayl sistemi uzantısı (ext4).
Yeni disklərdə /dev/sdc
и /dev/sdd
931.5 GB mövcuddur. Bölmə cədvəlinin daha kiçik disklərdən kopyalandığına görə bölmələr /dev/sdc2
и /dev/sdd2
222.5 GB mövcuddur.
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
├─sdd1 8:49 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdd2 8:50 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
Lazımdır:
- Disklərin hər birində 2-ci bölməni genişləndirin,
- md127 massivini genişləndirin,
- PV-ni genişləndirin (fiziki həcm),
- LV (məntiqi həcm) vg0 kökünü genişləndirin,
- Fayl sistemini genişləndirin.
Köməkçi proqramdan istifadə ayrıldı bölməni genişləndirək /dev/sdc2
maksimum dəyərə. Əmri yerinə yetirin parted /dev/sdc
(1) və komanda ilə cari bölmə cədvəlinə baxın p
(2).
Gördüyünüz kimi, 2-ci bölmənin sonu 240 GB-da bitir. Komanda ilə bölməni genişləndirək resizepart
2
, burada 2 bölmənin sayıdır (3). Biz rəqəmsal formatda dəyəri göstəririk, məsələn 1000 GB və ya disk payının göstəricisini istifadə edirik - 100%. Bölmənin yeni ölçüdə olduğunu bir daha yoxlayırıq (4).
Disk üçün yuxarıdakı addımları təkrarlayın /dev/sdd
. Bölmələri genişləndirdikdən sonra /dev/sdc2
и /dev/sdd2
930.5 GB-a bərabər oldu.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 930,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
├─sdd1 8:49 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdd2 8:50 0 930,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
Bundan sonra massivi genişləndiririk md127 maksimuma.
mdadm --grow /dev/md127 --size=max
Massivin genişləndiyini yoxlayırıq. İndi onun ölçüsü 930.4 GB olmuşdur.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 931,5G 0 disk
├─sdc1 8:33 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc2 8:34 0 930,5G 0 part
└─md127 9:127 0 930,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 931,5G 0 disk
├─sdd1 8:49 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdd2 8:50 0 930,5G 0 part
└─md127 9:127 0 930,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
Uzatmanın uzadılması fiziki həcm. Genişləndirmədən əvvəl, PV-nin cari vəziyyətini yoxlayaq.
[root@localhost ~]# pvscan
PV /dev/md127 VG vg0 lvm2 [222,40 GiB / 0 free]
Total: 1 [222,40 GiB] / in use: 1 [222,40 GiB] / in no VG: 0 [0 ]
Göründüyü kimi, PV /dev/md127
222.4 GB yer istifadə edir.
Aşağıdakı əmrlə PV-ni genişləndiririk.
pvresize /dev/md127
PV genişlənməsinin nəticəsinin yoxlanılması.
[root@localhost ~]# pvscan
PV /dev/md127 VG vg0 lvm2 [930,38 GiB / 707,98 GiB free]
Total: 1 [930,38 GiB] / in use: 1 [930,38 GiB] / in no VG: 0 [0 ]
Genişlənir məntiqi həcm. Genişləndirmədən əvvəl LV-nin cari vəziyyətini yoxlayaq (1).
[root@localhost ~]# lvscan
ACTIVE '/dev/vg0/swap' [<16,00 GiB] inherit
ACTIVE '/dev/vg0/root' [<206,41 GiB] inherit
LV /dev/vg0/root
206.41 GB istifadə edir.
LV-ni aşağıdakı əmrlə genişləndiririk (2).
lvextend -l +100%FREE /dev/mapper/vg0-root
Tamamlanmış hərəkəti yoxlayırıq (3).
[root@localhost ~]# lvscan
ACTIVE '/dev/vg0/swap' [<16,00 GiB] inherit
ACTIVE '/dev/vg0/root' [<914,39 GiB] inherit
Gördüyünüz kimi, LV genişləndirildikdən sonra işğal edilmiş disk sahəsi 914.39 GB oldu.
LV həcmi artdı (4), lakin fayl sistemi hələ də 204 GB (5) tutur.
1. Fayl sistemini genişləndirək.
resize2fs /dev/mapper/vg0-root
Əmr yerinə yetirildikdən sonra fayl sisteminin ölçüsünü yoxlayırıq.
[root@localhost ~]# df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 9,5M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/mapper/vg0-root 900G 1,3G 860G 1% /
/dev/md126 1007M 120M 837M 13% /boot
tmpfs 6,3G 0 6,3G 0% /run/user/0
Kök fayl sisteminin ölçüsü 900 GB-a qədər artacaq. Addımları tamamladıqdan sonra köhnə diskləri çıxara bilərsiniz.
Məsələn 2: Kiçik diskləri daha böyük disklərlə əvəz etmək (2 TB-dən çox)
Məşq: Məlumatı qoruyarkən cari diskləri daha böyük disklərlə (2 x 3TB) əvəz edin. Bu halda, sistem quraşdırılmış 2 x 240 GB SSD (RAID-1) diskimiz və sistemin köçürülməsi lazım olan 2 x 3 TB SATA diskimiz var. Cari disklər MBR bölmə cədvəlindən istifadə edir. Yeni disklərin tutumu 2 TB-dən çox olduğundan, MBR 2 TB-dən böyük disklərlə işləyə bilmədiyi üçün onlar GPT cədvəlindən istifadə etməli olacaqlar.
Mövcud disk tərtibatına baxaq.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sda2 8:2 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 2,7T 0 disk
sdd 8:48 0 2,7T 0 disk
Diskdə istifadə olunan bölmə cədvəlini yoxlayaq /dev/sda
.
[root@localhost ~]# fdisk -l /dev/sda | grep 'Disk label type'
Disk label type: dos
Diskdə /dev/sdb
oxşar bölmə cədvəlindən istifadə olunur. Sistemdə istifadə olunan disk sahəsini yoxlayaq.
[root@localhost ~]# df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 9,5M 16G 1% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/vg0-root 204G 1,3G 192G 1% /
/dev/md126 1007M 120M 837M 13% /boot
tmpfs 3,2G 0 3,2G 0% /run/user/0
Gördüyünüz kimi, fayl sisteminin kökü 204 GB yer tutur. Proqram təminatının RAID massivinin cari vəziyyətini yoxlayaq.
1. GPT bölmə cədvəlinin quraşdırılması və diskin bölünməsi
Disk quruluşunu sektorlar üzrə yoxlayaq.
[root@localhost ~]# parted /dev/sda print
Модель: ATA KINGSTON SVP200S (scsi)
Диск /dev/sda: 240GB
Размер сектора (логич./физич.): 512B/512B
Таблица разделов: msdos
Disk Flags:
Номер Начало Конец Размер Тип Файловая система Флаги
1 1049kB 1076MB 1075MB primary загрузочный, raid
2 1076MB 240GB 239GB primary raid
Yeni 3TB diskdə 3 bölmə yaratmalıyıq:
- Bölmə
bios_grub
GPT BIOS uyğunluğu üçün 2MiB ölçüsü, - Quraşdırılacaq RAID massivi üçün bölmə
/boot
. - Orada olacaq RAID massivi üçün bölmə LV kökü и LV dəyişdirmə.
Köməkçi proqramın quraşdırılması ayrıldı komanda yum install -y parted
(CentOS üçün), apt install -y parted
(Debian/Ubuntu üçün).
Istifadə ayrıldı Diski bölmək üçün aşağıdakı əmrləri yerinə yetirək.
Əmri yerinə yetirin parted /dev/sdc
və disk düzeninin redaktə rejiminə keçin.
GPT bölmə cədvəli yaradın.
(parted) mktable gpt
1 bölmə yaradın bios_grub
bölmə və onun üçün bir bayraq təyin edin.
(parted) mkpart primary 1MiB 3MiB
(parted) set 1 bios_grub on
2-ci bölmə yaradın və onun üçün bayraq təyin edin. Bölmə RAID massivi üçün blok kimi istifadə olunacaq və içəriyə quraşdırılacaq /boot
.
(parted) mkpart primary ext2 3MiB 1028MiB
(parted) set 2 boot on
LVM-nin yerləşəcəyi massiv bloku kimi də istifadə olunacaq 3-cü bölmə yaradırıq.
(parted) mkpart primary 1028MiB 100%
Bu zaman bayraq qoymaq lazım deyil, lazım gələrsə aşağıdakı komanda ilə təyin etmək olar.
(parted) set 3 raid on
Yaradılmış cədvəli yoxlayırıq.
(parted) p
Модель: ATA TOSHIBA DT01ACA3 (scsi)
Диск /dev/sdc: 3001GB
Размер сектора (логич./физич.): 512B/4096B
Таблица разделов: gpt
Disk Flags:
Номер Начало Конец Размер Файловая система Имя Флаги
1 1049kB 3146kB 2097kB primary bios_grub
2 3146kB 1077MB 1074MB primary загрузочный
3 1077MB 3001GB 3000GB primary
Biz diskə yeni təsadüfi GUID təyin edirik.
sgdisk -G /dev/sdd
2. Birinci diskin arakəsmələrinin massivlərdən çıxarılması
Massivin vəziyyətinin yoxlanılması
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sda1[0] sdb1[1]
1047552 blocks super 1.2 [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sda2[0] sdb2[1]
233206784 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
unused devices: <none>
Sistem 2 massivdən istifadə edir: md126 (montaj nöqtəsi/boot) - ibarətdir /dev/sda1
и /dev/sdb1
, md127
(LVM üçün swap
və fayl sisteminin kökü) - ibarətdir /dev/sda2
и /dev/sdb2
.
Hər massivdə istifadə olunan ilk diskin bölmələrini pis kimi qeyd edirik.
mdadm /dev/md126 --fail /dev/sda1
mdadm /dev/md127 --fail /dev/sda2
Blok cihaz bölmələrinin çıxarılması /dev/sda
massivlərdən.
mdadm /dev/md126 --remove /dev/sda1
mdadm /dev/md127 --remove /dev/sda2
Diski çıxardıqdan sonra massivin vəziyyətinin yoxlanılması.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdb1[1]
1047552 blocks super 1.2 [2/1] [_U]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sdb2[1]
233206784 blocks super 1.2 [2/1] [_U]
bitmap: 2/2 pages [8KB], 65536KB chunk
unused devices: <none>
3. Massivə yeni diskin bölmələrinin əlavə edilməsi
Növbəti addım sinxronizasiya üçün massivlərə yeni diskin bölmələrini əlavə etməkdir. Diskin yerləşdirilməsinin cari vəziyyətinə baxaq.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 2,7T 0 disk
├─sdc1 8:33 0 2M 0 part
├─sdc2 8:34 0 1G 0 part
└─sdc3 8:35 0 2,7T 0 part
sdd 8:48 0 2,7T 0 disk
Bölmə /dev/sdc1
edir bios_grub
bölməsidir və massivlərin yaradılmasında iştirak etmir. Massivlər yalnız istifadə edəcək /dev/sdc2
и /dev/sdc3
. Bu bölmələri müvafiq massivlərə əlavə edirik.
mdadm /dev/md126 --add /dev/sdc2
mdadm /dev/md127 --add /dev/sdc3
Sonra serialın sinxronizasiyasını gözləyirik.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdc2[2] sdb1[1]
1047552 blocks super 1.2 [2/2] [UU]
bitmap: 0/1 pages [0KB], 65536KB chunk
md127 : active raid1 sdc3[2] sdb2[1]
233206784 blocks super 1.2 [2/1] [_U]
[>....................] recovery = 0.2% (619904/233206784) finish=31.2min speed=123980K/sec
bitmap: 2/2 pages [8KB], 65536KB chunk
unused devices: <none>
Massivə bölmələr əlavə etdikdən sonra disk bölməsi.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdb2 8:18 0 222,5G 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdc 8:32 0 2,7T 0 disk
├─sdc1 8:33 0 2M 0 part
├─sdc2 8:34 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc3 8:35 0 2,7T 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 2,7T 0 disk
4. İkinci diskin arakəsmələrinin massivlərdən çıxarılması
Hər massivdə istifadə olunan ikinci diskin bölmələrini pis kimi qeyd edirik.
mdadm /dev/md126 --fail /dev/sdb1
mdadm /dev/md127 --fail /dev/sdb2
Blok cihaz bölmələrinin çıxarılması /dev/sda
massivlərdən.
mdadm /dev/md126 --remove /dev/sdb1
mdadm /dev/md127 --remove /dev/sdb2
5. GPT layout cədvəlini kopyalayın və massivi sinxronlaşdırın
GPT işarələmə cədvəlini köçürmək üçün yardım proqramından istifadə edəcəyik sgdisk
disk bölmələri və GPT cədvəli ilə işləmək üçün paketə daxil olan - gdisk
.
Quraşdırma gdisk
CentOS üçün:
yum install -y gdisk
Quraşdırma gdisk
Debian/Ubuntu üçün:
apt install -y gdisk
DİQQƏT: GPT üçün birincisi disk göstərilir hansının üstündə işarələməni kopyalayın, ikincisi disk diski göstərir hansından işarələməni kopyalayın. Diskləri qarışdırsanız, əvvəlcə yaxşı olan bölmənin üzərinə yazılacaq və məhv ediləcək.
GPT işarələmə cədvəlini kopyalayın.
sgdisk -R /dev/sdd /dev/sdc
Cədvəl diskə köçürüldükdən sonra disk bölməsi /dev/sdd
.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 2,7T 0 disk
├─sdc1 8:33 0 2M 0 part
├─sdc2 8:34 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc3 8:35 0 2,7T 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 2,7T 0 disk
├─sdd1 8:49 0 2M 0 part
├─sdd2 8:50 0 1G 0 part
└─sdd3 8:51 0 2,7T 0 part
Sonra, proqram təminatının RAID massivlərində iştirak edən bölmələrin hər birini əlavə edirik.
mdadm /dev/md126 --add /dev/sdd2
mdadm /dev/md127 --add /dev/sdd3
Biz serialın sinxronizasiyasını gözləyirik.
[root@localhost ~]# cat /proc/mdstat
Personalities : [raid1]
md126 : active raid1 sdd2[3] sdc2[2]
1047552 blocks super 1.2 [2/2] [UU]
bitmap: 1/1 pages [4KB], 65536KB chunk
md127 : active raid1 sdd3[3] sdc3[2]
233206784 blocks super 1.2 [2/1] [U_]
[>....................] recovery = 0.0% (148224/233206784) finish=26.2min speed=148224K/sec
bitmap: 2/2 pages [8KB], 65536KB chunk
unused devices: <none>
GPT bölməsini ikinci yeni diskə köçürdükdən sonra bölmə belə görünəcək.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 1G 0 part
└─sda2 8:2 0 222,5G 0 part
sdb 8:16 0 223,6G 0 disk
├─sdb1 8:17 0 1G 0 part
└─sdb2 8:18 0 222,5G 0 part
sdc 8:32 0 2,7T 0 disk
├─sdc1 8:33 0 2M 0 part
├─sdc2 8:34 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdc3 8:35 0 2,7T 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 2,7T 0 disk
├─sdd1 8:49 0 2M 0 part
├─sdd2 8:50 0 1G 0 part
│ └─md126 9:126 0 1023M 0 raid1 /boot
└─sdd3 8:51 0 2,7T 0 part
└─md127 9:127 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
Sonra, GRUB-u yeni disklərə quraşdırın.
CentOS üçün quraşdırma:
grub2-install /dev/sdX
Debian/Ubuntu üçün quraşdırma:
grub-install /dev/sdX
hara X
— sürücü məktubu, bizim vəziyyətimizdə sürücülər /dev/sdc
и /dev/sdd
.
Massiv haqqında məlumatları yeniləyirik.
CentOS üçün:
mdadm --detail --scan --verbose > /etc/mdadm.conf
Debian/Ubuntu üçün:
echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf
Şəklin yenilənməsi initrd
:
CentOS üçün:
dracut -f -v --regenerate-all
Debian/Ubuntu üçün:
update-initramfs -u -k all
GRUB konfiqurasiyasını yeniləyirik.
CentOS üçün:
grub2-mkconfig -o /boot/grub2/grub.cfg
Debian/Ubuntu üçün:
update-grub
Addımları tamamladıqdan sonra köhnə disklər çıxarıla bilər.
6. Kök bölmənin fayl sistemi uzantısı (ext4).
Sistemi 2 x 3TB diskə (RAID-1) köçürdükdən sonra fayl sisteminin genişləndirilməsindən əvvəl disk bölməsi.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
sdb 8:16 0 223,6G 0 disk
sdc 8:32 0 2,7T 0 disk
├─sdc1 8:33 0 2M 0 part
├─sdc2 8:34 0 1G 0 part
│ └─md127 9:127 0 1023M 0 raid1 /boot
└─sdc3 8:35 0 2,7T 0 part
└─md126 9:126 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 2,7T 0 disk
├─sdd1 8:49 0 2M 0 part
├─sdd2 8:50 0 1G 0 part
│ └─md127 9:127 0 1023M 0 raid1 /boot
└─sdd3 8:51 0 2,7T 0 part
└─md126 9:126 0 222,4G 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
İndi bölmələr /dev/sdc3
и /dev/sdd3
2.7 TB tutur. GPT cədvəli ilə yeni bir disk tərtibatı yaratdığımız üçün 3-cü bölmənin ölçüsü dərhal mümkün olan maksimum disk sahəsinə təyin edildi, bu halda bölməni genişləndirməyə ehtiyac yoxdur.
Lazımdır:
- md126 massivini genişləndirin,
- PV-ni genişləndirin (fiziki həcm),
- LV (məntiqi həcm) vg0 kökünü genişləndirin,
- Fayl sistemini genişləndirin.
1. Massivi genişləndirin md126
maksimuma.
mdadm --grow /dev/md126 --size=max
Massiv genişlənməsindən sonra md126
işğal edilmiş yerin ölçüsü 2.7 TB-ə qədər artdı.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 223,6G 0 disk
sdb 8:16 0 223,6G 0 disk
sdc 8:32 0 2,7T 0 disk
├─sdc1 8:33 0 2M 0 part
├─sdc2 8:34 0 1G 0 part
│ └─md127 9:127 0 1023M 0 raid1 /boot
└─sdc3 8:35 0 2,7T 0 part
└─md126 9:126 0 2,7T 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
sdd 8:48 0 2,7T 0 disk
├─sdd1 8:49 0 2M 0 part
├─sdd2 8:50 0 1G 0 part
│ └─md127 9:127 0 1023M 0 raid1 /boot
└─sdd3 8:51 0 2,7T 0 part
└─md126 9:126 0 2,7T 0 raid1
├─vg0-root 253:0 0 206,4G 0 lvm /
└─vg0-swap 253:1 0 16G 0 lvm [SWAP]
Genişlənir fiziki həcm.
Genişləndirmədən əvvəl, işğal edilmiş yerin cari dəyərini yoxlayın PV /dev/md126
.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md126 vg0 lvm2 a-- 222,40g 0
Aşağıdakı əmrlə PV-ni genişləndiririk.
pvresize /dev/md126
Tamamlanmış hərəkəti yoxlayırıq.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md126 vg0 lvm2 a-- <2,73t 2,51t
Genişlənir məntiqi həcm vg0-root.
PV-ni genişləndirdikdən sonra işğal edilmiş VG sahəsini yoxlayaq.
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 1 2 0 wz--n- <2,73t 2,51t
LV-nin tutduğu məkanı yoxlayaq.
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root vg0 -wi-ao---- <206,41g
swap vg0 -wi-ao---- <16,00g
vg0-root həcmi 206.41 GB tutur.
LV-ni maksimum disk sahəsinə qədər genişləndiririk.
lvextend -l +100%FREE /dev/mapper/vg0-root
Genişlənmədən sonra LV boşluğunun yoxlanılması.
[root@localhost ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root vg0 -wi-ao---- 2,71t
swap vg0 -wi-ao---- <16,00g
Fayl sisteminin genişləndirilməsi (ext4).
Fayl sisteminin cari ölçüsünü yoxlayaq.
[root@localhost ~]# df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 9,6M 16G 1% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/vg0-root 204G 1,4G 192G 1% /
/dev/md127 1007M 141M 816M 15% /boot
tmpfs 3,2G 0 3,2G 0% /run/user/0
/dev/mapper/vg0-root həcmi LV genişlənməsindən sonra 204 GB tutur.
Fayl sisteminin genişləndirilməsi.
resize2fs /dev/mapper/vg0-root
Fayl sistemini genişləndirdikdən sonra onun ölçüsünü yoxlamaq.
[root@localhost ~]# df -h
Файловая система Размер Использовано Дост Использовано% Cмонтировано в
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 9,6M 16G 1% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/vg0-root 2,7T 1,4G 2,6T 1% /
/dev/md127 1007M 141M 816M 15% /boot
tmpfs 3,2G 0 3,2G 0% /run/user/0
Fayl sisteminin ölçüsü bütün həcmi əhatə etmək üçün artırıldı.
Mənbə: www.habr.com