2 .\" Nate Lawson. All rights reserved.
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\" notice, this list of conditions and the following disclaimer in the
11 .\" documentation and/or other materials provided with the distribution.
12 .\" 3. Neither the name of the author nor the names of any co-contributors
13 .\" may be used to endorse or promote products derived from this software
14 .\" without specific prior written permission.
16 .\" THIS SOFTWARE IS PROVIDED BY Nate Lawson AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 .\" $FreeBSD: src/share/examples/scsi_target/scsi_target.8,v 1.2.4.1 2003/02/18 22:07:10 njl Exp $
29 .\" $DragonFly: src/share/examples/scsi_target/scsi_target.8,v 1.3 2006/02/17 19:37:09 swildner Exp $
36 .Nd usermode SCSI disk emulator
44 .Ar bus : Ns Ar target : Ns Ar lun
49 utility emulates a SCSI target device using the
52 It supports the basic commands of a direct access device, like
54 In typical operation, it opens a control device and
55 enables target mode for the specified LUN.
56 It then communicates with
57 the SIM using CCBs exchanged via
61 READ and WRITE CDBs are satisfied with the specified backing store file.
63 For performance, all backing store accesses use
67 requires a kernel compiled with
68 .Cd "options VFS_AIO" .
71 .Bl -tag -width indent
73 Enable 16 addresses if supported by the SIM.
76 Enable synchronous transfers if supported by the SIM.
79 Enable tagged queuing if supported by the SIM.
80 Default is no tagged queuing.
81 .It Fl W Cm 8 | 16 | 32
82 Enable 16 or 32 bit wide transfers if supported by the SIM.
85 Set buffer size for transfers.
86 Transfers larger than this will be split into multiple transfers.
87 .It Fl c Ar sectorsize
88 Set sector size for emulated volume.
91 Enable debugging output in
93 and its associated control device.
95 Use a different size for the emulated volume.
96 Must be less than or equal to the size of
101 .Bl -tag -width indent
102 .It Ar bus : Ns Ar target : Ns Ar lun
103 Attach to specified bus ID, target ID, and LUN.
105 File to use as a backing store.
108 All options default to the minimal functionality of SCSI-1.
111 checks the SIM for the requested capability before enabling target mode.
113 .Bl -tag -width ".Pa /usr/share/examples/scsi_target" -compact
116 .It Pa /usr/share/examples/scsi_target
120 Create a 5 megabyte backing store file.
122 .Dl "dd if=/dev/zero of=vol size=1m count=5"
124 Enable target mode on bus 0, target ID 1, LUN 0, using
126 as the backing store for READ6/10 and WRITE6/10 commands.
127 Only the first 1000 bytes of
130 Debugging information will be output.
131 16-bit wide transfers will be used if the SIM supports them.
133 .Dl "scsi_target -d -v 1000 -W 16 0:1:0 vol"
141 example first appeared in
144 .An Justin T. Gibbs .
148 .An Nate Lawson Aq nate@root.org .