Saya menginstal Debian Wheezy (netinstall) di VirtualBox menggunakan preseed.cfg
.
Saya mencoba keduanya d-i netcfg/get_hostname string somehost
dan d-i netcfg/get_hostname string somehost
, tetapi dalam kedua kasus tuan rumah ditetapkan sebagai "debian". Saya mencoba keduanya pada saat yang sama tetapi tuan rumah masih ditetapkan sebagai "debian".
Kutipan dari panduan Debian tentang file prakonfigurasi :
Jika Anda ingin memaksakan nama host, terlepas dari apa server DHCP kembali atau apa entri DNS terbalik untuk IP, batalkan komentar dan sesuaikan baris berikut
di netcfg / hostname string somehost
Apakah ini bug atau saya hanya sial?
d-i pressed/late_command string in-target /bin/bash -c 'echo $(dig +short -x $(facter ipaddress)) | sed -e \'s/\.$//\' > /etc/hostname'
. Ini menggunakan "facter" dari puppetlabs untuk mendapatkan alamat IP tetapi Anda bisa melakukan hal serupa menggunakanip addr
dansed
.Jika Anda netbooting (dengan PXE dan teman-teman), nama host sudah diatur sebelum mengambil file preseed, jadi nama host harus diatur pada baris perintah kernel seperti ini:
Dari pengantar lampiran B (tentang preseeding) dari manual installer-debian:
sumber
Saya menemukan bahwa masalah ini hilang ketika saya menghapus
priority=critical
dari argumen yang saya lewati ke kernel pada baris perintah instal net (melalui entri direktori pxelinux.cfg).Saya berasumsi ini berarti bahwa pertanyaan yang menanyakan nama host telah diberikan prioritas yang lebih rendah dari 'kritis', dan akan dipenuhi dengan jawaban default.
Jika Anda melakukan perubahan ini, Anda mungkin menemukan bahwa Anda harus melakukan preseed beberapa jawaban lain yang kurang penting untuk pertanyaan lain di kemudian hari dalam proses instalasi ...
sumber
Ini batasan debian-installer. Pada saat Anda mengambil file konfigurasi yang telah dipreparasi dari jaringan,
netcfg
telah melakukan tugasnya dan hilang, sehingga tidak akan mengambil kembali nilai.kludge yang agak resmi digunakan di
preseed.cfg
baris Anda :dan
preseed.sh
kemudian tentukan:Dengan begitu, ketika jaringan didirikan dan
preseed.cfg
diambil,preseed.sh
juga akan mengambil dan menjalankan, sehingga akan restartnetcfg
yang kemudian akan membaca semua nilai Preseed untuknetcfg/*
dan mengkonfigurasi dengan benar (/etc/hostsname
,/etc/hosts
,/etc/network/interfaces
jika Anda pengaturan sedang statis IP konfigurasi melalui Preseed dll)sumber
d-i preseed/early_command string kill-all-dhcp; netcfg
dalam file preseed Anda sudah cukup. Diuji dengan Peregangan di netinstall otomatis.