linux resin 自动启动不了,Resin 安装-配置-自启动-Linux
Resin
安装-配置-自启动-Linux 2005-4-8 15:33:00
将resin-version/contrib/init.resin.in复制到/etc/rc.d/init.d/resin
修改resin中的一些设置:JAVA_HOME RESIN_HOME USER
等
用/sbin/chkconfig resin
on将RESIN服务在启动级别345设置成自启动
在慢速CPU的机器上启动时,需要加入一个15秒的延时帮助JAVA启动
习惯的设置服务自动启动的方式是在rc.local里加类似一下的脚本:
#sshd
/usr/local/sbin/sshd
#proftpd
/usr/local/sbin/proftpd
#apache
/home/apache/bin/apachectl start
#mysql
/home/mysql/bin/safe_mysqld --port=3306 &
#start oracle8i listener first
su - oracle -c 'lsnrctl start'
#start oracle8i
su - oracle -c 'dbstart'
但配置RESIN的自动启动的时候确遇到了不少麻烦,主要是JAVA_HOME等环境变量在系统初始化过程中是读不到的。通过一些资料:
了解到将RESIN配置成一个可配置的服务需要以下几个步骤:
设置好JAVA_HOME环境变量后将RESIN解包到/home/resin下,执行编译脚本
%tar zxf resin-version.tar.gz
#mv resin-version /home/resin
%cd /home/resin/
%./configure
%make
#make install
将make
install生成的$RESIN_HOME/contrib/init.resin复制到/etc/rc.d/init.d/resin并且chmod
+x resin
cp contrib/init.resin /etc/rc.d/init.d/resin
chmod +x /etc/rc.d/init.d/resin
修改resin中的一些设置:JAVA_HOME RESIN_HOME
USER等,
将resin服务在不同的启动级中设置成自启动:
#/sbin/chkconfig resin reset
从中还学到了不少关于用chkconfig管理服务启动的知识。其实/etc/init.d/resin这个脚本之所以可以用chkconfig来配置主要是有以下的注释:
# chkconfig: 345 85 15
# description: Resin is a Java Web server.
这个注释表示resin服务在运行级别345下自动启动(/etc/rc.d/下
rc3.d rc4.d
rc5.d都用相应链接到init.d/resin),启动的优先级是85,停止的优先级是15。这样就能自动在相应的rc#.d/生成
S##resin和K##resin了。原先感觉GNU/Linux下的rc.d/下的文件很乱,不如FREEBSD的简洁。有了CHKCONFIG还是让我对下面的文件管理简化了很多。用/sbin/chkconfig
resin
on将RESIN服务设置成自启动服务后,在GNU/Linux的setup界面的system
services设置中也可以对RESIN服务进行设置了。
如果让RESIN作为80端口的服务需要用ROOT权限,而且随服务器自启动就不能使用httpd.sh了,而需要一个可执行文件来实现,这个可执行在./configure ;
make; make
install后,这个可执行文件会生成在$RESIN_HOME/bin/下,resin文件实际是一个执行wrapper.pl的转向。
在慢速机器上的Resin启动:RESIN是一个JAVA应用,启动过程中需要消耗大量的CPU资源。因此在一些比较慢的机器上或者按照以上的配置有时候会很奇怪的启动不起来,在stderr.log中显示:"can't
connect to
parent",这个问题可以通过在服务启动后加上一个15秒的延时解决:
在/etc/init.d/resin: 43行左右:
if test -n "$USER"; then
su - $USER -c "$EXE -pid $PID start $ARGS"
else
$EXE -pid $PID start $ARGS
fi
#服务启动后,加上一个15秒的延时解决
sleep 15
问题解决过程和思路:
先检查resin的日志:stderr.log,里面有can't connect to
parent,然后在google上查"resin2 can't connect to
parent"和"resin can't connect to
parent",大约有几篇邮件列表归档吧,在一篇邮件列表归档中有技术支持说正在调整服务等待时间解决类似问题(需要改SOURCE),另外一个人说他的P4服务器启动时需要启动很多消耗CPU的服务,也会导致RESIN启动不了,然后我在自己的机器上尝试了一下,在RESIN启动前就登录到机器上,发现启动时RESIN和PERL脚本其实都运行了,但过了一会儿相应进程就退出了,在启动后系统比较平稳了,再启动RESIN,RESIN服务就是好的,说明说明脚本本身没有问题,按我以前的经验,JAVA应用是一个比较吃CPU资源的类型,为了让RESIN有足够的CPU资源的启动,在启动后我增加了15秒的延迟,以防止后续服务影响RESIN的启动。问题就解决了,而且在其他机器上试也成功了。
当然,最好还是CAUCHO解决了这个问题大家就都不用学这些小技巧了。因此我将类似中所有的BUG报告中提交了自己的解决方案,要求在init.resin脚本中增加一个全局变量,允许用户设置启动时的等待时间。并把这个解决思路追加到文档中,让大家能够用自己的行动积极支持开源软件。
利用Resin内置的日志轮循,HTTP压缩,缓存和简单HTTP认证
作为应用服务器,很多功能都不用自己再开发了:建议把这些和应用服务器相关的配置放在resin.conf里,而和应用服务器无关的Web应用的标准配置放在WEB-INF/web.xml中。
linux resin 自动启动不了,Resin 安装-配置-自启动-Linux相关推荐
- 【转载】基于Linux命令行KVM虚拟机的安装配置与基本使用
基于Linux命令行KVM虚拟机的安装配置与基本使用 https://alex0227.github.io/2018/06/06/%E5%9F%BA%E4%BA%8ELinux%E5%91%BD%E4 ...
- linux配置过程未选gnome,Linux技巧:GNOME英文界面下安装配置SCIM输入法
本文以SCIM输入法为例,具体介绍了在SCIM输入法在Linux下GNOME英文界面下安装与使用的配置过程. 安装中文字体 运行 emerge arphicfonts wqy-bitmapfont c ...
- freescale imx6 编译 linux ltib,TQIMX6Q技术分享——LTIB安装配置(转)
TQIMX6Q_BASEC开发板是天嵌科技在2015年重磅推出的顶级开发平台,采用飞思卡尔的I.MX6Q芯片,真四核运行,1G Hz主频,2G DDR3内存,8G EMMC FALSH.TQIMX6Q ...
- Linux环境中Visual Studio Code 安装配置及其卸载(详细教程)
两篇相关博文: 在VMware15中创建虚拟机安装ubuntu系统(超详细教程) Linux环境编译运行C/C++语言程序----配置gcc.g++(详细教程) 此篇分享我在linux环境下安装VS ...
- linux nacos启动_Nacos集群安装配置
上篇文章讲到Nacos从v1.3.2开始,windows系统启动脚本默认改成了集群模式(也就是不带参数"-m standalone"),那么如果双击startup.cmd启动就会失 ...
- 腾讯云服务器如何安装配置宝塔 Linux 面板
操作场景 宝塔 Linux 面板腾讯云专享版由腾讯云与堡塔公司联合开发,专享版在已支持普通版所有功能的基础上,还默认集成腾讯云对象存储.文件存储.内容分发网络和 DNS 解析插件.插件具备如下功能: ...
- linux 重启kettle服务_Linux下安装配置kettle的部署
原标题:Linux下安装配置kettle的部署 欢迎关注天善智能微信公众号,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区. 对商业智能BI.大数据分析挖掘.机器学习,python,R等数据 ...
- Linux使用笔记:Oracle数据库安装配置(命令行安装)
文章目录 1. Oracle数据库安装配置 1.1. 安装准备 1.2. 修改内核参数 1.3. 创建安装用户和目录 1.4. 修改配置文件 1.5. 开始安装 1.5.1. 上传安装包 1.5.2. ...
- 《Linux就那么学》虚拟机安装配置及系统和配置的全过程
安装配置vm虚拟机 1.虚拟机程序的安装:链接:https://pan.baidu.com/s/16t-yBZRPZsgEl3vUnRkUNA 提取码:lcju 下载完成后点击安装,初始化界面 然后点 ...
最新文章
- 如何解决现有的问题——VBA课程第五次讨论2007年12月13日
- 写一个操作系统有多难?自制 os 极简教程
- “神经+符号”:从知识图谱角度看认知推理的发展
- vivo U1正式亮相
- linux中 probe函数的何时调用的?
- SAP在大中华区推出SAP数字化转型教育网络平台
- linux下的各种shell介绍(bash和dash转换)
- 机器学习实用指南_机器学习方法:实用指南
- 第七十八期:2019全球程序员薪酬报告:软件开发比机器学习抢手!40岁后收入下滑
- 市场压力只有老板扛?柏明顿阿米巴如何传递经营压力
- Spring学习之旅(四):面向切面编程(AOP)
- JSP页面报错:“Uncaught SyntaxError: Unexpected token ”
- JavaWeb学习 (二十六)————监听器(Listener)学习(二)
- python 录制网易云登陆_Python爬虫教程,爬取网易云的音乐
- 还不会财务管理分析?Python爬取全网财务分析数据
- 中医针灸学综合练习题库【4】
- 【QT】linux下alsa库的移植和QT中音视频的处理笔记
- 经典例题C语言程序解决数学问题
- A. Anti Light‘s Cell Guessing
- 交换机路由器的基本配置