Kleinimate ketaste asendamine suuremate ketastega Linuxis

Tere kĂ”igile. Uue kursuse grupi alguseni oleme „Linuxi administraator“ avaldanud kasulikku materjali, mille on kirjutanud meie ĂŒliĂ”pilane ja kursuse mentor, REG.RU ettevĂ”tte tooteid toetav spetsialist — Roman Travyin.

KĂ€esolevas artiklis kĂ€sitletakse kahte juhtumit, kus töötluskettaid vahetatakse ja teave kantakse uutele suurema mahuga ketastele edasise mahu ja failisĂŒsteemi laiendamisega. Esimene juhtum kĂ€sitleb ketaste vahetamist sama tĂŒĂŒbi jaotusega MBR/MBR vĂ”i GPT/GPT, teine juhtum puudutab MBR jaotusega ketaste vahetamist ĂŒle 2 TB mahuga ketastele, millele on vajalik paigaldada GPT jaotuse ning biosbooti osa. MĂ”lemal juhul on ketastele, kuhu andmed kantakse, juba installitud server. Juurepartitsioonis kasutatav failisĂŒsteem on ext4.

Juhtum 1: VĂ€iksema mahuga ketaste vahetamine suurema mahuga ketaste vastu (kuni 2 TB)

Ülesanne: Vahetada praegused ketased suurema mahuga ketaste vastu (kuni 2 TB) koos andmete ĂŒleviimisega. Antud juhul on meil 2 x 240 GB SSD (RAID-1) koos paigaldatud sĂŒsteemiga ja 2 x 1 TB SATA, kuhu sĂŒsteem tuleb ĂŒle viia.

Vaadakem ketaste praegust jaotust.

