Я хочу клонировать загрузочный диск 8,1 ГБ на диск 8,0 ГБ, чтобы клон оставался загрузочным.
dd вызывает проблемы, потому что целевой диск на несколько МБ меньше исходного.
«Кот» может мне здесь помочь?
cp и rsync тоже по какой-то причине не работали.
И да, я не копирую диск, на который загружаюсь.
И да, я запускаю команды как root.
Так может кто-нибудь показать мне, как использовать cat?
Нет, в этом случае cat
не даст тебе ничего, что dd
не могу сделать лучше.
Вы можете попробовать использовать такой инструмент, как GNU Parted, чтобы изменить размер исходной файловой системы и раздела до менее 8 ГБ, используйте dd
клонировать его в раздел на целевом диске, а затем установить загрузчик.
В качестве альтернативы вы можете создать файловую систему на целевом диске, используя команду уровня файла, например tar
или cp -a
скопировать данные, а затем установить загрузчик.
Обычно я просто вручную дублирую структуру разделов на целевом диске (как можно ближе к этому случаю), а затем выполняю синхронизацию всех файлов между дисками или через локальное сетевое соединение. И вам нужно будет перезагрузить загрузчик с помощью его инструментов (grub-install, lilo и т.д.) из-за разных таблиц разделов.
Если вы переходили от меньших дисков к большим, вы могли бы использовать dd и пропустить все остальное, но чтобы перейти от большего к меньшему, вы должны быть немного осторожнее. Cat объединяет (объединяет) файлы (или такие вещи, как файлы) вместе, а dd дублирует диски.
Вы можете использовать любой fdisk, который вы предпочитаете, от sfdisk и cfdisk до qt-parted (так что можете использовать мышь!). Аргументы rsync, которые вы хотите использовать, определенно -a и, вероятно, -v и --progress, чтобы дать некоторый статус в процессе. Обратите внимание на конечные косые черты и используйте --dry-run в rsync, пока не убедитесь, что все выровнено правильно :)
Если вам нужна загрузочная среда для такого рода работы, я могу порекомендовать sysrescd, так как все это есть в загрузочном образе компакт-диска. Есть и другие на выбор.