Debian ОС GNU/Linux: Как клонировать корневую систему дистрибутива на внешний накопитель жесткого диска большого размера


Вернуться к Оглавлению
   
 

1. Введение

 
 

Перед переходом с одной версии на другую дистрибутива Debian ОС GNU/Linux любой неискушенный в вопросах администрирования пользователь раньше задумывался над вопросом: Как наиболее безопасно снять резервную копию используемой системы и на чем её хранить? Сегодня такие вопросы снимаются приобретением внешнего накопителя жесткого диска и клонированием на него корневой файловой системы, потому что современные внешние накопители имеют размер исчисляемый несколькими сотнями, а то и тысячами гигабайт. Такого класса внешние накопители сегодня разрешают большую дилемму, стоящей ранее перед пользователем, как сделать резервную копию не только данных, но и самой системы в целом. Потому что как показывает практика, в жизни любого пользователя существует переходный период, когда не редко приходится обращаться к предыдущей версии дистрибутива Debian ОС GNU/Linux особенно, когда это связано с профессиональной деятельностью.

   
 

2. Создание резервной копии системы

 
 

2.1. Первый шаг это разметка внешнего накопителя, так как все они практически продаются размеченными под файловую систему NTFS и как правило имеют единый логический диск.

2.2. Размонтируйте внешний накопитель с использованием команды UMOUNT(8).

2.3 Под суперпользователем в дисковой утилите FDISK(8) произведите разметку на логические диски как показано ниже:

Device BootStartEndBlocksIdSystem
/dev/sdb1 *11216976748883Linux
/dev/sdb2121760801478608480fExtended LBA
/dev/sdb5 1217 7295 48821535 83 Linux
/dev/sdb6 7296 60801429778912 83 Linux

2.4 Теперь остается лишь правильно все смонтировать:

2.4.1. Первым монтируем /dev/sdb1 в /mnt.

2.4.2. Затем внутри /mnt создадим две точки монтирования usr и home и смонтируем в них /dev/sdb5 и /dev/sdb6, соответственно.

# mkdir -p /mnt/usr && mount /dev/sdb5 /mnt/usr
# mkdir /mnt/home && mount /dev/sdb6 /mnt/home

2.5. После, переходим к созданию резервной копии:

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

3. Установка загрузчика Grub и настройка загрузки системы

 
 

3.1. Данный рецепт установки на внешний накопитель с резервной копией корневой файловой системы рассчитан, что система имеет один жесткий диск и откликается на /dev/sda. Соответственно, любой внешний накопитель после него будет зваться /dev/sdb.

3.2.Для установки загрузчика Grub выполните:

# grub-install --root-directory=/mnt /dev/sdb

3.3. Затем, сделайте корневой директорию /mnt, выполнив следующую последовательность команд:

# mount -o bind /dev /mnt/dev
 
# mount -t proc none /mnt/proc
# mount -o bind /sys /mnt/sys
# mount -o bind /tmp /mnt/tmp
# chroot /mnt /bin/bash
# mount -t devpts devpts /dev/pts

3.4. После обновляем конфигурацию Grub(8)

# update-grub

3.5. Следом, изменяем имя машины (hostname). В файле /etc/hostname добавить префикс ‘-on-usbdisc’ или иной по вашему выбору.

3.6. Используя BLKID(8) нужно получить UUID для определение точек монтирования следующим локальным дискам:

  • /dev/sdb1 в /
  • /dev/sdb5 в /usr
  • /dev/sdb6 в /home

Соответственно, первым делом узнаем UUID:

# blkid /dev/sdb1
/dev/sdb1: UUID="000000000000-0000-0000-000-eed3d53def9c" TYPE="ext3"
# blkid /dev/sdb5
/dev/sdb5: UUID="000000000000-0000-0000-000-09d983a2f6b0" TYPE="ext3"
# blkid /dev/sdb6
/dev/sdb6: UUID="000000000000-0000-0000-000-849943b79bc3" TYPE="ext3"

Затем, редактируем файл /etc/fstab, как показано ниже:

# /etc/fstab: static file system information.
#
# Use 'vol_id --uuid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# ‹file system›‹mount point›‹type›‹options›‹dump›‹pass›
proc/procprocdefaults00
# / was on /dev/sdb1 during installation
UUID=000000000000-0000-0000-000-eed3d53def9c/ext3errors=remount-ro01
# /home was on /dev/sdb9 during installation
UUID=000000000000-0000-0000-000-849943b79bc3 /home ext3 defaults 0 2
# /usr was on /dev/sdb5 during installation
UUID=000000000000-0000-0000-000-09d983a2f6b0 /usr ext3 defaults 0 2

3.7. Выйти из корневой директории /mnt:

# umount/dev/pts
# exit
# umount /mnt/dev
# umount /mnt/proc
# umount /mnt/sys
# umount /mnt/tmp

3.8. После выше указанных манипуляций остается лишь попробывать загрузиться с данного внешнего накопителя:

# reboot
   
 

4. Библиография

 
 

4.1. Full System Backup with rsync
4.2. Howto mount USB drive in Linux
4.3. Grub 2 - USB External HDD
4.4 How To Use UUID And Blkid To Manage Devices

   
Вернуться к Оглавлению

 Copyright © 2010-2014 rjaan as Andrey Rjavskov(Rzhavskov) <rjaan@yandex.ru> <arjavskov@gmail.com>
 
Сайт создан в системе uCoz