ภาษาอังกฤษภาษาฝรั่งเศสสเปน

Ad


ไอคอน Fav ของ OnWorks

mknbi - ออนไลน์ในคลาวด์

เรียกใช้ mknbi ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง mknbi ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


mknbi - สร้างอิมเมจสำหรับบูตเครือข่าย

เรื่องย่อ


mknbi --รุ่น

mknbi --รูปแบบ=รูป --เป้าหมาย=เป้า [--เอาท์พุท=ไฟล์เอาต์พุต] เป้าหมายเฉพาะอาร์กิวเมนต์

mkelf-ลินุกซ์ [--เอาท์พุท=ไฟล์เอาต์พุต] เคอร์เนลอิมเมจ [ramdisk]

mknbi-ลินุกซ์ [--เอาท์พุท=ไฟล์เอาต์พุต] เคอร์เนลอิมเมจ [ramdisk]

mknbi-รอม [--เอาท์พุท=ไฟล์เอาต์พุต] .z?rom-ไฟล์

mkelf-img [--เอาท์พุท=ไฟล์เอาต์พุต] .z?img-ไฟล์

mkelf เมนู [--เอาท์พุท=ไฟล์เอาต์พุต] [ภาพข้อมูล]

mknbi-เมนู [--เอาท์พุท=ไฟล์เอาต์พุต] [ภาพข้อมูล]

mkelf-nfl [--เอาท์พุท=ไฟล์เอาต์พุต] [ภาพข้อมูล]

เอ็มเคเอ็นบี-เอ็นเอฟแอล [--เอาท์พุท=ไฟล์เอาต์พุต] [ภาพข้อมูล]

mkelf-หลัว [--เอาท์พุท=ไฟล์เอาต์พุต] ลูบิน

mknbi-fdos [--เอาท์พุท=ไฟล์เอาต์พุต] เคอร์เนล.sys ฟลอปปี้อิมเมจ

mknbi-ดอส [--เอาท์พุท=ไฟล์เอาต์พุต] ฟลอปปี้อิมเมจ

DESCRIPTION


mknbi เป็นโปรแกรมที่ทำให้เน็ตเวิร์กบูตอิมเมจสำหรับระบบปฏิบัติการต่างๆ
เหมาะสำหรับการโหลดเครือข่ายโดย Etherboot หรือ Netboot ซึ่งเป็นตัวโหลดการบูต ROM ถ้าคุณ
กำลังมองหาการบูตโดยใช้ PXE ไม่ต้องมองหาที่ไหนอีกแล้ว mknbi ไม่ใช่สิ่งที่คุณต้องการ คุณน่าจะ
ต้องการบางอย่างเช่น PXELINUX ซึ่งเป็นส่วนหนึ่งของแพ็คเกจ SYSLINUX

mknbi --version พิมพ์เวอร์ชันปัจจุบัน ใช้สิ่งนี้ก่อนรายงานปัญหา

mknbi สามารถเรียกใช้ด้วย --รูปแบบ และ --เป้า ตัวเลือกหรือลิงค์สามารถทำมันได้
ภายใต้รูปแบบและชื่อเฉพาะเป้าหมาย เช่น mkelf-linux เหมือนกับ mknbi
--รูปแบบ=เอลฟ์ --target=ลินุกซ์.

--รูปแบบ=รูป ระบุรูปแบบของผลลัพธ์ ปัจจุบันมี nbi และเอลฟ์
รูปแบบ ELF ใช้งานได้กับ linux และเมนูเท่านั้น มิฉะนั้นการวิงวอนจะเหมือนกับfor
mknbi ในการสนทนาด้านล่าง แบบฟอร์ม mknbi ถูกใช้

--เป้า=เป้า ระบุไบนารีเป้าหมาย ที่มีอยู่ในปัจจุบันคือ linux, menu, rom, fdos
และทำ mknbi ไม่จำเป็นสำหรับการบูต FreeBSD

--เอาท์พุท=ไฟล์เอาต์พุต ระบุไฟล์ที่ส่งออก ใช้ได้กับทุกรูปแบบ Stdout คือ
ค่าเริ่มต้น.

ต้องติดตั้งแพ็คเกจในตำแหน่งปลายทางก่อนจึงจะสามารถปฏิบัติการได้
เรียกใช้เพราะจะค้นหาไฟล์ไลบรารี

แต่ละตัวแปรจะอธิบายแยกกัน

MKELF-ลินุกซ์


mkelf-ลินุกซ์ และ mknbi-ลินุกซ์ สร้างอิมเมจสำหรับบูตจากอิมเมจเคอร์เนล Linux ไม่ว่าจะเป็น zImage
หรือ bzImage

MKELF-ลินุกซ์ OPTIONS


--พารามิเตอร์=เชือก แทนที่สตริงพารามิเตอร์เริ่มต้นด้วยค่าที่ระบุ ตัวเลือกนี้
จะแทนที่ตัวเลือกต่อไปนี้ทั้งหมด ดังนั้นคุณควรรู้ว่าคุณกำลังทำอะไรอยู่

