web-dev-qa-db-fra.com

Ubuntu Preseed set Norwegian Keyboard?

Cela fait quelques jours maintenant que j'essaie de faire une installation sans assistance entièrement automatisée. J'ai réussi à le faire fonctionner avec Ubuntu/Cobbler et un fichier prédéfini, mais je ne peux pas définir la disposition de clavier correcte qui est norvégienne dans ce cas.

Je fais les tests sur une machine virtuelle et quand je vais avec une installation manuelle normale (pas de préconfiguration), tout fonctionne bien. Lorsque j'utilise le fichier prédéfini, je me retrouve toujours avec un clavier "anglais (US)", peu importe les nombreuses options que j'ai essayées.

Je peux le changer manuellement avec la commande "dpkg-reconfigure keyboard-configuration", mais ce n'est pas le cas. Il doit être géré automatiquement à l'aide du fichier prédéfini.

J'utilise DEBCONF_DEBUG = 5 lors du chargement de grub, et comme je le vois dans le fichier "/ var/log/installer/syslog" une fois l'installation terminée, les commandes de préconfiguration sont acceptées.

Quelqu'un peut-il aider à ce sujet? Le fichier préconfiguré que j'utilise est le suivant:

d-i debian-installer/country string NO
d-i debian-installer/language string en_US:en
d-i debian-installer/locale string en_US.UTF-8
d-i console-setup/ask_detect boolean false
d-i keyboard-configuration/layout select Norwegian
d-i keyboard-configuration/variant select Norwegian
d-i keyboard-configuration/modelcode string pc105
d-i keyboard-configuration/layoutcode string no
d-i keyboard-configuration/xkb-keymap select no
d-i netcfg/choose_interface select auto
d-i netcfg/get_hostname string myhostname
d-i netcfg/get_domain string simula.no
d-i hw-detect/load_firmware boolean true
d-i mirror/country string manual
d-i mirror/http/hostname string ftp.uninett.no
d-i mirror/http/directory string /ubuntu
d-i mirror/http/proxy string http://10.0.1.253:3142/
d-i mirror/codename string precise
d-i mirror/suite string precise
d-i clock-setup/utc boolean true
d-i time/zone string Europe/Oslo
d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server string 10.0.1.254
d-i partman-auto/method string lvm
partman-auto-lvm partman-auto-lvm/new_vg_name string vg0
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto-lvm/guided_size string max
d-i partman-auto/choose_recipe select 30atomic
d-i partman/default_filesystem string ext4
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
d-i partman/mount_style select uuid
d-i passwd/root-login boolean false
d-i passwd/make-user boolean true
d-i passwd/user-fullname string vangelis
d-i passwd/username string vangelis
d-i passwd/user-password-crypted password $6$asdafdsdfasdfasdf
d-i passwd/user-uid string
d-i user-setup/allow-password-weak boolean false
d-i passwd/user-default-groups string adm cdrom dialout lpadmin plugdev sambashare
d-i user-setup/encrypt-home boolean false
d-i apt-setup/restricted boolean true
d-i apt-setup/universe boolean true
d-i apt-setup/backports boolean true
d-i apt-setup/services-select multiselect security
d-i apt-setup/security_Host string security.ubuntu.com
d-i apt-setup/security_path string /ubuntu
tasksel tasksel/first multiselect Basic Ubuntu server, OpenSSH server
d-i pkgsel/include string build-essential htop vim nmap ntp
d-i pkgsel/upgrade select safe-upgrade
d-i pkgsel/update-policy select none
d-i pkgsel/updatedb boolean true
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
d-i finish-install/keep-consoles boolean false
d-i finish-install/reboot_in_progress note
d-i cdrom-detect/eject boolean true
d-i debian-installer/exit/halt boolean false
d-i debian-installer/exit/poweroff boolean false
2

Le programme d'installation semble être en panne. Pour toutes les versions récentes d'Ubuntu, il semble simplement ignorer les paramètres de clavier prédéfinis et toujours définir la disposition américaine. Une solution de contournement consiste à utiliser la "commande tardive" et à définir manuellement la disposition norvégienne.

d-i preseed/late_command string \
 in-target /bin/sed -i "s/XKBMODEL=\"[a-z]*\"/XKBMODEL=\"pc105\"/g"        
/etc/default/keyboard ; \
 in-target /bin/sed -i "s/XKBLAYOUT=\"[a-z]*\"/XKBLAYOUT=\"no\"/g"
/etc/default/keyboard ; \
 in-target /bin/sed -i "s/XKBVARIANT=\"[a-z]*\"/XKBVARIANT=\"\"/g"
/etc/default/keyboard ; \
 in-target /bin/sed -i "s/XKBOPTIONS=\"[a-z]*\"/XKBOPTIONS=\"\"/g"
/etc/default/keyboard ; \
 in-target /usr/sbin/dpkg-reconfigure -fnoninteractive keyboard-configuration ; \
 in-target /usr/sbin/update-locale LC_TIME=en_GB.UTF-8 LC_MESSAGES=POSIX

Notez que "/ usr/sbin/dpkg-reconfigure -fnoninteractive keyboard-configuration" est nécessaire pour obtenir également la nouvelle disposition configurée pour X11. Bien que la documentation indique que l'édition de/etc/default/keyboard est correcte, X11 n'utilisera pas la nouvelle disposition à moins que "/ usr/sbin/dpkg-reconfigure keyboard-configuration" ne soit exécuté.

Enfin, "/ usr/sbin/update-locale LC_TIME = en_GB.UTF-8" est utilisé pour obtenir une horloge de 24 heures avec une locale en_IE.UTF-8 (métrique, €, etc., mais horloge AM/PM) . (Un paramètre régional anglais européen "en_EU.UTF-8" serait une fonctionnalité intéressante.)

Inutile de dire que cette solution de contournement est vraiment moche, et l'installateur doit être corrigé pour définir automatiquement la disposition correcte du clavier.

Voir aussi https://bugs.launchpad.net/ubuntu/+source/console-setup/+bug/1553147/comments/11 .

2
Thomas Dreibholz

J'ai trouvé une solution mais elle ne répond pas exactement à ma question (préconfigurer chaque option). Encore mieux que pas de solution.

L'ajout des options de noyau suivantes se retrouve avec un clavier norvégien:

keymap=no debian-installer/keymap=no
1
Vangelis Tasoulas