The Linux SCSI Target Wiki
Welcome to linux-iscsi.org!
|Generic Target Engine||X||-||X||X|
|Cluster Storage CLI||VHACS||-||-||-|
|Generic Target Engine|
|Backstorage Drivers||Kernel||-||Kernel & User||User|
|Target Drivers||Kernel||iSCSI only||Kernel & User|
|4k Sector Support||X||-||-||X|
|Advanced LUN Access control||-||-||X||-|
Windows 2003 Clustering
| Persistent Reservations|
Windows 2008 Clustering
| I/O Fencing|
|FC (HBAs)||-||-|| Drivers: Emulex, QLogic, LSI|
Only in-tree: QLogic in STGT
|Parallel (Wide) SCSI||-||-||X||-|
|Additional Header Segment||-||-||X||X|
|Asynchronous Event Notification (AEN)||-||-||X||-|
|Extended CDBs (>16 bytes)||-||-||X||X|
|Maximum Error Recovery Level (ERL)||2||0||0||0|
|Multiple Connections per Session (MC/S)||X||-||-||-|
Implict and Explict Asymmetric Logical Unit Assignment (ALUA) added!
The complete functionality of implict (out-of-band ConfigFS controlled) and explict (in-band SET_TARGET_PORT_GROUP controlled) ALUA has been added to lio-core-2.6.git running v2.6.31-rc5! This includes complete support for ALUA Logical Unit and Target Port Groups abstractions as well as all primary and secondary ALUA access states defined by SPC-4.
ALUA is used extensively on a number of client platforms (including Linux via scsi_dh_alua.ko) for doing multipath (MPIO) between multiple SCSI target ports.
Please have a look at ALUA for more information!
LIO 3.0 users reference manual released!
The first users reference manual for the LIO 3.0 CLI has been released!
The manual contains information related to operation of the lio-utils userspace package on v3.0 kernel level Target_Core_Mod/ConfigFS core and LIO-Target/ConfigFS fabric including different Linux subsystem storage object backstore reference to iSCSI Target LUN Endpoints.
Please have a look here: LIO-3.0-Users_Reference_Manual.pdf
Persistent Reservation support for APTPL=1, SPEC_I_PT=1 and REGISTER_AND_MOVE added!
The Activate Persist across Target Power Loss (APTPL) and Specify Initiator Ports Capable (SPEC_I_PT) logic from SPC-4 is up and running on v2.6.31-rc5! Also, the final PROUT service action: REGISTER_AND_MOVE has also been added recently. This makes the TCM/LIO 3.x code 100% persistent reservation feature complete!
Please have a look at Persistent Reservations for more information
Updated to kernel v2.6.31-rc5 in lio-core-2.6.git
The lio-core-2.6.git kernel tree has been updated to v2.6.31-rc5, and the lio-core-2.6.30.git tree has been created.
Updated to kernel v2.6.30 and v3.0 python CLI/source and initial HOWTO released!
Also, the userspace source package for v3.0 has been released. Please see lio-utils for more information.
The v3.0 Howto is now online as well. This is a WIP (it still takes a bit of kernel build knowledge to get up and running) but it gives a good idea of what tcm_node and lio_node CLI operations look like.
SPC-3 compliant Persistent_Reservations for Target_Core_Mod/ConfigFS v3.0
As of early April 2009, all modes of Persistent_Reservations have been completed and are currently in testing. So for, the v3.0 target mode is passing validation for RHEL/Linux_Persistent_Reservations and MSFT/Persistent_Reservations with more to follow. SPC-3 persistent reservations are used by cluster storage implementations for hanlding I/O fencing across failover/retakeover scenarios. LIO-Target is the first v3.0 fabric module to take advantage of the SPC-3 PR emulation for IBLOCK, FILEIO and RAMDISK subsystem plugins in Target_Core_Mod/ConfigFS.
Please see Persistent_Reservations for a complete list of what is supported.
LIO-Target/ConfigFS v3.0 for kernel v2.6.29
For v3.0 in lio-core-2.6.git, development has been underway since early Sept 2008 to enable a generic target engine running configfs between our Linux-iSCSI.org Target (LIO-Target) Stack also running configfs.
As of the Late march release of Linux Kernel v2.6.29, all main functionality is up using ConfigFS symbolic links between target_core_mod Storage Objects and <-> LIO-Target iSCSI Target Portal Group Port LUNs. This includes support for SPC-3 Persistent_Reservations and initial implict ALUA logic and configFS infrastructure
VHACS-VM Alpha Preview
VHACS is an storage cloud based on at least 8 (eight) open source technologies running on Linux v2.6.25. VHACS is an acrynom for Virtualization, High Availibility, and Cluster Storage. There is now an alpha release of the software stack running in a virtualized x86_64 environment. The VHACS-VM images are available now, and oriented towards kernel developers, storage and network systems researchers, C programmers, Python and Shell programmers, and anyone who wants to see a real life open storage cloud on their virtualized x86 PC. Using the VHACS-Vm is the fastest method for users to get involved with the project. This is a very developer oriented release, so you should feel comfortable using a modern CLI Linux shell. A complete development environment is included in the images.
LIO-Target v3.0.0 available from kernel.org Git
v3.0-UPSTREAM: v3.0.0 for v2.6.29
To clone a lio-target tree of your own, use:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/nab/lio-core-2.6.git lio-core-2.6
Please have a look at LIO-Target for more information!
Core-iSCSI Initiator .ipk are available from LIO-Cluster link
OCFS2/iSCSI on Nokia N Series Maemo devices running OS 2008
The first set of packages for using a cluster filesystem, OCFSv2 on the Maemo platform for Nokia Devices.
The .debs are now online at LIO-Cluster link
Have a look at OCFS2/iSCSI_for_OS-2008 for more information!
The first stable release of Mobile IP storage services for the Nokia N800 running OS 2008 has been released. This mobile stack has been ported using the excellent cross-compile toolkit Scratchbox to the 2.6.21-omap1 kernel and Busybox environment that runs on the OMAP/ARM.
Have a look at Core-iSCSI/Nokia_800 for more information!
LIO-Target iSCSI/SE for TS-7800 ARM9 development board
The TS-7800 development board from Technologic has a 32-bit Marvell Orion 88F5182 ASIC clocked at 500 Mhz with 128MB DDR-RAM, and integrated support for 2 SATA ports, 2 USB 2.0 480Mbit/s host/slave, 10/100/1000 Ethernet.
Please see TS-7800 for more information!
LIO-Target iSCSI/SE for PS3-Linux
- ) Kernel module package
This modules are built for ppc64 and built with the toolkit for Fedora Core 8 ppc. This is gcc (GCC) 4.1.2 20070925 (Red Hat 4.1.2-33)
This module has been tested with 2.6.25 from ps3-linux.git and built against arch/powerpc/configs/ps3_defconfig with drivers/md/* enabled as modules for MD/LVM access with LIO-Target.
Please see Playstation3/iSCSI for move information!
LIO-VM i386 Demo Images are now Online!
- ) Introduction:
The LIO-VM Storage Engine demo is a set of VMware, KVM, and Qemu compatible virtual machine images that contains a self-configuring iSCSI target mode storage engine that runs on a very large and diverse amount of PC storage software and hardware. When the LIO-VM image boots, the host local storage hardware that is made available to the guest is exported as iSCSI target ports, and made available to both local and remote iSCSI Initiator clients.
Note that the iSCSI target is configured to allow _ALL_ iSCSI Initiators to access _ALL_ iSCSI Target Ports across all available iSCSI Network Portals. By default, the storage devices with filesystems will be exported as READ-ONLY to prevent multiple accesses by non-cluster filesystems. Support for production R/W configurations of this demo are in the works, please stay tuned to the site and lists for more information as this unfolds. Also, if you really know what you are doing when it comes to non cluster filesystem + RW access, please see Section IX in LIO-VM.
- ) Paravirt-Ops JeOS Images (2.6.22-14-virtual)
LIO-JeOS-VMware6 99050274 Bytes
LIO-JeOS-KVM 88605611 Bytes
LIO-JeOS-Qemu 87135808 Bytes
- ) iSCSI/Optical Debian Images (2.6.18-5-686)
Debian-LIO-VM-126.96.36.199-RC.zip 186084763 Bytes
Please see LIO-VM for more information.
Internet Small Computer Systems Interface / High Definition
- ) What is iSCSI/HD?
iSCSI/HD allows owners of high definition capable hardware and software to access their media across an IP network.
- ) What are the requirements for iSCSI/HD today?
A server acting running iSCSI Target mode running Linux v2.6 with an HD capable optical drive. A client that is capable of HD media playback, has a GigE network connection, and can speak iSCSI.
Please see iSCSI/HD for more information.
iSCSI on the Neuros OSD Personal Video Recorder/Player
Please have a look at NeurosOSD for more information.
iSCSI over Cellular Data Networks
iSCSI on OpenMoko Devices
Internet Storage Naming Service (RFC-4171)
To see how to build the latest v3.x tree, please have a look at Building_Generic_Target_Engine_and_LIO-Target_v3.x.0_from_kernel.org_git
Repositories and Builds
To see how to build the latest v3.x tree, please have a look at 
The debian/ubuntu binary package names are target-utils, target-modules for binary packages.
For debian/ubuntu source packages, target-source requires module-assistant to build the kernel module from source.
Building the target-utils source currently requires checking out the code and using dpkg-buildpackage from trunk/target Please see the Build README for more information.