Как создать Ubuntu LiveUSB вручную

То, что я пытаюсь сделать:

  1. Создать загрузочный USB с двумя разделами (загрузочный FAT32 и NTFS для данных). (СОВЕРШЕНО)
  2. Установите GRUB2 в раздел FAT32. (СДЕЛАНО)
  3. Сделать раздел FAT32 мультизагрузочным, с постоянным установленным Ubuntus.

Последнее не должно быть таким сложным, но теперь моя голова вот-вот взорвется ... Я нигде не могу найти пошаговые инструкции о том, как сделать постоянную установку Ubuntu на одном разделе а не в корневом каталоге (например, в папке ubuntu12.04). В настоящее время я собрал информацию, которая выглядит как весь интернет, и вот что я сделал:

  1. Извлечен Ubuntu 12.04 LiveCD ISO в каталог /ubuntu12.04.
  2. Создан файл /ubuntu12.04/casper-rw с использованием dd и mkfs.ext2 it.
  3. Добавлено menuentry в grub.cfg:

    menuentry "Run Ubuntu 12.04.2 Live" {
        linux   /ubuntu12.04/casper/vmlinuz  file=/ubuntu12.04/preseed/ubuntu.seed boot=casper persistent rw quiet splash --
        initrd  /ubuntu12.04/casper/initrd.lz
    }
    

Но результат всегда одинаков:

(initramfs): Unable to find a medium containing a live file system.

Где я должен разместить casper-rw файл, чтобы initramfs нашел его? Или что-нибудь, чтобы получить то, что мне нужно.

2
задан 4 July 2015 в 00:40

2 ответа

Мой опыт создания загрузочного диска вручную с помощью grub довольно хрупок. Если он сделан в системе efi, он не будет работать в системах bios, что приведет к ошибке

error:invalid arch independent ELF magic.
grub rescue>

В системах только efi загрузчики bios могут не работать. Лучше всего использовать grub-efi и syslinux точно так же, как автоматически созданный live CD.

Возможно, вы захотите сделать это для

a) для предотвращения того, чтобы папки и файлы базилиона загромождали ваш pendrive и делали его непригодным для любых других целей

b) мультизагрузки


Я использую следующую технику: put grub:

sudo grub-install --removable --root-directory=/path/to/mount /dev/sdx

Кажется, что необходим --removable или он вызывает смешные ошибки установки на некоторых компьютерах с efi

Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
Try 'modprobe efivars' as root.
[ 1123] это создает папку boot и efi. чтобы установить syslinux внутри папки boot (в отличие от стандартного live cd):

cd /path/to/mount
sudo syslinux --directory boot/syslinux --install /dev/sdx

распакуйте iso ubuntu в папку, скажем, ubuntu (/path/to/mount/ubuntu), отредактируйте /path/to/mount/boot/grub/grub.cfg, чтобы она содержала:

menuentry "Ubuntu" {
    set gfxpayload=keep
    linux   /ubuntu/casper/vmlinuz.efi  file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash live-media-path=/ubuntu/casper --
    initrd  /ubuntu/casper/initrd.lz
}

затем настройте syslinux: copy vesamenu.c32 из каталога isolinux в iso для /path/to/mount/boot/syslinux/vesamenu.c32, создайте /path/to/mount/boot/syslinux/slax.cfg, чтобы он содержал:

PROMPT 0
TIMEOUT 90
DEFAULT /boot/syslinux/vesamenu.c32


LABEL Ubuntu
MENU LABEL Ubuntu
    kernel  /ubuntu/casper/vmlinuz.efi  
    append initrd=/ubuntu/casper/initrd.lz boot=casper live-media-path=/ubuntu/casper quiet splash --
0
ответ дан 4 July 2015 в 00:40

Для Ubuntu 12.04.2 ядро ​​- /casper/vmlinuz.efi. Обратите внимание, что .efi был добавлен недавно.

Кроме того, вам не нужно извлекать файлы CD, вы можете загрузиться прямо с .iso. Вот шаблон, который я использую для мультизагрузки USB:

menuentry "YOUR TITLE" {
    insmod ntfs
    insmod iso9660
    loopback loop /distros/FILENAME.ISO
    linux (loop)/casper/vmlinuz.efi persistent boot=casper iso-scan/filename="/distros/FILENAME.ISO" noeject noprompt splash toram --
    initrd (loop)/casper/initrd.lz
}

Таким образом, я могу сохранить все дистрибутивы / версии в виде их исходных файлов .iso в каталоге /distros внутри раздела данных NTFS. Grub2 устанавливается в MBR, а его файлы /boot (включая рукописный /boot/grub/grub.cfg выше) также в разделе данных. Grub2 был установлен как:

sudo grub-install --no-floppy --root-directory="/PATH/TO/MOUNTED/USB" "/dev/sdX"
0
ответ дан 4 July 2015 в 00:40

Другие вопросы по тегам:

Похожие вопросы: