LINUX.ORG.RU
ФорумAdmin

Клонирование системы и резервное копирование

 , ,


1

2

Приветствую!

Я только что купил второй компьютер и хочу создать две идентичные системы (чтобы мне было удобно работать на обоих).

Мне нужно однократное клонирование, а не синхронизация в реальном времени.

Первый компьютер — Asus Rog strix g16, второй — GEEKOM A6 Mini PC.

Есть ли способ это сделать?

Система Ubuntu 25 оба.


И еще один вопрос:

Мне нужно сохранять резервные копии для обеих систем.

У меня есть внешний SSD-накопитель объемом 6 ТБ (ext4), который я использую для резервного копирования на своем ноутбуке. Могу ли я использовать его также для резервного копирования на Geekom?

Я пытался это сделать, но Timeshift создает папку «timeshift» в корневом каталоге диска и мешает другим резервным копиям.

Перемещено hobbit из general

хочу создать две идентичные системы (чтобы мне было удобно работать на обоих).

Live, она-же бэкап.

Есть ли способ это сделать?

Есть. Но… Первый - nVidia, второй - AMD. Поэтому, не нужно клонировать.

Timeshift создает папку «timeshift» в корневом каталоге диска.

Настрой timeshift.

andytux ★★★★★
()

Если вот вообще в тупую без всяких нюансов. То тебе нужно сделать два шага. В наличие комп1(эталон) и комп2(сюда будет залита копия эталона). Также надо загрузочную флэшку с живой системой (любой, лично я использую федора). Также надо внешний носитель для хранения копии оригинала/эталона, подключаемый либо внутрь компа, либо по usb (у тебя вроде он есть).

Шаг 1

подключаешь внешний носитель в комп1 и загрузочную флэшку. Включаешь комп, загружаешь живую систему, запускаешь команду «lsblk», смотришь где какой диск (с какими буквами). Пусть sda — эталон, sdb — внешний ssd, sdc — флэшка с живой системой. монтируешь нужный раздел внешнего ssd например /dev/sdb2 --> /run/media/ext_ssd_sdb2. Создаёшь диру для хранения копии эталона «mkdir /run/media/ext_ssd_sdb2/2025-11-30». И собственно создаешь копию всего эталона. «dd if=/dev/sda of=/run/media/ext_ssd_sdb2/2025-11-30/etalon.dsk bs=16M status=progress». Ясен пень это всё делается от рута.

Шаг 2

Идёшь к компу 2, с флэшкой и внешним хранилищем. Также включаешь. Грузишь живую систему. запускаешь команду «lsblk». смотришь где какой диск (с какими буквами), запускаешь команду «lsblk», смотришь где какой диск (с какими буквами). Пусть sda — новый комп (пустышка), sdb — внешний ssd, sdc — флэшка с живой системой. монтируешь нужный раздел внешнего ssd например /dev/sdb2 --> /run/media/ext_ssd_sdb2. Внимательно думаешь, что именно ты сейчас хочешь сделать. Потом запускаешь команду создания клона «dd if=/run/media/ext_ssd_sdb2/2025-11-30/etalon.dsk of=/dev/sda bs=16M status=progress». Никаких предупреждений при этом тебе выдаваться не будет. Ты сделаешь ровно то, что хотел: уничтожишь всё что было на компе 2 и там появится полная копия компа 1. В качестве бонуса можешь до уничтожения всего также на всякий случай сделать копию второго компа на внешнем носителе «dd if=/dev/sda of=/run/media/ext_ssd_sdb2/2025-11-30/zhertva-aborta.dsk bs=16M status=progress»

Шаг 0

Подразумеваем, что диски на комп 1 и комп 2 равны между собой по размеру. И на внешнем носителе есть свободное место, чтобы вместить в себя минимум один образ диска.

justAmoment ★★★★★
()

имхо не использовать SSD как внешний холодный накопитель и как хранитель бекапов. он иногда умирает неожиданно быстро…
как минимум дублировать этот «бекап» в ёблака или на винт.

поставить на втором компе систему с нуля со всеми настроенными драйверами.
потом получить список пакетов на каждой системе dpkg -l | grep ^ii | awk '{ print $2}'
сравнить их меж собой diff --side-by-side --suppress-common-lines -W 70 ./packages.list.11111 ./packages.list.2222 > ./packages.list.diff
доустановить отличия (за исключением аппаратных отличий и т.д.).
получаем идентичную по наполненности ПО систему.

далее натравить гуишний diff (я не помню что использовал, кажись meld) на /etc обоих систем. довести до единого состояния (про аппаратные и прочыя отличия не забываем). получаем идентичную и по параметрам систему.

далее переходишь от системы к юзверям и копируешь /home, ну а также /var если ковыряешь какиенить /var/www /var/lib/postgresql…
ИТОГО: получаешь копию системы с индивидуальными настройками под железо.

минус - долго и муторно ибо вручную, но зато очень эффективно в плане результата

я б всетаки повесил синхфинг на домашнюю мамку для удобства.
хотя сам использую отдельную диру в документах где идет онлайн синхронизация между несколькими устройствами: 3 на работе (1 на винде), дом и ноут. удобно: создал там документ и остальное тебя не волнует

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 4)
Ответ на: комментарий от justAmoment

Подразумеваем, что диски на комп 1 и комп 2 равны между собой по размеру.

Ну или второй не меньше чем первый. Однако в текущих реалиях есть нюансы, например первый комп у вас с MBR, а второй с EFI и он не умеет грузиться с MBR, или наоборот.

anc ★★★★★
()

Система Ubuntu 25 оба.

ОС есть на обеих системах. Хорошо.

  1. С эталона берешь список установленных пакетов (dpkg --get-selections | cut -f1 > packages.all) и на новой системе доустанавливаешь их (apt install `cat packages.all`)

  2. С эталона копируешь /home/$USER ==new_system==> /home/$USER с $USER сообразишь

Всё

futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 2)
Ответ на: комментарий от futurama

Нет. Зачем? Для домашних рабочих станций, там индивидуальные настройки и клонировать их – вред

Для домашних как раз это более чем польза! Это на пром варианте вы можете с вероятностью близкой к 100% знать, что у вас и где если это у вас задокументировано, а вот на домашней помойке это неизвестно. Но даже если забыть про неизвестность, на минималках, ТС единственный пользователь, но UID и GID в старой и новой системе не факт что будут одинаковые, т.е. ему потом поправить и права придется.

как например привязка сетевухи к МАС

Есть такая буква в этом алфавите, но она пожалуй единственная.

anc ★★★★★
()