Moien alleguer. Um Virowend vum Start vun engem neie Cours Grupp
Dësen Artikel betruecht 2 Fäll fir Disken z'ersetzen an Informatioun op nei Disken mat méi grousser Kapazitéit ze transferéieren mat weiderer Ausdehnung vum Array a Dateiesystem. Den éischte Fall betrëfft den Ersatz vun Disken mat der selweschter MBR/MBR oder GPT/GPT Partitionéierung, den zweete Fall betrëfft den Ersatz vun Disken mat MBR Partitionéierung mat Disks mat enger Kapazitéit vu méi wéi 2 TB, op deenen Dir installéiere musst eng GPT Partition mat enger Biosboot Partition. A béide Fäll sinn d'Disks, op déi mir d'Donnéeën transferéieren, schonn um Server installéiert. De Dateiesystem deen fir d'Root-Partition benotzt gëtt ass ext4.
Fall 1: Ersetzen vu méi klengen Disken duerch méi grouss Disken (bis zu 2TB)
Eng Aufgab: Ersetzen déi aktuell Disken duerch méi grouss Disken (bis zu 2 TB) mat Informatiounstransfer. An dësem Fall hu mir 2 x 240 GB SSD (RAID-1) Disks mat dem System installéiert an 2 x 1 TB SATA Disks op déi de System muss transferéiert ginn.
Loosst eis den aktuellen Disk Layout kucken.
[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
Loosst eis den aktuell benotzte Dateisystemraum iwwerpréiwen.
[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
D'Gréisst vum Dateiesystem virum Ersatz vun Disken ass 204 GB, 2 md126 Software Arrays ginn benotzt, déi am montéiert sinn /boot
и md127
, déi benotzt gëtt als kierperlecht Volumen fir VG Grupp vg0.
1. Ewechzehuelen Scheif Partitionen aus Arrays
Iwwerpréift den Zoustand vun der Array
[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>
De System benotzt 2 Arrays: md126
(Mount Punkt /boot
) - besteet aus enger Sektioun /dev/sda1
и /dev/sdb1
, md127
(LVM fir méchs an d'Wuerzel vum Dateiesystem) - besteet aus /dev/sda2
и /dev/sdb2
.
Mir markéieren d'Partitionen vun der éischter Scheif, déi an all Array benotzt ginn, als schlecht.
mdadm /dev/md126 --fail /dev/sda1
mdadm /dev/md127 --fail /dev/sda2
Mir läschen d'/dev/sda Block Apparat Partitionen aus den Arrays.
mdadm /dev/md126 --remove /dev/sda1
mdadm /dev/md127 --remove /dev/sda2
Nodeems mir d'Disk aus der Array geläscht hunn, wäert d'Blockapparatinformatioun esou ausgesinn.
[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
Zoustand vun Arrays no der Ewechhuele vun Disken.
[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. Kopie der Partition Dësch op eng nei Scheif
Dir kënnt d'benotzt Partitionstabelle op der Disk mat dem folgenden Kommando kontrolléieren.
fdisk -l /dev/sdb | grep 'Disk label type'
D'Ausgab fir MBR wier:
Disk label type: dos
fir GPT:
Disk label type: gpt
Kopie vun der Partitionstabelle fir MBR:
sfdisk -d /dev/sdb | sfdisk /dev/sdc
An dëser Equipe éischt Scheif gëtt uginn с vun deem de Markup gëtt kopéiert, zweet - wou kopéieren.
ACHTUNG: Fir GPT éischt Scheif gëtt uginn op déi kopéieren Markup déi zweet Disk weist den Disk un vun deem kopéieren Markup. Wann Dir d'Disks vermëscht, gëtt déi ufanks gutt Partition iwwerschriwwen an zerstéiert.
Kopie vun der Layouttabell fir GPT:
sgdisk -R /dev/sdс /dev/sdb
Als nächst gitt eng zoufälleg UUID op den Disk (fir GPT).
sgdisk -G /dev/sdc
Nodeems de Kommando ausgefouert gëtt, sollten d'Partitionen op der Disk erscheinen /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
Wann, nodeems d'Aktioun duerchgefouert gëtt, d'Partitionen am System op der Disk /dev/sdc
net entscheet, da fuere mir de Kommando aus fir d'Partitionstabel nei ze liesen.
sfdisk -R /dev/sdc
Wann déi aktuell Disken d'MBR-Tabelle benotzen an d'Informatioun muss op Disken méi grouss wéi 2 TB transferéiert ginn, da musst Dir op neie Disken manuell GPT-Partitionéierung mat der Biosboot-Partition erstellen. Dëse Fall wäert am Deel 2 vun dësem Artikel diskutéiert ginn.
3. Dobäi Partitionen vun der neier Scheif op d'Array
Loosst eis Diskpartitionen an déi entspriechend Arrays addéieren.
mdadm /dev/md126 --add /dev/sdc1
mdadm /dev/md127 --add /dev/sdc2
Mir kontrolléieren ob d'Sektiounen dobäi sinn.
[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
Duerno waarden mir op d'Arrays fir ze synchroniséieren.
[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>
Dir kënnt de Synchroniséierungsprozess kontinuéierlech iwwerwaachen mat dem Utility watch
.
watch -n 2 cat /proc/mdstat
Parameter -n
spezifizéiert op wéi eng Intervalle a Sekonnen de Kommando muss ausgefouert ginn fir de Fortschrëtt ze kontrolléieren.
Widderhuelen Schrëtt 1 - 3 fir déi nächst Ersatz Scheif.
Mir markéieren d'Partitionen vun der zweeter Disk, déi an all Array benotzt ginn, als schlecht.
mdadm /dev/md126 --fail /dev/sdb1
mdadm /dev/md127 --fail /dev/sdb2
Ewechzehuelen Block Apparat Partitionen /dev/sdb
vun Arrays.
mdadm /dev/md126 --remove /dev/sdb1
mdadm /dev/md127 --remove /dev/sdb2
Nodeems mir d'Disk aus der Array geläscht hunn, wäert d'Blockapparatinformatioun esou ausgesinn.
[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
Zoustand vun Arrays no der Ewechhuele vun Disken.
[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>
Kopie vun der MBR Partitionstabelle vun der Disk /dev/sdс
op Scheif /dev/sdd
.
sfdisk -d /dev/sdс | sfdisk /dev/sdd
Nodeems de Kommando ausgefouert gëtt, sollten d'Partitionen op der Disk erscheinen /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
Füügt Diskpartitionen op Arrays.
mdadm /dev/md126 --add /dev/sdd1
mdadm /dev/md127 --add /dev/sdd2
Mir kontrolléieren ob d'Sektiounen dobäi sinn.
[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]
Duerno waarden mir op d'Arrays fir ze synchroniséieren.
[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. Installéiere GRUB op nei fiert
Fir CentOS:
grub2-install /dev/sdX
Debian/Ubuntu:
grub-install /dev/sdX
wou X
- Bréif vum Blockapparat. An dësem Fall musst Dir GRUB installéieren op /dev/sdc
и /dev/sdd
.
6. Dateisystem Extensioun (ext4) vun der Root-Partition
Op neien Disken /dev/sdc
и /dev/sdd
931.5 GB verfügbar. Wéinst der Tatsaach, datt d'Partitionstabel vu méi klengen Disken kopéiert gouf, sinn d'Partitionen /dev/sdc2
и /dev/sdd2
222.5 GB verfügbar.
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]
Et ass néideg:
- Verlängert Partition 2 op jiddereng vun den Disken,
- Erweidert Array md127,
- PV expandéieren (physesch Volumen),
- LV (logesch-Volumen) erweideren vg0-root,
- Erweidert de Dateiesystem.
Benotzt den Utility hu loosst eis d'Sektioun ausbauen /dev/sdc2
op de maximale Wäert. Féiert de Kommando aus parted /dev/sdc
(1) a kuckt déi aktuell Partitionstabelle mam Kommando p
(2).
Wéi Dir kënnt gesinn, endet d'Enn vun der Partition 2 op 240 GB. Loosst eis d'Partition mat dem Kommando ausbauen resizepart
2
, wou 2 d'Zuel vun der Rubrik (3) ass. Mir weisen de Wäert am digitalen Format un, zum Beispill 1000 GB, oder benotzt d'Indikatioun vum Disk Share - 100%. Mir kontrolléieren nach eng Kéier datt d'Partition déi nei Gréisst (4) huet.
Widderhuelen déi uewe genannte Schrëtt fir den Disk /dev/sdd
. Nodeems d'Partitionen erweidert /dev/sdc2
и /dev/sdd2
gouf gläich ze 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]
Duerno erweidere mir d'Array Md127 zum Maximum.
mdadm --grow /dev/md127 --size=max
Mir kontrolléieren ob d'Array erweidert ass. Elo ass seng Gréisst 930.4 GB ginn.
[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]
Verlängerung vun der Verlängerung kierperlecht Volumen. Ier mer ausbauen, loosst eis den aktuellen Zoustand vun der PV kontrolléieren.
[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 ]
Wéi gesi kann, PV /dev/md127
benotzt 222.4 GB Plaz.
Mir erweideren PV mat de folgende Kommando.
pvresize /dev/md127
Iwwerpréift d'Resultat vun PV Expansioun.
[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 ]
Erweiderung logesche Volume. Ier Dir erweidert, loosst eis den aktuellen Zoustand vun LV (1) kontrolléieren.
[root@localhost ~]# lvscan
ACTIVE '/dev/vg0/swap' [<16,00 GiB] inherit
ACTIVE '/dev/vg0/root' [<206,41 GiB] inherit
LV /dev/vg0/root
benotzt 206.41 GB.
Mir erweideren LV mat dem folgenden Kommando (2).
lvextend -l +100%FREE /dev/mapper/vg0-root
Mir kontrolléieren déi ofgeschloss Aktioun (3).
[root@localhost ~]# lvscan
ACTIVE '/dev/vg0/swap' [<16,00 GiB] inherit
ACTIVE '/dev/vg0/root' [<914,39 GiB] inherit
Wéi Dir gesitt, no der Ausbau vun LV, gouf d'Quantitéit u besat Plaatz 914.39 GB.
De LV Volumen ass eropgaang (4), awer de Dateiesystem besetzt nach ëmmer 204 GB (5).
1. Loosst eis de Fichier System expandéieren.
resize2fs /dev/mapper/vg0-root
Nodeems de Kommando ausgefouert gëtt, kontrolléiere mir d'Gréisst vum Dateiesystem.
[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
D'Gréisst vum Root Dateisystem wäert op 900 GB eropgoen. Nodeems Dir d'Schrëtt ofgeschloss hutt, kënnt Dir déi al Disken ewechhuelen.
Fall 2: Ersetzen vu méi klengen Disken duerch méi grouss Disken (méi wéi 2TB)
Uerder: Ersetzen déi aktuell Disken mat gréisseren Disken (2 x 3TB) wärend d'Informatioun erhale bleift. An dësem Fall hu mir 2 x 240 GB SSD (RAID-1) Disks mat dem System installéiert an 2 x 3 TB SATA Disks op déi de System muss transferéiert ginn. Aktuell Disken benotzen d'MBR Partitionstabelle. Zënter datt nei Disken eng Kapazitéit méi wéi 2 TB hunn, musse se e GPT Dësch benotzen, well MBR net mat Disken méi grouss wéi 2 TB funktionnéiert.
Loosst eis den aktuellen Disk Layout kucken.
[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
Loosst eis d'Partitionstabelle kucken déi op der Disk benotzt gëtt /dev/sda
.
[root@localhost ~]# fdisk -l /dev/sda | grep 'Disk label type'
Disk label type: dos
Op Disk /dev/sdb
eng ähnlech Partitionstabell gëtt benotzt. Loosst eis de benotzten Disk Space um System iwwerpréiwen.
[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
Wéi Dir gesitt, hëlt d'Wuerzel vum Dateiesystem 204 GB. Loosst eis den aktuellen Zoustand vun der Software RAID Array kontrolléieren.
1. Installatioun vun engem GPT Partition Dësch an Scheif partitioning
Loosst eis den Disk Layout no Sektor iwwerpréiwen.
[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
Op der neier 3TB Disk musse mir 3 Partitionen erstellen:
- Sektioun
bios_grub
2MiB Gréisst fir GPT BIOS Kompatibilitéit, - D'Partition fir d'RAID-Array déi montéiert gëtt
/boot
. - D'Partition fir d'RAID-Array op där et wäert sinn LV root и LV Austausch.
Installatioun vum Utility hu Equipe yum install -y parted
(fir CentOS), apt install -y parted
(fir Debian/Ubuntu).
Benotzen hu Loosst eis déi folgend Kommandoen ausféieren fir den Disk ze partitionéieren.
Féiert de Kommando aus parted /dev/sdc
a gitt op den Disk Layout Editing Modus.
Erstellt eng GPT Partitionstabell.
(parted) mktable gpt
Schafen 1 Rubrik bios_grub
Sektioun a setzen e Fändel dofir.
(parted) mkpart primary 1MiB 3MiB
(parted) set 1 bios_grub on
Erstellt Partition 2 a setzt e Fändel dofir. D'Partition gëtt als Block fir eng RAID-Array benotzt a montéiert /boot
.
(parted) mkpart primary ext2 3MiB 1028MiB
(parted) set 2 boot on
Mir kreéieren eng 3. Sektioun, déi och als Arrayblock benotzt gëtt an deem LVM wäert sinn.
(parted) mkpart primary 1028MiB 100%
An dësem Fall ass et net néideg de Fändel ze setzen, awer wann néideg, kann et mat dem folgenden Kommando gesat ginn.
(parted) set 3 raid on
Mir kontrolléieren den erstallten Dësch.
(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
Mir ginn eng nei zoufälleg GUID un der Scheif.
sgdisk -G /dev/sdd
2. Ewechzehuelen Partitionen vun der éischter Scheif aus Arrays
Iwwerpréift den Zoustand vun der Array
[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>
De System benotzt 2 Arrays: md126 (Mount Punkt / Stiwwel) - besteet aus /dev/sda1
и /dev/sdb1
, md127
(LVM fir swap
an d'Wuerzel vum Dateiesystem) - besteet aus /dev/sda2
и /dev/sdb2
.
Mir markéieren d'Partitionen vun der éischter Scheif, déi an all Array benotzt ginn, als schlecht.
mdadm /dev/md126 --fail /dev/sda1
mdadm /dev/md127 --fail /dev/sda2
Ewechzehuelen Block Apparat Partitionen /dev/sda
vun Arrays.
mdadm /dev/md126 --remove /dev/sda1
mdadm /dev/md127 --remove /dev/sda2
Kontrolléiert den Zoustand vun der Array nodeems Dir d'Disk ewechgeholl huet.
[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. Dobäi Partitionen vun der neier Scheif op d'Array
De nächste Schrëtt ass fir Partitionen vun der neier Disk an d'Arrays fir d'Synchroniséierung ze addéieren. Loosst eis den aktuellen Zoustand vum Disk Layout kucken.
[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
Sektioun /dev/sdc1
et ass bios_grub
Sektioun an ass net an der Schafung vun Arrays involvéiert. D'Arrays wäerten nëmme benotzen /dev/sdc2
и /dev/sdc3
. Mir addéieren dës Sektiounen an déi entspriechend Arrays.
mdadm /dev/md126 --add /dev/sdc2
mdadm /dev/md127 --add /dev/sdc3
Da waarden mir op d'Array fir ze synchroniséieren.
[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>
Disk Layout nodeems Dir Partitionen an d'Array bäigefüügt hutt.
[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. Ewechzehuelen Partitionen vun der zweeter Scheif aus Arrays
Mir markéieren d'Partitionen vun der zweeter Disk, déi an all Array benotzt ginn, als schlecht.
mdadm /dev/md126 --fail /dev/sdb1
mdadm /dev/md127 --fail /dev/sdb2
Ewechzehuelen Block Apparat Partitionen /dev/sda
vun Arrays.
mdadm /dev/md126 --remove /dev/sdb1
mdadm /dev/md127 --remove /dev/sdb2
5. Kopéiert d'GPT Layout Dësch a synchroniséiert d'Array
Fir d'GPT Markuptabel ze kopéieren benotze mir den Utility sgdisk
, déi am Package abegraff ass fir mat Diskpartitionen an engem GPT Dësch ze schaffen - gdisk
.
Kader gdisk
fir CentOS:
yum install -y gdisk
Kader gdisk
fir Debian/Ubuntu:
apt install -y gdisk
ACHTUNG: Fir GPT éischt Scheif gëtt uginn op déi kopéiert de Markup, déi zweet Disk weist den Disk un vun deem kopéiert de Markup. Wann Dir d'Disks vermëscht, gëtt déi ufanks gutt Partition iwwerschriwwen an zerstéiert.
Kopéiert d'GPT Markuptabel.
sgdisk -R /dev/sdd /dev/sdc
Disk Partitionéierung nodeems en Dësch op Disk transferéiert gouf /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
Als nächst addéiere mir jiddereng vun de Partitionen déi un Software RAID Arrays deelhuelen.
mdadm /dev/md126 --add /dev/sdd2
mdadm /dev/md127 --add /dev/sdd3
Mir waarden op d'Array fir ze synchroniséieren.
[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>
Nodeems Dir d'GPT Partition op déi zweet nei Disk kopéiert hutt, gesäit d'Partition esou aus.
[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]
Als nächst installéiert GRUB op den neien Disken.
Installatioun fir CentOS:
grub2-install /dev/sdX
Installatioun fir Debian/Ubuntu:
grub-install /dev/sdX
wou X
- Fuert Bréif, an eisem Fall fiert /dev/sdc
и /dev/sdd
.
Mir aktualiséieren Informatioun iwwer d'Array.
Fir CentOS:
mdadm --detail --scan --verbose > /etc/mdadm.conf
Debian/Ubuntu:
echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf
Update vum Bild initrd
:
Fir CentOS:
dracut -f -v --regenerate-all
Debian/Ubuntu:
update-initramfs -u -k all
Mir aktualiséieren d'GRUB Konfiguratioun.
Fir CentOS:
grub2-mkconfig -o /boot/grub2/grub.cfg
Debian/Ubuntu:
update-grub
Nodeems Dir d'Schrëtt ofgeschloss hutt, kënnen déi al Disken ewechgeholl ginn.
6. Dateisystem Extensioun (ext4) vun der Root-Partition
Disk Partitioning virun Dateisystem Expansioun no der Migratioun vum System op 2 x 3TB Disks (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]
Elo Rubriken /dev/sdc3
и /dev/sdd3
besetzen 2.7 TB. Well mir en neien Disk Layout mat engem GPT Dësch erstallt hunn, gouf d'Gréisst vun der Partition 3 direkt op de maximal méiglechen Disk Space gesat; an dësem Fall ass et net néideg d'Partition auszebauen.
Et ass néideg:
- Erweidert Array md126,
- PV expandéieren (physesch Volumen),
- LV (logesch-Volumen) erweideren vg0-root,
- Erweidert de Dateiesystem.
1. D'Array erweideren md126
zum Maximum.
mdadm --grow /dev/md126 --size=max
No Array Expansioun md126
d'Gréisst vum besat Raum ass op 2.7 TB eropgaang.
[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]
Erweiderung kierperlecht Volumen.
Ier Dir erweidert, kontrolléiert den aktuelle Wäert vum besat Raum PV /dev/md126
.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md126 vg0 lvm2 a-- 222,40g 0
Mir erweideren PV mat de folgende Kommando.
pvresize /dev/md126
Mir kontrolléieren déi ofgeschloss Aktioun.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md126 vg0 lvm2 a-- <2,73t 2,51t
Erweiderung logesch Volumen vg0-root.
Nom Ausbau PV, loosse mer de besat Raum VG kontrolléieren.
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 1 2 0 wz--n- <2,73t 2,51t
Loosst eis d'Plaz kucken, déi vum LV besat ass.
[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
De vg0-Root Volumen besetzt 206.41 GB.
Mir erweideren LV op de maximalen Disk Space.
lvextend -l +100%FREE /dev/mapper/vg0-root
Kontrolléieren der LV Plaz no Expansioun.
[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
Erweiderung vum Dateiesystem (ext4).
Loosst eis déi aktuell Gréisst vum Dateiesystem iwwerpréiwen.
[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
De Volume /dev/mapper/vg0-root besetzt 204 GB no LV Expansioun.
Erweiderung vum Dateiesystem.
resize2fs /dev/mapper/vg0-root
Iwwerpréift d'Gréisst vum Dateiesystem nodeems se erweidert hunn.
[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
D'Dateisystemgréisst gouf erhéicht fir de ganze Volumen ze decken.
Source: will.com