Перенос Linux на меньший диск
В ролике рассказываю, что есть куча удобных способов, и описанный в этом документе способ годится если изначально линукс был поставлен с глупым разбиением дисков.
-
**1)**Сразу отключаю selinux: редактирую /etc/sysconfig/selinux ставя там disabled и перезагружаюсь.
-
**2)**Смотрим существующие диски и разделы: fdisk - l
Смотрим если есть PV (LVM): pvs
Смотрим если есть LV (LVM): lvs
Смотрим существующие подключенные файловые системы: cat /** etc / fstab**
Смотрим занятое место на разделах: df -h
- 3)Подключаю новый диск и создаю на нем разделы fdisk / dev / sdb (дальше уже командами fdisk_)_
- --создаю новый раздел для boot (как на старом диске);
- --создаю новый раздел под lvm (как на старом диске);
- --могу создать раздел со swap, как на старом диске, но я люблю swap файлами.
Раздел под boot сразу могу форматнуть, там нет никаких LVM mkfs**. ext 4 / dev / sdb 1**
- **4)**Создаем LVM и файловую систему (чтоб новый диск по логике разбиения походил на старый). В принципе можно никаких LVM в новой системе не создавать, и просто кинуть все что нужно на второй раздел, но лучше сделать по-человечески с lvm.
pvcreate /dev/sdb2
pvs
vgcreate centos /dev/sdb2
vgs
lvcreate -l 100%FREE -n root centos
lvs
mkfs.xfs /dev/mapper/centos-root
-
**5)Создаю директории для удобства переноса данных: mkdir / old **** / **new
-
**6)**Командой mount смотрю что куда было подключено и монтирую по очереди, затем копирую данные, например:
mount /dev/sda1 /old
mount /dev/sdb1 /new
rsync -av /old/ /new/
umount /** old**
umount /** new**
Повторяю для следующего раздела (или тома) и т.д.
-
7)Монтирую новый корень mount / dev / mapper / centos - root **** / new и правлю новый / new / etc / fstab
-
**8)**Монтирую новый boot и еще ряд директорий:
mount /dev/sdb1 /new/boot
mount --bind /dev /new/dev
mount --bind /sys /new/sys
mount --bind /proc /new/proc
-
9)Делаю chroot /new
-
10)Правлю / etc / default / grubсогласно новым настройкам разбиения дисков
-
**11)Создаю новый конфиг граба grub - makeconfig – o **** / boot / grub 2/ grub. **cfg
-
12)Устанавливаю загрузчик grub - install / dev / sdb
-
**13)**Готово. Можно выключать машину, отключать старый диск и пробовать грузиться с нового.
P.S. В видео мы немного дебажили:
- **1)**Редактировали параметры загрузки ОС: искали строку с ядром и меняли там ro на rw init=/sysroot/bin/bash
- 2)После старта c hroot /sysroot/
- **3)**Смотрелилоги /var/log/audit/audit.log
- 4) Отключилипристартеселинукс : kernel /vmlinuz-2.6.32-279.el6.x86_64 root=/dev/md3 selinux=1