Skip to content

Commit e9d4d03

Browse files
fix the issue that can not install agent to java process under root (#9)
Signed-off-by: xiang <xiang13225080@163.com>
1 parent 6dede82 commit e9d4d03

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

bin/bminstall.sh

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,4 +120,12 @@ fi
120120
# allow for extra java opts via setting BYTEMAN_JAVA_OPTS
121121
# attach class will validate arguments
122122

123-
java ${BYTEMAN_JAVA_OPTS} -classpath "$CP" org.jboss.byteman.agent.install.Install $*
123+
USER=`echo "$USER"`
124+
PID=${*: -1}
125+
PID_USER="$( ps -o uname= -p "${PID}" )"
126+
127+
if [ "$USER" == "root" ] && [ "$PID_USER" != "root" ] && [ $JAVA_VERSION -le 8 ]; then
128+
sudo -u $PID_USER JAVA_HOME=$JAVA_HOME BYTEMAN_HOME=$BYTEMAN_HOME $JAVA_HOME/bin/java ${BYTEMAN_JAVA_OPTS} -classpath "$CP" org.jboss.byteman.agent.install.Install $*
129+
else
130+
java ${BYTEMAN_JAVA_OPTS} -classpath "$CP" org.jboss.byteman.agent.install.Install $*
131+
fi

0 commit comments

Comments
 (0)