Whamcloud - gitweb
Bug 828 is fixed by Peng Zhao, arrpoved by Andreas.
authorpengzhao <pengzhao>
Tue, 11 Mar 2003 07:17:03 +0000 (07:17 +0000)
committerpengzhao <pengzhao>
Tue, 11 Mar 2003 07:17:03 +0000 (07:17 +0000)
runas.c allows the root to "runas" another user to do things.

lustre/tests/Makefile.am
lustre/tests/sanity.sh

index 628c46b..6d23b3d 100644 (file)
@@ -26,7 +26,7 @@ noinst_PROGRAMS = openunlink testreq truncate directio openme writeme open_delay
 noinst_PROGRAMS += munlink tchmod toexcl fsx test_brw openclose createdestroy
 noinst_PROGRAMS += stat createmany statmany multifstat createtest mlink
 # noinst_PROGRAMS += ldaptest 
-noinst_PROGRAMS += checkstat wantedi statone
+noinst_PROGRAMS += checkstat wantedi statone runas
 sbin_PROGRAMS = mcreate mkdirmany
 
 # ldaptest_SOURCES = ldaptest.c
@@ -52,6 +52,7 @@ statone_SOURCES = statone.c
 mkdirmany_SOURCES = mkdirmany.c
 multifstat_SOURCES = multifstat.c
 checkstat_SOURCES = checkstat.c
+runas_SOURCES = runas.c
 wantedi_SOURCES = wantedi.c
 createtest_SOURCES = createtest.c
 open_delay_SOURCES = open_delay.c
index c3e201f..5c4d47d 100644 (file)
@@ -12,6 +12,9 @@ LSTRIPE=${LSTRIPE:-lstripe}
 MCREATE=${MCREATE:-mcreate}
 TOEXCL=${TOEXCL:-toexcl}
 
+RUNAS_ID=${RUNAS_ID:-500}
+RUNAS=${RUNAS:-"runas -u $RUNAS_ID"}
+
 MOUNT=${MOUNT:-/mnt/lustre}
 DIR=${DIR:-$MOUNT}
 export NAME=$NAME
@@ -298,14 +301,13 @@ $START
 
 log '== unpack tar archive as non-root user =========== test 22'
 mkdir $DIR/d22
-which sudo && chown 4711 $DIR/d22
-SUDO=`which sudo 2> /dev/null` && SUDO="$SUDO -u #4711" || SUDO=""
-echo '**** FIX THIS TEST ****'
-SUDO=""
-$SUDO tar cf - /etc/hosts /etc/sysconfig/network | $SUDO tar xfC - $DIR/d22
+[ $UID -ne 0 ] && RUNAS=""
+[ $UID -ne 0 ] && RUNAS_ID="$UID"
+chown $RUNAS_ID $DIR/d22
+$RUNAS tar cf - /etc/hosts /etc/sysconfig/network | $RUNAS tar xfC - $DIR/d22
 ls -lR $DIR/d22/etc
 $CHECKSTAT -t dir $DIR/d22/etc || error
-[ -z "$SUDO" ] || $CHECKSTAT -u \#4711 $DIR/d22/etc || error
+$CHECKSTAT -u \#$RUNAS_ID $DIR/d22/etc || error
 pass
 $CLEAN
 $START