Git Product home page Git Product logo

isboot's Introduction

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]>

isboot's People

Contributors

jnielsendotnet avatar jwmullally avatar danielo avatar zoon01 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.