--ผนวก=เชือก ผนวกสตริงที่ระบุต่อท้ายสตริงพารามิเตอร์ที่มีอยู่ ตัวเลือกนี้
ทำงานหลังจากประเมินตัวเลือกพารามิเตอร์อื่นๆ แล้ว

--rootdir=รูตไดร์ กำหนดชื่อไดเร็กทอรีที่จะเมาต์ผ่าน NFS จากบูตเซิร์ฟเวอร์

หากไม่มีตัวเลือกนี้ ค่าเริ่มต้นคือการใช้ไดเร็กทอรี "/tftpboot/"%sมี
%s แทนชื่อโฮสต์หรือที่อยู่ IP ของระบบบูต ขึ้นอยู่กับว่า
แอตทริบิวต์ชื่อโฮสต์มีอยู่ในการตอบกลับ BOOTP/DHCP

หากได้รับ "rom" และหากเซิร์ฟเวอร์ BOOTP/DHCP สามารถจัดการส่วนขยาย RFC 1497 ได้
ค่าของตัวเลือก rootpath ถูกใช้เป็นไดเร็กทอรีราก

หากชื่อที่กำหนดให้ตัวเลือกเริ่มต้นด้วย "/ dev /" อุปกรณ์ที่เกี่ยวข้องถูกใช้เป็น
อุปกรณ์รูท และจะไม่มีการติดตั้งไดเร็กทอรี NFS

--โหมดรูท="ro|rw" กำหนดว่าอุปกรณ์รูทจะถูกเมาต์แบบอ่านอย่างเดียวหรืออ่าน-เขียน
ตามลำดับ หากไม่มีพารามิเตอร์นี้ ค่าเริ่มต้นคือ "rw"

--ip=เชือก กำหนดที่อยู่ IP ของไคลเอ็นต์และเซิร์ฟเวอร์

หากไม่มีตัวเลือกนี้ จะไม่มีการกำหนดที่อยู่ IP และเคอร์เนลจะกำหนด
ที่อยู่ IP ด้วยตัวเอง โดยปกติจะใช้ DHCP, BOOTP หรือ RARP โปรดทราบว่าเคอร์เนลของ
แบบสอบถามคือ in นอกจากนี้ ไปยัง แบบสอบถามที่ทำโดย bootrom และต้องการ IP: ระดับเคอร์เนล
คุณสมบัติการกำหนดค่าอัตโนมัติ (CONFIG_IP_PNP) ที่จะรวมอยู่ในเคอร์เนล

หมายเหตุสำคัญ: ในเคอร์เนล Linux 2.2.x โดยที่ x >= 18 และ 2.4.x โดยที่ x >= 5 คือ
จำเป็น เพื่อระบุหนึ่งในตัวเลือกการเปิดใช้งานในย่อหน้าถัดไปเพื่อทำให้ IP
การกำหนดค่าอัตโนมัติที่จะเปิดใช้งาน การกำหนดค่าอัตโนมัติของ IP ไม่เหมือนกับในเคอร์เนลก่อนหน้า
ไม่ได้เกิดขึ้นโดยปริยาย โปรดทราบด้วยว่าการกำหนดค่าอัตโนมัติของ IP และ NFSroot มีแนวโน้มที่จะไป
ออกไปใน Linux 2.6 และวิธีการกำหนดค่า IP ของ userspace โดยใช้ ramdisk และ userspace
ตอนนี้ต้องการ DHCP daemons

หากมีสิ่งใดสิ่งหนึ่งต่อไปนี้: "off, none, on, any, dhcp, bootp, rarp, both" จะได้รับ
ตัวเลือกจะถูกส่งต่อโดยไม่ได้แก้ไขไปยังเคอร์เนลและทำให้ตัวเลือก autoconfig เป็น
ได้รับการแต่งตั้ง

หากระบุ "rom" เป็นอาร์กิวเมนต์ของตัวเลือกนี้ ที่อยู่ IP ที่จำเป็นทั้งหมดสำหรับ NFS root
การติดตั้งจะได้รับการสืบทอดจากคำตอบ BOOTP/DHCP ที่ bootrom ได้รับจากเซิร์ฟเวอร์

นอกจากนี้ยังสามารถกำหนดที่อยู่ระหว่างการคอมไพล์อิมเมจสำหรับเริ่มระบบได้อีกด้วย จากนั้นทั้งหมด
ที่อยู่ต้องคั่นด้วยเครื่องหมายทวิภาค และเรียงลำดับดังนี้:

"--ip="ลูกค้า:เซิร์ฟเวอร์:เกตเวย์:netmask:ชื่อโฮสต์[:dev[:proto]]

