Автор Тема: перенос системы на другой жесткий диск меньшего объема  (Прочитано 7887 раз)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 149
    • Email
Я бы действовал так:

- подключил оба диска (если такая возможность есть) или же использовал промежуточное звено в качестве внешнего USB-HDD
- запустил LiveCD любой
- разметил новый диск как нужно
- перенёс данные через cp или rsync со старого на новый диск
- зачрутился на новый диск, поправил fstab и /etc/sysconfig/grub2 (при необходимости) и выполнил grub-install (для нового HDD) и grub-mkconfig -o /boot/grub/grub.cfg

По идее, после этого система должна запуститься с нового HDD.
Сноси Винду, переходи на Линукс ! :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Я бы действовал так:
Да, наверное, если копировать на один диск, это оптимально.
- зачрутился на новый диск
Тут надо не забыть смонтировать через mount -o bind внутри chroot sys, proc и dev.

ЗЫ Если использовать fsarchiver или qt4-fsarchiver , то лучше брать их из t7 - там версии поновее.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Если коприровать через образ fsarchiver, есть "один бесплатный бонус" - у вас остаётся файл .fsa, из которого можно в любой момент восстановить систему.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Вот ещё пример клонирования диска через образ:
Например:
Создание и использование эталонных образов клонируемой системы
Цитировать
Вариант 2

Если на компьютерах установлены разные диски, работать на уровне жёсткого диска (/dev/hda) нельзя и придётся перейти на уровень разделов (/dev/hda1, /dev/hda2 и т.д.). В этом может помочь утилита cpio, которая архивирует все типы файлов (в том числе устройства и сокеты) со всеми свойствами и правами. При использовании cpio необязательно обнулять диск, поскольку она работает уже поверх файловой системы.

Делаем архив эталонного корневого раздела, предполагая, что он находится в /dev/hdd1, и выкладываем его на FTP-сервер:

$ mount /dev/hdd1 /mnt/disk
$ cd /mnt/disk
$ find ./ | cpio -o | bzip2 -9 -c > /tmp/hda1.cpio.bz2
$ cp /tmp/hda1.cpio.bz2 /var/ftp/pub/

Точно так же обрабатываются и остальные разделы, содержащие информацию. Раздел подкачки проще создать вручную прямо на месте в «спасательном» режиме.

Загрузив компьютер, на который нужно установить систему, с подготовленной дискеты и получив образ второго этапа установки, нужно вручную создать соответствующие разделы. Каждый из них должен иметь размер не меньше, чем необходимо для размещения информации, хранящейся в образах. Их необходимо отформатировать и смонтировать, например, в /mnt/disk.

Чтобы воссоздать раздел /, смонтированный в /mnt/disk, нужно сделать следующее:

$ cd /mnt/disk
$ getftp <IP_FTP_SERVER> /pub/hda1.cpio.bz2 | \
bzip2        -d -c|  cpio -i -make-directories

Далее нужно повторить аналогичные операции для остальных разделов. По окончании копирования не забудьте про установку LILO или GRUB в новую систему.
Возможно что-то и изменилось, и появились новые, более удобные инструменты, но это классика, которая работает и сейчас.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
- перенёс данные через cp или rsync со старого на новый диск
Тут есть маленькая проблема - надо перенести так, что-бы жёсткие ссылки остались жёсткими ссылками, а не стали новыми файлами.

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 149
    • Email
Тут есть маленькая проблема - надо перенести так, что-бы жёсткие ссылки остались жёсткими ссылками, а не стали новыми файлами.
Да, вот так нормально переносится точно, а вот с cp видимо какой-то ключ забывал указать, потому что были проблемы после переноса данных:
rsync -vaPHx --delete --delete-after --numeric-ids /var /mnt/var
Сноси Винду, переходи на Линукс ! :)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Да, вот так нормально переносится точно, а вот с cp видимо какой-то ключ забывал указать, потому что были проблемы после переноса данных:
Не уверен, что у cp есть такой ключ. Там есть ключ -l, но он означает , что надо при выполнении команды создавать  жёсткую ссылку, а не копировать. Я не уверен по описанию, что это то, что надо.

Цитата: man cp
   -l, --link
              hard link files instead of copying

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Сейчас руками попробовал на двух маленьких файлах. Если копировать с ключом -R, а в качестве источника указать каталог, то cp копирует жёсткие ссылки лежащие в каталоге нормально. И да надо смотреть как копируются символические ссылки,  вернее на что они будут указывать после копирования.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Ага я уже увидел. На телефоне трудно все разглядеть.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
cp -Rp же :)
Кстати, если указать файлы, а не катаолог в качестве источника, то опция -R не помогает.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
А кстати, не проверял - если жёсткая ссылка ссылается на файл в другом каталоге, то cp копирует такие жёсткие ссылки?

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976
ну мы же говорим о переносе всей системы.
Указал какие каталоги переносить и куда все скопом.
Переносить отдельными файлами всю систему явно вариант не лучший :)

Если честно, то так дотошно не копался - т.к. все вместе переносится, то что произойдет если ссылка будет не в скопированом каталоге я не проверял :)
« Последнее редактирование: 22.04.2016 11:30:37 от YYY »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 261
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
ну мы же говорим о переносе всей системы.

И всё-же cp я-бы не советовал. Простой опыт:

# mkdir Asmkdir As/111
# mkdir As/222
# echo 1111 >  As/111/Test_file
# ln  As/111/Test_file  As/222/Test_file

# ls -l  As/111/Test_file1
-rw-r--r-- 2 altlinux altlinux 6 Apr 22 12:51 Test_file1

# ls -l  As/111/Test_file1
-rw-r--r-- 2 altlinux altlinux 6 Apr 22 12:51 Test_file1

# cp As /mnt/disk/Bs

# ls -l  /mnt//disk/Bs/111/Test_file1
-rw-r--r-- 1 altlinux altlinux 6 Apr 22 12:51 Test_file1

 

Оффлайн stanukih

  • Завсегдатай
  • *
  • Сообщений: 560
Спасибо конечно что вы так моей проблемой заинтересовались  :-). Перенос отложился примерно на неделю. Попробую в первую очередь через cp - для меня скопировать пару команд проще чем в гуй с кнопочками разбираться (если ни разу ни то, ни то не делал).