Cel, powód
Chcę zainstalować Ubuntu Desktop 16.04.1 LTS całkowicie bez nadzoru. Włóż ISO CD i odejdź.
Zagadnienia
- Niepoprawne parametry rozruchu
- Pytania są wciąż zadawane i wymagają kliknięcia myszą
- Skręcone odpowiedzi za pomocą kickstart / preseed
- Przykłady dokumentacji nie działają, jak stwierdzono, szczególnie od partman i ubunutu
Natknąłem się na ten post tutaj i był blisko tego, czego potrzebowałem, ale nie do końca osiągnąłem to, czego potrzebowałem, ponieważ było to dla Ubuntu Server. Post sugeruje użycie „nie graficznej” instalacji Ubuntu, ale nie mogłem znaleźć nie graficznej instalacji Ubuntu Desktop, co ma sens. Próbowałem dostosować kroki i sprawić, by działało w Ubuntu Desktop 16.04.1 LTS.
Wykorzystana dokumentacja
Użyłem wszystkich następujących zasobów ...
Najwyraźniej nie mogę uwzględnić wszystkich moich zasobów, ponieważ askubuntu nie zezwala na więcej niż 2 linki. To nie jest zbyt pomocne - oto lista:
- AskUbuntu
- Ubuntu install.en.pdf
- Preseed Przykłady
- Dokumentacja instalatora Ubiquity
- Dokumentacja i przykłady Partmana
- Przepis na partycję Wyjaśnienie 3 liczb i ich wagi
- Bardziej złożony przykład preseed
Aktualne rozwiązanie
Obecnie utworzyłem instalację nienadzorowaną, ale nie jestem pewien, czy jest poprawny - co oznacza, że powinienem był edytować plik isolinux / isolinux.cfg
Było wiele różnic między postem, który podłączyłem, a obrazem Ubuntu Desktop. Oto moje rozwiązanie:
Krok 1
Zamontowałem system Ubuntu ISO, dzięki czemu mogę skopiować zawartość do innego katalogu, a następnie edytować odpowiednie pliki.
mkdir -p /mnt/iso
mount -o loop ubuntu.iso /mnt/iso
Krok 2
Następnie skopiowałem pliki ISO do innego katalogu w celu edycji.
mkdir -p /opt/ubuntuiso
cp -rT /mnt/iso /opt/ubuntuiso
Krok 3
Zedytowałem isolinux/isolinux.cfg
plik i zastąpiłem wszystko wewnątrz następującym:
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 ---
Linia dołączająca jest bardzo długa, więc dla łatwego czytania, oto wszystkie opcje, których użyłem:
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
Odkryłem, że wszystkie te parametry rozruchowe były potrzebne, aby uzyskać całkowicie nienadzorowaną instalację. W przypadku Ubuntu Server może być inaczej.
Krok 4
Próbowałem używać i tworzyć wiele wstępnie przygotowanych plików, ale uznałem, że im bardziej złożony, tym większa szansa na błędy. To jest obecnie mój prosty plik, który działa z powyższym isolinux.cfg
plikiem.
### 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
Nie uwzględniłem moich zaszyfrowanych haseł, więc jeśli spróbujesz tego wstępnie zapisanego pliku, zmień je na zaszyfrowane hasło. Oto 3 sposoby na utworzenie hasła.
Krok 5
Utworzyłem nowy ISO z /opt/ubuntuiso/
katalogu.
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
Krok 6
W końcu przetestowałem go z Virtualbox i stworzyłem całkowicie nienadzorowaną instalację.
pytania
Czy powinienem edytować isolinux/isolinux.cfg
plik?
W drugim poście wydaje się, że są w stanie edytować isolinux/txt.cfg
plik i są w stanie to zrobić. Próbowałem przez około godzinę użyć isolinux/txt.cfg
, ale to nie zadziałało.
Czy ktoś ma działającą bardziej złożoną recepturę partmana, która bezpośrednio określa partycje? Czy działająca konfiguracja LVM? Próbowałem użyć prostej konfiguracji LVM, ale po ponownym uruchomieniu nie uruchomił się i po prostu usiadł czarny ekran. Nie działał też żaden z wcześniejszych przykładów wymienionych w dokumentacji.
Dziękuję za wszelką pomoc.
dd if=/tmp/ubuntu16-desktop-unattended-install.iso of=/dev/sdc bs=4M && sync
. Niestety klucz USB (tylko jeśli zawiera niestandardową wersję ISO: działa na oryginalną wersję) nie znajduje się w proponowanych opcjach rozruchu, więc wygląda na to, że nie można go uruchomić. Może masz pojęcie o tym, co się dzieje?