EFI ve MBR'yi önyükleyebilmek için bir çift önyükleme kataloğu ISO yapmanız gerekir. Standart Ubuntu 14.04 x64 ISO dosyası bu şekilde çalışır, ancak EFI sistemleri için yeni bir 14.04 önyüklenebilir ISO yapmak için herhangi bir talimat yoktur. Böyle bir ISO oluşturmak için doğru adımları bir araya getirebildim.
Bu talimatlar, EFI ve MBR'yi önyükleyebilen özel bir Ubuntu 14.04 Sunucu ISO'su oluşturmanıza olanak tanır. EFI boş, başlatılmamış bir diske sahip bir sistemde önyükleme yaparken (örneğin Hyper-V'de yeni bir 2. Nesil VM'de) kurulum otomatik olarak başlar, ardından diski otomatik olarak siler ve temel ubuntu-sunucu paketlerini ve OpenSSH'yi kurar. Bu, LVM ve otomatik bölümleme kullanarak Ubuntu 14.04 ile yeni sistemlerin otomatik olarak sağlanması için tasarlanmıştır. Bu ISO'yu mevcut bir Linux sisteminde kullanırsanız, yükleyici mevcut diskleri algıladığında durur ve giriş bekler. Bu ISO'yu EFI olmayan bir sistemde (örneğin 1. Nesil Hyper-V VM) kullanırsanız, grafik yükleyicinin başlangıç ekranında bekleyecek ve otomatik yükleyiciye devam etmeden önce giriş yapılması gerekecektir.
Sonuç, ubuntu sunucusu ve yalnızca shsh sunucusu ile temel bir Ubuntu Sunucusu kurulumudur.
EFI önyüklenebilir bir ISO oluşturma adımları şunlardır:
14.04 ISO'yu edinin:
wget http://releases.ubuntu.com/14.04/ubuntu-14.04-server-amd64.iso
Bağlayın ve içeriğini yeni bir klasöre çıkarın:
sudo mkdir -p ~/iso
sudo mount -o loop ubuntu-14.04-server-amd64.iso.iso ~/iso
sudo mkdir ~/ubuntu
sudo cp -rT ~/iso ~/ubuntu
İşimizi yapacağımız dizine geçin:
cd ~/ubuntu
Dili İngilizce olarak ayarlayın:
sudo -i
echo en >/home/user/ubuntu/isolinux/lang
exit
Kullanılabilir tüm alanı kullanarak diski otomatik olarak bölümlemek için LVM'yi kullanan bir önayar dosyası oluşturun:
sudo nano ~/ubuntu/ks.preseed
Dosya içeriğini bununla değiştir:
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
Yükleme sırasında Ubuntu'yu yapılandıracak bir kickstart dosyası oluşturun: (kullanıcı adı bölümünü değiştirdiğinizden ve şifrelenmiş parolalar kullandığınızdan emin olun)
sudo nano ~/ubuntu/ks.cfg
Dosya içeriğini bununla değiştir:
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
Grub yapılandırma dosyasını, ISO bir EFI önyüklemesi gerçekleştirdiğinde önyükleyici önayar ve yapılandırma dosyalarımızı kullanmak için doğru seçenekleri kullanır:
sudo nano ~/ubuntu/boot/grub/grub.cfg
Dosya içeriğini bununla değiştir:
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
}
Özel yapılandırmayı ve özel hazır ayarı kullanmak için EFI olmayan önyükleme (MBR önyükleme) için isolinux önyükleme menüsünü düzenleyin:
sudo nano ~/ubuntu/isolinux/txt.cfg
Dosya içeriğini bununla değiştir:
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
ISO'yu oluşturun:
Bu komut, http://petersmithphotog.no-ip.biz/wiki/index.php/Unattended_Install adresinde gösterilen komutun değiştirilmiş bir sürümüdür . Bu talimatlar Ubuntu 14.04 için çalışmaz, çünkü efi.img dosyası için yanlış konumlara işaret ederler. (ISO'da ./boot/grub/ içinde olmalıdır)
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 .
ISO'nun doğru stil önyükleme kataloglarına sahip olduğunu doğrulayın:
Ubuntu'dan indirdiğiniz orijinal ISO:
dumpet -i ~/ubuntu-14.04-server-amd64.iso
Çıktı:
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: 8446 (0x000020fe)
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: 24754 (0x000060b2)
Oluşturduğunuz yeni ISO:
dumpet -i ~/Custom1404.iso
Çıktı:
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)
Bu çıkışı , Ubuntu'nun tamamen katılımsız bir kurulumunu nasıl oluştururum? Bölümündeki talimatları kullanarak oluşturulmuş bir ISO'dan aldığınız çıktı ile karşılaştırabilirsiniz. : (çift önyükleme kataloğu ISO değil, yalnızca MBR ISO oluştururlar)
sudo mkisofs -D -r -V "non-efi-ubuntu" -cache-inodes -J -l -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o ../non-efi-ubuntu.iso .
ISO bilgisi alın:
dumpet -i ~/non-efi-ubuntu.iso
Çıktı:
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: 1925 (0x00000785)