Перенос linux другой раздел

Аникин

Навеяно статьей про перенос freebsd на другой диск. Будем делать тоже самое но на linux. В linux все несколько сложнее.

Для начала нужно подсоединить новый диск и загрузится. В системе должны присутствовать 2 диска, первый с нашей системой, а второй пустой. Второй мы можем разметить по своему усмотрению или же скопировать разметку с первого диска(если второй диск идентичен первому). Как скопировать разметку можно прочесть здесь. Как разметить вручную думаю разберётесь сами, благо мануалов в интернете полно. После создания разметки разделы надо отформатировать примерно так.

Затем примонтируем его в /mnt

Теперь нам нужно создать дампы разделов, в данном случае нужно создать только дамп sda1. Установим утилиты dump/restore.

И создаем дамп раздела в файл /mnt/root.img

Создание дампа в /mnt/root.img возможно когда на разделе используется менее 50% от /dev/sdb1. Иначе на разматывание дампа места не хватит. В остальных случаях нужно создавать дамп в другом месте, но не в разделе корня, чтобы дамп не мотал сам себя. Можно использовать раздел другой тачки примонтированный по sshfs, я проверял это прекрасно работает.
Переходим в /mnt и разматываем дамп.

Как видим раздел перенесся на /dev/sdb1. Если у нас /boot на отдельном разделе, то переносим его аналогично.

Теперь нам нужно установить загрузчик.

Затем если требуется правим /mnt/etc/fstab и меню grub в /mnt/boot/grub/grub.cfg.

Тут немного поясню зачем проверять и править эти файлы. У меня например в этих файлах были прописаны uuid разделов, и если мы уберем старый диск то ОС соответственно не загрузится, т.к у новых разделов у нас другие uuid. Я вместо uuid прописал реальные устройства корня и свопа /dev/sda1 и /dev/sda3. Все устройства sdb, станут у нас sda после извлечение первого диска.

Теперь выключаем тачку, отсоединяем первый диск и загружаемся с нового диска.

P.S. Утилиты dump и restore не ограничиваются переносом ОС с одного диска на другой. Таким образом можно переносить linux вообще на другую тачку с другим железом и дисками. Процедура почти такая же за небольшими изменениями.

  1. На первой тачке создаем дамп ОС;
  2. Загружаем вторую тачку с livecd;
  3. Размечаем и форматируем диски;
  4. Копируем туда дамп c первой тачки(по scp, например);
  5. Разворачиваем дамп с помощью restore;
  6. Устанавливаем загрузчик;
  7. Загружаемся.

Источник

Мини-HOWTO: Переход на новый жесткий диск

Yves Bellefeuille

Konrad Hinsen

Перевод: Станислав Рогин, SWSoft Pte Ltd.

Версия 2.11, 13 апреля 2000

Как скопировать систему с Linux с одного диска на другой

1. Введение

В этом документе описывается перенос (или миграция) целой системы Linux с одного диска на другой.

В дальнейшем мы будем придерживаться следующего: «/dev/hda» (первый жесткий диск IDE ) означает «старый» диск, и «/dev/hdb» (второй жесткий диск IDE ) означает «новый» диск.

Конкретные разделы старого диска будут называться /dev/hda1 , /dev/hda2 Конкретные разделы нового диска будут называться /dev/hdb1 , /dev/hdb2 и так далее.

Все примеры в документе испытывались на дистрибутиве Red Hat 6.0. Также они были проверены в Debian 2.1, Slackware 3.5 и SuSE 6.2; мы будем указывать на различия в дистрибутивах.

Если какие-то из команд не сработают в вашей системе, пожалуйста, дайте нам знать; не забудьте упомянуть дистрибутив и его версию.

2. Установите оба диска в вашу систему

Современные системы поддерживают четыре » EIDE «-устройства на одном контроллере жестких дисков, поэтому, в идеале, не должно возникнуть проблем с установкой обоих дисков в систему, даже если у вас есть еще » EIDE «-устройства. Жесткие диски и CD-ROM — типичные примеры EIDE -устройств. Флоппи-дисководы и стримеры обычно подключаются к контроллеру флоппи, очень редко к контроллеру жестких дисков.

SCSI -адаптеры значительно более гибки и поддерживают до семи устройств. Если вы являетесь счастливым (и богатым) обладателем SCSI -адаптера, то уже наверно про это знаете, и вы, возможно, знаете, какие из устройств являются SCSI ! За более подробной информацией обращайтесь к HOWTO: SCSI .

Читайте также:  Настройка теплоты экрана windows 10

