|
|
| File: [Development] / xfs-cmds / xfstests / 032 (download)
Revision 1.14, Thu May 29 17:01:09 2008 UTC (9 years, 4 months ago) by bnaujok.longdrop.melbourne.sgi.com
mkfs.reiserfs refuses to create a filesystem on full devices without partitions unless it's given -f in addition to the already required Y input to confirm the fs creation, so give the argument to it. While we're at it also write the full command line used to create the filesystem into the log to ease future debugging. Signed-off-by: Christoph Hellwig <hch@lst.de> Merge of master-melb:xfs-cmds:31250a by kenmcd. Execute bits changed from xxx to --- Fix up test with reiserfs |
#! /bin/sh
# FS QA Test No. 032
#
# cross check mkfs detection of foreign filesystems
#
#-----------------------------------------------------------------------
# Copyright (c) 2000-2002 Silicon Graphics, Inc. All Rights Reserved.
#-----------------------------------------------------------------------
#
# creator
owner=nathans@sgi.com
seq=`basename $0`
echo "QA output created by $seq"
here=`pwd`
tmp=/tmp/$$
status=1 # failure is the default!
trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15
rm -f $seq.full
# get standard environment, filters and checks
. ./common.rc
. ./common.filter
# real QA test starts here
_supported_fs xfs
_supported_os Linux
_require_nobigloopfs
_require_scratch
echo "Silence is golden."
for fs in `echo /sbin/mkfs.* | sed -e 's/.sbin.mkfs.//g'`
do
preop="" # for special input needs
preargs="" # for any special pre-device options
postargs="" # for any special post-device options
# minix, msdos and vfat mkfs fails for large devices, restrict to 2000 blocks
[ $fs = minix ] && postargs=2000
[ $fs = msdos ] && postargs=2000
[ $fs = vfat ] && postargs=2000
# these folks prompt before writing
[ $fs = jfs ] && preop="echo Y |"
[ $fs = reiserfs ] && preop="echo y |" && preargs="-f"
# cramfs mkfs requires a directory argument
[ $fs = cramfs ] && preargs=/proc/fs/xfs
# overwite the first few Kb - should blow away superblocks
src/devzero -n 20 $SCRATCH_DEV >/dev/null
# create a filesystem of this type
echo "=== Creating $fs filesystem..." >>$seq.full
echo " ( $preop mkfs -t $fs $preargs $SCRATCH_DEV $postargs )" >>$seq.full
eval $preop mkfs -t $fs $preargs $SCRATCH_DEV $postargs >>$seq.full 2>&1
# next, ensure we don't overwrite it
echo "=== Attempting XFS overwrite of $fs..." >>$seq.full
/sbin/mkfs.xfs $SCRATCH_DEV >>$seq.full 2>&1
[ $? -eq 0 ] && echo "Failed - overwrote fs type ${fs}!"
done
# success, all done
status=0
exit