AIX切换用户与crontab相关问题

[复制链接]
查看11 | 回复6 | 2008-9-8 16:00:45 | 显示全部楼层 |阅读模式
AIX切换用户与crontab相关问题

我的机器有两个实例:
test 和 prod
aix操作系统与实例对应关系是 :
1) 操作系统用户登陆:test/testos
rman登陆:rman target sys/testdb@test;
然后作相应备份工作:backup database format='/oracle/backup/bakf/database/%d_%s.dbf';
2) 操作系统用户登陆:proc/procos
rman登陆:rman target sys/proddb@prod;
然后作相应备份工作:backup database format='/oracle/backup/data/database/%d_%s.dbf';
需要在每月22号晚上00点作上面这个备份动作,我的 crontab和.sh如下:
crontab -e:
00 00 22 * * sh /oracle/shell/guotest.sh

guotest.sh如下:
export BACKUP_DIR=/oracle/shell
export RMAN_LOG=$BACKUP_DIR/guotest.sh.log
echo 'hello linux user' >>$RMAN_LOG
echo 'Starting Full Database Backup at '`date +%Y-%m-%d:%H:%M:%S`>>$RMAN_LOG
rman target sys/testdb@test
backup database format='/oracle/backup/bakf/database/%d_%s.dbf';
echo 'finished the Full Database Backup at '`date +%Y-%m-%d:%H:%M:%S`>>$RMAN_LOG

我现在的问题是:
1)假如说我这个crontab 放在 test/testos 用户下,这样写行吗?(我担心会影响到prod用户,因为我的.sh里面没有指定是具体哪个用户登陆AIX系统,如果不行如何指定?)
2)如果我把crontab 分别在两个aix的用户中创建,.sh也分成两个来写,这样是不是在.sh里面就不需要写切换aix用户的代码了 (也就是我上面那样写.sh就可以了呢)?
3)我两个实例的备份动作如果要放到一个.sh里面同时备份需要切换AIX用户吗? 应该怎么写切换用户代码?
感谢各位!
回复

使用道具 举报

千问 | 2008-9-8 16:00:45 | 显示全部楼层
export BACKUP_DIR=/oracle/shell
export RMAN_LOG=$BACKUP_DIR/guotest.sh.log
echo 'hello linux user' >>$RMAN_LOG
echo 'Starting Full Database Backup at '`date +%Y-%m-%d:%H:%M:%S`>>$RMAN_LOG
rman target sys/testdb@test
backup database format='/oracle/backup/bakf/database/%d_%s.dbf';
echo 'finished the Full Database Backup at '`date +%Y-%m-%d:%H:%M:%S`>>$RMAN_LOG
少了环境变量了
建议都放在root里,便于管理
然后su - test -c 'xxxxxx'
回复

使用道具 举报

千问 | 2008-9-8 16:00:45 | 显示全部楼层
写在哪个用户下面就是那个用户的JOb啊
不会影响prod的
prod下crontab -l就不会看到你的这个.sh
回复

使用道具 举报

千问 | 2008-9-8 16:00:45 | 显示全部楼层
一般都是ROOT用户来执行
00 00 22 * * sh /oracle/shell/guotest.sh
你的这个写法有点问题吧?
回复

使用道具 举报

千问 | 2008-9-8 16:00:45 | 显示全部楼层
不好意思,离开了一会儿,请问wa0362 这位师兄 我少了哪些环境变量?
su - test -c 'xxxxxx'  是表示登陆用户test吗? 那意思是说如果放到root里面就可以用su 切换用户了,不需要再在再个AIX用户下去分别建.sh和crontab了吗?
诚谢!
回复

使用道具 举报

千问 | 2008-9-8 16:00:45 | 显示全部楼层
好的,首先感谢z0zi师兄,我已经测试过了,我也了解不同用户是看不到的其他用户的crontab的,我只是想学习会不会有更简单的办法,比如说就在一个用户下面做一个
crontab和一个.sh,只需要切换用户就可以了! 因为ROOT的密码我不知道!
回复

使用道具 举报

千问 | 2008-9-8 16:00:45 | 显示全部楼层
请问我错在哪个地方?感谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行