Даже очень старые системы поддерживают два устройства на контроллере жесткого диска, поэтому вы все равно сможете установить два диска одновременно. Однако, если у вас, в дополнение к старому диску, подключено еще одно дополнительное устройство (например, если у вас есть жесткий диск и CD-ROM ), то придется его убрать, чтобы вместо него установить новый диск.

Вы также должны правильно настроить диски «главными» или «зависимыми» (» master» или » slave«), соответствующим образом выставив переключатели («jumpers») на дисках. Обычно информация об этих настройках бывает написана на самих дисках; если ее нет — читайте документацию или обратитесь к производителю.

Вы также обязаны проинформировать BIOS о наличии дисков и их » геометрии«. Обычно программа настройки BIOS запускается при запуске системы нажатием клавиши. Ниже приведены варианты этих клавиш для наиболее распространенных версий BIOS :

Клавиша F2 в процессе Теста-При-Включении (Power-On Self-Test (POST))

American Megatrends (AMI):

Клавиша Del в процессе Теста-При-Включении (Power-On Self-Test (POST))

Клавиша F10после того, как в верхнем правом углу экрана появится небольшой квадрат (при включении системы)

Клавиша Esc в процессе Теста-При-Включении (Power-On Self-Test (POST))

Клавиша F1 в момент появления синей заставки HP

Клавиша F1, когда квадратик с волнистыми линиями появляется в правом верхнем углу экрана [1]

Ctrl— Alt— Del, или Ctrl— Alt— Ins, когда курсор находится в правом верхнем углу

Ctrl— Alt— S в процессе Теста-При-Включении (Power-On Self-Test (POST))

В некоторых моделях клавиши F1 или F2 в процессе Теста-При-Включении (Power-On Self-Test (POST))

Ctrl— Alt— Esc, Ctrl— Alt— S, или Ctrl— Alt— Enter

На многих старых системах требуется диск с надписью «Installation» или «Reference».

Перезагрузите систему и войдите в нее как root. Если вы используете команду » su» , чтобы стать root-ом, используйте » su —«(с параметром «-«).

3. Отключите не-Linux разделы и сетевые диски

Обратите внимание на синтаксис команды umount, он отличается от английского слова unmount отсутствием первой буквы n.

Вам также придется подобным образом отключить все сетевые диски.

4. Разбейте новый диск на разделы

EIDE -устройства именуются, как hda , hdb , hdc , и hdd в каталоге /dev . Разделы на этих дисках могут принимать номера от 1 до16 и также находятся в каталоге /dev . Например: /dev/hda4 — это 4-ый раздел на диске a (первом EIDE -диске).

SCSI -устройства именуются, как sda , sdb , sdc , sdd , sde , sdf , и sdg в каталоге /dev .Разделы на них, аналогично EIDE-дискам, могут принимать номера от 1 до 16 и находятся в каталоге /dev . Например: /dev/sda3 — это 3-ий раздел на SCSI -диске a (первом SCSI -диске).

(Примечание переводчика: на деле SCSI-диски могут не ограничиваться /dev/sdg — очевидно, что если у вас несколько SCSI-контроллеров, то SCSI-дисков может быть значительно больше — но это, однако, достаточно редкое явление.)

Для Linux-разделов с файловой системой ext2, используйте идентификатор файловой системы 83. Для разделов подкачки (swap), используйте 82.

Если на вашем новом диске более 1024 цилиндров, смотрите «Мини-HOWTO: Большие диски». Вкратце, вы должны все файлы, необходимые для загрузки Linux, поместить в пределах первых 1024 цилиндров. Один из вариантов — создать небольшой раздел (5 Мб или что-то около того) исключительно для каталога /boot в начале диска. (Внимание, пользователи Slackware: Ядро находится в файле /vmlinuz вместо /boot/vmlinuz, поэтому вам придется поместить ядро одновременно в каталог /boot/vmlinuz / и в каталог /boot в этот небольшой раздел.)

Разделы для других систем (не для Linux) должны быть созданы в родных системах, с использованием родного fdisk или чего-то подобного, а не при помощи fdisk из Linux.

5. Отформатируйте новый диск

Чтобы программа форматирования произвела также и поиск плохих блоков (физических дефектов) в форматируемом разделе, добавьте опцию -c перед /dev/hdb1 .

В случае, если на новом диске будет больше одного Linux-раздела, отформатируйте их все командами » mkfs.ext2 /dev/hdb2«, » mkfs.ext2 /dev/hdb3» соответственно. Добавьте опцию -c , если это необходимо.

(Замечание: в старых дистрибутивах команда » mkfs -t ext2 -c /dev/hdb1» не проверяла наличие плохих блоков в Red Hat, Debian и Slackware, что должна была делать в соответствии с man. Сейчас это исправлено.)

