ฉันกำลังพยายาม preseed debian 11 netinstall โดยอัตโนมัติ
ฉันอ่านเอกสารมากมายที่นี่:
นี่คือบรรทัดบูตของฉัน (จาก grub.cfg)
ตั้งค่าเริ่มต้น = "ติดตั้งอัตโนมัติ"
หมดเวลาที่กำหนด = 3
เมนูรายการ "Debian 11 อัตโนมัติเต็มรูปแบบ UEFI LVM LUKS BTRFS ถอดรหัสระยะไกล DEBUG TTY4" --id autoinstall {
ตั้ง background_color=สีดำ
linux /debian-installer/amd64/linux auto=true url=tftp://192.168.1.100/preseed/debseed11_crypt.cfg net.ifnames=0 biosdevname=0 ipv6.disable=1 language=en locale=en_US.UTF-8 keymap=fr vga=788 noprompt DEBCONF_DEBUG=5 --- เงียบ
initrd /debian-installer/amd64/initrd.gz
}
นี่คือไฟล์ preseed ของฉัน:
#### ไฟล์การกำหนดค่าล่วงหน้าล่วงหน้า (สำหรับ Debian Buster)
### คำสั่งเริ่มต้นของพลพรรค
### พารามิเตอร์เคอร์นัล
#d-i debian-installer/add-kernel-opts string net.ifnames=0 biosdevname=0 hostname=unassigned-hostname domain=unassigned-domain
#d-i debconf/ลำดับความสำคัญที่สำคัญ
#d-i debian-installer/add-kernel-opts string net.ifnames=0 biosdevname=0 console=ttyS0,19200n8
### การแปลเป็นภาษาท้องถิ่น
d-i ตัวติดตั้งเดเบียน/โลแคล สตริง en_US
d-i ตัวติดตั้งเดเบียน/สตริงภาษา en
d-i ตัวติดตั้งเดเบียน/สตริงประเทศ US
#d-i สตริงตัวติดตั้งเดเบียน/โลแคล en_US.UTF-8 fr_FR.UTF-8
d-i localechooser/supported-locales multiselect en_US.UTF-8, fr_FR.UTF-8
### การเลือกแป้นพิมพ์
การกำหนดค่าแป้นพิมพ์ d-i/xkb-keymap เลือก fr
### การกำหนดค่าเครือข่าย
# Netcfg choisira une interface connectée เป็นไปได้ Cela empachera
# # d'afficher une liste s'il y a plusieurs interfaces.
d-i netcfg/choose_interface เลือกอัตโนมัติ
#d-i netcfg/choose_interface เลือก eth0
d-i สตริง netcfg/use_dhcp จริง
d-i netcfg/link_wait_timeout สตริง 10
d-i netcfg/dhcp_timeout สตริง 60
#d-i netcfg/disable_autoconfig บูลีนจริง
d-i netcfg/dhcp_failed หมายเหตุ
#d-i netcfg/dhcp_options เลือกอัตโนมัติ
#กำหนดค่าเครือข่ายด้วยตนเอง
# การกำหนดค่าเครือข่ายคงที่ IPv4
#d-i netcfg/get_ipaddress สตริง 192.168.1.120
#d-i netcfg/get_netmask สตริง 255.255.255.0
#d-i netcfg/get_gateway สตริง 192.168.1.1
#d-i netcfg/get_nameservers สตริง 192.168.1.1
#d-i netcfg/confirm_static บูลีนจริง
# ตั้งชื่อโฮสต์
#d-i netcfg/get_hostname สตริง zhurong
#d-i netcfg/get_domain สตริง planet.mars
# บังคับชื่อโฮสต์
#d-i netcfg/ชื่อโฮสต์ สตริง zhurong.planet.mars
# ปิดการใช้งานกล่องโต้ตอบคีย์ WEP ที่น่ารำคาญ
d-i สตริง netcfg/wireless_wep
d-i netcfg/get_hostname ไม่ได้กำหนดชื่อโฮสต์
d-i netcfg/get_domain ไม่ได้กำหนดโดเมน
d-i netcfg/get_hostname เห็นจริง
d-i netcfg/get_domain เห็นจริง
### การตั้งค่ากระจก
คู่มือ d-i mirror/country string
d-i มิเรอร์/http/ชื่อโฮสต์ สตริง httpredir.debian.org
d-i มิเรอร์/http/directory string /debian.d-i
d-i มิเรอร์/http/proxy สตริง
### การตั้งค่าบัญชี
# ข้ามการสร้างบัญชีผู้ใช้ปกติ
d-i passwd/make-user บูลีนเป็นเท็จ
# ตั้งรหัสผ่านรูท
# หรือเข้ารหัสโดยใช้แฮช crypt(3)
d-i passwd/root-password-crypted password $6$47Cx5oMpkh66eYNI$LV76xupgkvZ3rHJCq1NgXKzp3bBDv6g0FmMiSvmUp1jqaIkTEz5F6eA.SRhBzyPReVQEnzZWwFWSdKGBBn.tE1
### การตั้งค่านาฬิกาและโซนเวลา
# ตั้งค่านาฬิกาฮาร์ดแวร์เป็น UTC
d-i ตั้งค่านาฬิกา/utc บูลีนจริง
# ตั้งเขตเวลา
d-i เวลา/โซน สตริง ยุโรป/ปารีส
# ใช้นาฬิกา NTP ระหว่างการติดตั้ง
d-i ตั้งค่านาฬิกา/ntp บูลีนจริง
### การแบ่งพาร์ติชัน
# วิธี LVM LUKS
# ยับยั้ง partman เพื่อเติมดิสก์ด้วยข้อมูลสุ่ม
d-i partman-auto-crypto/erase_disks บูลีนเท็จ
#d-i partman/early_command \
# สตริง dd if=/dev/zero of=/dev/sda bs=512 count=1
d-i partman-auto/method การเข้ารหัสลับสตริง
d-i partman-lvm/device_remove_lvm บูลีนจริง
d-i partman-md/device_remove_md บูลีนจริง
d-i partman-lvm/ยืนยันบูลีนจริง
d-i partman-auto-lvm/guided_size สตริงสูงสุด
d-i partman-auto-lvm/new_vg_name สตริงเดเบียน
d-i partman-auto/disk สตริง /dev/vda.d-i
d-i partman-auto/choose_recipe เลือก boot-crypto
d-i partman-crypto/passphrase รหัสผ่าน aaabbcccc
d-i partman-crypto/passphrase-อีกครั้ง รหัสผ่าน aaabbcccc
d-i partman-auto/expert_recipe สตริง \
boot-crypto :: \
1024 1024 1024 ต่อ 4 \
$primary{ } $บูตได้{ } \
วิธีการ{ รูปแบบ } รูปแบบ{ } \
use_filesystem{ } ระบบไฟล์{ ext4 } \
เมานต์พอยต์{ /boot } \
. \
8192 8192 8192 แลกเปลี่ยนลินุกซ์ \
$lvmok{ } lv_name{ แลกเปลี่ยน } \
in_vg { เดเบียน } \
วิธีการ{ สลับ } รูปแบบ{ } \
. \
80896 80896 1000000 btrfs \
$lvmok{ } lv_name{ ราก } \
in_vg { เดเบียน } \
วิธีการ{ รูปแบบ } รูปแบบ{ } \
use_filesystem{ } ระบบไฟล์{ btrfs } \
จุดเมานต์{ / } \
. \
#d-i partman-basicfilesystems/no_mount_point บูลีนเท็จ
d-i partman-partitioning/confirm_write_new_label บูลีนจริง
d-i partman/choose_partition เลือกเสร็จสิ้น
d-i partman/ยืนยันบูลีนจริง
d-i partman/confirm_nooverwrite บูลีนจริง
d-i partman-md/ยืนยันบูลีนจริง
d-i partman-partitioning/confirm_write_new_label บูลีนจริง
d-i partman/choose_partition เลือกเสร็จสิ้น
d-i partman/ยืนยันบูลีนจริง
d-i partman/confirm_nooverwrite บูลีนจริง
### การตั้งค่าที่เหมาะสม
d-i apt-setup/cdrom/set-first บูลีนเท็จ
d-i apt-setup/cdrom/set-next บูลีนเท็จ
d-i apt-setup/cdrom/set-failed boolean เท็จ
d-i apt-setup/services-select multiselect security, updates
d-i apt-setup/security_host สตริง security.debian.org
### การเลือกแพ็คเกจ
taskel taskel/มาตรฐานการเลือกหลายรายการแรก
# แพ็คเกจเพิ่มเติมส่วนบุคคลที่จะติดตั้ง
d-i pkgsel/รวมสตริง opensh-server vim tmux tcpdump dropbear-initramfs cryptsetup-initramfs python3.9
d-i pkgsel/upgrade เลือกการอัพเกรดแบบเต็ม
d-i pkgsel/update-policy เลือกไม่มีเลย
d-i pkgsel/updatedb บูลีนจริง
การประกวดความนิยมการประกวดความนิยม/การมีส่วนร่วมบูลีนเท็จ
### สิ่งที่ด้วง
d-i grub-installer/only_debian บูลีนจริง
d-i grub-installer/bootdev สตริงเริ่มต้น
# หมายเหตุ: ตัวเลือกที่ส่งไปยังโปรแกรมติดตั้งจะถูกเพิ่มโดยอัตโนมัติ
#d-i debian-installer/add-kernel-opts string nousb.d-i
# รหัสผ่านเพิ่มเติมสำหรับด้วงไม่ว่าจะเป็นข้อความที่ชัดเจน
# #d-i ตัวติดตั้งด้วง / รหัสผ่าน r00tme
# #d-i ตัวติดตั้งด้วง / รหัสผ่านอีกครั้งรหัสผ่าน r00tme
# # หรือเข้ารหัสโดยใช้แฮช MD5 โปรดดูที่ grub-md5-crypt(8)
# #d-i grub-installer/รหัสผ่านที่เข้ารหัส [แฮช MD5]
#
# # ใช้ตัวเลือกต่อไปนี้เพื่อเพิ่มพารามิเตอร์การบู๊ตเพิ่มเติมสำหรับ
# # ระบบที่ติดตั้ง (หากรองรับโดยตัวติดตั้ง bootloader)
# # หมายเหตุ: ตัวเลือกที่ส่งไปยังโปรแกรมติดตั้งจะถูกเพิ่มโดยอัตโนมัติ
# #d-i debian-installer/add-kernel-opts สตริง nousb
#
# ### จบการติดตั้ง
# # หลีกเลี่ยงข้อความสุดท้ายเกี่ยวกับการติดตั้งที่เสร็จสมบูรณ์
d-i เสร็จสิ้นการติดตั้ง/reboot_in_progress note
d-i preseed/late_command สตริง \
mkdir -p -m 700 /target/root/.ssh; \
echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEe3gF//znGIzq30frI6O9qDn5eM6uqEZZlx7mR5SiS" > /target/root/.ssh/authorized_keys; \
chown ในเป้าหมาย --recursive root:root /root/.ssh; \
ในเป้าหมาย chmod 0644 /root/.ssh/authorized_keys; \
in-target update-alternatives --set editor /usr/bin/vim.basic; \
in-target passwd --expire root; \
echo ในเป้าหมาย 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEe3gF//znGIzq30frI6O9qDn5eM6uqEZZlx7mR5SiS' > /etc/dropbear-initramfs/authorized_keys; \
ในเป้าหมาย sed -i '/*PasswordAuthentication*/c\PasswordAuthentication no' /etc/ssh/sshd_config; \
ในเป้าหมาย sed -i '/*PasswordAuthentication*/c\PasswordAuthentication no' /etc/ssh/sshd_config; \
เปิดใช้งาน systemctl ในเป้าหมาย - ตอนนี้ sshd; \
ในเป้าหมาย sed -i '/*DROPBEAR_OPTIONS=*/c\DROPBEAR_OPTIONS="-I 300 -j -k -p 22 -s -c /bin/cryptroot-unlock "' /etc/dropbear-initramfs/config; \
ในเป้าหมาย sed -i '/*IP=*/c\IP="dhcp"' /etc/initramfs-tools/initramfs.conf; \
ในเป้าหมาย update-initramfs -u;
#
ในขณะนี้ฉันได้รับตัวติดตั้ง debien ที่ขอ:
ฉันแค่พยายามที่จะกำจัดคำถามเหล่านั้น นี่คือสิ่งที่ฉันพยายาม:
- ฉันพยายามเล่นด้วย Priority=Critical ในตัวเลือกเคอร์เนลบรรทัดคำสั่งบนเซิร์ฟเวอร์ pxe
- ฉันกำหนดค่าเซิร์ฟเวอร์ dhcpd ของฉันเพื่อจัดการชื่อโดเมนชื่อโฮสต์ของโฮสต์เฉพาะนี้
ความอยากรู้อยากเห็นของโฮสต์ {
ฮาร์ดแวร์อีเธอร์เน็ต 12:34:45:12:34:56;
ที่อยู่คงที่ 192.168.1.90;
ชื่อโฮสต์ตัวเลือก "ความอยากรู้อยากเห็น";
ตัวเลือกชื่อโดเมน "planet.mars";
}
ฉันรู้ว่าฉันสามารถตั้งค่าตัวแปรชื่อโฮสต์/โดเมนได้ และทั้งหมดก็ไม่เป็นไร แต่ฉันต้องการสร้าง preseed ที่เป็นสากลเพื่อปรับใช้บนเซิร์ฟเวอร์หลายเครื่อง
ความช่วยเหลือหรือเบาะแสบางอย่างจะได้รับการชื่นชมมาก
ล่วงหน้าขอขอบคุณ
แก้ไข : แก้ไข :
โดยวิธีการที่ preseed แรกไม่สมบูรณ์แบบ หากมีคนสนใจที่นี่จะดีกว่า
มันทำการ Debian 11 UEFI LUKS BTRFS ถอดรหัสระยะไกลโดยอัตโนมัติอย่างสมบูรณ์ผ่าน ssh DEBUG TTY4
#### ไฟล์การกำหนดค่าล่วงหน้าล่วงหน้า (สำหรับ Debian bullseye)
# Debian 11 UEFI LVM อัตโนมัติเต็มรูปแบบ LUKS BTRFS ถอดรหัสระยะไกลผ่าน ssh DEBUG # TTY4
### คำสั่งเริ่มต้นของพลพรรค
### พารามิเตอร์เคอร์เนล
#d-i debian-installer/add-kernel-opts string net.ifnames=0 biosdevname=0 hostname=unassigned-hostname domain=unassigned-domain
#d-i debconf/ลำดับความสำคัญที่สำคัญ
#d-i debian-installer/add-kernel-opts string net.ifnames=0 biosdevname=0 console=ttyS0,19200n8
### การแปลเป็นภาษาท้องถิ่น
d-i ตัวติดตั้งเดเบียน/โลแคล สตริง en_US
d-i ตัวติดตั้งเดเบียน/สตริงภาษา en
d-i ตัวติดตั้งเดเบียน/สตริงประเทศ US
#d-i สตริงตัวติดตั้งเดเบียน/โลแคล en_US.UTF-8 fr_FR.UTF-8
d-i localechooser/supported-locales multiselect en_US.UTF-8, fr_FR.UTF-8
### การเลือกแป้นพิมพ์
การกำหนดค่าแป้นพิมพ์ d-i/xkb-keymap เลือก fr
### การกำหนดค่าเครือข่าย
# Netcfg choisira une interface connectée เป็นไปได้ Cela empachera
# # d'afficher une liste s'il y a plusieurs interfaces.
d-i netcfg/choose_interface เลือกอัตโนมัติ
#d-i netcfg/choose_interface เลือก eth0
d-i สตริง netcfg/use_dhcp จริง
d-i netcfg/link_wait_timeout สตริง 10
d-i netcfg/dhcp_timeout สตริง 60
#d-i netcfg/disable_autoconfig บูลีนจริง
d-i netcfg/dhcp_failed หมายเหตุ
#d-i netcfg/dhcp_options เลือกอัตโนมัติ
#กำหนดค่าเครือข่ายด้วยตนเอง
# การกำหนดค่าเครือข่ายคงที่ IPv4
#d-i netcfg/get_ipaddress สตริง 192.168.1.120
#d-i netcfg/get_netmask สตริง 255.255.255.0
#d-i netcfg/get_gateway สตริง 192.168.1.1
#d-i netcfg/get_nameservers สตริง 192.168.1.1
#d-i netcfg/confirm_static บูลีนจริง
# ตั้งชื่อโฮสต์
#d-i netcfg/get_hostname สตริง zhurong
#d-i netcfg/get_domain สตริง planet.mars
# บังคับชื่อโฮสต์
#d-i netcfg/ชื่อโฮสต์ สตริง zhurong.planet.mars
# ปิดการใช้งานกล่องโต้ตอบคีย์ WEP ที่น่ารำคาญ
d-i สตริง netcfg/wireless_wep
#d-i netcfg/get_hostname=ติดตั้ง
d-i netcfg/get_hostname ไม่ได้กำหนดชื่อโฮสต์
d-i netcfg/get_domain ไม่ได้กำหนดโดเมน
d-i netcfg/get_hostname เห็นจริง
d-i netcfg/get_domain เห็นจริง
### การตั้งค่ากระจก
คู่มือ d-i mirror/country string
d-i มิเรอร์/http/ชื่อโฮสต์ สตริง httpredir.debian.org
d-i มิเรอร์/http/directory string /debian.d-i
d-i มิเรอร์/http/proxy สตริง
### การตั้งค่าบัญชี
# ข้ามการสร้างบัญชีผู้ใช้ปกติ
d-i passwd/make-user บูลีนเป็นเท็จ
# ตั้งรหัสผ่านรูท
# หรือเข้ารหัสโดยใช้แฮช crypt(3)
d-i passwd/root-password-crypted password $6$47Cx5oMpkh999YNI$XG76xupgkvZ3rHJCq1NgXKzp3bBfIuj0FmMiSvmUp1jqaIkTEz5F6eA.SRhBzyPReVQEnzZWwFWSdYGCBn.tE1
### การตั้งค่านาฬิกาและโซนเวลา
# ตั้งค่านาฬิกาฮาร์ดแวร์เป็น UTC
d-i ตั้งค่านาฬิกา/utc บูลีนจริง
# ตั้งเขตเวลา
d-i เวลา/โซน สตริง ยุโรป/ปารีส
# ใช้นาฬิกา NTP ระหว่างการติดตั้ง
d-i ตั้งค่านาฬิกา/ntp บูลีนจริง
### การแบ่งพาร์ติชัน
# วิธี LVM LUKS
# ยับยั้ง partman เพื่อเติมดิสก์ด้วยข้อมูลสุ่ม
d-i partman-auto-crypto/erase_disks บูลีนเท็จ
#d-i partman/early_command \
# สตริง dd if=/dev/zero of=/dev/sda bs=512 count=1
# บังคับให้บูต UEFI ('ความเข้ากันได้ของ BIOS' จะหายไป) ค่าเริ่มต้น: เท็จ
d-i partman-efi/non_efi_system บูลีนเท็จ
# ตรวจสอบให้แน่ใจว่าตารางพาร์ติชันเป็น GPT ซึ่งจำเป็นสำหรับ EFI
d-i partman-partitioning/choose_label สตริง gpt
d-i partman-partitioning/default_label สตริง gpt
d-i partman-auto/method การเข้ารหัสลับสตริง
d-i partman-lvm/device_remove_lvm บูลีนจริง
d-i partman-md/device_remove_md บูลีนจริง
d-i partman-lvm/ยืนยันบูลีนจริง
d-i partman-auto-lvm/guided_size สตริงสูงสุด
d-i partman-auto-lvm/new_vg_name สตริงเดเบียน
d-i partman-auto/disk string /dev/sda.d-i
d-i partman-auto/choose_recipe เลือก boot-crypto
d-i partman-crypto/passphrase รหัสผ่าน aabbcc
d-i partman-crypto/passphrase-อีกครั้ง รหัสผ่าน aabbcc
d-i partman-auto/expert_recipe สตริง \
boot-crypto :: \
512 50 512 fat32 \
$primary{ } $บูตได้{ } \
วิธีการ{ efi } รูปแบบ{ } \
เมานต์พอยต์{ /boot/efi } \
. \
1024 1024 1024 ต่อ 4 \
$primary{ } $บูตได้{ } \
วิธีการ{ รูปแบบ } รูปแบบ{ } \
use_filesystem{ } ระบบไฟล์{ ext4 } \
เมานต์พอยต์{ /boot } \
. \
8192 8192 8192 แลกเปลี่ยนลินุกซ์ \
$lvmok{ } lv_name{ แลกเปลี่ยน } \
in_vg { เดเบียน } \
วิธีการ{ สลับ } รูปแบบ{ } \
. \
80896 80896 1000000 btrfs \
$lvmok{ } lv_name{ ราก } \
in_vg { เดเบียน } \
วิธีการ{ รูปแบบ } รูปแบบ{ } \
use_filesystem{ } ระบบไฟล์{ btrfs } \
จุดเมานต์{ / } \
. \
#d-i partman-basicfilesystems/no_mount_point บูลีนเท็จ
d-i partman-partitioning/confirm_write_new_label บูลีนจริง
d-i partman/choose_partition เลือกเสร็จสิ้น
d-i partman/ยืนยันบูลีนจริง
d-i partman/confirm_nooverwrite บูลีนจริง
d-i partman-md/ยืนยันบูลีนจริง
d-i partman-partitioning/confirm_write_new_label บูลีนจริง
d-i partman/choose_partition เลือกเสร็จสิ้น
d-i partman/ยืนยันบูลีนจริง
d-i partman/confirm_nooverwrite บูลีนจริง
### การตั้งค่าที่เหมาะสม
d-i apt-setup/cdrom/set-first บูลีนเท็จ
d-i apt-setup/cdrom/set-next บูลีนเท็จ
d-i apt-setup/cdrom/set-failed boolean เท็จ
d-i apt-setup/services-select multiselect security, updates
d-i apt-setup/security_host สตริง security.debian.org
### การเลือกแพ็คเกจ
taskel taskel/มาตรฐานการเลือกหลายรายการแรก
# แพ็คเกจเพิ่มเติมส่วนบุคคลที่จะติดตั้ง
d-i pkgsel/รวมสตริง opensh-server vim tmux tcpdump dropbear-initramfs cryptsetup-initramfs python3.9
d-i pkgsel/upgrade เลือกการอัพเกรดแบบเต็ม
d-i pkgsel/update-policy เลือกไม่มีเลย
d-i pkgsel/updatedb บูลีนจริง
การประกวดความนิยมการประกวดความนิยม/การมีส่วนร่วมบูลีนเท็จ
### สิ่งที่ด้วง
d-i grub-installer/only_debian บูลีนจริง
d-i grub-installer/bootdev สตริงเริ่มต้น
# หมายเหตุ: ตัวเลือกที่ส่งไปยังโปรแกรมติดตั้งจะถูกเพิ่มโดยอัตโนมัติ
#d-i debian-installer/add-kernel-opts string nousb.d-i
# รหัสผ่านเพิ่มเติมสำหรับด้วงไม่ว่าจะเป็นข้อความที่ชัดเจน
# #d-i ตัวติดตั้งด้วง / รหัสผ่าน r00tme
# #d-i ตัวติดตั้งด้วง / รหัสผ่านอีกครั้งรหัสผ่าน r00tme
# # หรือเข้ารหัสโดยใช้แฮช MD5 โปรดดูที่ grub-md5-crypt(8)
# #d-i grub-installer/รหัสผ่านที่เข้ารหัส [แฮช MD5]
#
# # ใช้ตัวเลือกต่อไปนี้เพื่อเพิ่มพารามิเตอร์การบู๊ตเพิ่มเติมสำหรับ
# # ระบบที่ติดตั้ง (หากรองรับโดยตัวติดตั้ง bootloader)
# # หมายเหตุ: ตัวเลือกที่ส่งไปยังโปรแกรมติดตั้งจะถูกเพิ่มโดยอัตโนมัติ
# #d-i debian-installer/add-kernel-opts สตริง nousb
#
# ### จบการติดตั้ง
# # หลีกเลี่ยงข้อความสุดท้ายเกี่ยวกับการติดตั้งที่เสร็จสมบูรณ์
d-i เสร็จสิ้นการติดตั้ง/reboot_in_progress note
d-i preseed/late_command สตริง \
mkdir -p -m 700 /target/root/.ssh; \
echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEe3gF//znGIzq30frI6O9qDn5eM6uqEZZlx7mR5SiS" > /target/root/.ssh/authorized_keys; \
chown ในเป้าหมาย --recursive root:root /root/.ssh; \
ในเป้าหมาย chmod 0644 /root/.ssh/authorized_keys; \
in-target update-alternatives --set editor /usr/bin/vim.basic; \
d-i preseed/late_command สตริง \
mkdir -p -m 700 /target/root/.ssh; \
echo "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEe3gF//znGIzq30frI6O9qDn5eM6uqEZZlx7mR5SiS" > /target/root/.ssh/authorized_keys; \
chown ในเป้าหมาย --recursive root:root /root/.ssh; \
ในเป้าหมาย chmod 0644 /root/.ssh/authorized_keys; \
in-target update-alternatives --set editor /usr/bin/vim.basic; \
echo 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJEe3gF//znGIzq30frI6O9qDn5eM6uqEZZlx7mR5SiS' > /target/etc/dropbear-initramfs/authorized_keys; \
echo 'PasswordAuthentication no' >> /target/etc/ssh/sshd_config.d/setup; \
echo 'PermitRootLogin ห้ามรหัสผ่าน' >> /etc/ssh/sshd_config.d/setup; \
echo 'auto eno1' >> /target/etc/network/interfaces; \
sed -i 's/eth0/eno1/g' /target/etc/network/interfaces; \
เปิดใช้งาน systemctl ในเป้าหมาย - ตอนนี้ sshd; \
echo 'DROPBEAR_OPTIONS="-I 300 -j -k -p 22 -s -c /bin/cryptroot-unlock"' >> /target/etc/dropbear-initramfs/config; \
echo 'IP="dhcp"' >> /target/etc/initramfs-tools/initramfs.conf; \
ในเป้าหมาย update-initramfs -u;
# in-target passwd --expire root; \
แก้ไขแล้ว !