Я хочу установить Ubuntu Desktop 16.04.1 LTS полностью без присмотра.
Я наткнулся на этот пост здесь, и он был близок к тому, что мне нужно, но не совсем выполнил то, что мне было нужно, так как это было для Ubuntu Server. Сообщение предлагает использовать «неграфическую» установку Ubuntu, но я не смог найти неграфическую установку для Ubuntu Desktop, что имеет смысл. Я попытался адаптировать этапы и заставить их работать для Ubuntu Desktop 16.04.1 LTS.
Я использовал все следующие ресурсы ...
[d12 ] По-видимому, я не могу включить все свои ресурсы, потому что askubuntu не разрешает более двух ссылок. Ну, это не очень полезно - вот список:
Параметры загрузки неверны Ubuntu install.en.pdf Вопросы, которые еще требуют и требуют щелчков мыши [!d5 ] Документация установщика Ubiquity Сконструированные ответы с использованием kickstart / preseed Рецепт раздела Объяснение трех чисел и их взвешивания Примеры документации не работают, как указано, в частности, от partman и ubunutuВ настоящее время я создал автоматическую установку, но не уверен, что это правильно - это означает, что я должен был отредактировать isolinux / isolinux.cfg
. Были много различий между сообщением, которое я связал, и образ рабочего стола Ubuntu. Вот мое решение:
Установил Ubuntu ISO, чтобы я мог скопировать содержимое в другой каталог, а затем отредактировать соответствующие файлы.
mkdir -p /mnt/iso
mount -o loop ubuntu.iso /mnt/iso
Затем я скопировал файлы ISO в другой каталог для редактирования.
mkdir -p /opt/ubuntuiso
cp -rT /mnt/iso /opt/ubuntuiso
Я отредактировал файл isolinux/isolinux.cfg и заменил все внутри со следующим:
default live-install
label live-install
menu label ^Install Ubuntu
kernel /casper/vmlinuz.efi
append file=/cdrom/ks.preseed auto=true priority=critical debian-installer/locale=en_US keyboard-configuration/layoutcode=us ubiquity/reboot=true languagechooser/language-name=English countrychooser/shortlist=US localechooser/supported-locales=en_US.UTF-8 boot=casper automatic-ubiquity initrd=/casper/initrd.lz quiet splash noprompt noshell ---
Строка append очень длинная, поэтому для удобства чтения, вот все опции, которые я использовал:
file=/cdrom/ks.preseed
auto=true
priority=critical
debian-installer/locale=en_US
keyboard-configuration/layoutcode=us
ubiquity/reboot=true
languagechooser/language-name=English
countrychooser/shortlist=US
localechooser/supported-locales=en_US.UTF-8
boot=casper
automatic-ubiquity
initrd=/casper/initrd.lz
quiet
splash
noprompt
noshell
Я обнаружил, что все эти параметры загрузки были необходимы, чтобы получить полностью автоматическую установку. Для Ubuntu Server это может быть другим.
Я попытался использовать и создать много файлов preseed, но я нашел более сложным, тем больше вероятность ошибок. Это мой простой файл preseed, который работает с указанным выше файлом isolinux.cfg.
### Partitioning
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-auto/choose_recipe select atomic
# This makes partman automatically partition without confirmation
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
# Locale
d-i debian-installer/locale string en_US
d-i console-setup/ask_detect boolean false
d-i console-setup/layoutcode string us
# Network
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain
d-i netcfg/choose_interface select auto
# Clock
d-i clock-setup/utc-auto boolean true
d-i clock-setup/utc boolean true
d-i time/zone string US/Pacific
d-i clock-setup/ntp boolean true
# Packages, Mirrors, Image
d-i base-installer/kernel/override-image string linux-server
d-i base-installer/kernel/override-image string linux-image-amd64
d-i mirror/country string US
d-i mirror/http/proxy string
d-i apt-setup/restricted boolean true
d-i apt-setup/universe boolean true
d-i pkgsel/install-language-support boolean false
tasksel tasksel/first multiselect ubuntu-desktop
# Users
d-i passwd/user-fullname string Liason
d-i passwd/username string liason
d-i passwd/user-password-crypted password [crpyt 3]
d-i passwd/root-login boolean true
d-i passwd/root-password-crypted password [crypt 3]
d-i user-setup/allow-password-weak boolean true
# Grub
d-i grub-installer/grub2_instead_of_grub_legacy boolean true
d-i grub-installer/only_debian boolean true
d-i finish-install/reboot_in_progress note
# Custom Commands
Я не включил свои зашифрованные пароли, поэтому, если вы попробуете этот файл preseed, пожалуйста, измените их на зашифрованный пароль , здесь - это 3 способа сделать пароль.
Я создал новый ISO из каталога /opt/ubuntuiso/.
[ f6]Я, наконец, протестировал его с помощью Virtualbox и создал полностью автоматическую установку.
Должен ли я редактировать isolinux/isolinux.cfg file?
В другом сообщении кажется, что они могут редактировать файл isolinux/txt.cfg и могут выполнить эту работу. Я пробовал около часа использовать isolinux/txt.cfg, но это не сработало.
У кого-нибудь есть более сложный рецепт partman, который напрямую определяет разделы? Или рабочая настройка LVM? Я попытался использовать простую настройку LVM, но после перезагрузки он не загрузился и просто сидел бы на черном экране. Кроме того, ни один из предпродажных примеров, перечисленных в документации, не работал.
Спасибо за любую помощь.
Мне жаль, что мой прежний метод не сработал. К счастью, я нашел сценарий, разработанный Ринк Зонненберга (netson), что создало бы без присмотра AMD64 ISOs из Ubuntu Server на GitHub, и я раздвоенной его. Затем я улучшил сценарий, добавив возможность создания I386 ISO. Я также сменил ОС с Ubuntu Server на Ubuntu Desktop. Вам не нужно посещать хранилище GitHub, вы можете просто следовать приведенным ниже инструкциям
Выполните эти команды. :
$ wget https://raw.githubusercontent.com/iPlus-TechNet/ubuntu-unattended/master/create-unattended-iso.sh
$ chmod +x create-unattended-iso.sh
$ sudo ./create-unattended-iso.sh
Иногда wget не доступен. Если это так, то используйте curl:
.$ curl -O https://raw.githubusercontent.com/iPlus-TechNet/ubuntu-unattended/master/create-unattended-iso.sh
Если ни одна из этих работ, загрузить его и переместить его в вашу домашнюю папку
Вы будет задан вопрос, который версию Ubuntu для установки, а затем вопросы Ubuntu спросят, выполняете ли вы ручную установку. Затем скрипт загрузит ISO Ubuntu, а затем применит внесенные в него изменения. Теперь у вас есть ISO, который готов для автоматической установки!
Это должно ответить на ваш вопрос, потому что это сработало для меня отлично. Также хорошо, что этот метод намного проще, чем мой прежний ответ. Надеюсь, это сработает для вас, как и для нас.
ПОЖАЛУЙСТА, НЕ ПОПРОБУЙТЕ ЭТОТ МЕТОД. НЕ РАБОТАЕТ (ЕСЛИ ВЫ ПЫТАЕТЕ УБИТЬ ВРЕМЯ):
Я видел ответ на все это. Я расскажу вам самое общее решение. Я никогда не пробовал это перед собой, поэтому он может быть устаревшим. Я действительно не понимаю смысла, потому что просто выполнить ручную установку было бы проще, но в любом случае ...
Войти как root или запустить $ sudo su -
Загрузить и установите ISO.
# mkdir -p /opt/ubuntuiso
# cp -rT /mnt/iso /opt/ubuntuiso
Заблокировать часть языка GUI из
# cd /opt/ubuntuiso
# echo en >isolinux/lang
Добавить файл «Kickstart».
# apt install system-config-kickstart
# system-config-kickstart
[OPTIONAL] Добавить пакеты для вашей установки
# vim /path/to/ks.cfg #[OPTIONAL]
Или просто найти его в своих файлах и отредактируйте его напрямую. Добавьте %packages раздел и поместите под него свои пакеты.
%packages
# Add your packages below. Example:
@ ubuntu-server
apache2
mysql-server
php7.0
php-pear
libapache2-mod-php7.0
php7.0-mysql
php7.0-curl
php7.0-json
php7.0-cgi
Как я уже сказал, я никогда не делал этого сам, поэтому, если у вас была такая конфигурация, как выше, (! d9)
Подавлять вопросы с помощью файла «preseed».# echo 'd-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition \
select Finish partitioning and write changes to disk
d-i partman/confirm boolean true' > ks.preseed
Активировать файлы:
# vi isolinux/txt.cfg
Затем выполните поиск:
label install
menu label ^Install Ubuntu Server
kernel /install/vmlinuz
append file=/cdrom/preseed/ubuntu-server.seed vga=788 initrd=/install/initrd.gz quiet --
Затем вам нужно будет добавить ks=cdrom:/ks.cfg и preseed/file=/cdrom/ks.preseed. Удалите слова quiet и vga=788, так что это выглядит так:
append file=/cdrom/preseed/ubuntu-server.seed initrd=/install/initrd.gz ks=cdrom:/ks.cfg preseed/file=/cdrom/ks.preseed --
Теперь вы можете создать новый ответ:
# mkisofs -D -r -V "ATTENDLESS_UBUNTU" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o /opt/autoinstall.iso /opt/ubuntuiso
И вот вы идете! [ ! d15]
Посмотрите: https://github.com/core-process/linux-unattended-installation
Этот проект предоставляет все необходимое для автоматической установки минимальной настройки Linux, в то время как минимальный переводит на самую легкую настройку, включая службу OpenSSH и Python, которую вы можете получить от стандартного установщика дистрибутива Linux. Идея заключается в том, что после завершения минимальной настройки вы сделаете все дальнейшее развертывание своих конфигураций и сервисов с помощью Ansible или подобных инструментов.
Отличная работа Brandon Authier за ваши сообщения и инструкции, вы мне очень помогли.
У меня была одна проблема с вашим методом: я узнал, что после завершения установки и перезагрузки ПК GRUB зависает. [ ! d1]
Итак, я добавил к ks.preseed следующее:
# Due notably to potential USB sticks, the location of the MBR can not be
# determined safely in general, so this needs to be specified:
d-i grub-installer/bootdev string /dev/sda
# To install to the first device (assuming it is not a USB stick):
#d-i grub-installer/bootdev string default
Это предотвратит сбой установки grub, если вы не удалите USB-накопитель. Я получил это от https://www.debian.org/releases/stable/example-preseed.txt