설정을 테스트하기 위해 몇 가지 실험을 하고 있습니다. systemd를 사용하여 자동 시작되도록 설정하는 bash 스크립트를 개발했습니다.
chkconfig를 설치하고 다음과 같이 스크립트를 구성했습니다.
루트 사용:
cd /mypath
cp myscript.sh /etc/init.d/
cd /etc/init.d
chkconfig --add myscript.sh
chkconfig myscript.sh on
systemctl start myscript
나는 받았다:
Unit myscript.service could not be found.
답변1
JBoss를 시작하기 위해 기본 스크립트를 사용하는 것을 고려할 수도 있습니다 systemd
.여기예를 찾을 수 있습니다. 설치를 반영하도록 경로와 변수를 자유롭게 변경하세요.
[Unit]
Description=Jboss Application Server
After=syslog.target network.target ypbind.service
[Service]
Type=simple
TimeoutSec=0
User=jboss
EnvironmentFile=/etc/sysconfig/jboss-standalone.conf
StandardOutput=journal
ExecStart=/bin/java \
-D"[Standalone]" \
-server \
$GC_LOG_ROTATE \
-Djboss.server.log.dir=${JBOSS_LOG_DIR} \
$JAVA_OPTS \
-Djboss.modules.system.pkgs=${JBOSS_MODULES_SYSTEM_PKGS} \
-Dorg.jboss.boot.log.file=${JBOSS_LOG_DIR}/server.log \
-Dlogging.configuration=${JBOSS_LOG_CONF} \
-jar ${JBOSS_HOME}/jboss-modules.jar \
$MODULE_OPTS \
-mp ${JBOSS_MODULEPATH} \
org.jboss.as.standalone \
-Djboss.home.dir=${JBOSS_HOME} \
-Djboss.server.base.dir=${JBOSS_BASE_DIR} \
$SERVER_OPTS
[Install]
WantedBy=multi-user.target
시작점으로 위 스크립트의 JBoss 구성을 사용할 수 있습니다.
JBOSS_BASE_DIR=/opt/jboss/standalone
JBOSS_LOG_DIR=/opt/jboss/standalone/log
JBOSS_LOG_CONF=file:/opt/jboss/standalone/configuration/logging.properties
JBOSS_MODULEPATH=/opt/jboss/modules
JBOSS_MODULES_SYSTEM_PKGS=org.jboss.byteman
JAVA_OPTS= \
-Xms1024m -Xmx1024m -XX:MetaspaceSize=512M -XX:MaxMetaspaceSize=512m \
-Djava.net.preferIPv4Stack=true \
-Djava.awt.headless=true
SERVER_OPTS=-c standalone.xml
#MODULE_OPTS="-secmgr"
#DEBUG_OPTS="-agentlib:jdwp=transport=dt_socket,address=8787,server=y,suspend=n"
#GC_LOG_ROTATE=-verbose:gc \
-Xloggc:/opt/jboss/standalone/log/gc.log \
-XX:+PrintGCDetails \
-XX:+PrintGCDateStamps \
-XX:+UseGCLogFileRotation \
-XX:NumberOfGCLogFiles=5 \
-XX:GCLogFileSize=3M \
-XX:-TraceClassUnloading
답변2
몇 가지 테스트를 거친 후 /etc/init.d/를 변경한 후 systemctl daemon-reload
변경 사항을 적용하려면 실행해야 한다는 사실을 발견했습니다.systemctl start myscript.services
당신의 생각에 감사드립니다.