Objectif
Je souhaite installer Ubuntu Desktop 16.04.1 LTS sans aucune assistance. Mettre le CD ISO dans le lecteur et s'en aller.
Enjeux
- Paramètres de démarrage incorrects
- Des questions sont encore posées et nécessitent des clics de souris
- Réponses compliquées à l'aide de kickstart/preseed
- Exemples de documentation ne fonctionnant pas comme prévu, notamment de la part de Partman et d'ubunutu
Je suis tombée sur ce post aquí et il était proche de ce dont j'avais besoin, mais n'accomplissait pas tout à fait ce dont j'avais besoin puisqu'il s'agissait d'Ubuntu Server. L'article suggère d'utiliser une installation Ubuntu "non graphique", mais je n'ai pas trouvé d'installation non graphique pour Ubuntu Desktop, ce qui est logique. J'ai essayé d'adapter les étapes et de les faire fonctionner pour Ubuntu Desktop 16.04.1 LTS.
Documentation utilisée
J'ai utilisé toutes les ressources suivantes...
Apparemment, je ne peux pas inclure toutes mes ressources car askubuntu n'autorise pas plus de 2 liens. Ce n'est pas très utile, alors voici une liste :
- AskUbuntu
- Ubuntu install.fr.pdf
- Exemples de semences
- Documentation de l'installateur Ubiquity
- Documentation et exemples de Partman
- Recette de partition Explication des 3 nombres et de leur pondération
- Un exemple plus complexe de présemis
Solution actuelle
J'ai créé une installation sans surveillance, mais je ne suis pas sûr qu'elle soit correcte - ce qui signifie que j'aurais dû éditer le fichier isolinux/isolinux.cfg.
Il y avait de nombreuses différences entre l'article que j'ai mis en lien et l'image du bureau Ubuntu. Voici ma solution :
Étape 1
Montage de l'ISO Ubuntu pour pouvoir copier le contenu dans un autre répertoire et éditer les fichiers pertinents.
mkdir -p /mnt/iso
mount -o loop ubuntu.iso /mnt/iso
Étape 2
J'ai ensuite copié les fichiers ISO dans un autre répertoire pour les éditer.
mkdir -p /opt/ubuntuiso
cp -rT /mnt/iso /opt/ubuntuiso
Étape 3
J'ai édité le isolinux/isolinux.cfg
et remplacé tout ce qui s'y trouve par ce qui suit :
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 ---
La ligne append est très longue, donc pour faciliter la lecture, voici toutes les options que j'ai utilisées :
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
J'ai constaté que tous ces paramètres de démarrage étaient nécessaires pour obtenir une installation sans assistance. Pour Ubuntu Server, c'est peut-être différent.
Étape 4
J'ai essayé d'utiliser et de créer de nombreux fichiers de présélection, mais j'ai constaté que plus ils étaient complexes, plus il y avait de risques d'erreurs. Voici actuellement mon fichier de présélection simple qui fonctionne avec ce qui précède isolinux.cfg
fichier.
### 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
Je n'ai pas inclus mes mots de passe cryptés, donc si vous essayez ce fichier de présélection, veuillez les changer pour un mot de passe crypté. Ici Il y a 3 façons de créer le mot de passe.
Étape 5
J'ai créé la nouvelle ISO à partir du fichier /opt/ubuntuiso/
répertoire.
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
Étape 6
Je l'ai finalement testé avec Virtualbox et l'installation s'est déroulée sans aucune assistance.
Questions
Dois-je éditer le isolinux/isolinux.cfg
fichier ?
Dans l'autre message, il semble qu'ils soient en mesure d'éditer le fichier isolinux/txt.cfg
et sont en mesure de le faire fonctionner. J'ai essayé pendant environ une heure d'utiliser le fichier isolinux/txt.cfg
mais cela n'a pas fonctionné.
Quelqu'un a-t-il une recette de partman plus complexe qui spécifie directement les partitions ? Ou une configuration LVM qui fonctionne ? J'ai essayé d'utiliser une configuration LVM simple, mais après le redémarrage, il ne démarrait pas et restait sur un écran noir. De plus, aucun des exemples de preseed que j'ai listés dans la documentation n'a fonctionné non plus.
Merci de votre aide.