К этой команде вы также можете добавить опцию -c для проверки плохих блоков на разделе » /dev/hdb1 «.

6. Подключите новый диск

Если на новом диске имеется больше одного раздела — подключите их все в каталоге /new-disk с той же организацией, что они будут иметь позже.

До подключения разделов вам придется создать точки подключения на соответствующих » уровнях«, например:

7. Скопируйте файлы со старого диска на новый

При копировании жесткого диска вам надо скопировать все каталоги и файлы, включая ссылки.

Однако, вам не нужно копировать каталог /new-disk , потому что это и есть новый диск!

Более того, вам надо создать на новом диске каталог /proc , но содержимое этого каталога копировать не нужно: /proc — это виртуальная файловая система, и в ней нет настоящих файлов, а есть лишь информация о системе и процессах, в ней работающих.

Существуют 3 разных способа копирования старого диска на новый. Это может занять значительное время, особенно если у вас большой диск или мало оперативной памяти. Минимум скорости копирования — примерно 10 Мб в минуту, а, скорее всего, это будет происходить значительно быстрее.

Вы можете следить за копированием командой » df«, запущенной с другого терминала. Используйте » watch df» или » watch ls -l /new-disk«, чтобы видеть отчет, обновляемый раз в две секунды; нажмите клавиши Ctrl— C для прекращения просмотра. Помните, однако, что сам запуск команды » watch» может замедлить процесс копирования.

Это наиболее простой способ, но он подходит, только если ваша исходная система находилась на одном разделе.

Опция -a сохраняет исходную файловую систему настолько, насколько возможно. Опция -x ограничивает работу команды cp одной файловой системой — поэтому не нужно беспокоиться о каталогах /new-disk и /proc .

Для пользователей SuSE: . Используя этот метод, вы должны также создать каталог /dev/pts на новом диске. Используйте команду » mkdir /new-disk/dev/pts«.

(Замечание: Новые версии cp, при использовании опции -x , создадут пустые каталоги /new-disk/new-disk и /new-disk/proc . В этом случае необходимо удалить каталог /new-disk/new-disk , и оставить /new-disk/proc. .)

(напишите все это в одной строке)

Эта команда перейдет в корневой каталог и затем скопирует все файлы и каталоги, кроме /new-disk и /proc в /new-disk . Заметьте, что первый символ после ls — это цифра 1, а не буква L!

Эта команда должна работать в любом случае.

cp -a /bin /boot /dev /etc /home /lib /lost+found /mnt /root /sbin /tmp /usr /var /new-disk

(напишите все это в одной строке)

Последний каталог — /new-disk — это назначение команды cp. Все остальные каталоги — источники. Таким образом, мы копируем все каталоги из списка в /new-disk .

При применении этого метода вы просто перечисляете каталоги, которые хотите скопировать. Здесь мы указали все каталоги, кроме /new-disk и /proc . Если вы не можете использовать первые два метода по каким-либо причинам, то всегда можете вручную указать каталоги, которые необходимо скопировать.

В предыдущих версиях этого Мини-HOWTO упоминалось, что вы можете использовать » tar» для копирования диска, но в этом методе была обнаружена ошибка. Конечно, существуют и другие методы скопировать диск, но эти три являются наиболее простыми, быстрыми и надежными.

Если на новом диске существует больше одного раздела, то вам придется отключить их все » снизу вверх» до запуска fsck.ext2: в соответствии с примером, приведенном выше, вам надо сначала отключить разделы 3-го уровня, затем 2-го и, только в конце, первого.

(напишите все это в одной строке)

Для пользователей Slackware:. стандартная «базовая» установка Slackware (только файлы серии «A») не включает команду » cmp«, поэтому это сравнение не запустится, если у вас установлены только базовые файлы. Команда » cmp» находится в файлах серии «AP1».

Здесь мы сравниваем только обычные файлы, символьные же и блочные устройства (из каталога /dev ), гнезда (sockets), и т.п. здесь не учитываются, так как команда » cmp» работает с ними не совсем корректно. Мы будем не против, если кто-нибудь подскажет нам, как сравнить эти «специальные» файлы.

8. Исправьте необходимым образом файл /new-disk/etc/fstab

Если разделы или их организация на новом диске отличается от того, что было на старом диске, исправьте необходимым образом на новом диске файл /new-disk/etc/fstab .

Убедитесь в том, что названия разделов дисков (первая колонка) соответствуют организации разделов, которую вы создали на новом диске, что разделы старого диска убраны, и что вы подключаете только один раздел в качестве корневого » / » (это написано во второй колонке).

Чтобы подробнее узнать о формате файла /etc/fstab , см Руководство системного администратора Linux , глава 4 «Подключение и отключение разделов».

