Linux mini-HOWTO



              

Скопируйте файлы со старого диска на новый - часть 2


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

Эта команда перейдет в корневой каталог и затем скопирует все файлы и каталоги, кроме /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. Если вы не можете использовать первые два метода по каким-либо причинам, то всегда можете вручную указать каталоги, которые необходимо скопировать.

Также надо учесть, что если в корневом каталоге есть файлы, то их тоже надо скопировать отдельной командой. В частности, это касается Debian и Slackware, так как эти дистрибутивы помещают файлы в корневой каталог:

cp -dp /* /.* /new-disk

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

После использования любого из этих методов вам также надо создать каталог /proc на новом диске, если его еще нет:

mkdir /new-disk/proc

Затем вы можете проверить файловую систему нового диска, если хотите:

umount /new-disk fsck.ext2 -f /dev/hdb1 mount -t ext2 /dev/hdb1 /new-disk

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

Можно сравнить два диска, чтобы убедиться, что все скопировано верно:

find / -path /proc -prune -o -path /new-disk -prune -o -xtype f -exec cmp {} /new-disk{} \;

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

Для пользователей Slackware:

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

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




Содержание  Назад  Вперед