[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  

Kontrollime praegu failisĂŒsteemi kasutatavat ruumi.

[root@localhost ~]# df -h
FailisĂŒsteem       Suurus Kasutatud  Vaba Kasutatud% Mountdud
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

FailisĂŒsteemi suurus enne kettavahetust on 204 GB, kasutuses on 2 tarkvara RAID-i massiivi md126, mis on monteeritud /boot ja md127, mis kasutatakse kui fĂŒĂŒsiline maht VG grupi vg0.

1. Kettadiskide eemaldamine massiividest

Kontrollime massiivi olekut

[root@localhost ~]# cat /proc/mdstat
Isiksused : [raid1]
md126 : aktiivne raid1 sda1[0] sdb1[1]
      1047552 blokki super 1.2 [2/2] [UU]
      bitmap: 0/1 lehekĂŒlge [0KB], 65536KB chunk

md127 : aktiivne raid1 sda2[0] sdb2[1]
      233206784 blokki super 1.2 [2/2] [UU]
      bitmap: 0/2 lehekĂŒlge [0KB], 65536KB chunk

kasutamata seadmed:

SĂŒsteemis on kasutusel 2 massiivi: md126 (mountimise punkt /boot) — koosneb partitsioonist /dev/sda1 ja /dev/sdb1, md127 (LVM jaoks swap ja failisĂŒsteemi juur) — koosneb /dev/sda2 ja /dev/sdb2.

MĂ€rgistame esimese ketta partitsioonid, mida kasutatakse igas massiivis, kui defektseteks.

mdadm /dev/md126 --fail /dev/sda1

mdadm /dev/md127 --fail /dev/sda2

Eemaldame plokiseadmest /dev/sda partitsioonid massiividest.

mdadm /dev/md126 --remove /dev/sda1

mdadm /dev/md127 --remove /dev/sda2

PÀrast ketta eemaldamist massiivist nÀeb plokiseadmete teave vÀlja jÀrgmiselt.

[root@localhost ~]# lsblk
NIMI           MAJ:MIN RM   SUURUS RO TĂŒĂŒp  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  

Massiivide seisund pÀrast ketaste eemaldamist.

[root@localhost ~]# cat /proc/mdstat 
Isiksused: [raid1] 
md126: aktiivne raid1 sdb1[1]
      1047552 blokki super 1.2 [2/1] [_U]
      bitmap: 0/1 lehekĂŒlge [0KB], 65536KB chunk

md127: aktiivne raid1 sdb2[1]
      233206784 blokki super 1.2 [2/1] [_U]
      bitmap: 1/2 lehekĂŒlge [4KB], 65536KB chunk

kasutamata seadmed:

2. Partitsioonide tabeli kopeerimine uuele ketale

Kontrollida saadud partitsioonide tabelit kettal saab jÀrgmise kÀsuga.

fdisk -l /dev/sdb | grep 'Disk label type'

MBR-i vÀljund on:

Disk label type: dos

GPT jaoks:

Disk label type: gpt

MBR-i partitsioonide tabeli kopeerimine:

sfdisk -d /dev/sdb | sfdisk /dev/sdc

Antud kĂ€sus esimest mÀÀra disk koos mille partitsioon kopeeritakse, teiseks — kuhu kopeerida.

TÄHELEPANU: GPT jaoks esimest mÀÀra disk kuhu partitsioon kopeeritakse, teise ketas mÀÀratakse ketas millelt partitsioon kopeeritakse. Kui kettad segi ajada, siis algselt korrektne partitsioon kirjutatakse ĂŒle ja hĂ€vitatakse.

GPT partitsioonide tabeli kopeerimine:

sgdisk -R /dev/sdc /dev/sdb

SeejÀrel mÀÀrake kettale juhuslik UUID (GPT jaoks).


sgdisk -G /dev/sdc

PÀrast antud kÀsu tÀitmist peaksid partitsioonid kettal ilmuma. /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  

Kui pĂ€rast teostatud tegevust osad sĂŒsteemis kettal /dev/sdc ei mÀÀratlenud, kĂ€ivita kĂ€sk, et lugeda partitsioonide tabel tagasi.

sfdisk -R /dev/sdc

Kui praegustes ketastes kasutatakse MBR tabelit ja teavet tuleb edastada ĂŒle 2 TB mahuga ketastele, siis uutel ketastel on vajalik manuaalselt luua GPT jaotust biosboot partitsiooniga. Seda juhtumit kĂ€sitletakse artikli teises osas.

3. Uue ketta osade lisamine massiivi

Lisame ketta osad vastavatesse massiividesse.

mdadm /dev/md126 --add /dev/sdc1

mdadm /dev/md127 --add /dev/sdc2

Kontrollime, et osad on lisatud.

[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  

Ootame nĂŒĂŒd massiivide sĂŒnkroonimist.

[root@localhost ~]# cat /proc/mdstat 
Personalities : [raid1] 
md126 : aktiivne raid1 sdc1[2] sdb1[1]
      1047552 blocks super 1.2 [2/2] [UU]
      bitmap: 0/1 pages [0KB], 65536KB chunk

md127 : aktiivne 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:

SĂŒnkroonimisprotsessi saab pidevalt jĂ€lgida utiliidi abil watch.

watch -n 2 cat /proc/mdstat

Parameeter vÀljaande numbri mÀÀramiseks: mis nÀitab, millise sekundi intervalliga tuleb kÀsku tÀita progressi kontrollimiseks.

Korrake punkte 1–3 jĂ€rgmise asendatava ketta jaoks.

MĂ€rgime igas massiivis kasutatavad teise ketta partitsioonid vigastatuks.

mdadm /dev/md126 --fail /dev/sdb1

mdadm /dev/md127 --fail /dev/sdb2

Kustutame plokkseadmest partitsioonid /dev/sdb massiividest.

mdadm /dev/md126 --remove /dev/sdb1

mdadm /dev/md127 --remove /dev/sdb2

PÀrast ketta eemaldamist massiivist nÀeb plokiseadmete teave vÀlja jÀrgmiselt.

[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  

Massiivide seisund pÀrast ketaste eemaldamist.

[root@localhost ~]# cat /proc/mdstat 
Personaalused : [raid1] 
md126 : aktiivne raid1 sdc1[2]
      1047552 blokki super 1.2 [2/1] [U_]
      bitkaart: 0/1 lehte [0KB], 65536KB tĂŒkk

md127 : aktiivne raid1 sdc2[2]
      233206784 blokki super 1.2 [2/1] [U_]
      bitkaart: 1/2 lehte [4KB], 65536KB tĂŒkk

kasutamata seadmed:

Kopeerime MBR partitsioonide tabeli kettalt /dev/sdс ketta peale /dev/sdd.

sfdisk -d /dev/sdc | sfdisk /dev/sdd

PÀrast antud kÀsu tÀitmist peaksid partitsioonid kettal ilmuma. /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  

Lisame ketta sektsioonid massiividesse.

mdadm /dev/md126 --add /dev/sdd1

mdadm /dev/md127 --add /dev/sdd2

Kontrollime, et osad on lisatud.

[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]

Ootame nĂŒĂŒd massiivide sĂŒnkroonimist.

[root@localhost ~]# cat /proc/mdstat 
Isikuomadused: [raid1] 
md126: aktiivne raid1 sdd1[3] sdc1[2]
  1047552 plokki super 1.2 [2/2] [UU]
  bitmap: 0/1 lehte [0KB], 65536KB tĂŒkk

md127: aktiivne raid1 sdd2[3] sdc2[2]
  233206784 plokki super 1.2 [2/1] [U_]
  [>....................] taastumine =  0.5% (1200000/233206784) lÔpp = 35.4min kiirus = 109090K/sek
  bitmap: 2/2 lehte [8KB], 65536KB tĂŒkk

kasutamata seadmed: <none>

5. GRUB-i installimine uutele ketastele

CentOS jaoks:

grub2-install /dev/sdX

Debiani/Ubuntu jaoks:

grub-install /dev/sdX

kus X — ploki seadme tĂ€his. Antud juhul tuleb GRUB installida /dev/sdc ja /dev/sdd.

6. FailisĂŒsteemi (ext4) juurdosa laiendamine

Uutel ketastel /dev/sdc ja /dev/sdd on saadaval 931.5 GB. Kuna partitsioonide tabel on kopeeritud vÀiksemate ketastega, on partitsioonidel /dev/sdc2 ja /dev/sdd2 saadaval 222.5 GB.

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]

NÔutav:

  1. Laiendada 2. partitsiooni igas ketas,
  2. Laiendada md127 massiivi,
  3. Laiendada PV (fĂŒĂŒsiline maht),
  4. Laiendada LV (loogiline maht) vg0-root,
  5. Laieni failisĂŒsteem.

Kasutades utiliiti parted laiendame jaotust /dev/sdc2 kuni maksimaalse vÀÀrtuseni. TÀidame kÀsu parted /dev/sdc (1) ja vaatame hetke jaotustabelit kÀsuga p (2).

Kleinimate ketaste asendamine suuremate ketastega Linuxis

Nagu nÀha, lÔppeb jaotuse 2 lÔpp 240 GB juures. Teeme jaotuse laiendamise kÀsuga resizepart 2, kus 2 on jaotuse number (3). NÀitame vÀÀrtust numbrilises vormingus, nÀiteks 1000 GB, vÔi kasutame diskina osa nÀitamiseks - 100%. Kontrollime uuesti, et jaotus oleks uue suurusega (4).

Korrame ĂŒlaltoodud toiminguid ketta /dev/sdd. PĂ€rast jaotuste laiendamist /dev/sdc2 ja /dev/sdd2 olid vĂ”rdsed 930.5 GB.

[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]

SeejÀrel laiendame massiivi md127 maksimaalsena.

mdadm --grow /dev/md127 --size=max

Kontrollime, et massiiv oleks laienenud. NĂŒĂŒd on selle suurus 930.4 GB.

[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]

Laienme laiendamine fĂŒĂŒsiline maht. Enne laiendamist kontrollime PV praegust seisundit.

[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   ]

Nagu nÀha, PV /dev/md127 kasutab 222.4 GB ruumi.

Laiendame PV jÀrgmise kÀsuga.

pvresize /dev/md127

Kontrollime PV laiendamise tulemust.

[

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   ]

Laiendame loogilist mahtu. Enne laiendamist kontrollime LV (1) praegust seisundit.

[root@localhost ~]# lvscan
  ACTIVE            '/dev/vg0/swap' [<16,00 GiB] inherit
  ACTIVE            '/dev/vg0/root' [<206,41 GiB] inherit

LV /dev/vg0/root kasutab 206.41 GB.

Laiendame LV jÀrgmise kÀsuga (2).

lvextend -l +100%FREE /dev/mapper/vg0-root

Kontrollime tehtud toimingut (3).

[root@localhost ~]# lvscan 
  ACTIVE            '/dev/vg0/swap' [16,00 GiB] inherit
  ACTIVE            '/dev/vg0/root' [914,39 GiB] inherit

Nagu nĂ€eme, on pĂ€rast LV laiendamist seotud ketta maht nĂŒĂŒd 914.39 GB.

Kleinimate ketaste asendamine suuremate ketastega Linuxis

LV maht on suurenenud (4), kuid failisĂŒsteem kasutab endiselt 204 GB (5).

1. Teeme failisĂŒsteemi laiendamise.

resize2fs /dev/mapper/vg0-root

Kontrollime pĂ€rast kĂ€su tĂ€itmist failisĂŒsteemi suurust.

[root@localhost ~]# df -h
FailisĂŒsteem     Suurus Kasutatud  JÀÀb Kasutatud% Mount
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

Juured failisĂŒsteemi suurus suureneb 900 GB. PĂ€rast tehtud toiminguid on vĂ”imalik vana kettad eemaldada.

Juhtum 2: VĂ€iksema mahuga ketaste asendamine suurema mahuga ketastega (ĂŒle 2TB)

Ülesanne: Vahetada vĂ€lja olemasolevad kettad suuremate ketastega (2 x 3TB), sĂ€ilitades teabe. Praegu on kettad 2 x 240 GB SSD (RAID-1) koos paigaldatud sĂŒsteemiga ja kettad 2 x 3 TB SATA, kuhu tuleb sĂŒsteem ĂŒle kanda. Praegustes kettas kasutatakse MBR-partitsioonitabelit. Kuna uutel ketastel on maht ĂŒle 2 TB, siis neile tuleb kasutada GPT-partitsioonitabelit, kuna MBR ei saa töötada ketastega, mis on suuremad kui 2TB.

Vaatame praegust ketaste jaotust.

[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  

Kontrollime ketta kasutatavat partitsioonitabelit. /dev/sda.

[root@localhost ~]# fdisk -l /dev/sda | grep 'Disk label type'
Disk label type: dos

Kettal /dev/sdb kasutatakse sarnast partitsioonitabelit. Kontrollime, kui palju kettaruumi sĂŒsteemis kasutatakse.

[root@localhost ~]# df -h
FailisĂŒsteem         Suurus   Kasutatud  Vabastatud    Kasutatud%   Mountitud
/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

Nagu nĂ€ha, kasutab failisĂŒsteemi juur 204 GB. Kontrollime tarkvara RAID-massiivi hetkeolekut.

1. GPT-partitsioonide tabeli loomine ja ketta partitseerimine

Kontrollime ketaste partitsioonide sektoreid.

[root@localhost ~]# parted /dev/sda print
Mudel: ATA KINGSTON SVP200S (scsi)
Ketas /dev/sda: 240GB
Sektori suurus (loogiline/fĂŒĂŒsiline): 512B/512B
Partitsioonide tabel: msdos
Disk Flags:

Nr    Algus    LĂ”pp     Suurus    TĂŒĂŒp      FailisĂŒsteem   Lipud
 1     1049kB  1076MB  1075MB  primary                    kÀivitav, raid
 2     1076MB  240GB   239GB   primary                    raid

Uuel 3TB kettal peame looma 3 partitsiooni:

  1. Jaotis bios_grub suurusega 2MiB, et tagada GPT ĂŒhilduvus BIOS-iga,
  2. Partitsioon RAID-massiivi jaoks, mis monteeritakse /boot.
  3. Partitsioon RAID-massiivi jaoks, millel on LV root ja LV swap.

Paigaldame tööriista parted kÀsku yum install -y parted (CentOS-i jaoks), apt install -y parted (Debian/Ubuntu jaoks).

Kasutades parted sooritame jÀrgmised kÀsklused ketta partitsioneerimiseks.

KĂ€ivita kĂ€sk parted /dev/sdc ja liigume ketta partitsioneerimise redigeerimisreĆŸiimi.

Loome GPT osade tabeli.

(parted) mktable gpt

Loome 1. osa bios_grub osa ja seame sellele lipu.

(parted) mkpart primary 1MiB 3MiB
(parted) set 1 bios_grub on  

Loome 2. osa ja seame sellele lipu. Osa kasutatakse RAID-massiivi plokina ja selle mountimiseks /boot.

(parted) mkpart primary ext2 3MiB 1028MiB
(parted) set 2 boot on

Loome 3. osa, mida kasutatakse samuti massiivi plokina, kus on LVM.

(parted) mkpart primary 1028MiB 100% 

Sel juhul lipu seadmine ei ole kohustuslik, kuid vajadusel saab selle seada jÀrgmise kÀsuga.

(parted) set 3 raid on

Kontrollime loodud tabelit.

(parted) p                                                                
Mudeli: ATA TOSHIBA DT01ACA3 (scsi)
Ketas /dev/sdc: 3001GB
Sektori suurus (loog./fĂŒĂŒs.): 512B/4096B
Partitsiooni tabel: gpt
Disk Flags: 

Nummer  Algus  LĂ”pp   Suurus  FailisĂŒsteem  Nimi      Lipud
 1     1049kB  3146kB  2097kB                    primary  bios_grub
 2     3146kB  1077MB  1074MB                    primary  algkÀivitamiseks
 3     1077MB  3001GB  3000GB                    primary

MÀÀrame kettale uue juhusliku GUID.

sgdisk -G /dev/sdd

2. Eemaldame esimese ketta osad massiividest.

Kontrollime massiivi olekut

[root@localhost ~]# cat /proc/mdstat
Isiksused : [raid1]
md126 : aktiivne raid1 sda1[0] sdb1[1]
      1047552 blokki super 1.2 [2/2] [UU]
      bitmap: 0/1 lehekĂŒlge [0KB], 65536KB chunk

md127 : aktiivne raid1 sda2[0] sdb2[1]
      233206784 blokki super 1.2 [2/2] [UU]
      bitmap: 0/2 lehekĂŒlge [0KB], 65536KB chunk

kasutamata seadmed:

SĂŒsteemis kasutatakse kahte massiivi: md126 (mount-punkt /boot) — koosneb /dev/sda1 ja /dev/sdb1, md127 (LVM jaoks swap ja failisĂŒsteemi juur) — koosneb /dev/sda2 ja /dev/sdb2.

MĂ€rgistame esimese ketta partitsioonid, mida kasutatakse igas massiivis, kui defektseteks.

mdadm /dev/md126 --fail /dev/sda1

mdadm /dev/md127 --fail /dev/sda2

Kustutame plokkseadmest partitsioonid /dev/sda massiividest.

mdadm /dev/md126 --remove /dev/sda1

mdadm /dev/md127 --remove /dev/sda2

Kontrollime massiivi seisundit pÀrast ketta eemaldamist.

[root@localhost ~]# cat /proc/mdstat 
Isikud: [raid1] 
md126 : aktiivne raid1 sdb1[1]
      1047552 plokki super 1.2 [2/1] [_U]
      bitmap: 0/1 lehekĂŒlge [0KB], 65536KB chunk

md127 : aktiivne raid1 sdb2[1]
      233206784 plokki super 1.2 [2/1] [_U]
      bitmap: 2/2 lehekĂŒlge [8KB], 65536KB chunk

kasutamata seadmed:

3. Uue ketta osade lisamine massiivi

JĂ€rgmise sammuna tuleb uue ketta partitsioonid lisada massiividesse sĂŒnkroniseerimiseks. Vaata, mis on ketaste praegune partitsioneerimise seis.

[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  

Jaotis /dev/sdc1 on bios_grub partitsioon ja ei osale massiivi loomises. Massiividesse kaasatakse ainult /dev/sdc2 ja /dev/sdc3. Lisame need partitsioonid vastavatesse massiividesse.

mdadm /dev/md126 --add /dev/sdc2

mdadm /dev/md127 --add /dev/sdc3

PĂ€rast seda ootame massiivi sĂŒnkroniseerimist.

[root@localhost ~]# cat /proc/mdstat 
Isikud: [raid1] 
md126 : aktiivne raid1 sdc2[2] sdb1[1]
      1047552 blokki super 1.2 [2/2] [UU]
      bitmap: 0/1 lehekĂŒlge [0KB], 65536KB tĂŒkk

md127 : aktiivne raid1 sdc3[2] sdb2[1]
      233206784 blokki super 1.2 [2/1] [_U]
      [>....................] taastamine =  0.2% (619904/233206784) lÔpetamine=31.2min kiirus=123980K/sec
      bitmap: 2/2 lehekĂŒlge [8KB], 65536KB tĂŒkk
kasutamata seadmed:

Diskide jaotuse struktuur pÀrast partitsioonide lisamist massiivi.

[root@localhost ~]# lsblk
NIMI           MAJ:MIN RM   SUURUS RO TĂŒĂŒp  MOUNTPOINT
sda              8:0    0 223,6G  0 ketas  
├─sda1           8:1    0     1G  0 osa  
└─sda2           8:2    0 222,5G  0 osa  
sdb              8:16   0 223,6G  0 ketas  
├─sdb1           8:17   0     1G  0 osa  
│ └─md126        9:126  0  1023M  0 raid1 /boot
└─sdb2           8:18   0 222,5G  0 osa  
  └─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 ketas  
├─sdc1           8:33   0     2M  0 osa  
├─sdc2           8:34   0     1G  0 osa  
│ └─md126        9:126  0  1023M  0 raid1 /boot
└─sdc3           8:35   0   2,7T  0 osa  
  └─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 ketas  

4. Teise ketta partitsioonide eemaldamine massiividest

MĂ€rgime igas massiivis kasutatavad teise ketta partitsioonid vigastatuks.

mdadm /dev/md126 --fail /dev/sdb1

mdadm /dev/md127 --fail /dev/sdb2

Kustutame plokkseadmest partitsioonid /dev/sda massiividest.

mdadm /dev/md126 --remove /dev/sdb1

mdadm /dev/md127 --remove /dev/sdb2

5. Kopeerime GPT jaotustabeli ja sĂŒnkroonime massiivi

GPT jaotustabeli kopeerimiseks kasutame utiliiti sgdisk, mis kuulub kettaosade ja GPT jaotustabeliga töötamise paketti — gdisk.

Installeerimine gdisk CentOS-i jaoks:

yum install -y gdisk

Installeerimine gdisk Debiani/Ubuntu jaoks:

apt install -y gdisk

TÄHELEPANU: GPT jaoks esimest mÀÀra disk kuhu kopeerime jaotuse, teise ketas mÀÀratakse ketas millelt kopeerivad jaotuse. Kui kettad vahetatakse, siis algselt korrektne jaotus kirjutatakse ĂŒle ja hĂ€vitatakse.

Kopeerime GPT jaotustabeli.

sgdisk -R /dev/sdd /dev/sdc

Kettajagunemine pĂ€rast jaotustabeli ĂŒleviimist kettale /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  

SeejÀrel lisame iga jaotuse, mis osaleb tarkvaralistes RAID-massiivides.

mdadm /dev/md126 --add /dev/sdd2

mdadm /dev/md127 --add /dev/sdd3

Ootame massiivi sĂŒnkroniseerimist.

[root@localhost ~]# cat /proc/mdstat 
Isikud: [raid1] 
md126: aktiivne raid1 sdd2[3] sdc2[2]
      1047552 blokki super 1.2 [2/2] [UU]
      bitmap: 1/1 lehekĂŒlge [4KB], 65536KB tĂŒkk

md127: aktiivne raid1 sdd3[3] sdc3[2]
      233206784 blokki super 1.2 [2/1] [U_]
      [>....................] taastumine =  0.0% (148224/233206784) lÔpetamine=26.2min kiirus=148224K/sec
      bitmap: 2/2 lehekĂŒlge [8KB], 65536KB tĂŒkk
kasutamata seadmed:

PÀrast GPT jaotuse kopeerimist teisele uuele kettale nÀeb jaotus vÀlja jÀrgmiselt.

[root@localhost ~]# lsblk
NIMI          MAJ:MIN RM   SUURUS RO TĂŒĂŒp  MOUNTPOINT
sda              8:0    0 223,6G  0 kettas  
├─sda1           8:1    0     1G  0 osa  
└─sda2           8:2    0 222,5G  0 osa  
sdb              8:16   0 223,6G  0 kettas  
├─sdb1           8:17   0     1G  0 osa  
└─sdb2           8:18   0 222,5G  0 osa  
sdc              8:32   0   2,7T  0 kettas  
├─sdc1           8:33   0     2M  0 osa  
├─sdc2           8:34   0     1G  0 osa  
│ └─md126        9:126  0  1023M  0 raid1 /boot
└─sdc3           8:35   0   2,7T  0 osa  
  └─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 kettas  
├─sdd1           8:49   0     2M  0 osa  
├─sdd2           8:50   0     1G  0 osa  
│ └─md126        9:126  0  1023M  0 raid1 /boot
└─sdd3           8:51   0   2,7T  0 osa  
  └─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]

JĂ€tkame GRUB-i installimist uutele kettale.

Installimine CentOS-ile:

grub2-install /dev/sdX

Installimine Debian/Ubuntu:

grub-install /dev/sdX

kus X — kettatĂ€ht, meie juhul kettad /dev/sdc ja /dev/sdd.

Uuendame massiivi teavet.

CentOS jaoks:

mdadm --detail --scan --verbose > /etc/mdadm.conf

Debiani/Ubuntu jaoks:

echo "DEVICE partitions" > /etc/mdadm/mdadm.conf

mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf

Uuendame pilti initrd:
CentOS jaoks:

dracut -f -v --regenerate-all

Debiani/Ubuntu jaoks:

update-initramfs -u -k all

Uuendame GRUBi konfiguratsiooni.

CentOS jaoks:

grub2-mkconfig -o /boot/grub2/grub.cfg

Debiani/Ubuntu jaoks:

update-grub

PĂ€rast teostatud toiminguid saab vana kettad eemaldada.

6. FailisĂŒsteemi (ext4) juurdosa laiendamine

Ketaste partitsioneerimine enne failisĂŒsteemi laiendamist pĂ€rast sĂŒsteemi ĂŒlekandmist kettale 2 x 3TB (RAID-1).

[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]

Praegu on jaotised /dev/sdc3 ja /dev/sdd3 Kasutatav ruum on 2.7 TB. Kuna me lÔime uue ketaste jaotuse GPT tabeliga, mÀÀrati 3 jao suurus kohe maksimaalselt vÔimalikule kettaruumi, sel juhul jao suurendamine ei ole vajalik.

NÔutav:

  1. Suurenda massiivi md126,
  2. Laiendada PV (fĂŒĂŒsiline maht),
  3. Laiendada LV (loogiline maht) vg0-root,
  4. Laieni failisĂŒsteem.

1. Suurendame massiivi md126 maksimaalsena.

mdadm --grow /dev/md126 --size=max

PĂ€rast massiivi suurem, md126 kasutatava ruumi suurus suurenes 2.7 TB-ni.

[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]

Laiendame fĂŒĂŒsiline maht.

Enne suurendamist kontrollime praegust PV kasutatava ruumi vÀÀrtust /dev/md126.

[root@localhost ~]# pvs
  PV         VG  Fmt  Attr PSize   PFree
  /dev/md126 vg0 lvm2 a--  222,40g    0 

Suurendame PV jÀrgmise kÀsuga.

pvresize /dev/md126

Kontrollime tehtud toimingut.

[root@localhost ~]# pvs
  PV         VG  Fmt  Attr PSize  PFree
  /dev/md126 vg0 lvm2 a--  <2,73t 2,51t

Laiendame loogiline maht vg0-root.

PÀrast PV laiendamist kontrollime VG hÔivatud ruumi.

[root@localhost ~]# vgs
  VG  #PV #LV #SN Attr   VSize  VFree
  vg0   1   2   0 wz--n- <2,73t 2,51t

Kontrollime hÔivatud LV ruumi.

[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            

Maht vg0-root kasutab 206.41 GB.

Laiendame LV maksimaalsele kettaruumi.

lvextend -l +100%FREE /dev/mapper/vg0-root 

Kontrollime LV ruumi pÀrast laiendamist.

[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

Laiendame failisĂŒsteemi (ext4).

Kontrollime praegust failisĂŒsteemi suurust.

[root@localhost ~]# df -h
FailisĂŒsteem         Suurus Kasutatud  Vabaks Kasutatud% Montitud

/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

Maht /dev/mapper/vg0-root kasutab 204 GB pÀrast LV laiendamist.

Laiendame failisĂŒsteemi.

resize2fs /dev/mapper/vg0-root 

Kontrollime failisĂŒsteemi suurust pĂ€rast selle laiendamist.

[root@localhost ~]# df -h
FailisĂŒsteem     Suurus Kasutatud  Vaba Kasutatud% Mountitud
/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

FailisĂŒsteemi suurus on suurenenud kogu mahult.

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster