38 lines
1015 B
Bash
Executable File
38 lines
1015 B
Bash
Executable File
#!/bin/sh
|
|
|
|
TDIR=${AUTOPKGTEST_TMP:-/tmp/fuse_dir}
|
|
LOGDIR=${AUTOPKGTEST_ARTIFACTS:-/tmp/fuse_dir_log}
|
|
IMG=$TDIR/test-image.img
|
|
MNT=$TDIR/mnt
|
|
|
|
# some autopkgtest environments may not have /etc/mtab and/or /proc/mounts
|
|
EXT2FS_NO_MTAB_OK=yes
|
|
export EXT2FS_NO_MTAB_OK
|
|
|
|
mkdir -p $LOGDIR $TDIR $MNT
|
|
|
|
/sbin/mke2fs -E root_owner -q -t ext4 -d e2fsck $IMG 8M
|
|
/sbin/e2label $IMG test
|
|
fuse2fs $IMG $MNT > $LOGDIR/fuse2fs.log 2>&1
|
|
if test $? -ne 0 ; then
|
|
echo "fuse2fs failed; see $LOGDIR/fuse2fs.log"
|
|
exit 1
|
|
fi
|
|
diff e2fsck/pass1.c $MNT/pass1.c
|
|
echo foobar > $MNT/testfile
|
|
fusermount -u $MNT > $LOGDIR/fusermount.log 2>&1
|
|
if test $? -ne 0 ; then
|
|
echo "fusermount failed; see $LOGDIR/fusermount.log"
|
|
exit 1
|
|
fi
|
|
/sbin/e2fsck -fy $IMG > $LOGDIR/e2fsck.log 2>&1
|
|
if test $? -ne 0 ; then
|
|
echo "e2fsck failed; see $LOGDIR/e2fsck.log"
|
|
exit 1
|
|
fi
|
|
contents=$(/sbin/debugfs -R "cat testfile" $IMG 2> $LOGDIR/debugfs.log)
|
|
if test "$contents" != foobar ; then
|
|
echo "testfile does not contain expected output"
|
|
exit 1
|
|
fi
|