Halo kabeh. Ing Kawa saka wiwitan klompok mesthi anyar
Artikel iki bakal nimbang 2 kasus ngganti disk lan nransfer informasi menyang disk anyar kanthi kapasitas luwih gedhe kanthi ekspansi array lan sistem file. Kasus pisanan babagan panggantos disk kanthi partisi MBR / MBR utawa GPT / GPT sing padha, kasus liyane babagan panggantos disk kanthi partisi MBR kanthi disk kanthi kapasitas luwih saka 2 TB, sing sampeyan kudu nginstal. partisi GPT karo partisi biosboot. Ing kasus loro kasebut, disk sing ditransfer data wis diinstal ing server. Sistem file sing digunakake kanggo partisi root yaiku ext4.
Kasus 1: Ngganti disk cilik karo disk sing luwih gedhe (nganti 2TB)
Tugas: Ganti disk saiki nganggo disk sing luwih gedhe (nganti 2 TB) kanthi transfer informasi. Ing kasus iki, kita duwe 2 x 240 GB SSD (RAID-1) disk karo sistem diinstal lan 2 x 1 TB SATA disk sing sistem kudu ditransfer.
Ayo katon ing tata letak disk saiki.
[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
Ayo priksa ruang sistem file sing saiki digunakake.
[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
Ukuran sistem file sadurunge ngganti disk yaiku 204 GB, 2 susunan piranti lunak md126 digunakake, sing dipasang ing /boot
и md127
, kang digunakake minangka volume fisik kanggo grup VG vg0.
1. Mbusak partisi disk saka susunan
Priksa status 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>
Sistem nggunakake 2 array: md126
(titik gunung /boot
) - kasusun saka bagean /dev/sda1
и /dev/sdb1
, md127
(LVM kanggo pertukaran lan ROOT saka sistem file) - kasusun saka /dev/sda2
и /dev/sdb2
.
Kita menehi tandha partisi disk pisanan sing digunakake ing saben array minangka ala.
mdadm /dev/md126 --fail /dev/sda1
mdadm /dev/md127 --fail /dev/sda2
Kita mbusak partisi piranti blok / dev / sda saka array.
mdadm /dev/md126 --remove /dev/sda1
mdadm /dev/md127 --remove /dev/sda2
Sawise kita mbusak disk saka array, informasi piranti pemblokiran bakal katon kaya iki.
[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
Negara susunan sawise njabut 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. Nyalin tabel partisi menyang disk anyar
Sampeyan bisa mriksa tabel partisi sing digunakake ing disk kanthi printah ing ngisor iki.
fdisk -l /dev/sdb | grep 'Disk label type'
Output kanggo MBR bakal:
Disk label type: dos
kanggo GPT:
Disk label type: gpt
Nyalin tabel partisi kanggo MBR:
sfdisk -d /dev/sdb | sfdisk /dev/sdc
Ing tim iki sing pisanan disk dituduhake с sing markup disalin, kapindho - ngendi salinan.
PENTING: Kanggo GPT sing pisanan disk dituduhake ing kang copy markup, kapindho disk nuduhake disk saka kang salinan markup. Yen sampeyan nyampur disk, partisi sing wiwitan apik bakal ditumpuk lan dirusak.
Nyalin tabel tata letak kanggo GPT:
sgdisk -R /dev/sdс /dev/sdb
Sabanjure, nemtokake UUID acak menyang disk (kanggo GPT).
sgdisk -G /dev/sdc
Sawise printah dieksekusi, partisi kudu katon ing disk /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
Yen, sawise tumindak ditindakake, partisi ing sistem ing disk /dev/sdc
undecided, banjur kita nglakokaké printah kanggo reread tabel pemisahan.
sfdisk -R /dev/sdc
Yen disk saiki nggunakake tabel MBR lan informasi kasebut kudu ditransfer menyang disk sing luwih gedhe tinimbang 2 TB, banjur ing disk anyar sampeyan kudu nggawe partisi GPT kanthi manual nggunakake partisi biosboot. Kasus iki bakal dibahas ing Part 2 artikel iki.
3. Nambahake partisi disk anyar menyang array
Ayo nambah partisi disk menyang susunan sing cocog.
mdadm /dev/md126 --add /dev/sdc1
mdadm /dev/md127 --add /dev/sdc2
Kita mriksa manawa bagean kasebut wis ditambahake.
[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
Sawise iki, kita ngenteni array kanggo nyinkronake.
[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>
Sampeyan bisa terus-terusan ngawasi proses sinkronisasi nggunakake sarana kasebut watch
.
watch -n 2 cat /proc/mdstat
Parameter -n
nemtokake ing interval ing sawetara detik printah kudu kaleksanan kanggo mriksa kemajuan.
Baleni langkah 1 - 3 kanggo disk panggantos sabanjure.
Kita menehi tandha partisi disk kapindho sing digunakake ing saben array minangka ala.
mdadm /dev/md126 --fail /dev/sdb1
mdadm /dev/md127 --fail /dev/sdb2
Mbusak partisi piranti pamblokiran /dev/sdb
saka susunan.
mdadm /dev/md126 --remove /dev/sdb1
mdadm /dev/md127 --remove /dev/sdb2
Sawise kita mbusak disk saka array, informasi piranti pemblokiran bakal katon kaya iki.
[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
Negara susunan sawise njabut 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>
Nyalin tabel partisi MBR saka disk /dev/sdс
menyang disk /dev/sdd
.
sfdisk -d /dev/sdс | sfdisk /dev/sdd
Sawise printah dieksekusi, partisi kudu katon ing disk /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
Nambahake partisi disk menyang array.
mdadm /dev/md126 --add /dev/sdd1
mdadm /dev/md127 --add /dev/sdd2
Kita mriksa manawa bagean kasebut wis ditambahake.
[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]
Sawise iki, kita ngenteni array kanggo nyinkronake.
[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. Nginstal GRUB ing drive anyar
Kanggo CentOS:
grub2-install /dev/sdX
Kanggo Debian/Ubuntu:
grub-install /dev/sdX
ngendi X
- layang saka piranti pamblokiran. Ing kasus iki, sampeyan kudu nginstal GRUB ing /dev/sdc
и /dev/sdd
.
6. Ekstensi sistem file (ext4) saka partisi root
Ing disk anyar /dev/sdc
и /dev/sdd
931.5 GB kasedhiya. Amarga kasunyatan manawa tabel partisi disalin saka disk sing luwih cilik, partisi kasebut /dev/sdc2
и /dev/sdd2
222.5 GB kasedhiya.
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]
Sampeyan perlu:
- Ekstensi partisi 2 ing saben disk,
- Expand array md127,
- Expand PV (volume fisik),
- Expand LV (logical-volume) vg0-root,
- Nggedhekake sistem file.
Nggunakake sarana pisah ayo nggedhekake bagean /dev/sdc2
menyang nilai maksimum. Nglakokaké dhawuh parted /dev/sdc
(1) lan ndeleng tabel partisi saiki kanthi printah p
(2).
Nalika sampeyan bisa ndeleng, mburi pemisahan 2 ends ing 240 GB. Ayo nggedhekake partisi kanthi printah resizepart
2
, ngendi 2 iku nomer bagean (3). Kita nuduhake nilai ing format digital, contone 1000 GB, utawa nggunakake indikasi panggabungan disk - 100%. Kita mriksa maneh yen partisi nduweni ukuran anyar (4).
Baleni langkah ing ndhuwur kanggo disk /dev/sdd
. Sawise nggedhekake partisi /dev/sdc2
и /dev/sdd2
dadi padha karo 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]
Sawise iki, kita nggedhekake array Md127 nganti maksimal.
mdadm --grow /dev/md127 --size=max
Kita mriksa manawa array wis ditambahi. Saiki ukurane wis dadi 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]
Ngluwihi ekstensi volume fisik. Sadurunge nggedhekake, ayo mriksa kahanan PV saiki.
[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 ]
Minangka bisa katon, PV /dev/md127
nggunakake 222.4 GB saka papan.
We nggedhekake PV karo printah ing ngisor iki.
pvresize /dev/md127
Priksa asil expansion 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 ]
Ngembangake volume logis. Sadurunge nggedhekake, ayo mriksa kahanan saiki 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
nggunakake 206.41 GB.
We nggedhekake LV karo printah ing ngisor iki (2).
lvextend -l +100%FREE /dev/mapper/vg0-root
Kita mriksa tumindak rampung (3).
[root@localhost ~]# lvscan
ACTIVE '/dev/vg0/swap' [<16,00 GiB] inherit
ACTIVE '/dev/vg0/root' [<914,39 GiB] inherit
Kaya sing sampeyan ngerteni, sawise ngembangake LV, jumlah ruang disk sing dikuwasani dadi 914.39 GB.
Volume LV wis tambah (4), nanging sistem file isih manggoni 204 GB (5).
1. Ayo nggedhekake sistem file.
resize2fs /dev/mapper/vg0-root
Sawise printah dieksekusi, kita mriksa ukuran sistem file.
[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
Ukuran sistem file root bakal tambah dadi 900 GB. Sawise ngrampungake langkah-langkah kasebut, sampeyan bisa mbusak disk lawas.
Kasus 2: Ngganti disk cilik karo disk sing luwih gedhe (luwih saka 2TB)
Tugas: Ganti disk saiki nganggo disk sing luwih gedhe (2 x 3TB) nalika njaga informasi kasebut. Ing kasus iki, kita duwe 2 x 240 GB SSD (RAID-1) disk karo sistem diinstal lan 2 x 3 TB SATA disk kanggo kang sistem kudu ditransfer. Disk saiki nggunakake tabel partisi MBR. Amarga disk anyar duwe kapasitas luwih saka 2 TB, kudu nggunakake tabel GPT, amarga MBR ora bisa digunakake karo disk sing luwih gedhe tinimbang 2 TB.
Ayo katon ing tata letak disk saiki.
[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
Ayo dipriksa tabel partisi sing digunakake ing disk /dev/sda
.
[root@localhost ~]# fdisk -l /dev/sda | grep 'Disk label type'
Disk label type: dos
Ing disk /dev/sdb
Tabel partisi sing padha digunakake. Ayo priksa ruang disk sing digunakake ing sistem.
[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
Nalika sampeyan bisa ndeleng, ROOT saka sistem file njupuk munggah 204 GB. Ayo dipriksa kahanan saiki saka array RAID piranti lunak.
1. Nginstal tabel partisi GPT lan partisi disk
Ayo dipriksa tata letak disk miturut sektor.
[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
Ing disk 3TB anyar, kita kudu nggawe 3 partisi:
- Bagean
bios_grub
Ukuran 2MiB kanggo kompatibilitas GPT BIOS, - Pemisahan kanggo array RAID sing bakal dipasang ing
/boot
. - Pemisahan kanggo array RAID sing bakal ana LV ROOT и tukar LV.
Nginstal sarana pisah tim yum install -y parted
(kanggo CentOS), apt install -y parted
(kanggo Debian/Ubuntu).
Nggunakake pisah Ayo mbukak printah ing ngisor iki kanggo partisi disk.
Nglakokaké dhawuh parted /dev/sdc
lan pindhah menyang mode editing tata letak disk.
Nggawe tabel partisi GPT.
(parted) mktable gpt
Nggawe 1 bagean bios_grub
bagean lan nyetel flag kanggo.
(parted) mkpart primary 1MiB 3MiB
(parted) set 1 bios_grub on
Nggawe partisi 2 lan nyetel gendera kanggo. Partisi kasebut bakal digunakake minangka blok kanggo array RAID lan dipasang ing /boot
.
(parted) mkpart primary ext2 3MiB 1028MiB
(parted) set 2 boot on
Kita nggawe bagean 3rd, sing uga bakal digunakake minangka blok array ing ngendi LVM bakal ana.
(parted) mkpart primary 1028MiB 100%
Ing kasus iki, ora perlu nyetel gendera, nanging yen perlu, bisa disetel nganggo printah ing ngisor iki.
(parted) set 3 raid on
Kita mriksa tabel sing digawe.
(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
We nemtokake GUID acak anyar kanggo disk.
sgdisk -G /dev/sdd
2. Mbusak partisi disk pisanan saka susunan
Priksa status 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>
Sistem nggunakake 2 susunan: md126 (mount point / boot) - kasusun saka /dev/sda1
и /dev/sdb1
, md127
(LVM kanggo swap
lan ROOT saka sistem file) - kasusun saka /dev/sda2
и /dev/sdb2
.
Kita menehi tandha partisi disk pisanan sing digunakake ing saben array minangka ala.
mdadm /dev/md126 --fail /dev/sda1
mdadm /dev/md127 --fail /dev/sda2
Mbusak partisi piranti pamblokiran /dev/sda
saka susunan.
mdadm /dev/md126 --remove /dev/sda1
mdadm /dev/md127 --remove /dev/sda2
Priksa status array sawise njabut 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: 2/2 pages [8KB], 65536KB chunk
unused devices: <none>
3. Nambahake partisi disk anyar menyang array
Langkah sabanjure yaiku nambah partisi disk anyar menyang susunan kanggo sinkronisasi. Ayo katon ing kahanan saiki saka tata letak disk.
[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
Bagean /dev/sdc1
Iku bios_grub
bagean lan ora melu nggawe susunan. Array mung bakal digunakake /dev/sdc2
и /dev/sdc3
. Kita nambah bagean kasebut menyang susunan sing cocog.
mdadm /dev/md126 --add /dev/sdc2
mdadm /dev/md127 --add /dev/sdc3
Banjur kita ngenteni array kanggo nyinkronake.
[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>
Tata letak disk sawise nambahake partisi menyang array.
[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. Mbusak partisi disk kapindho saka susunan
Kita menehi tandha partisi disk kapindho sing digunakake ing saben array minangka ala.
mdadm /dev/md126 --fail /dev/sdb1
mdadm /dev/md127 --fail /dev/sdb2
Mbusak partisi piranti pamblokiran /dev/sda
saka susunan.
mdadm /dev/md126 --remove /dev/sdb1
mdadm /dev/md127 --remove /dev/sdb2
5. Nyalin tabel tata letak GPT lan nyinkronake array
Kanggo nyalin tabel markup GPT kita bakal nggunakake sarana sgdisk
, sing kalebu ing paket kanggo nggarap partisi disk lan tabel GPT - gdisk
.
Instalasi gdisk
kanggo CentOS:
yum install -y gdisk
Instalasi gdisk
kanggo Debian/Ubuntu:
apt install -y gdisk
PENTING: Kanggo GPT sing pisanan disk dituduhake ing kang copy markup, kapindho disk nuduhake disk saka kang nyalin markup. Yen sampeyan nyampur disk, partisi sing wiwitan apik bakal ditumpuk lan dirusak.
Salin tabel markup GPT.
sgdisk -R /dev/sdd /dev/sdc
Pemisahan disk sawise nransfer tabel menyang disk /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
Sabanjure, kita nambahake saben partisi sing melu array RAID piranti lunak.
mdadm /dev/md126 --add /dev/sdd2
mdadm /dev/md127 --add /dev/sdd3
Kita ngenteni array kanggo nyinkronake.
[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>
Sawise nyalin partisi GPT menyang disk anyar kapindho, partisi kasebut bakal katon kaya iki.
[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]
Sabanjure, instal GRUB ing disk anyar.
Instalasi kanggo CentOS:
grub2-install /dev/sdX
Instalasi kanggo Debian/Ubuntu:
grub-install /dev/sdX
ngendi X
- huruf drive, ing kasus kita drive /dev/sdc
и /dev/sdd
.
Kita nganyari informasi babagan array.
Kanggo CentOS:
mdadm --detail --scan --verbose > /etc/mdadm.conf
Kanggo Debian/Ubuntu:
echo "DEVICE partitions" > /etc/mdadm/mdadm.conf
mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf
Nganyari gambar initrd
:
Kanggo CentOS:
dracut -f -v --regenerate-all
Kanggo Debian/Ubuntu:
update-initramfs -u -k all
Kita nganyari konfigurasi GRUB.
Kanggo CentOS:
grub2-mkconfig -o /boot/grub2/grub.cfg
Kanggo Debian/Ubuntu:
update-grub
Sawise ngrampungake langkah-langkah kasebut, disk lawas bisa dicopot.
6. Ekstensi sistem file (ext4) saka partisi root
Pemisahan disk sadurunge ekspansi sistem file sawise migrasi sistem menyang disk 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]
Saiki bagean /dev/sdc3
и /dev/sdd3
manggoni 2.7 TB. Amarga kita nggawe tata letak disk anyar kanthi tabel GPT, ukuran partisi 3 langsung disetel menyang ruang disk maksimal; ing kasus iki, ora perlu nggedhekake partisi.
Sampeyan perlu:
- Expand array md126,
- Expand PV (volume fisik),
- Expand LV (logical-volume) vg0-root,
- Nggedhekake sistem file.
1. Expand array md126
nganti maksimal.
mdadm --grow /dev/md126 --size=max
Sawise expansion array md126
ukuran papan sing dikuwasani wis tambah dadi 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]
Ngembangake volume fisik.
Sadurunge nggedhekake, priksa nilai saiki saka papan sing dikuwasani PV /dev/md126
.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md126 vg0 lvm2 a-- 222,40g 0
We nggedhekake PV karo printah ing ngisor iki.
pvresize /dev/md126
Kita mriksa tumindak sing wis rampung.
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/md126 vg0 lvm2 a-- <2,73t 2,51t
Ngembangake volume logis vg0-root.
Sawise nggedhekake PV, ayo mriksa ruang VG sing dikuwasani.
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg0 1 2 0 wz--n- <2,73t 2,51t
Ayo dipriksa papan sing dikuwasani 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
Volume vg0-root manggoni 206.41 GB.
We nggedhekake LV kanggo papan disk maksimum.
lvextend -l +100%FREE /dev/mapper/vg0-root
Priksa spasi LV sawise expansion.
[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
Ngembangake sistem file (ext4).
Ayo priksa ukuran sistem file saiki.
[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
Volume /dev/mapper/vg0-root manggoni 204 GB sawise expansion LV.
Ngembangake sistem file.
resize2fs /dev/mapper/vg0-root
Priksa ukuran sistem file sawise nggedhekake.
[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
Ukuran sistem file wis tambah kanggo nutupi kabeh volume.
Source: www.habr.com