Skip to content

Latest commit

 

History

History
107 lines (54 loc) · 4.14 KB

README.md

File metadata and controls

107 lines (54 loc) · 4.14 KB

Перенос сервера Linux с физического тома на LVM том без потери данных

  1. Создаём минимум 2 раздела: корень и бут на новом диске:

     fdisk /dev/sdb
    

1.1. создаём первый том (загрузочный) на 500МБ

image

1.2. назначаем его загрузочным:

image

1.3. создаём корневой раздел:

image

1.4. меняем корневой том на LVM:

image

  1. Инициализируем LVM том:

     Pvcreate /dev/sdb2
    

проверить можно командой pvdisplay

2.1. создаём виртуальную группу томов:

  Vgcreate centest /dev/sdX2

где "centest" это любое желаеммое имя группы проверить можно командой vgdisplay

2.2. (Опционально) создаём том подкачки на LVM на 10ГБ:

lvcreate -L10G -n swap centest

2.3. Создаём корневой том на всё оствашееся пространство:

lvcreate –l 100%FREE –n root contest

ОЧЕНЬ важно корневой раздел назвать root, иначе система не сможет загрузиться

2.4. создаём файловую систему на всех томах:

mkfs.ext4 /dev/sdb1 && mkfs.ext4 /dev/centest/swap && mkfs.ext4 /dev/centest/root
  1. Монтируем наш корень во временную папку mnt и создаём там директорию boot:

     mount /dev/centest/root /mnt && mkdir /mnt/boot
    

3.1. монтируем наш загрузочный том:

  mount /dev/sdb1 /mnt/boot

3.2. копируем всё содержимое нашего сервера на новый диск:

  rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"}  /  /mnt/

3.3. теперь мы связываем директории нынешнего корня и монтированного:

  mount --bind /dev  /mnt/dev && mount --bind /proc  /mnt/proc && mount --bind /sys  /mnt/sys

3.4. Заходим в наш корень через chroot:

  chroot /mnt

3.5. сейчас нужно узнать UUID загрузочного тома:

  blkid /dev/sdb1

3.6. открываем fstab:

  nano /etc/fstab

3.7. вводим аналогично изображению:

image

UUID указываем свой Если раздел swap не создавали, то лучше его убрать из файла, иначе возможно будет долгая загрузка OC

  1. Сейчас нам нужно узнать, поддерживает ли наш initramfs тома LVM:

     lsinitrd  | grep lvm |wc -l 
    

4.1. Если выдало 0, значит пересобираем initranfs:

    dracut -a lvm --fstab --force 

4.2. теперь нужно обновить конфиг загрузчика:

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

4.3. (Опционально) Есть вероятность, что загрузчик не увидит систему, потому что при обновлении конфига система располагалась на Sdb, а не sda.

В этомм случае нужно открыть конфиг:

nano /boot/grub2/grub.cfg

И найти строку:

set root = “hd1,msdos1"

Её нужно изменить на:

set root = “hd0,msdos1"