การใช้ตัวเลือกนี้ mkelf-ลินุกซ์ จะแปลงชื่อระบบเป็น IP ทศนิยมโดยอัตโนมัติ
ที่อยู่สำหรับสามรายการแรกในสตริงนี้ NS ชื่อโฮสต์ รายการจะถูกใช้โดย
เคอร์เนลเพื่อตั้งชื่อโฮสต์ของไคลเอ็นต์ Linux diskless ที่บูตแล้ว เมื่อมีมากกว่าหนึ่ง
อินเทอร์เฟซเครือข่ายได้รับการติดตั้งในไคลเอ็นต์แบบไม่มีดิสก์ คุณสามารถระบุชื่อได้
ของอินเทอร์เฟซที่จะใช้สำหรับการติดตั้งไดเร็กทอรีรูทผ่าน NFS โดยให้ตัวเลือก
ค่า "dev" รายการนี้ต้องขึ้นต้นด้วยสตริง "eth" ตามด้วยตัวเลขตั้งแต่ 0 ถึง
9. อย่างไรก็ตาม หากมีการติดตั้งอินเทอร์เฟซเดียวในไคลเอนต์ สิ่งนี้ dev รายการรวมทั้ง
เครื่องหมายอัฒภาคนำหน้าสามารถละเว้นได้ NS โปรโต อาร์กิวเมนต์เป็นหนึ่งในการกำหนดค่าอัตโนมัติของ IP
เปิดใช้งานตัวเลือกที่ระบุไว้ข้างต้น (ผู้เขียน: มันไม่ชัดเจนสำหรับฉันว่า IP
การกำหนดค่าอัตโนมัติเกิดขึ้นเมื่อระบุพารามิเตอร์แล้ว บางทีก็เพื่อให้ได้มา
ไม่ได้ระบุพารามิเตอร์ เช่น โดเมน NIS)

--rdbase=ด้านบน|เอซิส|0xNNNNNNNN ตั้งค่าที่อยู่โหลด ramdisk "top" ย้าย ramdisk ไปที่
ด้านบนของหน่วยความจำก่อนข้ามไปที่เคอร์เนล นี่เป็นค่าเริ่มต้นหาก rdbase ไม่ใช่
ระบุไว้ ตัวเลือกนี้ต้องการให้การปรับขนาดเคอร์เนลของ first-linux ทำงานอย่างถูกต้อง "อย่างที่เป็น"
โหลดได้ที่ 0x100000 (1MB) หากเคอร์เนลโหลดต่ำ หรือปล่อยไว้หลังเคอร์เนล
ในหน่วยความจำหากโหลดเคอร์เนลสูง เพื่อให้ตัวเลือกนี้ทำงานได้ เคอร์เนลจะต้องสามารถ
เพื่อจัดการ ramdisk ตามที่อยู่เหล่านี้ 0xNNNNNNNN. ย้าย ramdisk ไปยังที่อยู่ฐานสิบหก
ระบุไว้ ผู้ใช้มีหน้าที่ระบุที่อยู่ที่เหมาะสมซึ่งเป็นที่ยอมรับของ
เคอร์เนลและไม่ทับซ้อนกับส่วนอื่นๆ Etherboot จะปัดเศษที่อยู่ลงไปที่
คูณ 4k (ตัวเลข 3 หลักสุดท้ายเป็นศูนย์)

--rdnopad โดยค่าเริ่มต้น etherboot pads (มีค่า null) ค่า initrd ที่กำหนดของขนาดใดๆ ให้กับ multiple
ของ 4k ไบต์ (จัดแนวกับขอบเขตหน้าหน่วยความจำ) ใช้ตัวเลือกนี้เพื่อปิดใช้งานช่องว่างภายในหาก
ทำให้เกิดปัญหา

--first32=โครงการ แทนที่โปรแกรมการตั้งค่าระยะแรกที่เป็นค่าเริ่มต้น ใช้โทรได้
ส่วนขยายของรหัส Etherboot ซึ่งปูทางสำหรับการทำงานที่มีประโยชน์เพิ่มเติม
โดยไม่ต้องขยายขนาดของรอยเท้า Etherboot --first32 มีความหมายโดย ELF
จัดรูปแบบ

--ความคืบหน้า ตัวเลือกนี้ใช้ร่วมกับและใช้ได้เฉพาะกับ --first32
ตัวเลือกเพื่อระบุตัวโหลด Etherboot ว่าโปรแกรมที่เรียกจะกลับไปที่ตัวโหลด
และด้วยเหตุนี้ Etherboot ไม่ควรปิดการใช้งานอุปกรณ์เครือข่ายเช่นเดียวกับที่โปรแกรม
จะไม่กลับไปที่ Etherboot

--relocseg=แยก ตัวเลือกนี้ใช้เพื่อระบุการย้ายตำแหน่งของลีนุกซ์ก่อน, บูต,
ตั้งค่าและแบ่งส่วนพารามิเตอร์ไปยังแบนด์ 64k อื่น ปัจจุบันค่าที่ถูกต้องเท่านั้นคือ
0x9000 และ 0x8000 ซึ่งสอดคล้องกับที่อยู่เชิงเส้นตั้งแต่ 0x90000 และ 0x80000 ขึ้นไป NS
ค่าเริ่มต้นคือ 0x9000 โดยปกติ คุณจะใช้ตัวเลือกนี้หากคุณย้าย Etherboot ไปที่ 0x84000
เพื่อหลีกเลี่ยงโค้ดอื่นๆ ในส่วน 0x90000 เช่น DOC เคอร์เนล Linux ต้องรองรับ
การโยกย้ายซึ่งหมายถึงเคอร์เนล 2.4 หรือใหม่กว่า --relocseg ใช้งานได้อย่างน่าเชื่อถือกับ ELF หรือ .เท่านั้น
--first32=.

เม็ม=เมมไซส์ นี่ไม่ใช่ตัวเลือกบรรทัดคำสั่ง แต่เป็นพารามิเตอร์เคอร์เนลที่สกัดกั้น
โดย 32 สเตจแรกและใช้เป็นหน่วยความจำสูงสุด เพื่อให้ตรงกับการตีความของลินุกซ์
เมมไซส์ สามารถต่อท้ายด้วย "G" เพื่อระบุกิกะไบต์ (คูณ 2 ^ 30), "M" เพื่อระบุ
เมบิไบต์ (คูณ 2^20) หรือ "K" เพื่อระบุคิบิไบต์ (คูณ 2^10) โปรดทราบว่าคำต่อท้าย
เป็นตัวพิมพ์ใหญ่ พารามิเตอร์เคอร์เนลนี้สามารถระบุได้ใน --append= หรือ option-129 ของ
บันทึก DHCP/BOOTP

เรียกใช้โปรแกรมดังนี้:

mkelf-ลินุกซ์ เคอร์เนลอิมเมจ [ramdisk-ภาพ] > linux.nb

แล้วย้าย ลินุกซ์.nb ไปยังตำแหน่งที่กระบวนการบูตเครือข่ายคาดว่าจะพบ

MKELF-ลินุกซ์ บูต/DHCP ผู้ขาย TAGS


mkelf-ลินุกซ์ รวมถึงรหัสเริ่มต้นที่จุดเริ่มต้นของเคอร์เนลลินุกซ์ซึ่งสามารถ
ตรวจหาตัวเลือกที่กำหนดโดยผู้จำหน่าย DHCP สามารถใช้เพื่อแก้ไขเคอร์เนล
กระบวนการโหลดที่รันไทม์ ในการใช้ตัวเลือกเหล่านี้กับ ISC DHCPD v3 ซึ่งเป็น DHCP daemon ยอดนิยม
ไวยากรณ์เป็นด้านล่าง คุณจะต้องปรับไวยากรณ์สำหรับ DHCP หรือ BOOTP . อื่น
ภูต

ตัวเลือก etherboot-รหัสลายเซ็น 128 = สตริง;

ตัวเลือกเคอร์เนลพารามิเตอร์รหัส 129 = ข้อความ;

...

option etherboot-signature E4:45:74:68:00:00;

ตัวเลือกเคอร์เนลพารามิเตอร์ "INITRD_DBG=6 NIC=3c509";

ตัวเลือก 128 จะต้องเป็นลายเซ็นหกไบต์ด้านบน ดูภาคผนวกของ vendortags ของ
คู่มือผู้ใช้ Etherboot สำหรับรายละเอียด

ตัวเลือกต่อไปนี้ได้รับการสนับสนุนในปัจจุบันโดย mkelf-ลินุกซ์:

129 พื้นที่ เชือก ค่าที่กำหนดด้วยตัวเลือกนี้จะต่อท้ายคำต่อคำต่อท้ายเคอร์เนล
บรรทัดคำสั่ง. สามารถใช้เพื่อระบุอาร์กิวเมนต์ เช่น ที่อยู่ I/O หรือช่อง DMA
ที่จำเป็นสำหรับฮาร์ดแวร์พิเศษ เช่น อะแดปเตอร์ SCSI การ์ดเครือข่าย ฯลฯ โปรดปรึกษา
เอกสารคู่มือเคอร์เนล Linux เกี่ยวกับไวยากรณ์ที่จำเป็นสำหรับตัวเลือกเหล่านั้น มันเหมือนกับ
--ผนวก ตัวเลือกบรรทัดคำสั่งถึง mkelf-ลินุกซ์แต่ทำงานตอนบูทแทน image
สร้างเวลา

130 ด้วยตัวเลือกนี้ คุณสามารถเลือกอะแดปเตอร์เครือข่ายที่ใช้สำหรับการติดตั้งได้
รูทผ่าน NFS บนไคลเอนต์ multihomed diskless ไวยากรณ์สำหรับ เชือก มีค่าเท่ากัน
สำหรับรายการ "dev" ที่ใช้กับ --ip= ตัวเลือกตามที่อธิบายไว้ข้างต้น อย่างไรก็ตามโปรดทราบว่า
mkelf-ลินุกซ์ รูทีนการตั้งค่ารันไทม์ไม่ตรวจสอบไวยากรณ์ของสตริง

MKNBI-รอม


