jwmullally / isboot Goto Github PK
View Code? Open in Web Editor NEWThis project forked from jnielsendotnet/isboot
FreeBSD kernel module to support booting from iSCSI via IBFT
This project forked from jnielsendotnet/isboot
FreeBSD kernel module to support booting from iSCSI via IBFT
The iSCSI boot driver for FreeBSD This driver provides an iSCSI boot feature for FreeBSD. It can be used with a bootable initiator offered by many server BIOSes, NIC firmwares or iPXE/gPXE. It connects to the iSCSI target specified in the iSCSI Boot Firmware Table (iBFT) automatically, making it simple to run a diskless machine. Your boot firmware will create and populate the iBFT, connect to the specified iSCSI target and attempt to boot from the target volume (like any other supported disk). Any normal bootloader (such as FreeBSD's gptboot) can be used. The bootloader should load the kernel and modules (including isboot) and begin execution. During boot, the isboot driver configures the NIC and creates a new connection to the iSCSI target. The disk is then available to the operating system as normal, and can be used to mount the root volume. Installation: 1. extract the archive: # tar zxvf isboot-x.x.x.tar.gz 2. compile the module: # cd isboot-x.x.x/src # make 3. install the compiled module to the kernel directory: # make install 4. edit /boot/loader.conf, and add the following line: isboot_load="YES" Note: If you want use isboot with VIMAGE kernel, add CFLAGS+= -DVIMAGE to Makefile. The boot device may change after installation. It may be necessary to edit /etc/fstab in single-user mode. The iBFT code supports two loader tunables: hw.ibft.acpi_table: Defaults to 1. If you have multiple iSCSI boot firmwares you may need to set this to a different value (such as 2). hw.ibft.verbose: Defaults to 0. Set it to 1 to enable verbose iBFT logs. After boot you can see the boot device information via sysctl(8). For example: # sysctl net.isboot net.isboot.version: 0.2.14 net.isboot.nic: cxbge0 net.isboot.device: da1 # sysctl hw.ibft hw.ibft.initiator_name: iqn.2010-04.org.ipxe:dn2800mt hw.ibft.initiator_address: 172.18.0.139 hw.ibft.target_name: iqn.2007-09.jp.ne.peach:aria:dn2800mt-boot hw.ibft.target_address: 172.18.0.26 hw.ibft.target_port: 3260 hw.ibft.target_lun: 0 hw.ibft.nic_prefix: 16 hw.ibft.nic_gateway: 172.18.0.1 # camcontrol inquiry da1 pass1: <FreeBSD iSCSI DISK 0001> Fixed Direct Access SCSI-5 device pass1: Serial Number 10002800 pass1: 300.000MB/s transfers Supported OS versions: o FreeBSD 12.4 o FreeBSD 13.2 o FreeBSD 14.0 Project website: https://github.com/jnielsendotnet/isboot The original author's blog (in Japanese) had some additional information: https://web.archive.org/web/20160810012908/http://shell.peach.ne.jp/aoyama/ Authors: Daisuke Aoyama <[email protected]> Michael Zoon <[email protected]> John Nielsen <[email protected]>
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.