1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-03 05:18:29 +03:00

add support for ext4 resize in fsadm

This commit is contained in:
Zdenek Kabelac 2009-02-04 12:47:05 +00:00
parent 76cc7b2754
commit cd96532e78
3 changed files with 29 additions and 23 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.45 -
===================================
Add support for ext4 resize in fsadm
Move locking_type reading inside init_locking().
Rename get_vgs() to get_vgnames() and clarify related error messages.
Allow clvmd to be built with all cluster managers & select one on cmdline.

View File

@ -9,7 +9,9 @@ fsadm \- utility to resize or check filesystem on a device
.RI [options]\ resize\ device\ [new_size[BKMGTEP]]
.SH "DESCRIPTION"
\fBfsadm\fR utility resizes or checks the filesystem on a device. It tries to use the same API for \fBExt2/3\fR, \fBReiserFS\fR and \fBXFS\fR filesystem and simply resize and filesystem check operation.
\fBfsadm\fR utility resizes or checks the filesystem on a device.
It tries to use the same API for \fBext2/ext3/ext4\fR,
\fBReiserFS\fR and \fBXFS\fR filesystem.
.SH "OPTIONS"
.TP
\fB\-h \-\-help\fR
@ -19,7 +21,7 @@ fsadm \- utility to resize or check filesystem on a device
\(em be more verbose
.TP
\fB\-e \-\-ext\-offline\fR
\(em unmount Ext2/3 filesystem before doing resize
\(em unmount ext2/ext3/ext4 filesystem before doing resize
.TP
\fB\-f \-\-force\fR
\(em bypass some sanity checks
@ -31,11 +33,15 @@ fsadm \- utility to resize or check filesystem on a device
\(em answer "yes" at any prompts
.TP
\fBnew_size\fR
\(em Absolute number of filesystem blocks to be in the filesystem, or an absolute size using a suffix (in powers of 1024). If new_size is not supplied, the whole device is used.
\(em Absolute number of filesystem blocks to be in the filesystem,
or an absolute size using a suffix (in powers of 1024).
If new_size is not supplied, the whole device is used.
.SH "EXAMPLES"
"fsadm \-e \-y resize /dev/vg/test 1000M" tries to resize the size of the filesystem on logical volume /dev/vg/test. If /dev/vg/test contains Ext2/3 filesystem it will be unmounted prior the resize. All [y|n] questions will be answered 'y'.
"fsadm \-e \-y resize /dev/vg/test 1000M" tries to resize the filesystem
on logical volume /dev/vg/test. If /dev/vg/test contains ext2/ext3/ext4
filesystem it will be unmounted prior the resize.
All [y|n] questions will be answered 'y'.
.SH "ENVIRONMENT VARIABLES"
.TP
\fBTMPDIR\fP
@ -53,4 +59,3 @@ Where the temporary directory should be created.
.BR xfs_info (8),
.BR xfs_growfs (8),
.BR xfs_check (8)

View File

@ -19,7 +19,7 @@
# Needed utilities:
# mount, umount, grep, readlink, blockdev, blkid, fsck, xfs_check
#
# ext2/ext3: resize2fs, tune2fs
# ext2/ext3/ext4: resize2fs, tune2fs
# reiserfs: resize_reiserfs, reiserfstune
# xfs: xfs_growfs, xfs_info
#
@ -80,7 +80,7 @@ tool_usage() {
echo " Options:"
echo " -h | --help Show this help message"
echo " -v | --verbose Be verbose"
echo " -e | --ext-offline unmount filesystem before Ext2/3 resize"
echo " -e | --ext-offline unmount filesystem before ext2/ext3/ext4 resize"
echo " -f | --force Bypass sanity checks"
echo " -n | --dry-run Print commands without running them"
echo " -l | --lvresize Resize given device (if it is LVM device)"
@ -226,7 +226,7 @@ validate_parsing() {
test -n "$BLOCKSIZE" -a -n "$BLOCKCOUNT" || error "Cannot parse $1 output"
}
####################################
# Resize ext2/ext3 filesystem
# Resize ext2/ext3/ext4 filesystem
# - unmounted or mounted for upsize
# - unmounted for downsize
####################################
@ -329,7 +329,7 @@ resize() {
#IFS=$'\n' # don't use bash-ism ??
IFS="$(printf \"\\n\")" # needed for parsing output
case "$FSTYPE" in
"ext3"|"ext2") resize_ext $NEWSIZE ;;
"ext3"|"ext2"|"ext4") resize_ext $NEWSIZE ;;
"reiserfs") resize_reiser $NEWSIZE ;;
"xfs") resize_xfs $NEWSIZE ;;
*) error "Filesystem \"$FSTYPE\" on device \"$VOLUME\" is not supported by this tool" ;;