- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我是 Linux 的新手,但我花了一整天时间安装了 Java 和 Tomcat。我的目标是用这个 Linux 机器来托管一个应用程序。我知道在我的基于 Windows 的机器上一切正常,但它是我的笔记本电脑,所以我打算使用 Linux Box 作为我的专用服务器。
I am following this tutorial .在本教程中,我执行了以下命令:
cd /etc/init.d
vi tomcat
#!/bin/bash
# description: Tomcat Start Stop Restart
# processname: tomcat
# chkconfig: 234 20 80
JAVA_HOME=/usr/java/jdk1.7.0_05
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/usr/share/apache-tomcat-7.0.29
case $1 in
start)
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
chmod 755 tomcat
chkconfig --add tomcat
chkconfig --level 234 tomcat on
chkconfig --list tomcat
service tomcat start
执行此命令后,tomcat 将在端口 8082 启动。但是当我重新启动 pc 时,tomcat 并没有随着 PC 的启动而启动。
我该怎么做?
最佳答案
由于您使用的是 Red Hat,因此您可以使用 systemd
来提供服务。
创建文件/etc/systemd/system/tomcat.service
:
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/java/jdk1.7.0_05
Environment=CATALINA_PID=/usr/share/apache-tomcat-7.0.29/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/share/apache-tomcat-7.0.29
Environment=CATALINA_BASE=/usr/share/apache-tomcat-7.0.29
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Duser.timezone=UTC -Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/usr/share/apache-tomcat-7.0.29/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID
User=tomcat
Group=tomcat
[Install]
WantedBy=multi-user.target
我指定了在启用syslog
和network
后启动的脚本。正如我们所见,systemd 将 tomcat 作为守护进程处理并终止 PID。通过 User
和 Group
,我们指定了进程应该运行的用户和组。
Systemd 将处理 upstart
进程并使用 PID 杀死它。
要让它运行然后发出:
systemctl enable tomcat
systemctl start tomcat
关于java - 无法在redhat中将tomcat作为服务启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42342149/
认为这可能对其他人有帮助。如果您运行的是 headless (headless)虚拟机,可能不会立即明白如何安装 liquibase。我正在使用 redhat linux 盒子,想知道使用哪个命令来尝
哪里可以找到 Redhat 的 nash 实用程序的源代码? 谢谢,陈兹 最佳答案 git://git.fedoraproject.org/git/hosted/mkinitrd 关于redhat -
我已经在我的 Red Hat Enterprise Linux 7.2 服务器上安装了 collectd。 我也在 ubuntu 14.04 服务器上安装了它。 在 ubuntu 中,当我运行 col
我一直在尝试找出如何将我自己的包添加为 kickstart 安装的一部分(特别是 mondo 包),但使用 %packages 指令而不是 post 脚本中的 rpm 命令。我尝试使用 kicksta
我是 RedHat Linux 的新手,并在 VirtualBox 上安装了 7.4 版本。按照RedHat的安装步骤,我需要先订阅RedHat才能在RedHat上下载。 使用的命令是 subscri
我正在尝试在具有两个 Xenon CPU 和 RAID 1 以及两个 2TB HDD 的服务器上安装 Redhat Enterprise Linux 64x 版本 6.3 或 6.4。安装会非常顺利,
[axaysd@localhost ~]$ sudo pip install lightfm [sudo] password for axaysd: Collecting lightfm Usin
我正在尝试在 redhat 6.3 中安装 msodbcsql v13。它显示 unixODBC(64 位) >= 2.3.1 需要在安装 msodbcsql 之前安装的依赖项错误。 我尝试在命令下运
我正在Fedora linux平台上学习qt,在我制作示例cpp时它抛出了如下g++错误 g++ error:/usr/lib/rpm/redhat/redhat-hardened-cc1: No s
我即将开始一个项目,将我们的应用程序套件从 RedHat ES4 移植到 RedHat ES6。这有多复杂?我们过去在不同版本之间有过不同的体验,想知道在迁移到 ES6 的过程中是否有任何特定的陷阱。
我正在尝试编译一个使用 Qt 5.5 的应用程序(Qt Installer Framework),这样生成的(静态链接的)二进制文件可以在旧的 Linux 系统(例如 RedHat 5 甚至 RedH
我从 Oracle 中尝试这个查询: select * from "a_table"@Postgres; 这是我收到的错误消息: ORA-28545: error diagnosed by Net8
有没有办法询问yum哪个组包含给定的程序包?我知道如何询问给定组中有哪些软件包,并且可以编写一个快速脚本来遍历所有组,但是有一个比这更简单的机制会很好。 最佳答案 如果您只是在寻找一种供人类使用的“简
我有一个软件包,我为其创建了 RPM。由于 IP 原因,我无法在此处粘贴整个 RPM,但这里是问题的要点: %pre /sbin/pidof program if [ "$?" -eq "0" ] t
我注意到rpmbuild(-bb和--buildroot选项)根据您使用的操作系统在不同的位置创建.rpm: GNU / Linux Ubuntu = 9.10:/ home / rpmbuild
关闭。这个问题是not about programming or software development .它目前不接受答案。 这个问题似乎不是关于 a specific programming
关闭。这个问题是not about programming or software development .它目前不接受答案。 这个问题似乎不是关于 a specific programming
相信对RedHat Linux或CentOS比较熟悉的人,应该是比较了解yum源的,它比普通的rpm包安装,要方便的多,为何呢?因为它能顺利的解决rpm包之间的依赖关系。你要是根据rpm包之间的依赖
1.在终端下进入root权限,首先看看有没有安装tftp服务器和客户端组件,验证命令:rpm -qa | grep tftp(看图) 如果没有图中所显示的效果,那么你的主机上可能没有安装tft
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想要改善这个问题吗?更新问题,以便将其作为on-topi
我是一名优秀的程序员,十分优秀!