Я работаю над обновлением системы с RHEL6 до RHEL7, и в то же время мне нужно сделать несколько тестов, прежде чем я действительно обновлюсь. У меня вопрос: у меня есть рабочий ISO-файл RHEL7, загруженный с веб-сайта Red Hat, и я попытался скопировать содержимое ISO-файла в папку на моем компьютере, а затем превратить эту папку в новый ISO-файл (используя различные ISO-файлы). коммунальные услуги), просто чтобы убедиться, что я мог сделать это. Однако проблема заключается в том, что, несмотря на то, что я не вносил изменений перед "перекомпиляцией", при попытке использовать этот воссозданный ISO-образ в VirtualBox я получаю фатальную ошибку: ошибка на загрузочном носителе не найдена. Что может быть причиной этого?
2 ответа
Чтобы диск был загрузочным, на нем должен быть действительный загрузочный сектор. Когда вы копируете содержимое (...) и создаете новый диск без правильного загрузочного сектора, у вас есть обычный диск, заполненный данными. Проверьте здесь о том, как сделать загрузочный ISO-образ. (Ищите опцию -b
genisoimage
).
Посмотрите здесь для минимального гида.
Шаги для копирования и исправления ISO-образа:
Создайте временный каталог для содержимого вашего iso:
# mkdir /var/tmp/isodir
Создайте временный каталог для ISO:
# mkdir /id
Смонтировать iso:
# mount -oro,loop /path/to/file.iso /id
Скопируйте содержимое на новый путь:
# cd /id # cp -av . /var/tmp/isodir
- Перейдите в /var /tmp /isodir и делайте все, что вам нужно.
Воссоздайте свой .iso:
# cd /var/tmp/isodir # mkisofs -o /path/to/new/file.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T isolinux/
Очистка:
# umount /id # rmdir /id
Объяснение: Приведенная выше команда mkisofs использует флаг -b для указания образа загрузки (isolinux.bin). (Остальные флаги можно найти на странице руководства для mkisofs.)