LPS:Linux/Diskové nástroje
Postupy na nejčastější operace s disky v linuxu.
Technologie
LVM
Online migrace diskoveho oddílu
Máme oddíl /dev/mapper/fc-old a chceme jej dat na nový oddíl /dev/mapper/fc-new, který je větší. Napřed co máme k dispozici:
# pvscan PV /dev/mapper/fc-old VG vgvicepx lvm2 [800.05 GiB / 0 free]
Inicializace nového diskového oddílu PV (Physical Volume) a přiřazení do VG (Volume Group):
# pvcreate /dev/mapper/fc-new Writing physical volume data to disk "/dev/mapper/fc-new" Physical volume "/dev/mapper/fc-new" successfully created # vgextend vgvicepx /dev/mapper/fc-nex Volume group "vgvicepx" successfully extended # pvscan PV /dev/mapper/fc-old VG vgvicepx lvm2 [800.05 GiB / 0 free] PV /dev/mapper/fc-new VG vgvicepx lvm2 [1.00 TiB / 1.00 TiB free]
Nyní pustíme online přesun, nejlépe ve screen:
# pvmove /dev/mapper/fc-old /dev/mapper/fc-new ...progres s 10sec aktualizaci...
Po dokončení zkontrolujeme, odebereme disk ze skupiny (VG) a odstraníme informaci o LVM oddílu:
# pvscan PV /dev/mapper/fc-old VG vgvicepx lvm2 [800.05 GiB / 800.05 GiB free] PV /dev/mapper/fc-new VG vgvicepx lvm2 [1.00 TiB / 223.27 GiB free] # vgreduce vgvicepx /dev/mapper/fc-old Removed "/dev/mapper/fc-old" from volume group "vgvicepx" # pvremove /dev/mapper/fc-old Labels on physical volume "/dev/mapper/fc-old" successfully wiped
Zvětšení logického volumu (LV) o volné místo, napřed si vypíšeme info, zvětšíme a zkontrolujeme:
# lvscan ACTIVE '/dev/vgvicepx/part1' [800.05 TiB] inherit # lvextend -l +100%FREE /dev/vgvicepx/part1 Extending logical volume part1 to 1.00 TiB Logical volume part1 successfully resized # lvscan ACTIVE '/dev/vgvicepx/part1' [1.00 TiB] inherit
# pvsan PV /dev/mapper/fc-new VG vgvicepx lvm2 [1.00 TiB / 0 free]
Dalším krokem je už jen zvětšení souborového systému, např. xfs_grow.
SW RAID (mdadm)
multipath
Návody
Výměna disku
Scénář: v serveru vypadl disk v RAIDu, kolegové jej vyměnili, ale "nějak" to nefunguje, disk nelze připojit do raidu.
V první řadě je třeba z mdadm odebrat původní disk /dev/sda, ale to už nám odebral udev, bohužel mdadm i při odebírání trvá na existujícím zařízení. Proto je třeba zařízení ručně vytvořit, původní disk odebrat a pak zařízení zrušit
# cat /proc/mdstat Personalities : [linear] [raid0] [raid1] [raid6] [raid5] [raid4] md1 : active raid1 sdb2[1] sda2[2](F) 20482752 blocks [2/1] [_U] # mdadm --manage /dev/md1 --remove /dev/sda2 mdadm: cannot find /dev/sda2: No such file or directory # mkdir /dev/.static ; cd /dev/.static # /dev/MAKEDEV sda # mdadm --manage /dev/md1 --remove /dev/.static/sda2 mdadm: hot removed /dev/sda2 # cd / ; rm -rf /dev/.static # cat /proc/mdstat Personalities : [linear] [raid0] [raid1] [raid6] [raid5] [raid4] md1 : active raid1 sdb2[1] 20482752 blocks [2/1] [_U]
Nyní rozdělíme nový disk /dev/sdc podle funkčního originálu /dev/sdb:
# sfdisk -d /dev/sdb | sfdisk /dev/sdc
Přiřazení disku do SW RAIDu ale zkolabuje na jeho použití jiným systémem:
# mdadm /dev/md0 --add /dev/sdc1 mdadm: Cannot open /dev/sdc1: Device or resource busy
Problém je, že na všechny neobsazené disky si automaticky sedne multipath, takže jej odebereme a přidáme do RAIDu:
# multipath -ll -d SATA_WDC_WD5003ABYX-_WD-WMAYP0907635dm-0 ATA ,WDC WD5003ABYX [size=466G][features=0][hwhandler=0] \_ round-robin 0 [prio=1][active] \_ 2:0:2:0 sdc 8:32 [active][ready] # multipath -f SATA_WDC_WD5003ABYX-_WD-WMAYP0907635 libdevmapper: libdm-common.c(374): Removed /dev/mapper/SATA_WDC_WD5003ABYX-_WD-WMAYP0907635 # mdadm /dev/md0 --add /dev/sdc1 mdadm: added /dev/sdc1
Nyní stačí zavést grub do MBR nového disku, funkční originál si zatím ponecháme:
# grub-install /dev/sdc