9. Приготовьте LILO для загрузки с нового диска

(Спасибо Rick Masters за помощь в создании этой главы.)

Мы предполагаем, что вы собираетесь установить LILO в Главную Загрузочную Запись (Master Boot Record ( MBR ) — это делается в большинстве случаев. Вы хотите установить LILO на второй диск, который станет первым.

Для пользователей Slackware:. Используйте image=/new-disk/vmlinuz.

Если вы используете SCSI -диск, то вам, возможно, придется добавить строку с » initrd«. Смотрите ваш текущий файл /etc/lilo.conf .

Опция -C указывает LILO , какой конфигурационный файл использовать.

10. Создайте загрузочную дискету (необязательно)

Вы можете, если захотите, создать загрузочную дискету, чтобы избежать проблем с загрузкой, если они возникнут при загрузке с нового диска.

Для пользователей Debian: . В Debian 2.x версии используйте /dev/fd0u1440 вместо /dev/fd0H1440 . В Debian версии 1.x, используйте /dev/fd0h1440 , со строчной буквой h.

Для пользователей Debian:. В Debian версий 2.x, используйте superformat вместо fdformat. Вы можете не обращать внимания на ошибку mformat: command not found . В Debian версий 1.x, в случае если у вас нет команды fdformatвы можете пропустить ее, если диск уже отформатирован. Вы можете просто проверить дискету на наличие плохих блоков, добавив опцию -c к команде mkfs.ext2.

Для пользователей Slackware:. Используйте /dev/fd0u1440 вместо /dev/fd0H1440 . В очень старых версиях попытайтесь использовать /dev/fd0h1440 , со строчной буквой h.

Для пользователей SuSE:. Используйте /dev/fd0u1440 вместо /dev/fd0H1440 .

Для пользователей Red Hat: . Если в каталоге /boot есть файлы vmlinux и vmlinuz (обратите внимание на различие в последних буквах), тогда вам надо скопировать только файл vmlinuz . Он ничем не отличается от файла vmlinux, просто он сжат для экономии места.)

Для пользователей Slackware:. Скопируйте также на дискету файл /vmlinuz , используйте команду cp /vmlinuz /mnt.

Опция -C указывает LILO на загрузочную дискету:

11. Уберите старый диск

Выключите систему и уберите старый диск. Не забудьте изменить настройки нового диска и информацию в BIOS .

12. Перезагрузите систему, исправьте файл конфигурации LILO

Перезагрузите систему. Если возникнут какие-нибудь проблемы, используйте загрузочную дискету, которую вы только что сделали. Чтобы загрузиться с нее, просто измените порядок загрузки системы в BIOS на A:, C: .

Для пользователей Slackware: . Используйте image=/vmlinuz.

13. Благодарности:

Большое спасибо Scott Christensen, Frank Damgaard, Alexandre Fornieles, David Fullerton, Igor Furlan, Jerry Gaines, Chris Gillespie, Nicola Girardi, Per Gunnar Hansoe, Richard Hawes, Ralph Heimueller, Gerald Hermant, Andy Heynderickx, Paul Koning, Hannu Liljemark, Claes Maansson, Rick Masters, Jason Priebe, Josh Rabinowitz, Douglas Rhodes, Valentijn Sessink, Kragen Sitaker, Stephen Thomas, и Gerald Willman.

Этот документ можно переводить на любой язык. Если вы это сделаете, отправьте копию перевода Konrad Hinsen .

14. Авторские права

Авторские права на русский перевод этого текста принадлежат © 2000 SWSoft Pte Ltd. Все права зарезервированы.

Этот документ является частью проекта Linux HOWTO.

Авторские права на документы Linux HOWTO принадлежат их авторам, если явно не указано иное. Документы Linux HOWTO, а также их переводы, могут быть воспроизведены и распространены полностью или частично на любом носителе, физическом или электронном, при условии сохранения этой заметки об авторских правах на всех копиях. Коммерческое распространение разрешается и поощряется; но, так или иначе, автор текста и автор перевода желали бы знать о таких дистрибутивах.

Все переводы и производные работы, выполненные по документам Linux HOWTO, должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO, с которым можно связаться по адресу приведенному ниже.

Мы бы хотели распространить эту информацию по всем возможным каналам. Но при этом сохранить авторские права и быть уведомленными о всех планах распространения HOWTO. Если у вас возникли вопросы, пожалуйста, обратитесь к координатору проекта Linux HOWTO по электронной почте: или к координатору русского перевода Linux HOWTO компании SWSoft Pte Ltd. по адресу

Примечания

Интересно: а это относится к другим моделям Aptiva?

Источник

Читайте также:  Необходим windows media player
Оцените статью