123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- #!/bin/sh
- #To run this script the following is necessary
- # 1.kernel should mtd support as module.
- # 2.kernel should hsve jffs2 support as module.
- # 3.kernel should have loopback device support .
- # 4.you should have fs-bench utility (http://h2np.net/tools/fs-bench-0.2.tar.gz)
- # 5.results will be copied to /tmp/log and /tmp/log1 files
- #DESCRIPTION: This testscript creates a jffs2 file system type and tests the filesystem test
- #and places the log in the log directory.The file system test actually creates a tree of large
- #directories and performs the delete and random delete operations as per the filesystem stress
- #algorithim and gives a report of real time ,user time,system time taken to perform the file
- #operations.
- #script created G.BANU PRAKASH (mailto:prakash.banu@wipro.com).
- #
- # This program is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 2 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
- # the GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- #
- MTD_RAM=mtdram
- MTD_BLOCK=mtdblock
- JFFS2=jffs2
- LOOP=loop
- MTD_BLKDEVS=mtd_blkdevs
- ZLIB_DEFLATE=zlib_deflate
- ZLIB_INFLATE=zlib_inflate
- MTD_CORE=mtdcore
- MOUNT_DIR=/mnt
- LOG_DIR=/tmp/log
- LOG_DIR1=/tmp/log1
- HOME_DIR=/home
- BLOCK_DIR=/dev/mtdblock
- export PATH=$PATH:/sbin
- if [ $(id -ru) -ne 0 ];
- then
- echo "must be root to run this"
- exit
- fi
- lsmod |grep $MTD_RAM
- if [ $? -ne 0 ];
- then
- echo "inserting mtd ram and its dependencies"
- fi
- modprobe $MTD_RAM total_size=32768 erase_size=256
- if [ $? -ne 0 ];
- then
- echo "check wheather MTD -mtdram is been compiled in the kernel"
- fi
- lsmod |grep $MTD_BLOCK
- if [ $? -ne 0 ]; then
- echo "inserting mtdblock and its dependencies"
- fi
- modprobe $MTD_BLOCK
- if [ $? -ne 0 ]; then
- echo "check wheather mtdblock is been compiled in the kernel"
- fi
- lsmod |grep $JFFS2
- if [ $? -ne 0 ]; then
- echo "inserting jffs2 and its dependencies"
- fi
- modprobe $JFFS2
- if [ $? -ne 0 ]; then
- echo "check wheather jffs2 is been compiled in the kernel"
- fi
- lsmod |grep $LOOP
- if [ $? -ne 0 ]; then
- echo "inserting loopback device module"
- fi
- modprobe $LOOP
- if [ $? -ne 0 ]; then
- echo "check wheather loopback device option is been compiled in the kernel"
- fi
- mkdir -p $BLOCK_DIR
- mknod $BLOCK_DIR/0 b 31 0 >/dev/null 2>&1
- mount -t jffs2 $BLOCK_DIR/0 $MOUNT_DIR
- mount|grep $JFFS2
- if [ $? -eq 0 ]; then
- echo "jffs2 mounted sucessfully"
- else
- echo "mount unsucessfull"
- fi
- cd $MOUNT_DIR
- echo "This is will take long time "
- ./test.sh >log 2>&1
- ./test2.sh >log1 2>&1
- mv log $LOG_DIR
- mv log1 $LOG_DIR1
- cd $HOME_DIR
- #cleanup
- echo "unmounting $MOUNT_DIR "
- umount $MOUNT_DIR
- echo "removing the modules inserted"
- rmmod $MTD_BLOCK
- rmmod $MTD_BLKDEVS
- rmmod $LOOP
- rmmod $JFFS2
- rmmod $ZLIB_DEFLATE
- rmmod $ZLIB_INFLATE
- rmmod $MTD_RAM
- rmmod $MTD_CORE
- rm -rf /dev/mtdblock
- echo "TEST COMPLETE"
- echo "RESULTS LOGGED IN FILE /tmp/log and /tmp/log1 "
|