28Jun
Kami telah menunjukkan kepada Anda bagaimana cara booting jaringan Ubuntu LiveCD.Pada artikel ini kita akan menunjukkan bagaimana membuat beberapa utilitas jaringan bootable lainnya, yang akan memberi Anda pengetahuan untuk mereplikasi prosedur untuk utilitas lain yang mungkin Anda gunakan.
Catatan: artikel ini tidak ditujukan untuk pemula, meskipun Anda dipersilahkan untuk terus membaca!
Image oleh Steve Jurvetson
Ikhtisar
Panduan ini bertujuan untuk memberi Anda alat yang dengannya, Anda dapat mengubah utilitas, menjadi PXEable. Meskipun sayangnya, tidak mungkin mengubah alat apa pun di bawah matahari, kami tidak akan menjadi orang aneh jika setidaknya kami tidak mencobanya.
Seperti yang disebutkan di panduan "How To Network Boot( PXE) The Ubuntu LiveCD", Jika Anda belum menggunakan Ubuntu sebagai nomor satu Anda "masuk ke" untuk alat bantu pemecahan masalah, diagnostik dan penyelamatan, tunggu apa lagi?
Dengan mengatakan bahwa, seseorang harus mengakui bahwa ada hal-hal yang tidak dapat dilakukan di dalam Ubuntu LiveCD( seperti upgrade BIOS), atau Anda telah menggunakan alat berbeda yang Anda sukai dan lebih suka terus menggunakan untuk alasan apapun.
Rekomendasi, Asumsi dan Prasyarat
- Diasumsikan bahwa Anda telah menyiapkan server FOG seperti yang dijelaskan dalam panduan "What Are Network Booting( PXE) dan Bagaimana Cara Menggunakannya?".
- Anda akan melihat program "VIM" yang digunakan sebagai editor, ini terutama karena tersedia secara luas di platform Linux. Anda bisa menggunakan editor lain yang Anda inginkan.
- CD Boot Ultimate( UBCD) digunakan sebagai contoh, karena tidak seperti koleksi utilitas lainnya, gratis untuk diunduh dan program yang dibundel bebas digunakan.
Mengapa tidak hanya menggunakan ISO diatas PXE?
Ini sering menjadi pertanyaan pertama yang ditanyakan saat membicarakan PXEING.Jawaban singkatnya adalah bahwa walaupun secara teknis dimungkinkan untuk mengambil gambar ISO dan PXE ke mesin klien, hampir selalu isi ISO tersebut, akan mengharapkan manifestasi fisiknya dapat diakses melalui drive CDROM fisik. Oleh karena itu, isi dari ISO tersebut mungkin, ia akan mencoba mencari file "post boot-sector" di drive CDROM fisik dari mesin klien, tidak akan menemukannya dan gagal untuk boot.
Dua cara untuk mengatasi masalah ini adalah:
- Membakar ISO dan memasukkannya ke drive CDROM dari mesin klien - Meskipun sederhana, Bukan menggunakan CD, persis seperti yang ingin kita hindari. ..
- Membuka ISO dan perubahancara kerja program di dalamnya, sehingga menggunakan driver CDROM yang tahu bagaimana cara mencari ISO di RAM - Cukup rumit, dan berbeda untuk setiap jenis program yang dapat dibooting. YAITU.Bukan prosedur yang sama untuk Linux, WinPE atau UBCD untuk menyebutkan beberapa.
Karena kedua kekalahan di atas tujuan "hanya menggunakan ISO", inilah mengapa kami tidak merekomendasikan untuk melakukan usaha ini.
Metode Kernel
Meskipun sangat jarang, terkadang program yang Anda coba boot mungkin hanya membutuhkan Kernel untuk berfungsi. Salah satu contoh khasnya adalah "memtest86 +".Memtest dibundel dengan kebanyakan CD instalasi distribusi Linux dan dengan FOG.Karena Memtest hanya perlu bisa berkomunikasi dengan kemampuan paling dasar dari perangkat keras yang diuji, I.E.memori( RAM), dan bisa bekerja dengan baik bahkan tanpa mendukung perangkat keras yang dijalankannya( IE akan mengetes memori, biarpun tidak tahu tipe, kecepatan & dll ') itu tidak perluhal lain dan bisa bekerja sepenuhnya secara otonom.
Entri menu PXE untuk memtest mungkin terlihat sesederhana:
LABEL Jalankan Memtest86 +
kabut kernel /memtest/ memtest
append -
Dalam contoh ini, "LABEL Run Memtest86 +" menetapkan nama entri, "kabut kernel /memtest/ memtest"memberitahu PXElinux mana untuk mengambil kernel yang akan dikirim ke klien dari dan "append -" memberitahu PXElinux untuk mengabaikan opsi boot tambahan dari * inheritance.
* Catatan: tergantung pada penyiapan Anda, ini mungkin bahkan tidak diperlukan dan sebenarnya di FOG tidak digunakan.
Metode Kernel + Initrd
Metode ini sejauh ini adalah yang paling umum digunakan dan tersebar luas untuk beberapa alasan:
- Banyak utilitas saat ini datang dari dunia Linux.
- Karena Linux memiliki dukungan hardware yang besar dan bebas untuk digunakan, semakin banyak perusahaan menyadari bahwa Linux adalah basis yang sangat baik untuk membangun program proprietary mereka.
Mari kita menggunakan utilitas CPUstress UBCD sebagai contoh.
Pada struktur file UBCD, utilitas ini terletak di direktori "ubcd /boot/ cpustress".File yang kita cari, disebut "bzImage" yang merupakan "kernel", dan "initrd.gz" yang merupakan "ram disk awal".Jika Anda menggunakan penyiapan FOG yang kami buat, sebaiknya Anda menyalin direktori di bawah "/tftpboot/howtogeek/ utils".Setelah selesai, edit file "/tftpboot/howtogeek/menus/ utils.cfg" dan tambahkan entri boot yang ada di entri menu UBCD.ini bisa ditemukan di "ubcd /menus/syslinux/ cpu.cfg".Dengan penyesuaian untuk pengaturan FOG, entri menu akan terlihat seperti:
MENU LABEL StressCPU V2.0( memerlukan CPU dengan SSE)
TEXT HELP
Uji coba CPU Anda untuk memastikan bahwa Anda tidak memiliki kepanasan yang terlalu lama
masalah. Membutuhkan CPU x86 yang dilengkapi SSE.Jalankan versi khusus dari pelepas tangga utama
Gromacs yang mencampur SSE dan instruksi perakitan biasa untuk memanaskan
CPU Anda sebanyak mungkin.
ENDTEXT
KERNEL howtogeek /utils/cpustress/ bzImage
INITRD howtogeek /utils/cpustress/ initrd.gz
LAMPIRAN root = /dev/ ram0 ramdisk_size = 12000 noapic ubcdcmd = stresscpu2
Dimana:
- MENU LABEL - menetapkan nama entri
- TEXT HELP - Petunjuk opsional ini, memberikan bantuanteks yang akan ditampilkan di menu untuk memberikan informasi tentang entri yang dipilih.
- KERNEL - Menentukan lokasi file "kernel" di direktori TFTPD.
- INITRD - sama seperti di atas hanya untuk file "initrd".
- LAMPIRAN - Menentukan parameter tambahan yang harus dilewatkan ke program boot.
Beberapa hal yang perlu diperhatikan adalah:
- Hardcore Geeks akan memperhatikan bahwa kami mengganti perintah awal "LINUX" dengan "KERNEL".Ini karena: A. ini membuat contoh lebih mudah dibaca. B. Dalam contoh ini tidak terlalu penting.
Dengan mengatakan bahwa, biasanya ketika perintah "LINUX" digunakan, lebih baik membiarkannya seperti itu karena memberi tahu pxelinux / syslinux bahwa kita tidak menggunakan kernel apapun kecuali Linux saja. - Kami sengaja mengambil perintah "diam" dari parameter yang ditambahkan. Hal ini disebabkan adanya perubahan bagaimana Syslinux menangani parameter "sepi" dalam versi terbaru.
- Adalah mungkin untuk mengubah pengoperasian program "StressCPU", dengan hanya mengubah parameter yang ditambahkan "ubcdcmd".Jadi untuk menggunakan fungsi lainnya, seseorang hanya perlu menyalin entri dan mengganti "stresscpu2" menjadi: cpuinfo, cpuburn atau mprime24.
Meskipun ini adalah contoh yang sangat sederhana, seharusnya cukup membuat Anda pergi.
Metode Kernel + Initrd + NFS
Metode ini, adalah metode yang kami gunakan pada panduan "How To Network Boot( PXE) The Ubuntu LiveCD".Metode ini dibangun di atas yang sebelumnya dan memanfaatkan fakta bahwa beberapa distro Linux mendukung "filesystem akar" mereka yang terpasang dari NFS.Panduan Ubuntu adalah contoh yang bagus, tapi yakinlah bahwa kita sudah merencanakan yang lain untuk waktu dekat."Jagalah matamu terbuka untuk Jamur Hitam".
Metode MEMDISK
MEMDISK adalah utilitas yang didistribusikan dengan paket Syslinux. Tujuan utilitas ini adalah untuk memungkinkan Anda meniru "disk"( terutama mengacu pada disket) dengan menggunakan gambar itu. Cara kerja utilitas ini, adalah dengan menghubungkan ke lokasi di RAM yang menentukan bagaimana berkomunikasi dengan floppy drive( A.K.A. Interrupt handler) dan mengarahkannya ke lokasi baru yang ditangani oleh program MEMDISK.Dengan metode ini, "kernel" adalah utilitas MEMDISK dan "initrd" adalah file floppy image( .img).
Satu hal yang perlu diperhatikan adalah, FOG tersebut dilengkapi dengan versi "memdisk" yang kompatibel dengan versi pxelinux.0 yang digunakannya. Oleh karena itu, dianjurkan untuk tidak menyalin file "memdisk" yang menyertai file "img" dari sumbernya.
Karena metode ini sudah banyak digunakan, bahkan untuk keperluan rutin dan BootCD, sebagian besar waktu adalah masalah sederhana untuk menemukan file "IMG" pada BootCD, menyalinnya ke server TFTXD server PXE dan menyalin entri menu ISOlinux.ke menu PXElinux.
Mereka mengatakan "bicara itu murah" jadi mari kita lihat bagaimana kita bisa menyesuaikan salah satu utilitas yang menggunakan metode MEMDISK dari UBCD, untuk bekerja dari PXE.
Utilitas TestMemIV, dapat ditemukan pada struktur berkas UBCD di "ubcd /images/ testmem4.img.gz".Karena kita sudah memiliki utilitas disk memdisk, kita hanya perlu menyalin file "img" ke direktori "howtogeek /utils/".Dengan penyesuaian untuk pengaturan FOG, entri menu akan terlihat seperti:
MENU LABEL TestMemIV
TEXT HELP
Menguji memori sistem dan memori pada kartu video Nvidia.
ENDTEXT
LINUX memdisk
INITRD howtogeek /utils/ testmem4.img.gz
Meskipun ini adalah contoh file gambar floppy yang berisi diri dari UBCD, sebagian besar program UBCD lainnya, gunakan gambar dasar yang sama untuk mulai bekerja( fdubcd.img.gz) dan gunakan parameter tambahan "ubcdcmd" untuk melakukan autostart program dari booting CDROM.Ini berarti Anda tidak akan bisa mengubah sebagian besar utilitas mereka menjadi jaringan yang dapat di-boot tanpa beberapa teknik reverse besar. Meskipun teknik reverse seperti itu mungkin dilakukan( seperti yang dapat dilihat di sini) dan merupakan latihan geek yang sangat baik, ini berada di luar cakupan panduan ini.
Dengan kata di atas, sekarang Anda memiliki alat untuk melakukan prosedur ini untuk utilitas upgrade diagnostik atau BIOS OEM esoteris.
Dan begitu, terkunci di luar Gerbang Darah dan melewati Aula Api, Valor menunggu Hero of Light untuk membangunkan. ..