Как обойти экран "Попробуй / Установи" при загрузке с USB Live Session? (без установки в USB)
Об этом уже спрашивали несколько раз (я нашел это здесь, здесь и здесь), но в основном все просто рекомендуют выполнить полную установку на флешку. Но мне нужно, чтобы он оставался как сеанс LIVE, а не как "полная установка на USB", по ряду причин (наиболее важной из них является то, что с помощью сеанса Live я могу легко установить Ubuntu с помощью значка на рабочем столе)
Итак, мои ограничения для пропуска экрана приветствия (и автоматического выбора опции "Попробовать Ubuntu"):
На самом деле это должен быть сеанс Ubuntu Live (или как можно ближе к стандартному). Одинаковый выбор программного обеспечения (gparted присутствует в живых сеансах, например, gimp нет), пользователь (имя и идентификатор), поведение (нет экрана входа в систему, нет пароля для
sudo
, чтобы назвать несколько), нет GRUB, и т. д. Это исключает полную установку Ubuntu на USB.Он должен быть в состоянии установить Ubuntu на компьютер (в то время как для полной установки требуется файл ISO, дополнительная флешка USB и хлопоты Startup Disk Creator)
Если возможно, быть настолько же быстрым, как "текстовый лаунчер" (тот, который вы используете при нажатии клавиши сразу после загрузки ядра)
Он должен быть полностью автоматическим, без присмотра от загрузки к рабочему столу.
Выберите язык, отличный от языка по умолчанию. Это может быть жесткий выбор (на самом деле, так и должно быть, поскольку сама загрузка должна быть полностью без присмотра). Но желательно быть легко измененным ("легко", как при редактировании файла конфигурации и перезагрузке)
Является ли это возможным?
Предлагаемые (отличные) решения, которые я исключил на данный момент:
Установка Ubuntu на USB-накопитель (по всем вышеупомянутым причинам)
Удалить
Ubiquity
пакет (он также удаляет возможность установки системы с этого USB)Ubuntu Customization Kit (ubk): несколько ограничений и предостережений, и его нет даже в репозиториях
Remastersys / LiLi: то же самое, что и полная прямая установка через USB, только по индивидуальному заказу.
Идеальным решением было бы что-то вроде "создать USB-накопитель с помощью Startup Disk Creator, затем открыть его и удалить / отредактировать / добавить файл (-ы) xxx, yyy, zzz"
4 ответа
Это руководство было сделано для Ubuntu (Gnome). Это работает и для Kubuntu (KDE), за некоторыми исключениями
Я смог загрузить Live CD прямо в сеанс Live без таймаута или необычного меню, возможно с установленным языковым пакетом.
Live USB (16.04)
- Смонтируйте USB с установленной на нем Ubuntu
- Сделайте резервную копию файла
syslinux/syslinux.cfg
, Мы изменим его, поэтому нам нужно заменить его обратно, если что-то пойдет не так. - Откройте следующие файлы в каталоге syslinux:
syslinux.cfg
а такжеtxt.cfg
- Удалить (или комментарий) все в
syslinux.cfg
, txt.cfg
Файл имеет записи меню GRUB по умолчанию. Скопируйте живой вsyslinux.cfg
:default live label live menu label ^Try Ubuntu without installing kernel /casper/vmlinuz.efi append file=/cdrom/preseed/ubuntu.seed boot=casper cdrom-detect/try-usb=true persistent noprompt floppy.allowed_drive_mask=0 ignore_uuid initrd=/casper/initrd.lz quiet splash --
Вы можете добавить любые конкретные параметры ядра, необходимые для вашего устройства, в строке добавления.
- Сохраните файл isolinux.cfg и загрузите систему с помощью USB. Теперь он загрузится прямо на рабочий стол.
Живой USB (13.10)
- Смонтируйте USB с установленной на нем Ubuntu
- Сделайте резервную копию файла
isolinux/isolinux.cfg
, Мы изменим его, поэтому нам нужно заменить его обратно, если что-то пойдет не так. - Откройте следующие файлы в каталоге isolinux:
isolinux.cfg
а такжеtxt.cfg
- Удалить все в
isolinux.cfg
, txt.cfg
Файл имеет записи меню GRUB по умолчанию. Скопируйте живой вisolinux.cfg
:default live label live menu label ^Try Ubuntu without installing kernel /casper/vmlinuz.efi append file=/cdrom/preseed/ubuntu.seed boot=casper cdrom-detect/try-usb=true persistent noprompt floppy.allowed_drive_mask=0 ignore_uuid initrd=/casper/initrd.lz quiet splash --
Вы можете добавить любые конкретные параметры ядра, необходимые для вашего устройства, в строке добавления.
- Сохраните файл isolinux.cfg и загрузите систему с помощью USB. Теперь он загрузится прямо на рабочий стол.
[ источник ]
Live USB (11.04)
- Перейдите в корневую папку вашего Live USB
- Введите
syslinux
каталог - Сделать
syslinux.cfg
файл для записи Заменить содержимое файла
syslinux.cfg
с:default live label live say Booting an Ubuntu Live session... kernel /casper/vmlinuz append file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash noprompt --
- Необязательно: локализуйте систему (см. Ниже)
Live CD
Если в вашем CD-приводе есть Live CD, подключите его. В противном случае, если у вас есть файл ISO, подключите его
/media/cdrom
запустив следующую команду в терминале (замените имя.iso
файл соответственно):sudo mount -o loop,ro ubuntu-11.04-desktop-amd64.iso /media/cdrom
- Создайте временный каталог, в котором можно хранить содержимое CD, скажем,
~/live-cd
(mkdir ~/live-cd
) - Скопируйте содержимое компакт-диска в папку
~/live-cd/iso
(cp -r /media/cdrom ~/live-cd/iso
) - Поскольку Live CD больше не нужен, его можно отключить (
sudo umount /media/cdrom
) - Открой
~/live-cd/iso
папка (cd ~/live-cd/iso
) - Введите
isolinux
каталог (cd isolinux
) - Сделать
isolinux.cfg
файл для записи (chmod u+w isolinux.cfg
) Заменить содержимое файла
isolinux.cfg
с:default live label live say Booting an Ubuntu Live session... kernel /casper/vmlinuz append file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
- Необязательно: локализуйте систему (см. Ниже)
Откройте терминал и запустите:
cd ~/live-cd chmod u+w iso/isolinux/isolinux.bin mkisofs -r -V "Ubuntu Live session" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ubuntu-11.04-live-amd64.iso iso
- Новый iso будет доступен на
~/live-cd/ubuntu-11.04-live-amd64.iso
, Для экономии места~/live-cd/iso
каталог может быть удален. (rm -rf ~/live-cd/iso
) - Теперь сожги
ubuntu-11.04-live-amd64.iso
файл на компакт-диске, если это необходимо.
Локализуйте Ubuntu (переводы)
Если вам нужна система на языках английский, испанский, португальский, коса или упрощенный китайский, просто добавьте locale=
вариант загрузки с en
, es
, pt
, xh
или же zh
к append
строка как в:
... quiet splash locale=pt --
В противном случае, если вы не хотите изменять файл, содержащий корневую файловую систему (filesystem.squashfs
) и не против взломать, продолжайте читать.
Откройте терминал и перейдите к ~/live-cd/iso
и поместите код из http://pastebin.com/VTdt9WFZ в файл (назовите его install-locale
) и запустить его.
Этот скрипт монтирует filesystem.squashfs
извлекает из него информацию о версии языковых пакетов, загружает пакеты и помещает их в каталог locale-hack
, Затем создается скрипт, который устанавливает языковые пакеты во время загрузки. Чтобы это работало, скрипт также изменяет syslinux.cfg
или же isolinux.cfg
файл, чтобы применить эти изменения.
Вам будет предложено указать локаль, введите что-то вроде nl
или же de
, Сценарий не настолько умен, чтобы понимать такие вещи, как Dutch
или же German
, После этого файл может быть удален
Команды терминала, которые должны быть выполнены:
cd ~/live-cd/iso
wget http://pastebin.com/raw.php?i=VTdt9WFZ -O install-locale
bash install-locale
rm install-locale
Обратите внимание, что добавление языкового пакета может вызвать сгенерированный .iso
файл размером более 700 МБ, который не помещается на CD. Однако для виртуальных машин этого достаточно. У этого взлома есть побочный эффект, что Plymouth не работает (то есть вы не получаете причудливый загрузочный экран), но по крайней мере система переводится при входе в систему. В противном случае вам пришлось установить language-pack-gnome-*
вручную.
Рекомендации
Вышесказанное прекрасно работает как для Startup Disk Creator, так и для UNetbootin. Если вы используете постоянную флешку, вам нужно добавить слово постоянный следующим образом:
default live
label live
say Booting an Ubuntu Live session...
kernel /casper/vmlinuz
append file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --
Для 64-битной системы код немного отличается
default live
label live
say Booting an Ubuntu Live session...
kernel /casper/vmlinuz.efi
append file=/cdrom/preseed/ubuntu.seed boot=casper persistent initrd=/casper/initrd.lz quiet splash noprompt --
В 14.04 и, возможно, раньше, Ubiquity использует upstart для запуска. Вы можете отключить это, изменив /etc/init/ubiquity.conf
,
1) Если вы не используете саму установку Live, сначала смонтируйте casper-rw:
# Mount the usb_drive manually if nautilus has not done it for you
# Change sdb1 to the proper location of your usb drive, find it using sudo blkid
sudo mkdir /media/$USER/usb_drive
sudo mount /dev/sdb1 /media/$USER/usb_drive
# Create a mount point for the read-write file system and mount via loopback
sudo mkdir /media/$USER/casper-rw
sudo mount -o loop /media/$USER/usb_drive/casper_rw /media/$USER/casper-rw
cd /media/$USER/casper-rw
2) Редактировать etc/init/ubiquity.conf
в рамках Live установите и закомментируйте следующие строки:
#start on (starting gdm
# or starting kdm
# or starting xdm
# or starting lxdm
# or starting lightdm)
Если вы ремастерируете диск, вы можете просто отредактировать мастер ubiquity.conf
в системе squashfs. При повторном запуске Ubiquity полностью исчезнет с вашего пути.
3) Размонтировать диски
sudo umount /media/$USER/*
По какой причине ты не хотел remastersys? Вы можете установить ОС, сделать iso с помощью remastersys, извлечь файл squashfs и заменить его на исходном iso (или предварительно созданной папке usb).
Я делаю это часто