Π—Π°ΠΌΠ΅Π½Π° дисков мСньшСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π² Linux

ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚. Π’ ΠΏΡ€Π΅Π΄Π΄Π²Π΅Ρ€ΠΈΠΈ старта Π½ΠΎΠ²ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹ курса «Администратор LinuxΒ» ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅ΠΌ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π», написанный нашим студСнтом, Π° Ρ‚Π°ΠΊΠΆΠ΅ наставником Π½Π° курсах, спСциалистом тСхничСской ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² REG.RU β€” Π ΠΎΠΌΠ°Π½ΠΎΠΌ Π’Ρ€Π°Π²ΠΈΠ½Ρ‹ΠΌ.

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСны 2 случая Π·Π°ΠΌΠ΅Π½Ρ‹ дисков ΠΈ пСрСноса ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° Π½ΠΎΠ²Ρ‹Π΅ диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° с дальнСйшим Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ массива ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ случай Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΡΠ°Ρ‚ΡŒΡΡ Π·Π°ΠΌΠ΅Π½Ρ‹ дисков c ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΠΎΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ MBR/MBR Π»ΠΈΠ±ΠΎ GPT/GPT, Π²Ρ‚ΠΎΡ€ΠΎΠΉ случай касаСтся Π·Π°ΠΌΠ΅Π½Ρ‹ дисков с Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ MBR Π½Π° диски ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ 2 TB, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ потрСбуСтся ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ GPT с Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ biosboot. Π’ ΠΎΠ±ΠΎΠΈΡ… случаях диски, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пСрСносим Π΄Π°Π½Π½Ρ‹ΠΌ, ΡƒΠΆΠ΅ установлСны Π² сСрвСр. Ѐайловая систСма, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π° β€” ext4.

Π‘Π»ΡƒΡ‡Π°ΠΉ 1: Π—Π°ΠΌΠ΅Π½Π° дисков мСньшСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° (Π΄ΠΎ 2TB)

Π—Π°Π΄Π°Ρ‡Π°: Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ диски Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° (Π΄ΠΎ 2 TB) с пСрСносом ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠΌΠ΅Π΅ΠΌ диски 2 x 240 GB SSD (RAID-1) с установлСнной систСмой ΠΈ диски 2 x 1 TB SATA, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ пСрСнСсти систСму.

Рассмотрим Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ дисков.

