⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_groupmap.sh

📁 samba服务器!
💻 SH
字号:
#!/bin/sh# test groupmap code tridge@samba.org September 2006# note that this needs root access to add unix groups,# so this cannot be run on the build farmtestone() {    echo $*    $VALGRIND bin/net groupmap $*}tstart() {    TBASE=`date '+%s'`}treport() {    TNOW=`date '+%s'`    echo "Took `expr $TNOW - $TBASE` seconds"    TBASE=$TNOW}rm -f $PREFIX_ABS/var/locks/group_mapping.?dbNLOCAL=12NGROUP=11NBUILTIN=10DOMSID=`bin/net getlocalsid | awk '{print $6}'`FORSID="S-1-2-3-4-5"echo "DOMSID $DOMSID"echo "FORSID $FORSID"tstartecho "Creating unix groups"for i in `seq 1 1 $NLOCAL`; do  unixgroup=testlocal$i;  gid=`expr 30000 + $i`;  groupdel $unixgroup 2> /dev/null  groupadd -g $gid $unixgroup || exit 1donefor i in `seq 1 1 $NGROUP`; do  unixgroup=testgrp$i;  gid=`expr 40000 + $i`;  groupdel $unixgroup 2> /dev/null  groupadd -g $gid $unixgroup || exit 1donefor i in `seq 1 1 $NBUILTIN`; do  unixgroup=testb$i;  gid=`expr 50000 + $i`;  groupdel $unixgroup 2> /dev/null  groupadd -g $gid $unixgroup || exit 1donedatetreportecho "Creating local groups"for i in `seq 1 1 $NLOCAL`; do  unixgroup=testlocal$i;  ntgroup=ntlgrp$i;  rid=`expr 10000 + $i`;  testone add rid=$rid unixgroup=$unixgroup ntgroup=$ntgroup type=local || exit 1doneecho "trying a duplicate add"testone add rid=10001 unixgroup=testlocal1 ntgroup=foo type=local && exit 1treportecho "Creating domain groups"for i in `seq 1 1 $NGROUP`; do  unixgroup=testgrp$i;  ntgroup=ntgrp$i;  rid=`expr 20000 + $i`;  testone add rid=$rid unixgroup=$unixgroup ntgroup=$ntgroup type=domain || exit 1donetreportecho "Creating builtin groups"for i in `seq 1 1 $NBUILTIN`; do  unixgroup=testb$i;  ntgroup=ntbgrp$i;  rid=`expr 30000 + $i`;  testone add rid=$rid unixgroup=$unixgroup ntgroup=$ntgroup type=builtin || exit 1donetreportecho "Adding domain groups to local groups"for i in `seq 1 1 $NLOCAL`; do for j in `seq 1 1 $i`; do  lrid=`expr 10000 + $i`;  drid=`expr 20000 + $j`;  testone addmem $DOMSID-$lrid $DOMSID-$drid || exit 1  ( testone listmem $DOMSID-$lrid | sort -r ) || exit 1 donedoneecho "trying a duplicate addmem"testone addmem $DOMSID-10001 $DOMSID-20001 && exit 1echo "Adding foreign SIDs to local groups"for i in `seq 1 1 $NLOCAL`; do for j in `seq 1 1 $i`; do  lrid=`expr 10000 + $i`;  frid=`expr 70000 + $j`;  testone addmem $DOMSID-$lrid $FORSID-$frid || exit 1  ( testone listmem $DOMSID-$lrid | sort -r ) || exit 1 donedoneecho "trying a duplicate foreign addmem"testone addmem $DOMSID-10001 $FORSID-70001 && exit 1treportecho "Listing local group memberships of domain groups"for i in `seq 1 1 $NGROUP`; do  rid=`expr 20000 + $i`;  ( testone memberships $DOMSID-$rid | sort -r ) || exit 1doneecho "Trying memberships on bogus sid"testone memberships $DOMSID-999999 || exit 1treporttestone list | sortecho "Deleting some domain groups"for i in `seq 2 2 $NGROUP`; do  drid=`expr 20000 + $i`; testone delete sid=$DOMSID-$drid || exit 1doneecho "Trying duplicate domain group delete"testone delete sid=$DOMSID-20002 && exit 1treportecho "Deleting some local groups"for i in `seq 2 4 $NLOCAL`; do lrid=`expr 10000 + $i`; testone delete sid=$DOMSID-$lrid || exit 1doneecho "Trying duplicate local group delete"testone delete sid=$DOMSID-10002 && exit 1treportecho "Modifying some domain groups"for i in `seq 3 2 $NGROUP`; do  drid=`expr 20000 + $i`;  testone modify sid=$DOMSID-$drid comment="newcomment-$i" type=domain || exit 1donetreporttestone list | sortecho "Listing local group memberships"for i in `seq 1 1 $NLOCAL`; do  rid=`expr 20000 + $i`;  ( testone memberships $DOMSID-$rid | sort -r ) || exit 1donetreportecho "Removing some domain groups from local groups"for i in `seq 1 2 $NLOCAL`; do for j in `seq 1 3 $i`; do  lrid=`expr 10000 + $i`;  drid=`expr 20000 + $j`;  testone delmem $DOMSID-$lrid $DOMSID-$drid || exit 1 donedoneecho "Trying duplicate delmem"testone delmem $DOMSID-10001 $DOMSID-20001 && exit 1treportecho "Listing local group memberships"for i in `seq 1 1 $NLOCAL`; do  rid=`expr 20000 + $i`;  ( testone memberships $DOMSID-$rid | sort -r ) || exit 1donetreportecho "Deleting unix groups"for i in `seq 1 1 $NLOCAL`; do  unixgroup=testlocal$i;  groupdel $unixgroup 2> /dev/nulldonefor i in `seq 1 1 $NGROUP`; do  unixgroup=testgrp$i;  groupdel $unixgroup 2> /dev/nulldonefor i in `seq 1 1 $NBUILTIN`; do  unixgroup=testb$i;  groupdel $unixgroup 2> /dev/nulldonetreportecho "ALL DONE"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -