Как клонировать систему на Linux: различия между версиями
Nick (обсуждение | вклад) (Новая страница: «Частенько мы сталкиваемся с задачей создания копии системы. Собрали новый станок и хоти…») |
Nick (обсуждение | вклад) |
||
(не показаны 4 промежуточные версии 2 участников) | |||
Строка 2: | Строка 2: | ||
=Клонирование при помощи DD= | =Клонирование при помощи DD= | ||
+ | ===DD=== | ||
Самый простой способ и топорный способ, но будет работать из коробки, возможно не самый быстрый в плане выполнения но самый быстрый в плане манипуляций. | Самый простой способ и топорный способ, но будет работать из коробки, возможно не самый быстрый в плане выполнения но самый быстрый в плане манипуляций. | ||
Строка 10: | Строка 11: | ||
dd - копирует содержимое из одного файла (if - input file) в другое (of - output file). Винчестеры в Linux это файлы в /dev/sd** (sda sda1 sda2... sdb...) | dd - копирует содержимое из одного файла (if - input file) в другое (of - output file). Винчестеры в Linux это файлы в /dev/sd** (sda sda1 sda2... sdb...) | ||
− | sudo dd if=/dev/sda of=/dev/sdb | + | sudo dd if=/dev/sda of=/dev/sdb |
+ | |||
+ | '''ВНИМАНИЕ!!!!''' | ||
− | |||
if=/dev/sda это откуда писать | if=/dev/sda это откуда писать | ||
− | + | ||
− | + | of=/dev/sdb это куда писать | |
+ | |||
+ | Проверить можно командой '''<code>mount</code>''' в терминале. В выводе команды должна содержаться строка вида: | ||
+ | /dev/sda1 on / type ext4 | ||
+ | |||
+ | '''Если перепутать получим два пустых винча :). Никаких вопросов задаваться не будет!''' | ||
+ | |||
Эта команда скопирует все содержимоевместе с разделами. | Эта команда скопирует все содержимоевместе с разделами. | ||
− | Так же можно клонировать отдельные разделы sudo dd if=/dev/sda1 of=/dev/sdb1 | + | |
+ | Так же можно клонировать отдельные разделы | ||
+ | sudo dd if=/dev/sda1 of=/dev/sdb1 | ||
Команда может работать достаточно долго (60Гб около часа) и ничего при этом не пишет. | Команда может работать достаточно долго (60Гб около часа) и ничего при этом не пишет. | ||
То, что что-то происходит можно увидеть в программе iotop - она показывает кто что куда пишет. | То, что что-то происходит можно увидеть в программе iotop - она показывает кто что куда пишет. | ||
+ | ===fstab=== | ||
Также может понадобиться в файле /etc/fstab поменять названия винчестеров - в этом файле написано что куда монтировать. | Также может понадобиться в файле /etc/fstab поменять названия винчестеров - в этом файле написано что куда монтировать. | ||
− | Обычно пишется адрес диска /dev/DISK-BY-UUID/[куча буковъ (id раздела)] можно там переписать /dev/sdaX - X - номер раздела. Но тогда, если в компьютере планируется несколько винчестеров надо будет втыкать винчестер в первый слот. Или можно вписать uuid | + | Обычно пишется адрес диска /dev/DISK-BY-UUID/[куча буковъ (id раздела)] можно там переписать /dev/sdaX - X - номер раздела. Но тогда, если в компьютере планируется несколько винчестеров надо будет втыкать винчестер в первый слот. Или можно вписать uuid: |
− | sudo nano /etc/fstab | + | sudo nano /etc/fstab |
или | или | ||
− | sudo gedit /etc/fstab | + | sudo gedit /etc/fstab |
+ | |||
+ | ===Как узнать UUID дисков=== | ||
+ | Для этого можно использовать утилиту | ||
+ | |||
+ | blkid | ||
+ | |||
+ | ===Grub=== | ||
+ | Скорее всего понадобится внести изменения в Grub - в современных grub пишется UUID. | ||
+ | |||
+ | Простой и удобный редактор записей Grub | ||
+ | |||
+ | sudo add-apt-repository ppa:danielrichter2007/grub-customizer | ||
+ | sudo apt-get update | ||
+ | sudo apt-get install grub-customizer | ||
+ | grub-customizer |
Текущая версия на 21:47, 30 января 2018
Частенько мы сталкиваемся с задачей создания копии системы. Собрали новый станок и хотим поставить туда систему со всеми настройками существующего станка.
Клонирование при помощи DD
DD
Самый простой способ и топорный способ, но будет работать из коробки, возможно не самый быстрый в плане выполнения но самый быстрый в плане манипуляций.
Желательно найти такой же винчестер.
Желательно, чтобы винчестер был не большой. Обычно я используб SSD на 60 или 120Гб.
dd - копирует содержимое из одного файла (if - input file) в другое (of - output file). Винчестеры в Linux это файлы в /dev/sd** (sda sda1 sda2... sdb...)
sudo dd if=/dev/sda of=/dev/sdb
ВНИМАНИЕ!!!!
if=/dev/sda это откуда писать
of=/dev/sdb это куда писать
Проверить можно командой mount
в терминале. В выводе команды должна содержаться строка вида:
/dev/sda1 on / type ext4
Если перепутать получим два пустых винча :). Никаких вопросов задаваться не будет!
Эта команда скопирует все содержимоевместе с разделами.
Так же можно клонировать отдельные разделы
sudo dd if=/dev/sda1 of=/dev/sdb1
Команда может работать достаточно долго (60Гб около часа) и ничего при этом не пишет. То, что что-то происходит можно увидеть в программе iotop - она показывает кто что куда пишет.
fstab
Также может понадобиться в файле /etc/fstab поменять названия винчестеров - в этом файле написано что куда монтировать. Обычно пишется адрес диска /dev/DISK-BY-UUID/[куча буковъ (id раздела)] можно там переписать /dev/sdaX - X - номер раздела. Но тогда, если в компьютере планируется несколько винчестеров надо будет втыкать винчестер в первый слот. Или можно вписать uuid:
sudo nano /etc/fstab
или
sudo gedit /etc/fstab
Как узнать UUID дисков
Для этого можно использовать утилиту
blkid
Grub
Скорее всего понадобится внести изменения в Grub - в современных grub пишется UUID.
Простой и удобный редактор записей Grub
sudo add-apt-repository ppa:danielrichter2007/grub-customizer sudo apt-get update sudo apt-get install grub-customizer grub-customizer