আপনার একটি দ্বৈত বুট ক্যাটালগ আইএসও তৈরি করতে হবে যাতে এটি EFI এবং এমবিআর বুট করবে। স্ট্যান্ডার্ড উবুন্টু 14.04 x64 আইএসও ফাইলটি এইভাবে কাজ করে তবে EFI সিস্টেমগুলির জন্য নতুন 14.04 বুট করার যোগ্য আইএসও করার জন্য কোনও নির্দেশিকা পাওয়া যায় না। আমি এই জাতীয় একটি আইএসও তৈরি করতে সঠিক পদক্ষেপ একসাথে সক্ষম হয়েছি।
এই নির্দেশাবলী আপনাকে একটি কাস্টম উবুন্টু 14.04 সার্ভার আইএসও তৈরি করতে দেবে যা EFI এবং এমবিআর বুট করতে পারে। ফাঁকা, অবিচ্ছিন্ন ডিস্ক (উদাহরণস্বরূপ হাইপার-ভি-তে একটি নতুন জেনারেশন 2 ভিএম) সহ কোনও সিস্টেমে ইএফআই বুট করার সময়, সেটআপ স্বয়ংক্রিয়ভাবে শুরু হবে, তারপরে স্বয়ংক্রিয়ভাবে ডিস্কটি মুছুন এবং বেস উবুন্টু-সার্ভার প্যাকেজগুলি এবং ওপেনএসএইচ ইনস্টল করুন। LVM এবং অটো-পার্টিশন ব্যবহার করে উবুন্টু 14.04 সহ নতুন সিস্টেমগুলি স্বয়ংক্রিয়ভাবে সরবরাহ করার জন্য এটি তৈরি করা হয়েছে। আপনি যদি বিদ্যমান লিনাক্স সিস্টেমে এই আইএসও ব্যবহার করেন তবে বিদ্যমান ডিস্কগুলি সনাক্ত করে ইনপুটটির জন্য অপেক্ষা করা হলে ইনস্টলারটি থামবে stop যদি আপনি এই আইএসওটি একটি নন-ইএফআই সিস্টেমে ব্যবহার করেন (উদাহরণস্বরূপ একটি জেনারেশন 1 হাইপার-ভি ভিএম) তবে এটি গ্রাফিকাল ইনস্টলার স্টার্টআপ স্ক্রিনে অপেক্ষা করবে এবং স্বয়ংক্রিয় ইনস্টলারটি চালিয়ে যাওয়ার আগে ইনপুট লাগবে।
ফলাফলটি কেবল উবুন্টু-সার্ভার এবং ওপেনস্প-সার্ভার সহ একটি উবুন্টু সার্ভার ইনস্টলেশন।
একটি EFI- বুটযোগ্য ISO তৈরি করার পদক্ষেপগুলি এখানে রয়েছে:
14.04 আইএসও পান:
wget http://releases.ubuntu.com/14.04/ubuntu-14.04-server-amd64.iso
এটিকে মাউন্ট করুন এবং একটি নতুন ফোল্ডারে এর সামগ্রীগুলি বের করুন:
sudo mkdir -p ~/iso
sudo mount -o loop ubuntu-14.04-server-amd64.iso.iso ~/iso
sudo mkdir ~/ubuntu
sudo cp -rT ~/iso ~/ubuntu
সেই ডিরেক্টরিতে পরিবর্তন করুন যেখানে আমরা আমাদের কাজ করব:
cd ~/ubuntu
ইংরেজী ভাষা সেট করুন:
sudo -i
echo en >/home/user/ubuntu/isolinux/lang
exit
একটি প্রিসড ফাইল তৈরি করুন যা সমস্ত উপলব্ধ স্থান ব্যবহার করে ডিস্কটিকে অটো-বিভাজনে LVM ব্যবহার করবে:
sudo nano ~/ubuntu/ks.preseed
এটির সাথে ফাইলের সামগ্রীগুলি প্রতিস্থাপন করুন:
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
একটি কিকস্টার্ট ফাইল তৈরি করুন যা ইনস্টলেশনের সময় উবুন্টুকে কনফিগার করবে: (নিশ্চিত হয়ে নিন যে আপনি ব্যবহারকারীর নামটি পরিবর্তন করেছেন, এবং আপনার এনক্রিপ্ট করা পাসওয়ার্ড ব্যবহার করা উচিত)
sudo nano ~/ubuntu/ks.cfg
এটির সাথে ফাইলের সামগ্রীগুলি প্রতিস্থাপন করুন:
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
গ্রাব কনফিগারেশন ফাইলটি সম্পাদনা করুন সুতরাং যখন আইএসও একটি EFI বুট সঞ্চালন করে তখন বুটলোডার আমাদের প্রিসিড এবং কনফিগারেশন ফাইলগুলি ব্যবহার করতে সঠিক বিকল্পগুলি ব্যবহার করে:
sudo nano ~/ubuntu/boot/grub/grub.cfg
এটির সাথে ফাইলের সামগ্রীগুলি প্রতিস্থাপন করুন:
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
}
কাস্টম কনফিগারেশন এবং কাস্টম প্রিসিড ব্যবহার করতে নন-ইএফআই বুটিং (এমবিআর বুটিং) এর জন্য আইসোলিনাক্স বুট মেনু সম্পাদনা করুন:
sudo nano ~/ubuntu/isolinux/txt.cfg
এটির সাথে ফাইলের সামগ্রীগুলি প্রতিস্থাপন করুন:
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
আইএসও তৈরি করুন:
এই কমান্ডটি http://petersmithphotog.no-ip.biz/wiki/index.php/Unattended_Install এ প্রদর্শিত কমান্ডের একটি পরিবর্তিত সংস্করণ । এই নির্দেশাবলী উবুন্টু 14.04 এর জন্য কাজ করে না কারণ তারা efi.img ফাইলটির জন্য ভুল অবস্থানগুলিতে নির্দেশ করে। (আইএসও-তে /। বুট / গ্রাব / এ থাকা উচিত)
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 .
আইএসওর সঠিক শৈলীর বুট ক্যাটালগ রয়েছে যাচাই করুন:
আপনি উবুন্টু থেকে ডাউনলোড করেছেন আসল আইএসও:
dumpet -i ~/ubuntu-14.04-server-amd64.iso
আউটপুট:
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)
আপনার তৈরি করা নতুন আইএসও:
dumpet -i ~/Custom1404.iso
আউটপুট:
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)
আপনি এই আউটপুটটি কোনও আইএসও থেকে প্রাপ্ত আউটপুটটির সাথে তুলনা করতে পারেন এখানে নির্দেশাবলী ব্যবহার করে আমি কীভাবে উবুন্টুর সম্পূর্ণ অপ্রত্যাশিত ইনস্টল তৈরি করব? : (তারা একটি এমবিআর কেবল আইএসও তৈরি করে, দ্বৈত বুট ক্যাটালগ আইএসও নয়)
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 .
আইএসও তথ্য পান:
dumpet -i ~/non-efi-ubuntu.iso
আউটপুট:
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)