Как клонировать систему на Linux: различия между версиями

Материал из cnc-club
Перейти к навигации Перейти к поиску
(Новая страница: «Частенько мы сталкиваемся с задачей создания копии системы. Собрали новый станок и хоти…»)
 
 
(не показаны 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 это откуда писать   
if=/dev/sdb это куда писать
+
 
если перепутать получим два пустых винча :). Никаких вопросов задаваться не будет!
+
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