免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2163 | 回复: 6
打印 上一主题 下一主题

备份脚本的问题,急!!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-14 15:39 |只看该作者 |倒序浏览
10可用积分
写了一个备份的脚本,有2个device同时运行。前面都还正常,可是到了往tape写文件的时候,“wait”不起作用了(脚本中红色标记的地方),直接就运行后面的命令,将tape move出来了,贴上log和脚本,老大们,帮忙看下,急。。。。
-------------------------------------------------------------------------------------------------------
/usr/bin/wait 19287 AND /usr/bin/wait 19286
/mnt/backup/GIS/gis.dump
/mnt/backup/CORP/CIS.dmp1

finished at Wed May 13 23:42:25 PDT 2009
-------------------------------------------------------------------------------------------------------
backup ended at Wed May 13 23:42:25 PDT 2009...
Moving changer Wed May 13 23:42:25 PDT 2009.....
Opening /dev/sg/c1t4l0
Enter tld commands (? returns help information)
Initiating MOVE_MEDIUM from address 128 to 257
MOVE_MEDIUM complete
Initiating MOVE_MEDIUM from address 129 to 264
MOVE_MEDIUM complete
Moving changer done at Wed May 13 23:44:18 PDT 2009
-------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------
脚本:
[root@fcafsbkp2 backup] # cat tapebackup.sh
#!/bin/sh
MT=/usr/bin/mt
TAR=/usr/local/bin/tar
TAPE0=/dev/rmt/0n
TAPE1=/dev/rmt/1n
CHANGER=/dev/sg/c1t4l0
TLDTEST=/opt/openv_old/volmgr/bin/tldtest
SLEEP=/usr/bin/sleep
#NOTIFY="sa@xxxxx.com,dbabeijing@xxxxx.com"
NOTIFY="iva@xxxxx.com"
SUBJECT="Daily offsite backup of US at `hostname`!"
MAIL=/usr/bin/mailx
LOG=/root/backup/log/tapebackup.log
TIME=/usr/bin/time
WAIT=/usr/bin/wait


for i in  2 1 0
do
        j=`expr $i + 1`
        test -f $LOG.$i && mv $LOG.$i $LOG.$j
#        echo $i
#        echo $j
done

test -f $LOG && mv $LOG $LOG.0

exec 1>$LOG 2>$1

WEEKDAY=`date +%a`

case $WEEKDAY in
        Mon)
            SLOT0=7
            SLOT1=14
            ;;
        Tue)
            SLOT0=1
            SLOT1=8
            ;;
        Wed)
            SLOT0=2
            SLOT1=9
            ;;
        Thu)
            SLOT0=3
            SLOT1=10
            ;;
        Fri)
            SLOT0=4
            SLOT1=11
            ;;
        Sat)
            SLOT0=5
            SLOT1=12
            ;;
        Sun)
            SLOT0=6
            SLOT1=13

            ;;
esac

echo "backup started at `date `..."

echo "Moving changer at `date`....."



$TLDTEST -r $CHANGER <<+
m s${SLOT0} d1
m s${SLOT1} d2
q
+

$SLEEP 20
echo "$MT -f $TAPE0 rewind"
$MT -f $TAPE0 rewind

$SLEEP 20
echo "$MT -f $TAPE1 rewind"
$MT -f $TAPE1 rewind

$SLEEP 20

echo "Moving changer done at `date`"




LINE0="`ls /mnt/backup/CORP/CIS.dmp?` `ls /mnt/backup/CORP/HIS.dmp?` `ls /mnt/backup/CORP/syslogins.out` `ls /mnt/backup/CORP/*.dmp` `ls /mnt/backup/CORP2/*.dmp` `ls /mnt/backup/DWS/DW_PROD.dmp?` `ls /mnt/backup/DWS/*.dmp` `ls /mnt/backup/EU/*.dmp` `ls /mnt/backup/KB/*.dmp` `ls /mnt/backup/L2S/*.dmp` `ls /mnt/backup/L2SBVI/*.dmp` `ls /mnt/backup/EU/*.dmp` `ls /mnt/backup/PRICE/*.dmp
` `ls /mnt/backup/UNF/DDL.dmp`"

LINE1="`ls /mnt/backup/GIS/gis.dump` `ls /mnt/backup/MFGPRO/*.0.tar` `ls /mnt/backup/SFCS/fullbackup/0/*`"


  echo
  echo
  echo "-------------------------------------------------------------------------------------------------------"


   echo "$TAR cvf $TAPE0 $LINE0  at `date`"
   echo
   echo
   ls -lh $LINE0
   echo
   echo "-------------------------------------------------------------------------------------------------------"
   echo
   echo "$TAR cvf $TAPE1 $LINE1  at `date`"
   echo
   echo
   ls -lh $LINE1
   echo
   echo "-------------------------------------------------------------------------------------------------------"

   $TAR cvf $TAPE0 $LINE0 &
   TASK0=$!

   $TAR cvf $TAPE1 $LINE1 &
   TASK1=$!

   echo "$WAIT $TASK1 AND $WAIT $TASK0"
  $WAIT $TASK1
   $WAIT $TASK0


   echo
   echo "finished at `date`"
   echo "-------------------------------------------------------------------------------------------------------"


echo "backup ended at `date `..."


echo "Moving changer `date`....."


$SLEEP 10

$TLDTEST -r $CHANGER <<+
m d1 s${SLOT0}
m d2 s${SLOT1}
q
+


echo "Moving changer done at `date`"
$MAIL -s"$SUBJECT" $NOTIFY < $LOG

[ 本帖最后由 lvan6750 于 2009-5-14 15:40 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-05-15 13:27 |只看该作者
哎。。。
没人理

论坛徽章:
0
3 [报告]
发表于 2009-05-16 02:17 |只看该作者
You might want to try this:

$TAR cvf $TAPE0 $LINE0

if [ $? = 0 ] ; then
    $TAR cvf $TAPE1 $LINE1
else
    echo "Could not ... "
fi

论坛徽章:
0
4 [报告]
发表于 2009-05-26 22:36 |只看该作者
问题已解决
a=

   while [ "$a" != "x" ]

   do

       sleep 60

        

       a="x`ps -aef |grep tar | grep /dev/rmt |grep -v grep`"  

   done

论坛徽章:
0
5 [报告]
发表于 2009-05-27 10:51 |只看该作者
支持。已经收藏了。谢谢楼主。

论坛徽章:
221
15-16赛季CBA联赛之吉林
日期:2017-12-11 12:51:59黑曼巴
日期:2019-04-12 13:40:0515-16赛季CBA联赛之广东
日期:2019-04-23 10:41:1215-16赛季CBA联赛之辽宁
日期:2019-05-06 13:03:2815-16赛季CBA联赛之山西
日期:2019-05-09 10:56:5815-16赛季CBA联赛之青岛
日期:2019-05-17 13:57:0515-16赛季CBA联赛之新疆
日期:2019-06-10 13:39:0515-16赛季CBA联赛之天津
日期:2019-07-08 15:04:4519周年集字徽章-19
日期:2019-08-27 13:31:2619周年集字徽章-19
日期:2019-08-27 13:31:2619周年集字徽章-周
日期:2019-09-06 18:46:4715-16赛季CBA联赛之天津
日期:2019-02-27 11:24:07
6 [报告]
发表于 2009-05-27 14:20 |只看该作者
LZ脚本功力挺强的,支持

论坛徽章:
2
丑牛
日期:2014-06-11 13:55:04ChinaUnix元老
日期:2015-02-06 15:16:14
7 [报告]
发表于 2009-05-27 16:49 |只看该作者
谢谢lz分享经验,学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP