File: ext2online.8

package info (click to toggle)
ext2resize 1.1.17-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 772 kB
  • ctags: 678
  • sloc: ansic: 4,595; sh: 389; makefile: 56
file content (191 lines) | stat: -rw-r--r-- 5,860 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
.\" -*- nroff -*-
.\" Written by Andreas Dilger based on the ext2resize.8 man page.
.TH EXT2ONLINE 8 "March 2001" "ext2online v1.1.17"
.SH NAME
ext2online \- online (mounted) ext2 filesystem resizer
.SH SYNOPSIS
.BR ext2online " [" \-d "] [" -q "] [" -v "] [" -V ]
.RI { device | mountpoint "} [" size [\fBb\fR|\fBK\fR|\fBM\fR|\fBG\fR|\fBT\fR]]
.SH "DESCRIPTION"
The
.B ext2online
tool resizes ext2 file systems while they are mounted and in use by the
system.  It is OK to resize the filesystem even while programs have open
files and are writing into the filesystem.  It is only possible to enlarge
a mounted filesystem.  It is possible to use
.BR ext2resize (8)
to shrink and enlarge an unmounted filesystem.  To be able to use
.BR ext2online ,
you need to have the
.B "Online ext2 resize support"
.RB ( CONFIG_EXT2_RESIZE )
feature enabled in the kernel (after applying the appropriate patch for
the 2.x series of kernels).
.PP
The filesystem specified by
.I device
(partition, loop device, logical volume, ...) or
.I mountpoint
must currently be mounted, and it will be enlarged to fill the device, by
default.  If the optional
.I size
parameter is specified, then this size will be used instead.  If the
.I size
parameter does not have an optional modifier, it will be taken to be in
ext2 filesystem blocks (which can be 1k, 2k, or 4k \-  use
.BR dumpe2fs (8)
to find out more information about the current filesystem).  The modifiers
.BR b ,
.BR K ,
.BR M ,
.BR G ,
or
.B T
mean the
.I size
parameter is given in 512\-byte blocks, kilo\-, mega\-, giga\-, or terabytes
respectively.

.PP
The
.B ext2online
program does not change the size of the actual device \- only the filesystem.
If you wish to enlarge a filesystem, you must make sure you expand the
underlying device first.  This can be done online for Logical Volumes by using
.BR lvextend (8)
from the LVM package, or for ease-of-use you can use
.BR e2fsadm (8)
which combines the LV extension and ext2 filesystem resizing into one step.
Alternately, you may be able to use facilities in
.B md
or
.B RAID
facilities in the hardware, if you are not using a partition table.  It is
.B not
possible to do this by using the
.BR fdisk (8)
family of tools to extend a partition while it is mounted (at least the
author has not been able to successfully do this).

.PP
Because of the original design of the ext2 filesystem did not have
online resizing in mind, there are certain limitations to the amount of
resizing that can be done while the filesystem is mounted, if you
haven't done any preparation for the resize.  The default block size for
ext2 was 1k blocks until v1.15 of e2fsprogs (1999), where it changed to
4k blocks for filesystems larger than 500MB.

.PP
With no filesystem preparation, it is always possible to resize to the
next 256MB boundary for 1k filesystems, the next 2GB boundary for for 2k
filesystems, and the next 16GB boundary for 4k filesystems.  By using the
.BR ext2prepare (8)
program on an unmounted filesystem, it is possible for
.B ext2online
to increase the size of a mounted ext2 filesystem to almost any size.

.SH OPTIONS
.TP
.BR \-d ", " \-\-debug
Turn on debugging messages.
.TP
.BR \-q ", " \-\-quiet
Do not print anything but error messages.
.TP
.BR \-v ", " \-\-verbose
Turn on normal verbose status messages.
.TP
.BR \-V ", " \-\-version
Print the version number and exit.

.SH RETURN VALUES
0	Resizing successful
.TP
1	Error in command line (options or specified device)
.TP
2	Error in specified size
.TP
3	Error in pre-resizing (user space) operation
.TP
4	Error during the in-kernel resizing operation

.SH EXAMPLES
The following example shows how to test
.B ext2online
with a spare partition.  First a filesystem of 32MB is created on the
device, mounted, and the size is verified.  The filesystem is then
extended to fill the device (the default action when no size is given),
and the new size is verified.

.PP
\	dd if=/dev/zero of=/tmp/file bs=1k count=64k
.br
\	mke2fs -f /tmp/file 32768
.br
\	mkdir /mnt/test
.br
\	mount \-o loop,debug,check=strict /tmp/file /mnt/test
.br
\	df /mnt/test
.br
\	ext2online -d -v /tmp/testfile
.br
\	df /mnt/test

.PP
By using the
.I debug
and
.I "check=strict"
options to mount, as well as the
.B \-d
and
.B \-v
flags to
.BR ext2online ,
we will see the user-space status messages, and the kernel
messages will be logged by syslog.

.SH WARNING
Note that resizing a mounted filesystem is inherently dangerous and may
corrupt filesystems, although no errors resulting in data loss have ever
been reported to the author.  In theory online resizing should work fine
with arbitrarily large filesystems, but it has not yet been tested by the
author on a filesystem larger than 11GB.
.B Use with caution.
Backups are
.B always
a good idea, because your disk may fail at any time, you delete files by
accident, or your computer is struck by a meteor.

.SH AUTHOR
The 
.B ext2online
program was written by Andreas Dilger <adilger@turbolinux.com> using
the ext2 resizing tools developed by Lennert Buytenhek <buytenh@gnu.org>.
The ext2online kernel patches are available as part of the GNU ext2resize
package at <http://sourceforge.org/projects/ext2resize/>.

.SH BUGS
There is a limit imposed on a single filesystem resize due to the fact that
.B ext2online
does not use triple-indirect blocks for the resize inode.  This should
not affect most users of
.BR ext2online ,
as the limit is about 60GB larger than the current filesystem size for 1k
block filesystems.
The ext2resize programs do
.B not
work on big\-endian machines (Alpha, SPARC, PPC, etc).

.SH COPYRIGHT
.B ext2online
is (C) Copyright 1999, 2000, 2001 by Andreas Dilger and may be distributed
under the terms of the GNU General Public License.
.SH "SEE ALSO"
.BR dumpe2fs (8)
.BR ext2prepare (8)
.BR ext2resize (8)
.BR e2fsadm (8)
.BR e2fsck (8)
.BR lvextend (8)