Имеется необходимость перенести систему с идеешного винта, на саташный. Я так понимаю копировать раздел проще всего через dd? А после копирования, что нужно будет изменить кроме fstab и menu.lst?
Если винты одинаковые и разделы на них выглядят тоже одинаково, то можно обойтись только dd и тем, что ты перечислил. Если же винты разные, то стоит повнимательнее проверить корректность таблицы разделов.
Если носители одинаковы по объёму и если файловая система позволяет создавать зеркало из существующего носителя и нового, как это возможно в ZFS, например, но нет ничего проще: добавить в зеркало новый винчестер, когда репликация закончится, удалить из зеркала старый винчестер.
если dd с работающей системы, то после копирования обязательно fsck, я делаю именно так, потому как в большинстве случаев нету возможности работать с ливцд, тремя жёсткими. Ещё один момент, в menu.lst и fstab, прописал не номера партиций, а их UUID, в результате переделывать ничего кроме подкачки не приходится; да и его можно по label указать, но лень.
Заметил, что при копировании системы на другую машину, при загрузке, в некоторых случаях, происходит остановка (не помню что на что ругается). Предлагает стать рутом и что-то поправить, либо продолжить загрузку. Если продолжить не меняя - всё-равно всё работает. Не особо вникая в проблему делаю dpkg-reconfigure initramfs-tools. Может не совсем корректно, но это помогает.
точно! делаю dpkg-reconfigure initramfs-tools. Это самое я и делал в прошлый раз, только команду эту забыл. Была такая штуа, что поменялась таблица разделов, на винте и то, что было sda3 стало sda1. Правка fstab и menu.lst была проведена, но система материалсь при загрузке, после этой команды, всё стало ладом. Думаю здесь тоже будет достаточно этих трех действий. Единственное отличие, что было hdc, станет sda
rsync --progress -adr / /mnt/sda1
правка /mnt/sda1/etc/fstab, menu.lst, а также boot/grub/device.map
затем
mount -o bind /dev/ /mnt/sda1/dev
mount -t proc none /mnt/sda1/proc
поправить /mnt/sda1/etc/mtab чтобы root был где он потом будет
потом
chroot /mnt/sda1/
и ставим граб grub-install /dev/sda
и перегенерим initrd
mkinitramfs -o /boot/initrd.img-`uname -r` `uname -r`
поставил таким способом линукс на 40 машинах, исходник скрипта шас недам, потомучто наработе...
ИНтересная тема. А можно с описанием? в частности интересует команды
rsync --progress -adr / /mnt/sda1
mount -o bind /dev/ /mnt/sda1/dev
mount -t proc none /mnt/sda1/proc
rsync --progress -adr / /mnt/sda1 , ну есть подробнее то нужно добавить --exclude-from=ex_root_sync
где будет написано следуйшее:
mnt/*
proc/*
sys/*
tmp/*
в результате перекопируется все что в / в новый корень, с сохранением прав итп.
mount -o bind /dev/ /mnt/sda1/dev - чтобы в новом корне был текуший /dev, необходимо для нормальной установки grub
mount -t proc none /mnt/sda1/proc - для тогожесамого монтируем файловую систему proc (четакое - в гугл)
Если система на LVM, просто создай новый физический том, введи его в группу томов и скопируй все экстенты на новый том, после чего старый выведи. Все это не требует даже остановки компа.
Кстати при использовании rsync эта штука сначала копирует наприме /dev, /etc или любой другой каталог, а когда дело доходит до mnt, она начинает копировать, то что уже скопировано.. как-то можно исключить каталог mnt из этого копирования?
Блин, всё плохо! Система упорно не желает грузится.
>Gave up waiting for root device. Common problems
-Boot args (cat /proc/modules; ls /dev)
-Check rootdelay= (did the system wait long enough?)
-Check root= (did the system wait for the right device?)
-Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/sdb1 does not exist. Dropping to a shell!
Такс.. загрузился со слакса, удалил раздел sda1, на пустое место скопировал gparted'ом раздел hdc1, после чего поправил device.map (типа hd0 это есть sda), menu.lst и fstab, но ничего не поменялось)))) Sata hаботает в IDE, кроме него доступны режимы?AHCI и Raid.Игрался и с ними, но без толку... Сегодня блин комп отдавать надо... засада...
ты должен обновить ibitrd. Для этого смонтируй _оба_ диска и запусти обновление (mkinitrd и скопировать куда надо, или update-initramdisk, зависит от дистрибутива)
Вобщем всё закончилось хорошо. Играл всякими разными параметрами, ниче не подходило, подцепил винт в 5 сата слот и прописал как hda и всё заработало... плата у меня крутая походу))) обновление инитрамфс можно делать из запущеной системы. Она при загрузке просто ругается, но запускается. Вот так и в этот раз. Грузанулся, выслушал ругачку про свап, обновил инитрамфс и всё стало ладом. Воть.. почему у меня 5 и 6 сата опознаются как hda и hdb, а родной иде опознается как hdc и hdd я так и не знаю.