[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  

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ пространство Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.

[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

Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы Π΄ΠΎ Π·Π°ΠΌΠ΅Π½Ρ‹ дисков составляСт 204 GB, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ 2 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… массива md126, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ смонтирован Π² /boot ΠΈ md127, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ physical volume для VG Π³Ρ€ΡƒΠΏΠΏΡ‹ vg0.

1. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² диска ΠΈΠ· массивов

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΌ состояниС массива

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

Π’ систСмС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 2 массива: md126 (Ρ‚ΠΎΡ‡ΠΊΠ° монтирования /boot) β€” состоит ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° /dev/sda1 ΠΈ /dev/sdb1, md127 (LVM для swap ΠΈ корня Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы) β€” состоит ΠΈΠ· /dev/sda2 ΠΈ /dev/sdb2.

ΠŸΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ диска, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ массивС, ΠΊΠ°ΠΊ сбойныС.

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

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

УдаляСм Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ устройства /dev/sda ΠΈΠ· массивов.

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

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

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ диск ΠΈΠ· массива, информация ΠΎ Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… устройствах Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

[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  

БостояниС массивов послС удалСния дисков.

[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. ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ диск

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π½Π° дискС ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.

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

Π’Ρ‹Π²ΠΎΠ΄ΠΎΠΌ для MBR Π±ΡƒΠ΄Π΅Ρ‚:

Disk label type: dos

для GPT:

Disk label type: gpt

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ для MBR:

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

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ указываСтся диск с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ копируСтся Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ°, Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ β€” ΠΊΡƒΠ΄Π° ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Π’ΠΠ˜ΠœΠΠΠ˜Π•: Для GPT ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ указываСтся диск Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ, Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ диском указываСтся диск с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ. Если ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ‚ΡŒ диски, Ρ‚ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ исправная Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ пСрСзаписана ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½Π°.

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ для GPT:

sgdisk -R /dev/sdс /dev/sdb

Π”Π°Π»Π΅Π΅ Π½Π°Π·Π½Π°Ρ‡Π°Π΅ΠΌ диску случайный UUID (для GPT).


sgdisk -G /dev/sdc

ПослС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ появится Π½Π° дискС /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  

Если послС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ³ΠΎ дСйствия Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π² систСмС Π½Π° дискС /dev/sdc Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈΡΡŒ, Ρ‚ΠΎ выполняСм ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ².

sfdisk -R /dev/sdc

Если Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… дисках ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°Π±Π»ΠΈΡ†Π° MBR ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ пСрСнСсти Π½Π° диски ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ 2 TB, Ρ‚ΠΎ Π½Π° Π½ΠΎΠ²Ρ‹Ρ… дисках потрСбуСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ GPT с использованиСм Ρ€Π°Π·Π΄Π΅Π»Π° biosboot. Π”Π°Π½Π½Ρ‹ΠΉ случай Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСн Π²ΠΎ 2 части Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ.

3. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π½ΠΎΠ²ΠΎΠ³ΠΎ диска Π² массив

Π”ΠΎΠ±Π°Π²ΠΈΠΌ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ диска Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ массивы.

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

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹.

[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  

ПослС этого доТидаСмся синхронизации массивов.

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

НСпрСрывно Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π·Π° процСссом синхронизации ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ watch.

watch -n 2 cat /proc/mdstat

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ -n ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ с ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠ² Π² сСкундах Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ прогрСсса.

ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΠ΅ΠΌ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ 1 β€” 3 для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ замСняСмого диска.

ΠŸΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ диска, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ массивС, ΠΊΠ°ΠΊ сбойныС.

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

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

УдаляСм Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ устройства /dev/sdb ΠΈΠ· массивов.

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

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

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ диск ΠΈΠ· массива, информация ΠΎ Π±Π»ΠΎΡ‡Π½Ρ‹Ρ… устройствах Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

[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  

БостояниС массивов послС удалСния дисков.

[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 с диска /dev/sdс Π½Π° диск /dev/sdd.

sfdisk -d /dev/sdс | sfdisk /dev/sdd

ПослС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ появится Π½Π° дискС /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  

ДобавляСм Ρ€Π°Π·Π΄Π΅Π»Ρ‹ диска Π² массивы.

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

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹.

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

ПослС этого доТидаСмся синхронизации массивов.

[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 Π½Π° Π½ΠΎΠ²Ρ‹Π΅ диски

Для CentOS:

grub2-install /dev/sdX

Для Debian/Ubuntu:

grub-install /dev/sdX

Π³Π΄Π΅ X β€” Π±ΡƒΠΊΠ²Π° Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ устройства. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ GRUB Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π° /dev/sdc ΠΈ /dev/sdd.

6. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы (ext4) ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°

На Π½ΠΎΠ²Ρ‹Ρ… дисках /dev/sdc ΠΈ /dev/sdd доступны 931.5 GB. Из-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² скопирована с дисков мСньшСго ΠΎΠ±ΡŠΡ‘ΠΌΠ°, Π½Π° Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… /dev/sdc2 ΠΈ /dev/sdd2 доступны 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]

НСобходимо:

  1. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π» 2 Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· дисков,
  2. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ массив md127,
  3. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ PV (physical volume),
  4. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ LV (logical-volume) vg0-root,
  5. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ parted Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠΌ Ρ€Π°Π·Π΄Π΅Π» /dev/sdc2 Π΄ΠΎ максимального значСния. ВыполняСм ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ parted /dev/sdc (1) ΠΈ просматриваСм Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ p (2).

Π—Π°ΠΌΠ΅Π½Π° дисков мСньшСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π² Linux

Как Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠΎΠ½Π΅Ρ† Ρ€Π°Π·Π΄Π΅Π»Π° 2 заканчиваСтся Π½Π° 240 GB. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ resizepart 2, Π³Π΄Π΅ 2 β€” Π½ΠΎΠΌΠ΅Ρ€ Ρ€Π°Π·Π΄Π΅Π»Π° (3). Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 1000 GB, ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΈ диска β€” 100%. Π‘Π½ΠΎΠ²Π° провСряСм, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π΄Π΅Π» ΠΈΠΌΠ΅Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ (4).

ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π²Ρ‹ΡˆΠ΅ дСйствия для диска /dev/sdd. ПослС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² /dev/sdc2 ΠΈ /dev/sdd2 стали Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ 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]

ПослС этого выполняСм Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ массива md127 Π΄ΠΎ максимума.

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ массив Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠ»ΡΡ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ стал 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]

ВыполняСм Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ physical volume. ΠŸΠ΅Ρ€Π΅Π΄ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС PV.

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

Как Π²ΠΈΠ΄Π½ΠΎ, PV /dev/md127 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ 222.4 GB пространства.

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ PV ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.

pvresize /dev/md127

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ PV.

[

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   ]

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ logical volume. ΠŸΠ΅Ρ€Π΅Π΄ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС LV (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.

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ LV ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ (2).

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ΅ дСйствиС (3).

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

Как Π²ΠΈΠ΄ΠΈΠΌ, послС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ LV ΠΎΠ±ΡŠΡ‘ΠΌ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ³ΠΎ дискового пространства стал 914.39 GB.

Π—Π°ΠΌΠ΅Π½Π° дисков мСньшСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π² Linux

ΠžΠ±ΡŠΡ‘ΠΌ LV увСличился (4), Π½ΠΎ файловая систСма ΠΏΠΎ ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 204 GB (5).

1. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы.

resize2fs /dev/mapper/vg0-root

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ послС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы.

[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

Π Π°Π·ΠΌΠ΅Ρ€ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы увСличится Π΄ΠΎ 900 GB. ПослС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… дСйствий ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ старыС диски.

Π‘Π»ΡƒΡ‡Π°ΠΉ 2: Π—Π°ΠΌΠ΅Π½Π° дисков мСньшСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° (Π±ΠΎΠ»Π΅Π΅ 2TB)

Π—Π°Π΄Π°Π½ΠΈΠ΅: Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ диски Π½Π° диски большСго ΠΎΠ±ΡŠΡ‘ΠΌΠ° (2 x 3TB) с сохранСниСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠΌΠ΅Π΅ΠΌ диски 2 x 240 GB SSD (RAID-1) с установлСнной систСмой ΠΈ диски 2 x 3 TB SATA, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ пСрСнСсти систСму. На Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… дисках ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² MBR. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π½ΠΎΠ²Ρ‹Π΅ диски ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ±ΡŠΡ‘ΠΌ большС 2 TB, Ρ‚ΠΎ Π½Π° Π½ΠΈΡ… потрСбуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ GPT, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ MBR Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с дисками Π±ΠΎΠ»Π΅Π΅ 2TB.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ дисков.

[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  

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π½Π° дискС /dev/sda.

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

На дискС /dev/sdb ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ аналогичная Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ². ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ дисковоС пространство Π² систСмС.

[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

Как Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠΎΡ€Π΅Π½ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 204 GB. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ RAID-массива.

1. Установка GPT Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° диска

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ дисков ΠΏΠΎ сСкторам.

[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

На Π½ΠΎΠ²ΠΎΠΌ дискС 3TB Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ 3 Ρ€Π°Π·Π΄Π΅Π»Π°:

  1. Π Π°Π·Π΄Π΅Π» bios_grub Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 2MiB для совмСстимости GPT с BIOS,
  2. Π Π°Π·Π΄Π΅Π» для RAID массива, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ смонтирован Π² /boot.
  3. Π Π°Π·Π΄Π΅Π» для RAID-массива, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ LV root ΠΈ LV swap.

УстанавливаСм ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ parted ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ yum install -y parted (для CentOS), apt install -y parted (для Debian/Ubuntu).

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ parted Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ диска.

ВыполняСм ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ parted /dev/sdc ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌ рСдактирования Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ диска.

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² GPT.

(parted) mktable gpt

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ 1 Ρ€Π°Π·Π΄Π΅Π» bios_grub Ρ€Π°Π·Π΄Π΅Π» ΠΈ устанавливаСм Ρ„Π»Π°Π³ для Π½Π΅Π³ΠΎ.

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

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ 2 Ρ€Π°Π·Π΄Π΅Π» ΠΈ устанавливаСм Ρ„Π»Π°Π³ для Π½Π΅Π³ΠΎ. Π Π°Π·Π΄Π΅Π» Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС Π±Π»ΠΎΠΊΠ° для RAID-массива ΠΈ монтирования Π΅Π³ΠΎ Π² /boot.

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

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ 3 Ρ€Π°Π·Π΄Π΅Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² качСствС Π±Π»ΠΎΠΊΠ° массива, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ LVM.

(parted) mkpart primary 1028MiB 100% 

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°Π³ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅Π³ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.

(parted) set 3 raid on

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

(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

НазначаСм диску Π½ΠΎΠ²Ρ‹ΠΉ случайный GUID.

sgdisk -G /dev/sdd

2. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ диска ΠΈΠ· массивов

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΌ состояниС массива

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

Π’ систСмС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ 2 массива: md126 (Ρ‚ΠΎΡ‡ΠΊΠ° монтирования /boot) β€” состоит ΠΈΠ· /dev/sda1 ΠΈ /dev/sdb1, md127 (LVM для swap ΠΈ корня Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы) β€” состоит ΠΈΠ· /dev/sda2 ΠΈ /dev/sdb2.

ΠŸΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ диска, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ массивС, ΠΊΠ°ΠΊ сбойныС.

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

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

УдаляСм Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ устройства /dev/sda ΠΈΠ· массивов.

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

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ состояниС массива послС удалСния диска.

[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. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π½ΠΎΠ²ΠΎΠ³ΠΎ диска Π² массив

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π½ΠΎΠ²ΠΎΠ³ΠΎ диска Π² массивы для синхронизации. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ дисков.

[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  

Π Π°Π·Π΄Π΅Π» /dev/sdc1 являСтся bios_grub Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ ΠΈ Π½Π΅ участвуСт с создании массивов. Π’ массивах Π±ΡƒΠ΄ΡƒΡ‚ задСйствованы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ /dev/sdc2 ΠΈ /dev/sdc3. ДобавляСм Π΄Π°Π½Π½Ρ‹Π΅ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ массивы.

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

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

ПослС Ρ‡Π΅Π³ΠΎ доТидаСмся синхронизации массива.

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

Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° дисков послС добавлСния Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π² массив.

[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. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ диска ΠΈΠ· массивов

ΠŸΠΎΠΌΠ΅Ρ‡Π°Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ диска, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ массивС, ΠΊΠ°ΠΊ сбойныС.

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

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

УдаляСм Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π±Π»ΠΎΡ‡Π½ΠΎΠ³ΠΎ устройства /dev/sda ΠΈΠ· массивов.

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

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

5. ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ GPT ΠΈ синхронизируСм массив

Для копирования Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ GPT Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ΠΎΠΉ sgdisk, которая Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΏΠ°ΠΊΠ΅Ρ‚ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π°Π·Π΄Π΅Π»Π°ΠΌΠΈ дисков ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ GPT β€” gdisk.

Установка gdisk для CentOS:

yum install -y gdisk

Установка gdisk для Debian/Ubuntu:

apt install -y gdisk

Π’ΠΠ˜ΠœΠΠΠ˜Π•: Для GPT ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ указываСтся диск Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ, Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ диском указываСтся диск с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ. Если ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ‚ΡŒ диски, Ρ‚ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ исправная Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ пСрСзаписана ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½Π°.

ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ GPT.

sgdisk -R /dev/sdd /dev/sdc

Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° дисков послС пСрСноса Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π½Π° диск /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  

Π”Π°Π»Π΅Π΅ добавляСм ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… RAID-массивах.

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

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

ДоТидаСмся синхронизации массива.

[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 Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½ΠΎΠ²Ρ‹ΠΉ диск, Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

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

Π”Π°Π»Π΅Π΅ устанавливаСм GRUB Π½Π° Π½ΠΎΠ²Ρ‹Π΅ диски.

Установка для CentOS:

grub2-install /dev/sdX

Установка для Debian/Ubuntu:

grub-install /dev/sdX

Π³Π΄Π΅ X β€” Π±ΡƒΠΊΠ²Π° диска, Π² нашСм случаС диски /dev/sdc ΠΈ /dev/sdd.

ОбновляСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ массивС.

Для 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

ОбновляСм ΠΎΠ±Ρ€Π°Π· initrd:
Для CentOS:

dracut -f -v --regenerate-all

Для Debian/Ubuntu:

update-initramfs -u -k all

ОбновляСм ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ GRUB.

Для CentOS:

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

Для Debian/Ubuntu:

update-grub

ПослС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… дСйствий старыС диски ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ.

6. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы (ext4) ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°

Π Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ° дисков Π΄ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы послС пСрСноса систСмы Π½Π° диски 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]

БСйчас Ρ€Π°Π·Π΄Π΅Π»Ρ‹ /dev/sdc3 ΠΈ /dev/sdd3 Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ 2.7 TB. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ создавали Π½ΠΎΠ²ΡƒΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΡƒ дисков с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ GPT, Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ 3 Ρ€Π°Π·Π΄Π΅Π»Π° Π±Ρ‹Π» сразу Π·Π°Π΄Π°Π½ Π½Π° максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ дисковоС пространство, Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π» Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π½Π΅ трСбуСтся.

НСобходимо:

  1. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ массив md126,
  2. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ PV (physical volume),
  3. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ LV (logical-volume) vg0-root,
  4. Π Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму.

1. Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ массив md126 Π΄ΠΎ максимума.

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

ПослС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ массива md126 Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ³ΠΎ пространства увСличился Π΄ΠΎ 2.7 TB.

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

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ physical volume.

ΠŸΠ΅Ρ€Π΅Π΄ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ провСряСм Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ³ΠΎ пространства PV /dev/md126.

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

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ PV ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.

pvresize /dev/md126

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ΅ дСйствиС.

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

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ logical volume vg0-root.

ПослС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ PV ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ΅ пространство VG.

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ΅ LV пространство.

[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 Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 206.41 GB.

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ LV Π΄ΠΎ максимума дискового пространства.

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ пространство LV послС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.

[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

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму (ext4).

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы.

[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 Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 204 GB послС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ LV.

Π Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму.

resize2fs /dev/mapper/vg0-root 

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы послС Π΅Ρ‘ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.

[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

Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ Π½Π° вСсь ΠΎΠ±ΡŠΡ‘ΠΌ Ρ‚ΠΎΠΌΠ°.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com