]> git.ipfire.org Git - thirdparty/util-linux.git/blame - sys-utils/losetup.8
Merge branch 'setpriv-example' of https://github.com/yrro/util-linux
[thirdparty/util-linux.git] / sys-utils / losetup.8
CommitLineData
289619bd 1.TH LOSETUP 8 "November 2015" "util-linux" "System Administration"
fd6b7a7f
KZ
2.SH NAME
3losetup \- set up and control loop devices
4.SH SYNOPSIS
5.ad l
d162fcb5
KZ
6Get info:
7.sp
8.in +5
fd6b7a7f 9.B losetup
76493ceb 10[\fIloopdev\fP]
d162fcb5 11.sp
896352d3
OO
12.B losetup -l
13.RB [ \-a ]
8b125fae 14.sp
26ea6eb1
KZ
15.B losetup -j
16.I file
17.RB [ \-o
18.IR offset ]
259fcc57 19.sp
d162fcb5 20.in -5
c372860d 21Detach a loop device:
d162fcb5
KZ
22.sp
23.in +5
24.B "losetup \-d"
f7963004 25.IR loopdev ...
d162fcb5
KZ
26.sp
27.in -5
f1453d52 28Detach all associated loop devices:
34f9b684
PU
29.sp
30.in +5
31.B "losetup \-D"
32.sp
33.in -5
c372860d 34Set up a loop device:
d162fcb5
KZ
35.sp
36.in +5
37.B losetup
d162fcb5
KZ
38.RB [ \-o
39.IR offset ]
7bcefc7f 40.RB [ \-\-sizelimit
ca1e1363 41.IR size ]
76493ceb
KZ
42.RB [ \-\-sector\-size
43.IR size ]
26ea6eb1 44.in +8
c372860d
BS
45.RB [ \-Pr ]
46.RB [ \-\-show ] " \-f" | \fIloopdev\fP
d162fcb5 47.I file
d34ac93a 48.sp
d162fcb5 49.in -13
c372860d 50Resize a loop device:
d34ac93a
KZ
51.sp
52.in +5
53.B "losetup \-c"
54.I loopdev
55.in -5
fd6b7a7f
KZ
56.ad b
57.SH DESCRIPTION
58.B losetup
59is used to associate loop devices with regular files or block devices,
c372860d 60to detach loop devices, and to query the status of a loop device. If only the
26ea6eb1 61\fIloopdev\fP argument is given, the status of the corresponding loop
c372860d
BS
62device is shown. If no option is given, all loop devices are shown.
63.sp
ec3624aa 64Note that the old output format (i.e., \fBlosetup -a\fR) with comma-delimited
c372860d 65strings is deprecated in favour of the \fB--list\fR output format.
9a94b634
KZ
66.sp
67It's possible to create more independent loop devices for the same backing
68file.
69.B This setup may be dangerous, can cause data loss, corruption and overwrites.
ec3624aa 70Use \fB\-\-nooverlap\fR with \fB\-\-find\fR during setup to avoid this problem.
14576644 71
fd6b7a7f 72.SH OPTIONS
c372860d
BS
73The \fIsize\fR and \fIoffset\fR
74arguments may be followed by the multiplicative suffixes KiB (=1024),
75MiB (=1024*1024), and so on for GiB, TiB, PiB, EiB, ZiB and YiB (the "iB" is
76optional, e.g., "K" has the same meaning as "KiB") or the suffixes
77KB (=1000), MB (=1000*1000), and so on for GB, TB, PB, EB, ZB and YB.
ca1e1363 78
c372860d
BS
79.TP
80.BR \-a , " \-\-all"
81Show the status of all loop devices. Note that not all information is accessible
82for non-root users. See also \fB\-\-list\fR. The old output format (as printed
83without \fB--list)\fR is deprecated.
84.TP
c372860d 85.BR \-d , " \-\-detach " \fIloopdev\fR...
60eedb0a
KZ
86Detach the file or device associated with the specified loop device(s). Note
87that since Linux v3.7 kernel uses "lazy device destruction". The detach
88operation does not return EBUSY error anymore if device is actively used by
89system, but it is marked by autoclear flag and destroyed later.
c372860d 90.TP
b06c1ca6 91.BR \-D , " \-\-detach\-all"
c372860d
BS
92Detach all associated loop devices.
93.TP
ec3624aa
FG
94.BR \-f , " \-\-find " "\fR[\fIfile\fR]"
95Find the first unused loop device. If a \fIfile\fR argument is present, use
96the found device as loop device. Otherwise, just print its name.
97.IP "\fB\-\-show\fP"
98Display the name of the assigned loop device if the \fB\-f\fP option and a
99\fIfile\fP argument are present.
289619bd 100.TP
9a94b634
KZ
101.BR \-L , " \-\-nooverlap"
102Check for conflicts between loop devices to avoid situation when the same
103backing file is shared between more loop devices. If the file is already used
104by another device then re-use the device rather than a new one. The option
105makes sense only with \fB\-\-find\fP.
106.TP
ec3624aa
FG
107.BR \-j , " \-\-associated " \fIfile\fR " \fR[\fB\-o \fIoffset\fR]"
108Show the status of all loop devices associated with the given \fIfile\fR.
c372860d
BS
109.TP
110.BR \-o , " \-\-offset " \fIoffset
111The data start is moved \fIoffset\fP bytes into the specified file or device.
ec3624aa
FG
112.IP "\fB\-\-sizelimit \fIsize\fP"
113The data end is set to no more than \fIsize\fP bytes after the data start.
c372860d 114.TP
76493ceb
KZ
115.BR \-b , " \-\-sector-size " \fIsize
116Set the logical sector size of the loop device in bytes (since Linux 4.14). The
117option may be used when create a new loop device as well as stand-alone command
118to modify sector size of the already existing loop device.
a1a41597 119.TP
ec3624aa
FG
120.BR \-c , " \-\-set\-capacity " \fIloopdev
121Force the loop driver to reread the size of the file associated with the
122specified loop device.
c372860d
BS
123.TP
124.BR \-P , " \-\-partscan"
125Force the kernel to scan the partition table on a newly created loop device.
c372860d 126.TP
b06c1ca6 127.BR \-r , " \-\-read\-only"
c372860d 128Set up a read-only loop device.
ec3624aa
FG
129.TP
130.BR \-\-direct\-io [ =on | off ]
131Enable or disable direct I/O for the backing file. The optional argument
132can be either \fBon\fR or \fBoff\fR. If the argument is omitted, it defaults
133to \fBon\fR.
c372860d
BS
134.TP
135.BR \-v , " \-\-verbose"
136Verbose mode.
137.TP
ec3624aa
FG
138.BR \-l , " \-\-list"
139If a loop device or the \fB-a\fR option is specified, print the default columns
140for either the specified loop device or all loop devices; the default is to
141print info about all devices. See also \fB\-\-output\fP, \fB\-\-noheadings\fP,
142\fB\-\-raw\fP, and \fB\-\-json\fP.
143.TP
144.BR \-O , " \-\-output " \fIcolumn\fR[,\fIcolumn\fR]...
145Specify the columns that are to be printed for the \fB\-\-list\fP output.
146Use \fB\-\-help\fR to get a list of all supported columns.
147.TP
148.BR \-n , " \-\-noheadings"
149Don't print headings for \fB\-\-list\fP output format.
150.IP "\fB\-\-raw\fP"
151Use the raw \fB\-\-list\fP output format.
152.TP
153.BR \-J , " \-\-json"
154Use JSON format for \fB\-\-list\fP output.
155.TP
c372860d
BS
156.BR \-V , " \-\-version"
157Display version information and exit.
158.TP
159.BR \-h , " \-\-help"
160Display help text and exit.
ba3809b0 161
23b85230 162.SH ENCRYPTION
c372860d 163.B Cryptoloop is no longer supported in favor of dm-crypt.
5593132a 164.B For more details see cryptsetup(8).
23b85230 165
66ee8158
KZ
166.SH RETURN VALUE
167.B losetup
c372860d 168returns 0 on success, nonzero on failure. When
66ee8158
KZ
169.B losetup
170displays the status of a loop device, it returns 1 if the device
171is not configured and 2 if an error occurred which prevented
c372860d 172determining the status of the device.
66ee8158 173
fd6b7a7f 174.SH FILES
23b85230
KZ
175.TP
176.I /dev/loop[0..N]
177loop block devices
178.TP
0d0d12ad 179.I /dev/loop-control
23b85230
KZ
180loop control device
181
fd6b7a7f 182.SH EXAMPLE
fd6b7a7f
KZ
183The following commands can be used as an example of using the loop device.
184.nf
185.IP
bda26762 186# dd if=/dev/zero of=~/file.img bs=1024k count=10
23b85230
KZ
187# losetup --find --show ~/file.img
188/dev/loop0
189# mkfs -t ext2 /dev/loop0
190# mount /dev/loop0 /mnt
fd6b7a7f 191 ...
d03dd608 192# umount /dev/loop0
23b85230 193# losetup --detach /dev/loop0
fd6b7a7f 194.fi
0bf03740
KZ
195.SH ENVIRONMENT
196.IP LOOPDEV_DEBUG=all
197enables debug output.
23b85230 198.SH AUTHORS
c372860d 199Karel Zak <kzak@redhat.com>, based on the original version from
23b85230 200Theodore Ts'o <tytso@athena.mit.edu>
86d62711 201.SH AVAILABILITY
601d12fb 202The losetup command is part of the util-linux package and is available from
d673b74e 203https://www.kernel.org/pub/linux/utils/util-linux/.