La guía paso a paso o código que encontrarás en este artículo es la solución más eficiente y efectiva que hallamos a tu duda o problema.
Solución:
La solución completa es:
Remasterice un CD, es decir, descargue un ISO de instalación de ubuntu no gráfico (servidor o CD de instalación alternativo), móntelo
$ sudo su -
# mkdir -p /mnt/iso
# mount -o loop ubuntu.iso /mnt/iso
Copie los archivos relevantes a un directorio diferente
# mkdir -p /opt/ubuntuiso
# cp -rT /mnt/iso /opt/ubuntuiso
Evitar que aparezca el menú de selección de idioma
# cd /opt/ubuntuiso
# echo en >isolinux/lang
Use el programa GUI para agregar un archivo kickstart llamado ks.cfg
# apt-get install system-config-kickstart
# system-config-kickstart # save file to ks.cfg
Para agregar paquetes para la instalación, agregue un %package
sección a la ks.cfg
archivo kickstart, anexar al final de ks.cfg
archivar algo como esto.
%packages
@ ubuntu-server
openssh-server
ftp
build-essential
Esto instalará el “paquete” de ubuntu-server y agregará el openssh-server
, ftp
y build-essential
paquetes.
Agregue un archivo preconfigurado para suprimir otras preguntas
# echo 'd-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition
select Finish partitioning and write changes to disk
d-i partman/confirm boolean true' > ks.preseed
Configure la línea de comando de arranque para usar los archivos kickstart y preseed
# vi isolinux/txt.cfg
Buscar
label install
menu label ^Install Ubuntu Server
kernel /install/vmlinuz
append file=/cdrom/preseed/ubuntu-server.seed vga=788 initrd=/install/initrd.gz quiet --
agregar ks=cdrom:/ks.cfg
y preseed/file=/cdrom/ks.preseed
a la línea de anexo. Puede quitar el quiet
y vga=788
palabras. Debería verse como
append file=/cdrom/preseed/ubuntu-server.seed
initrd=/install/initrd.gz
ks=cdrom:/ks.cfg preseed/file=/cdrom/ks.preseed --
Ahora crea una nueva iso
# 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
Eso es todo. Tendrá un CD que instalará un sistema Ubuntu una vez que inicie desde él, sin requerir una sola pulsación de tecla.
Las instrucciones de esta pregunta cubren el proceso para crear una ISO de arranque EFI (como la ISO oficial de Ubuntu x86_64):
¿Cómo creo una ISO de arranque EFI de una versión personalizada de Ubuntu?
los key las diferencias están configurando esto como el archivo preconfigurado:
d-i partman-auto/method string lvm
d-i partman-auto-lvm/guided_size string max
d-i partman-auto/choose_recipe select atomic
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm_nooverwrite boolean true
d-i partman/confirm boolean true
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto/init_automatically_partition select Guided - use entire disk and set up LVM
d-i partman/choose_partition select Finish partitioning and write changes to disk
d-i partman-auto-lvm/no_boot boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-md/confirm boolean true
d-i partman-md/confirm_nooverwrite boolean true
Use esto como el archivo kickstart:
lang en_US
langsupport en_US
keyboard us
mouse
timezone America/Los_Angeles
rootpw --disabled
user USERNAME --fullname "USERNAME" --password "PASSWORD"
reboot
text
install
cdrom
auth --useshadow --enablemd5
network --bootproto=dhcp --device=eth0
firewall --disabled
skipx
%packages
@ ubuntu-server
openssh-server
Edite la configuración de arranque de grub EFI para la ISO:
sudo nano ~/ubuntu/boot/grub/grub.cfg
Ajustado a:
if loadfont /boot/grub/font.pf2 ; then
set gfxmode=auto
insmod efi_gop
insmod efi_uga
insmod gfxterm
terminal_output gfxterm
fi
set menu_color_normal=white/light-blue
set menu_color_highlight=light-blue/light-gray
set timeout=10
set default=0
menuentry "Automatically Install Ubuntu Server with Custom Config"
set gfxpayload=keep
linux /install/vmlinuz file=/cdrom/preseed/ubuntu-server.seed quiet ks=cdrom:/ks.cfg preseed/file=/cdrom/ks.preseed --
initrd /install/initrd.gz
menuentry "OEM install (for manufacturers)"
set gfxpayload=keep
linux /install/vmlinuz file=/cdrom/preseed/ubuntu-server.seed quiet oem-config/enable=true --
initrd /install/initrd.gz
menuentry "Multiple server install with MAAS"
set gfxpayload=keep
linux /install/vmlinuz modules=maas-enlist-udeb vga=788 initrd=/install/initrd.gz quiet --
initrd /install/initrd.gz
menuentry "Check disc for defects"
set gfxpayload=keep
linux /install/vmlinuz MENU=/bin/cdrom-checker-menu quiet --
initrd /install/initrd.gz
menuentry "Rescue a broken system"
set gfxpayload=keep
linux /install/vmlinuz rescue/enable=true --
initrd /install/initrd.gz
Configure isolinux / txt.cfg así:
default install
label install
menu label ^Install Ubuntu Server with Custom Config
kernel /install/vmlinuz
append file=/cdrom/preseed/ubuntu-server.seed initrd=/install/initrd.gz ks=cdrom:/ks.cfg preseed/file=/cdrom/ks.preseed --
label cloud
menu label ^Multiple server install with MAAS
kernel /install/vmlinuz
append modules=maas-enlist-udeb vga=788 initrd=/install/initrd.gz quiet --
label check
menu label ^Check disc for defects
kernel /install/vmlinuz
append MENU=/bin/cdrom-checker-menu vga=788 initrd=/install/initrd.gz quiet --
label memtest
menu label Test ^memory
kernel /install/mt86plus
label hd
menu label ^Boot from first hard disk
localboot 0x80
Cree una ISO de catálogo de arranque dual:
sudo mkisofs -U -A "Custom1404" -V "Custom1404" -volset "Custom1404" -J -joliet-long -r -v -T -o ../Custom1404.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e boot/grub/efi.img -no-emul-boot .
Verifique que se haya creado una ISO de arranque EFI:
dumpet -i Custom1404.iso
Salidas:
Validation Entry:
Header Indicator: 0x01 (Validation Entry)
PlatformId: 0x00 (80x86)
ID: ""
Checksum: 0x55aa
Key bytes: 0x55aa
Boot Catalog Default Entry:
Entry is bootable
Boot Media emulation type: no emulation
Media load segment: 0x0 (0000:7c00)
System type: 0 (0x00)
Load Sectors: 4 (0x0004)
Load LBA: 3100 (0x00000c1c)
Section Header Entry:
Header Indicator: 0x91 (Final Section Header Entry)
PlatformId: 0xef (EFI)
Section Entries: 1
ID: ""
Boot Catalog Section Entry:
Entry is bootable
Boot Media emulation type: no emulation
Media load address: 0 (0x0000)
System type: 0 (0x00)
Load Sectors: 4672 (0x1240)
Load LBA: 1932 (0x0000078c)
Aquí hay un script de shell que realiza este procedimiento, gracias por la introducción: http://www.utech.de/2013/05/shell-script-creating-a-cd-for-unattended-ubuntu-server-installations/
El script que encuentras siguiendo el enlace básicamente implementa el procedimiento que describió @Elazar, por lo que las partes esenciales son solo una pantalla arriba. Agregué el enlace para ahorrarle tiempo a alguien y para que sea un poco más fácil repetir esto para otras versiones de Ubuntu.
Sección de Reseñas y Valoraciones
Te invitamos a sustentar nuestro quehacer mostrando un comentario y dejando una puntuación te damos la bienvenida.