service - Ubuntu16 Tomcat9 设置开机自动重启时为什么起不来?

 手机用户2602881417 发布于 2022-10-25 01:34

每次启动到这个地方就起不来了是怎么回事?!!!!!!
总是到这里就停下了:
[localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat9/webapps/docs


但是若是手动startup.sh这种方式启动的话就没有任何问题。

下面就是本人设置使用的三种方法,但是每种方法到最后都是到这里就不行了。
方法一(参考这个教程:http://www.cnblogs.com/tr0217...:
1.将tomcat安装目录下bin文件夹中的catalina.sh拷贝到/etc/init.d下并修改名称为tomcat.
2.在这个tomcat文件里面添加:
CATALINA_HOME=/usr/local/tomcat9
JAVA_HOME=/usr/lib/jvm/jdk1.8.0_111
3.使用service命令启动tomcat服务
cd /etc/init.d
service tomcat start
4.最后结果就是上图的结果了。
方法二:
nano /etc/systemd/system/tomcat.service
在上面这个文件里面配置如下内容:

完了之后:

都设置好了之后,重启虚拟机就出现上述问题那里了。然后命令行这里检测的状态都是没有问题的,正常我启动状态:systemctl status tomcat(这个命令检测)

方法三:
查到Ubuntu1610把rc.local服务化了,然后就找了一下解决方法
**创建systemd的服务脚本
sudo vi /etc/systemd/system/rc-local.service
执行命令后添加如下内容:
[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
最后执行下面命令:
sudo systemctl enable rc-local.service**

这些执行完之后,rc-local.service这个服务就可以用了,下面的东西就可以继续执行。
因为ubuntu16.10没有/etc/rc.local 文件了,所以自行创建 /etc/rc.local并添加以下默认内容

为了让文件顺利进行,就需要执行的如下命令:

最开始是没有sleep这个的,但是由于不添加休眠时间启动就不完整,所以加上了,
但是加上之后就又回归原来的问题了(就是最开始一直无法解决的问题)。

虔诚的希望大家遇到过这个问题的话,帮忙解答一下,这个都要整崩溃了。

3 个回答
  • 你是不是用户权限有问题,那个开自己自动执行的命令的权限是用的root吧,tomcat应该是不能用root来启动的,你试试启动脚本前加个用户切换的命令 su -user -c "command" 试试看

    2022-10-26 14:05 回答
  • 最近也在Ubuntu16下安装Tomcat9,可以开机自动起来。以下是我安装时的笔记。希望能帮到你。
    Ubuntu16.10下安装Tomcat9

    2022-10-26 14:05 回答
  • 这个问题好奇怪,顶一下,等大神回复

    2022-10-26 14:05 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有