mknbi-รอม สร้างอิมเมจสำหรับบูตจากอิมเมจการบูต Etherboot ".rom" หรือ ".zrom" นี้
อนุญาตให้ netbooted โดยใช้ ROM ที่มีอยู่ สิ่งนี้มีประโยชน์สำหรับการพัฒนา Etherboot
ไดรเวอร์หรือเพื่อโหลด Etherboot เวอร์ชันใหม่กว่าด้วยเวอร์ชันที่เก่ากว่า

เรียกใช้ mknbi-rom ดังนี้:

mknbi-rom nic.zrom > nic.nb

ย้าย นิค.nb ไปยังตำแหน่งที่กระบวนการบูตเครือข่ายคาดว่าจะพบ ROM บูตจะ
โหลดสิ่งนี้เป็น การดำเนินงาน ระบบ และรันอิมเมจ ROM

MKELF-IMG


mkelf-img สร้างอิมเมจสำหรับบูตจากอิมเมจ Etherboot ".img" หรือ ".zimg" ซึ่งช่วยให้
เป็น netbooted โดยใช้ ROM ที่มีอยู่ สิ่งนี้มีประโยชน์สำหรับการพัฒนาไดรเวอร์ Etherboot หรือ to
โหลด Etherboot เวอร์ชันใหม่กว่าด้วยเวอร์ชันที่เก่ากว่า

เรียกใช้ mkelf-img ดังนี้:

mkelf-img nic.zimg > nic.nb

ย้าย นิค.nb ไปยังตำแหน่งที่กระบวนการบูตเครือข่ายคาดว่าจะพบ ROM บูตจะ
โหลดสิ่งนี้เป็น การดำเนินงาน ระบบ และดำเนินการตามภาพ

โปรดทราบว่าการดำเนินการนี้ไม่ได้ทดสอบส่วนตัวโหลด ROM ที่อยู่ในอิมเมจ ".z?rom" แต่ไม่ใช่ใน
".z?img"

MKELF-เมนู


mkelf เมนู และ mknbi-เมนู สร้างภาพบูตจากโปรแกรมเมนูเสริม อีเธอร์บูตมี
ความสามารถในการโหลดโปรแกรมเสริมที่สามารถโต้ตอบกับผู้ใช้ แก้ไข DHCP
โครงสร้างและส่งคืนสถานะ ตามสถานะ Etherboot สามารถโหลดไบนารีอื่นได้
รีสตาร์ทหรือออก ทำให้สามารถมีโปรแกรมส่วนต่อประสานผู้ใช้ที่ซับซ้อนโดยไม่ต้อง
ต้องแก้ไข Etherboot ข้อกำหนดสำหรับโปรแกรมเสริมได้รับการบันทึกไว้ใน
คู่มือนักพัฒนาอีเธอร์บูต

mkelf เมนู และ mknbi-เมนู นำไบนารีชื่อ "เมนู" จากไดเร็กทอรีไลบรารีซึ่งก็คือ
ถือว่ามีจุดเริ่มต้น 0x60000 ยอมรับอาร์กิวเมนต์ที่เป็นทางเลือก และนี่คือ
โหลดที่ 0x80000 อาจเป็นไฟล์ข้อมูลที่ใช้โดยโปรแกรมเมนู

ปัจจุบัน เมนูไบนารีที่จัดเตรียมไว้จะทำซ้ำสิ่งอำนวยความสะดวกเมนูในตัวของ Etherboot ด้วย
ข้อยกเว้นข้อแตกต่างเล็กน้อยบางประการ: ไม่มีข้อกำหนดของเซิร์ฟเวอร์หรือเกตเวย์
โหลด TFTP ที่ใช้และซ้อนกันไม่ทำงาน คุณไม่ควรกำหนด MOTD หรือ IMAGE_MENU ใน
Etherboot build ของคุณเพื่อให้สามารถใช้ไบนารีเมนูภายนอกนี้ได้ ข้อมูลจำเพาะของ
ตัวเลือก DHCP ที่จำเป็นอยู่ในเอกสาร vendortags ในคู่มือผู้ใช้ Etherboot

การใช้งานทั่วไปมีลักษณะดังนี้:

mkelf-เมนู > menu.nb

จากนั้นใส่ menu.nb ในไดเร็กทอรีบูต TFTP และแก้ไขตัวเลือก DHCP ของคุณตาม
เอกสาร

ขอแนะนำให้ใช้โปรแกรมส่วนต่อประสานผู้ใช้สำรอง

เอ็มเคล์ฟ-เอ็นเอฟแอล


mkelf-nfl และ เอ็มเคเอ็นบี-เอ็นเอฟแอล สร้างภาพบูตจากโปรแกรมเมนู NFL โปรแกรมเมนูนี้
นำชื่อรูปภาพจากไฟล์เมนู-ข้อความ-ไฟล์ซึ่งมีเพียงแค่บรรทัดที่มี
ชื่อไฟล์ (สัมพันธ์กับไดเร็กทอรีรูท tftpd) ของรูปภาพที่จะโหลด อินเทอร์เฟซผู้ใช้คือ
แถบแสงคล้ายกับที่ใช้ใน GRUB มีตัวอย่างเมนูข้อความไฟล์ใน
"menu-nfl.eg". สามารถใช้รายการพิเศษ "Quit Etherboot" (ไม่มีเครื่องหมายคำพูด) ได้
ใน menu-text-files เป็นรายการที่ทำให้ Etherboot หยุดทำงานและกลับสู่การเรียกใช้
สภาพแวดล้อมซึ่งเป็น BIOS ในกรณีของ ROM

การใช้งานทั่วไปคือ:

mkelf-nfl เมนูข้อความไฟล์ > nfl.nb

จากนั้นใส่ nfl.nb ในไดเร็กทอรีบูต TFTP และระบุเป็นอิมเมจสำหรับบูต ผูกมัดกับ
เมนูอื่นๆก็ใช้ได้

ปรับปรุงรูปแบบเมนูที่ยอมรับเพื่อระบุคุณสมบัติอื่น ๆ เช่นชื่อ,
ขอแนะนำให้ใช้การหมดเวลา สี และอื่นๆ

เอ็มเคลฟ์-LUA


mkelf-หลัว สร้างอิมเมจ ELF จากคอมไพล์ Lua ("http://www.tecgraf.puc-rio.br/lua/")
โครงการ

การใช้งานทั่วไปคือ:

mkelf-lua สวัสดี.lb > luaprog.nb

โดยที่ "hello.lb" ถูกสร้างขึ้นจากโปรแกรม Lua โดย:

luac -o สวัสดี.lb สวัสดี.lua

ฟังก์ชันที่มีให้สำหรับโปรแกรม Lua ในสภาพแวดล้อมนี้มีอธิบายไว้ในแยกต่างหาก
เอกสาร

MKNBI-FDOS


mknbi-fdos สร้างอิมเมจสำหรับบูตจากไฟล์เคอร์เนล FreeDOS และอิมเมจฟลอปปี้ สังเกตว่า
อิมเมจเคอร์เนลไม่ได้อ่านจากส่วนฟลอปปีของอิมเมจสำหรับบูต แต่เป็นไฟล์แยกต่างหาก
ส่วนในภาพบูต ตัวโหลดบูตได้รับการปรับให้ข้ามไปที่มันโดยตรง นี้
หมายถึง พื้นที่ที่จะถูกยึดบน ห้อย โดยไฟล์ภาพเคอร์เนลตอนนี้สามารถเป็น
ใช้สำหรับแอปพลิเคชันและข้อมูล

รับการแจกจ่าย FreeDOS ด้วยเคอร์เนลล่าสุด อย่างน้อยน่าจะปี 2006 ได้แล้ว
ทดสอบกับปี 2012 แต่ไม่มีอะไรเก่ากว่า คุณสามารถรับเคอร์เนล FreeDOS ได้ที่นี่:

"http://freedos.sourceforge.net/"

ทำตามคำแนะนำเพื่อสร้างฟลอปปีที่สามารถบู๊ตได้ จากนั้นรับภาพของฟลอปปี้ด้วย:

dd if=/dev/fd0 จาก=/tmp/floppyimage.dd

สกัดด้วย เคอร์เนล.sys จากฟลอปปี้ คุณสามารถทำได้จากภาพโดยใช้ mtools
package โดยระบุไฟล์เป็น a ขับรถ ด้วยการประกาศเช่นนี้ใน ~/.mtoolsrc:

ไดรฟ์ x: file="/tmp/floppyimage"

จากนั้นเรียกใช้:

mcopy x:kernel.sys

จากนั้นเรียกใช้ mknbi โดย:

mknbi-fdos kernel.sys /tmp/floppyimage > freedos.nb

ที่ไหน เคอร์เนล.sys และ /tmp/ฟล็อปปี้อิมเมจ เป็นไฟล์ที่แยกไว้ด้านบน แล้วย้าย freedos.nb
ไปยังตำแหน่งที่กระบวนการบูตเครือข่ายคาดว่าจะพบ

หากคุณเข้าสู่ netboot สำเร็จแล้ว คุณสามารถย้อนกลับและเพิ่มไฟล์ของคุณไปที่
ภาพฟลอปปี้ คุณสามารถลบ เคอร์เนล.sys ในฟลอปปีอิมเมจเพื่อประหยัดพื้นที่นั้นไม่ใช่
จำเป็น โปรดทราบว่าคุณสามารถสร้างภาพฟลอปปี้ขนาดใดก็ได้ที่คุณต้องการด้วย mformat
โปรแกรมจาก mtools คุณไม่ได้จำกัดขนาดที่แท้จริงของแผ่นฟลอปปีสำหรับบู๊ต

MKNBI-FDOS OPTIONS


--ฮาร์ดดิสก์ ทำให้ ramdisk บูตเป็นฮาร์ดดิสก์ตัวแรกเช่น C:. เหตุผลหนึ่งที่คุณอาจต้องการ
การทำเช่นนี้เป็นเพราะคุณต้องการใช้แผ่นฟลอปปี้ของจริง ขีด จำกัด ของ "ขนาดดิสก์" ใน
อิมเมจสำหรับบูตไม่ได้ถูกยกขึ้นโดยตัวเลือกนี้ ดังนั้นจึงไม่ใช่เหตุผลที่จะใช้ตัวเลือกนี้ นี้
ตัวเลือกเข้ากันไม่ได้กับ --disableharddisk

--disableharddisk เมื่อ ramdisk กำลังจำลองฟลอปปีดิสก์ไดรฟ์ สวิตช์นี้จะ
ปิดการใช้งานการเข้าถึงฮาร์ดดิสก์ นี่เป็นสิ่งจำเป็นหากไคลเอนต์ควรใช้ไฟล์เครือข่าย
ระบบเป็นไดรฟ์ C: ซึ่งเป็นไปได้ก็ต่อเมื่อไม่พบฮาร์ดดิสก์ใน DOS นี้
ตัวเลือกเข้ากันไม่ได้กับ --harddisk

--โนสควอช อย่าพยายามตัดส่วนที่ไม่ได้ใช้ออกจากส่วนท้ายของภาพฟลอปปี้ นี้
เพิ่มขนาดอิมเมจสำหรับบูตและด้วยเหตุนี้เวลาในการโหลดหากระบบไฟล์ FAT บนฟลอปปี
ส่วนใหญ่ว่างเปล่า แต่คุณอาจต้องการใช้ตัวเลือกนี้หากคุณสงสัยว่า
อัลกอริทึมการบีบทำงานอย่างถูกต้อง

--rdbase=0xNNNNNNNN. ตั้งค่าที่อยู่โหลด ramdisk ที่อยู่โหลดเริ่มต้นสำหรับ ramdisk
คือ 0x110000 สามารถย้ายสูงขึ้นได้ (ล่างจะไม่ทำงาน) หากคุณต้องการ .ด้วยเหตุผลบางอย่าง
โหลดสิ่งอื่น ๆ ตามที่อยู่ปัจจุบัน เนื่องจากเป็นที่อยู่เชิงเส้น ไม่ใช่
ที่อยู่เซ็กเมนต์ ไม่ใช้ 4 บิตสุดท้ายและควรเป็น 0

MKNBI-DOS


mknbi-ดอส สร้างอิมเมจสำหรับบูตจากอิมเมจฟลอปปี้ที่มีระบบไฟล์ DOS ที่สามารถบู๊ตได้ มัน
ไม่จำเป็นต้องสร้างระบบไฟล์บนฟลอปปีจริงถ้าคุณมี mtools
แพ็คเกจ แต่คุณต้องมีฟลอปปีที่สามารถบู๊ตได้ขนาดใดก็ได้เพื่อเริ่มต้น ก่อนแตกบูต
บล็อกจากฟลอปปี บล็อกการบูตนี้ต้องตรงกับไฟล์เคอร์เนล DOS ที่คุณจะคัดลอก
ขั้นตอนต่อไป:

dd if=/dev/fd0 of=bootblock bs=512 count=1

จากนั้นรับไฟล์เคอร์เนล DOS (สิ่งนี้ถูกต้องสำหรับ DR-DOS ชื่อต่างกันใน MS-
DOS, IO.SYS และ MSDOS.SYS):

คัดลอก a:IBMBIO.COM a:IBMDOS.COM a:COMMAND.COM

ถัดไป ทำรายการใน ~/.mtoolsrc เพื่อประกาศฟลอปปีที่จะแมปกับไฟล์:

ไดรฟ์ x: file="/tmp/floppyimage"

ตอนนี้จัดรูปแบบฟลอปปีตามขนาดที่ต้องการ ในตัวอย่างนี้ฟลอปปี 2.88 MB ที่เดียวกัน
เวลาเขียน bootblock ลงไป:

mformat -C -t 80 -s 36 -h 2 -B บูตบล็อก x:

ขนาดของ "ฟล็อปปี้ดิสก์" ถูกจำกัดด้วยจำนวนกระบอกสูบเซกเตอร์
และหัว ซึ่งเท่ากับ 1023, 63 และ 255 ตามลำดับ และจำนวน RAM ที่คุณต้องการ
เพื่อจัดสรรให้กับ "ฟลอปปี้" ในหน่วยความจำ เนื่องจาก RAM มีค่า โปรดเลือกขนาดที่ใหญ่กว่าเล็กน้อย
มากกว่าที่จำเป็นในการเก็บไฟล์ "ฟลอปปี้" ของคุณ

สุดท้าย คัดลอกไฟล์ที่คุณต้องการทั้งหมดลงในฟลอปปี:

คัดลอก IBMBIO.COM x:

คัดลอก IBMDOS.COM x:

คัดลอกคำสั่ง COM x:

คัดลอก CONFIG.SYS AUTOEXEC.BAT APP.EXE APP.DAT ... x:

สำหรับ MS-DOS ทดแทน IO.SYS สำหรับ IBMIO.COM และ MSDOS.SYS สำหรับ IBMDOS.COM กรณีของ
ต้องเก็บรักษาไฟล์ไว้ อาจไม่ทำงานหากชื่อตัวพิมพ์เล็ก VFAT ถูกสร้างขึ้นในไฟล์
ภาพฟลอปปี้ ให้ความสนใจกับลำดับของการคัดลอกเนื่องจากบล็อกการเริ่มระบบอาจคาดหวังให้
สองรายการแรกบนดิสก์ที่ฟอร์แมตใหม่เป็น IO.SYS, MSDOS.SYS อาจจะด้วย
COMMAND.COM จะต้องเป็นรายการที่สามเพื่อให้เราเล่นได้อย่างปลอดภัย ขอบคุณ Phil Davey และ Phillip
Roa สำหรับเคล็ดลับเหล่านี้

ฉันมีรายงานว่า bootblock ของ MS-DOS 6.22 บางครั้งไม่สามารถบู๊ต ramdisk ได้ คุณ
สามารถลองใช้บล็อกการบูตจาก Netboot แทนการถอดบล็อกการบูตออกจาก
ฟลอปปี้ ฉันได้จัดเตรียม boot block นี้ในการแจกจ่ายเป็น altboot.bin และใน source
รูปแบบเป็น altboot.S และ boot.inc สิ่งสำคัญอย่างหนึ่งคือการทำให้ IO.SYS เป็นไฟล์แรกใน
ดิสก์หรือ bootblock นี้จะไม่ทำงาน

หากคุณมีสื่อที่มีขนาดเท่ากัน คุณสามารถทดสอบว่าอิมเมจนั้นสามารถบู๊ตได้หรือไม่โดย
คัดลอกไปยังสื่อแล้วทำการบูต:

dd if=/tmp/floppyimage ของ=/dev/fd0

จากนั้นรัน mknbi-dos บนอิมเมจ /tmp/ฟล็อปปี้อิมเมจ เพื่อสร้างภาพบูต:

mknbi-dos /tmp/floppyimage > dos.nb

ย้าย ดอส.nb ไปยังตำแหน่งที่กระบวนการบูตเครือข่ายคาดว่าจะพบ

MKNBI-DOS OPTIONS


--ฮาร์ดดิสก์ ทำให้ ramdisk บูตเป็นฮาร์ดดิสก์ตัวแรกเช่น C:. เหตุผลหนึ่งที่คุณอาจต้องการ
การทำเช่นนี้เป็นเพราะคุณต้องการใช้แผ่นฟลอปปี้ของจริง ขีด จำกัด ของ "ขนาดดิสก์" ใน
อิมเมจสำหรับบูตไม่ได้ถูกยกขึ้นโดยตัวเลือกนี้ ดังนั้นจึงไม่ใช่เหตุผลที่จะใช้ตัวเลือกนี้ นี้
ตัวเลือกเข้ากันไม่ได้กับ --disableharddisk

--disableharddisk เมื่อ ramdisk กำลังจำลองฟลอปปีดิสก์ไดรฟ์ สวิตช์นี้จะ
ปิดการใช้งานการเข้าถึงฮาร์ดดิสก์ นี่เป็นสิ่งจำเป็นหากไคลเอนต์ควรใช้ไฟล์เครือข่าย
ระบบเป็นไดรฟ์ C: ซึ่งเป็นไปได้ก็ต่อเมื่อไม่พบฮาร์ดดิสก์ใน DOS นี้
ตัวเลือกเข้ากันไม่ได้กับ --harddisk

--โนสควอช อย่าพยายามตัดส่วนที่ไม่ได้ใช้ออกจากส่วนท้ายของภาพฟลอปปี้ นี้
เพิ่มขนาดอิมเมจสำหรับบูตและด้วยเหตุนี้เวลาในการโหลดหากระบบไฟล์ FAT บนฟลอปปี
ส่วนใหญ่ว่างเปล่า แต่คุณอาจต้องการใช้ตัวเลือกนี้หากคุณสงสัยว่า
อัลกอริทึมการบีบทำงานอย่างถูกต้อง

--rdbase=0xNNNNNNNN. ตั้งค่าที่อยู่โหลด ramdisk ที่อยู่โหลดเริ่มต้นสำหรับ ramdisk
คือ 0x110000 สามารถย้ายสูงขึ้นได้ (ล่างจะไม่ทำงาน) หากคุณต้องการ .ด้วยเหตุผลบางอย่าง
โหลดสิ่งอื่น ๆ ตามที่อยู่ปัจจุบัน เนื่องจากเป็นที่อยู่เชิงเส้น ไม่ใช่
ที่อยู่เซ็กเมนต์ ไม่ใช้ 4 บิตสุดท้ายและควรเป็น 0

ใช้ mknbi ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

คำสั่ง Linux

Ad