Перемещение всей установки Linux на другой диск

Пожалуйста, не отключите параметры доступности на общей машине, которые могут быть использованы кем-то, кто их хочет. Решение состоит в том, чтобы обучить пользователей не быть такими ребяческими, а не удалять важные функции.

1
задан 13 March 2016 в 18:48

3 ответа

Это можно сделать несколькими способами. Но самый простой - просто скопировать все файлы со старого диска на новый.

Создайте раздел ext4 и раздел подкачки на новом диске. Загрузите с LiveUSB. Установите старый раздел Ubuntu в какой-нибудь каталог, установите новый в другой каталог. Скопируйте все файлы из старого в новый с помощью команды cp -a. Установите grub на новый диск. Обновите /etc/fstab новыми UUID.

Если что-то неясно, я могу добавить некоторые пояснения.

26
ответ дан 23 May 2018 в 13:07
  • 1
    Значит, все файлы, группы и прочее останутся нетронутыми? – Saeid87 3 March 2016 в 22:57
  • 2
    Правильно, cp -a сохраняет все. – Pilot6 3 March 2016 в 22:57
  • 3
    +1 - также можно избежать загрузки с LiveUSB и делать все при загрузке с исходного диска, выполнять все изменения, перезагружать, вуаля. – Sergey 9 March 2016 в 00:17
  • 4
    @ Étienne: не копируйте эти каталоги (также /dev), просто создавайте пустые директории на целевом диске и устанавливайте на них те же права владельца / разрешения, что и на исходном диске. – Sergey 24 September 2017 в 23:40
  • 5
    Я закончил использование: sudo rsync -a / /mnt/linux/ --exclude sys --exclude proc --exclude dev --exclude tmp --exclude media --exclude mnt --exclude run, затем sudo mkdir sys proc dev tmp media mnt run – Étienne 25 September 2017 в 23:50

Если у вас есть время и вы хотите безопасно:

$ dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync

Объяснение команды:

if - это вход, of пункт назначения [ f4] задает размер блока. Размер кусков dd будет читаться и записываться. Размеры более высокого размера обычно означают более высокую производительность, но также и большее повреждение данных, если входной диск имеет ошибки, см. Здесь: archwiki on dd noerror продолжается в r / w-errors. sync синхронизирует смещения, если произошла ошибка.

В основном это создаст образ вашего диска sda и напишет его на sdb (тот же разметка разделов и т. д.). Конечно, это напишет весь 120 ГБ, поскольку он не агностик. Таким образом, очень безопасный, но не самый быстрый, если вы используете только небольшие части диска.

BUT:

if - это вход, of пункт назначения In в любом случае может потребоваться отредактировать файл / etc / fstab. Это тот случай, если идентификаторы аппаратного обеспечения используются для распознавания дисков.
14
ответ дан 23 May 2018 в 13:07
  • 1
    Ваша команда dd будет работать вечно. Подумайте о добавлении к нему bs=1M – Dmitry Grigoryev 4 March 2016 в 15:07
  • 2
    Afaik blockize не должен быть 1M на SSD, но я посмотрю на это и обновить – larkey 4 March 2016 в 15:09
  • 3
    Ограничение не в технологии SSD, а в bs значение по умолчанию - 512 байт. – Dmitry Grigoryev 4 March 2016 в 15:13
  • 4
    расширенный ответ с помощью bs, спасибо за хедз-ап – larkey 4 March 2016 в 15:25
  • 5
    Спасибо за подробный ответ ... Я узнал кое-что! но я решил пойти с clonezilla и изменить размер разделов впоследствии. – Saeid87 4 March 2016 в 16:26

Способ, которым я это делаю, когда я переключаюсь на новый жесткий диск:

создает макет раздела, который я хочу, при загрузке нового диска из live cd / usb или установки, восстановления и т. д. монтирую старый жесткий дисковые разделы для копирования, скажем, / mnt / a, монтируйте новый раздел (ы) жесткого диска для приема файлов, скажем / mnt / b cp -a или используйте tar для копирования файлов из / mnt / a to / mnt / b установить загрузчик (lilo или grub) на новый диск, обновить перезагрузку / etc / fstab и проверить, все ли в порядке
2
ответ дан 23 May 2018 в 13:07

Другие вопросы по тегам:

Похожие вопросы: