Linux自动重启was

本文介绍如何在Linux系统中使用WebSphere应用服务器,并通过创建shell脚本和编辑inittab文件实现应用服务器在系统重启后的自动重启功能。通过在脚本中指定特定的参数和环境设置,可以确保WebSphere应用服务器在不同操作系统环境下正常启动。此外,文章还详细解释了inittab文件的作用及如何添加自动重启条目,以实现服务器的稳定运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Linux中使用WebSphre,想要在操作系统重启后自动重启was进程,我们可以通过创建shell脚本来实现,每个

进程都需要建立一个脚本,然后将它们加入到 /etc/inittab 文件中,实现was的自动重启,编辑inittab文件需

要root用户权限。

在我们使用startManager.sh、startNode.sh和startServer.sh server1命令时,我们可以加上-script选项来创

建重启脚本:

[wasadmin@wasssl bin]# ./startManager.sh -script start_manager.sh
ADMU0116I: 正在文件
           /opt/IBM/WebSphere/AppServer/profiles/dmgr01/logs/dmgr/startServer.log
           中记录工具信息
ADMU0128I: 正在启动具有 dmgr01 概要文件的工具
ADMU3100I: 正在从服务器读取配置:dmgr
ADMU3300I: 已创建服务器的启动脚本:start_manager.sh

我们可以查看一下生成的 start_manager.sh 脚本文件:

[wasadmin@wasssl bin]# cat start_manager.sh
#!/bin/sh
# start_manager.sh
# Generated: Tue Sep 22 19:07:19 CST 2015

# Bootstrap values ...
binDir=/opt/IBM/WebSphere/AppServer/profiles/dmgr01/bin
. $binDir/setupCmdLine.sh

# For debugging the server process:
# export DEBUG="-Djava.compiler=NONE -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=7777"

# Environment Settings
PLATFORM=`/bin/uname`
case $PLATFORM in
  AIX)
    EXTSHM=ON
    D_ARGS=""$D_ARGS" $DELIM -Dibm.websphere.preload.classes=true"
    LIBPATH="$WAS_LIBPATH":$LIBPATH
    export LIBPATH EXTSHM ;;
  Linux)
    LD_LIBRARY_PATH="$WAS_LIBPATH":$LD_LIBRARY_PATH
    D_ARGS=""$D_ARGS" $DELIM -Dibm.websphere.preload.classes=true"
    export LD_LIBRARY_PATH ;;
  SunOS)
    LD_LIBRARY_PATH="$WAS_LIBPATH":$LD_LIBRARY_PATH
    D_ARGS=""$D_ARGS" $DELIM -Dibm.websphere.preload.classes=true"
    export LD_LIBRARY_PATH ;;
  HP-UX)
    SHLIB_PATH="$WAS_LIBPATH":$SHLIB_PATH
    D_ARGS=""$D_ARGS" $DELIM -Dibm.websphere.preload.classes=true"
    export SHLIB_PATH ;;
  OS/390)
    PATH="$PATH":$binDir
    export PATH
    D_ARGS=""$D_ARGS" $DELIM -Dfile.encoding=ISO8859-1 $DELIM -Djava.ext.dirs="$JAVA_EXT_DIRS""
    D_ARGS=""$D_ARGS" $DELIM -Dwas.serverstart.cell="$WAS_CELL""
    D_ARGS=""$D_ARGS" $DELIM -Dwas.serverstart.node="$WAS_NODE""
    D_ARGS=""$D_ARGS" $DELIM -Dwas.serverstart.server="$1""
    X_ARGS="-Xnoargsconversion" ;;
esac



# Launch Command
exec "/opt/IBM/WebSphere/AppServer/java/bin/java"  $DEBUG "-Declipse.security" "-Dosgi.install.area=/opt/IBM/WebSphere/AppServer" "-Dosgi.configuration.area=/opt/IBM/WebSphere/AppServer/profiles/dmgr01/configuration" "-Djava.awt.headless=true" "-Dosgi.framework.extensions=com.ibm.cds,com.ibm.ws.eclipse.adaptors" "-Xshareclasses:name=webspherev70_%g,groupAccess,nonFatal" "-Xscmx50M" "-Xbootclasspath/p:/opt/IBM/WebSphere/AppServer/java/jre/lib/ext/ibmorb.jar:/opt/IBM/WebSphere/AppServer/java/jre/lib/ext/ibmext.jar" "-classpath" "/opt/IBM/WebSphere/AppServer/profiles/dmgr01/properties:/opt/IBM/WebSphere/AppServer/properties:/opt/IBM/WebSphere/AppServer/lib/startup.jar:/opt/IBM/WebSphere/AppServer/lib/bootstrap.jar:/opt/IBM/WebSphere/AppServer/lib/jsf-nls.jar:/opt/IBM/WebSphere/AppServer/lib/lmproxy.jar:/opt/IBM/WebSphere/AppServer/lib/urlprotocols.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batchboot.jar:/opt/IBM/WebSphere/AppServer/deploytool/itp/batch2.jar:/opt/IBM/WebSphere/AppServer/java/lib/tools.jar" "-Dibm.websphere.internalClassAccessMode=allow" "-Xms50m" "-Xmx256m" "-Xcompressedrefs" "-Dws.ext.dirs=/opt/IBM/WebSphere/AppServer/java/lib:/opt/IBM/WebSphere/AppServer/profiles/dmgr01/classes:/opt/IBM/WebSphere/AppServer/classes:/opt/IBM/WebSphere/AppServer/lib:/opt/IBM/WebSphere/AppServer/installedChannels:/opt/IBM/WebSphere/AppServer/lib/ext:/opt/IBM/WebSphere/AppServer/web/help:/opt/IBM/WebSphere/AppServer/deploytool/itp/plugins/com.ibm.etools.ejbdeploy/runtime" "-Dderby.system.home=/opt/IBM/WebSphere/AppServer/derby" "-Dcom.ibm.itp.location=/opt/IBM/WebSphere/AppServer/bin" "-Djava.util.logging.configureByServer=true" "-Duser.install.root=/opt/IBM/WebSphere/AppServer/profiles/dmgr01" "-Djavax.management.builder.initial=com.ibm.ws.management.PlatformMBeanServerBuilder" "-Dwas.install.root=/opt/IBM/WebSphere/AppServer" "-Dpython.cachedir=/opt/IBM/WebSphere/AppServer/profiles/dmgr01/temp/cachedir" "-Djava.util.logging.manager=com.ibm.ws.bootstrap.WsLogManager" "-Dserver.root=/opt/IBM/WebSphere/AppServer/profiles/dmgr01" "-Dcom.ibm.security.jgss.debug=off" "-Dcom.ibm.security.krb5.Krb5Debug=off" "-Djava.security.auth.login.config=/opt/IBM/WebSphere/AppServer/profiles/dmgr01/properties/wsjaas.conf" "-Djava.security.policy=/opt/IBM/WebSphere/AppServer/profiles/dmgr01/properties/server.policy" "com.ibm.wsspi.bootstrap.WSPreLauncher" "-nosplash" "-application" "com.ibm.ws.bootstrap.WSLauncher" "com.ibm.ws.runtime.WsServer" "/opt/IBM/WebSphere/AppServer/profiles/dmgr01/config" "wassslCell01" "wassslCellManager01" "dmgr"

然后我们通过root用户编辑操作系统的 inittab 文件,在最后一行为 shell 脚本添加一个新的条目。

每个 inittab 条目都会在系统初始化时,启动条目中所指定的进程:

[root@wasssl bin]# vi /etc/inittab   添加下面一行

su wasadmin -c was:235:respawn:/opt/IBM/WebSphere/AppServer/bin/start_manager.sh >/dev/console 2>&1

[root@wasssl bin]# init q    立即生效

su:以非root用户启动进程

235:在系统初始化到运行级别 2、3 或 5 时来操作的机器时,执行脚本

respawn:该进程只要终止就立即重新启动

以下是一个可指定的运行级别列表。运行级别通常缺省为 3 或 5。

0 - 中止

1 - 单用户方式

2 - 多用户,没有 NFS(如果未使用网络,那么此级别等效于 3)

3 - 完整多用户方式

4 - 未使用

5 - X11

6 - 重新引导

startNode.sh和startServer.sh server1 创建脚本方法同上。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值