Add to xfs_admin the ability to pass external log devices to xfs_db.
This is necessary to make changes on such filesystems.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
status=0
DB_OPTS=""
REPAIR_OPTS=""
-USAGE="Usage: xfs_admin [-efjlpuV] [-c 0|1] [-L label] [-U uuid] device"
+USAGE="Usage: xfs_admin [-efjlpuV] [-c 0|1] [-L label] [-U uuid] device [logdev]"
while getopts "efjlpuc:L:U:V" c
do
set -- extra $@
shift $OPTIND
case $# in
- 1) if [ -n "$DB_OPTS" ]
+ 1|2)
+ # Pick up the log device, if present
+ if [ -n "$2" ]; then
+ DB_OPTS=$DB_OPTS" -l '$2'"
+ test -n "$REPAIR_OPTS" && \
+ REPAIR_OPTS=$REPAIR_OPTS" -l '$2'"
+ fi
+
+ if [ -n "$DB_OPTS" ]
then
eval xfs_db -x -p xfs_admin $DB_OPTS $1
status=$?
.I uuid
]
.I device
+[
+.I logdev
+]
.br
.B xfs_admin \-V
.SH DESCRIPTION
and modified using the
.BR xfs_growfs (8)
command.
+.PP
+The optional
+.B logdev
+parameter specifies the device special file where the filesystem's external
+log resides.
+This is required only for filesystems that use an external log.
+See the
+.B mkfs.xfs \-l
+option, and refer to
+.BR xfs (5)
+for a detailed description of the XFS log.
.SH OPTIONS
.TP
.B \-e