通过脚本执行二进制文件时权限混乱

通过脚本执行二进制文件时权限混乱
 ls -al /home/dmsinst1/sqllib/adm/db2start
-r-sr-sr-x 1 root dmsiadm1 93613 Jun 26 14:14 /home/dmsinst1/sqllib/adm/db2start


 ls -al /home/bpminst1/sqllib/adm/db2start
-r-sr-sr-x 1 root bpmiadm1 93613 Jun 26 14:15 /home/bpminst1/sqllib/adm/db2start


groups dmsinst1
dmsinst1 : dmsiadm1

groups bpminst1
bpminst1 : bpmiadm1

因此,当以 root 身份运行以下脚本时:

#!/bin/bash

su bpminst1 -c "/home/bpminst1/sqllib/adm/db2start"
su dmsinst1 -c "/home/dmsinst1/sqllib/adm/db2start"

我得到:

[root@dmsnl857-vm ~]# ./startAll.sh 
SQL1092N  The requested command or operation failed because the user ID does not have the authority to perform the requested command or operation.  User ID: "BPMINST1".
06/29/2017 09:16:03     0   0   SQL1063N  DB2START processing was successful.
SQL1063N  DB2START processing was successful.

第二个命令显然执行没有错误。

更新: 和set -x

[root@dmsnl857-vm ~]# ./startAll.sh 
+ echo 'Starting BPM DB2 instance ... '
Starting BPM DB2 instance ... 
+ su bpminst1 -c /home/bpminst1/sqllib/adm/db2start
SQL1092N  The requested command or operation failed because the user ID does not have the authority to perform the requested command or operation.  User ID: "BPMINST1".
+ echo 'Starting DMS DB2 instance ... '
Starting DMS DB2 instance ... 
+ su dmsinst1 -c /home/dmsinst1/sqllib/adm/db2start
06/29/2017 09:44:13     0   0   SQL1063N  DB2START processing was successful.
SQL1063N  DB2START processing was successful.

相关内容