使用 Debian 自动安装并将预置插入 initrd 忽略键盘配置

使用 Debian 自动安装并将预置插入 initrd 忽略键盘配置

这是我的完整内容preseed.cfg

# Locales
d-i debian-installer/language string en_GB:en
d-i debian-installer/country string ES
d-i debian-installer/locale string en_GB.UTF-8


# Keyboard
d-i keyboard-configuration/xkb-keymap select es


# Network
d-i netcfg/choose_interface select auto
d-i netcfg/get_hostname string preseed
d-i netcfg/get_domain string unassigned-domain
d-i netcfg/wireless_wep string


# Mirror
d-i mirror/country string ES
d-i mirror/http/hostname string deb.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string
d-i mirror/suite string stable


# Accounts
d-i passwd/root-password-crypted password $1$EuB1h0/P$IIUGcTg79ZeX72l28Fh0E0
d-i passwd/user-fullname string preseed
d-i passwd/username string preseed
d-i passwd/user-password-crypted password $1$N/qFSN1R$Ub33hbzjj4.jBhbygvN0P/


# Clock and time zone
d-i clock-setup/utc boolean true
d-i time/zone string Europe/Madrid
d-i clock-setup/ntp boolean true


# Partitioning
d-i partman-auto/disk string /dev/vda
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-auto/method string lvm
d-i partman-lvm/confirm boolean true
d-i partman-auto/choose_recipe select mypartitioning
d-i partman-auto-lvm/new_vg_name string vg00
d-i partman-auto-lvm/guided_size string max
d-i partman-lvm/confirm_nooverwrite boolean true

d-i partman-auto/expert_recipe string                         \
      mypartitioning ::                                       \
              512 1 512 xfs                                   \
                      $primary{ } $bootable{ }                \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ xfs }     \
                      mountpoint{ /boot }                     \
              .                                               \
              1024 1 1024 linux-swap                          \
                      $defaultignore{ }                       \
                      $lvmok{ }                               \
                      lv_name{ swap }                         \
                      in_vg { vg00 }                          \
                      method{ swap } format{ }                \
              .                                               \
              3072 1 3072 xfs                                 \
                      $defaultignore{ }                       \
                      $lvmok{ }                               \
                      lv_name{ root }                         \
                      in_vg { vg00 }                          \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ xfs }     \
                      mountpoint{ / }                         \
              .                                               \
              6144 1 6144 xfs                                 \
                      $defaultignore{ }                       \
                      $lvmok{ }                               \
                      lv_name{ var }                          \
                      in_vg { vg00 }                          \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ xfs }     \
                      mountpoint{ /var }                      \
              .                                               \
              8192 1 1000000000 xfs                           \
                      $defaultignore{ }                       \
                      $lvmok{ }                               \
                      lv_name{ home }                         \
                      in_vg { vg00 }                          \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ xfs }     \
                      mountpoint{ /home }                     \
              .

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


# Base system
d-i base-installer/kernel/image string linux-image-amd64


# Apt
d-i apt-setup/services-select multiselect security, updates
d-i apt-setup/security_host string security.debian.org


# Package selection
tasksel tasksel/first multiselect standard, ssh-server
popularity-contest popularity-contest/participate boolean false


# Boot loader
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
d-i grub-installer/bootdev  string default


# Finishing up
d-i finish-install/reboot_in_progress note

安装成功完成,但未配置西班牙语键盘。
/etc/default/keyboard甚至没有被创建。

我尝试过但不会产生影响的事情:

  • 调整区域设置和语言设置以满足键盘设置。即,使用西班牙语和区域设置
  • 使用更多键盘定义,如变体、型号、布局、无切换等。无论我如何进一步指定键盘配置,它都不起作用。

我注意到的事情:

  • 使用网络安装(将文件存储在 Web 服务器或 PXE 服务器中)时,相同的预置工作 100%。在这些情况下,键盘将被正确配置,这让我认为这个预置文件不是问题,必须是其他问题。
  • 一位同学告诉我,你可以通过修改isolinux中的txt.cfg来更改键盘,但是整个过程有点混乱,我仍然认为你应该能够只修改预置文件来更改键盘

在这里你有完整的/var/log/安装程序/syslog使用此预置文件创建的 VM。

您认为这是一个限制还是错误?有没有任何实际方法可以通过修改预置文件来使用 initrd 预置来使键盘配置工作?为什么它可以通过网络安装运行,但不能通过 ISO 运行?

相关内容