linux 设置tomcat开机启动

在Linux系统中,要配置Tomcat开机自启动,可以创建一个名为 tomcat.service 的 systemd 服务文件,并将其放置在 /etc/systemd/system/ 目录下。以下是一个基本的服务文件示例,假设Tomcat安装在 /usr/local/tomcat 路径下:
1 创建服务文件:

sudo nano /etc/systemd/system/tomcat.service

添加以下内容到文件中:

[Unit]
Description=tomcat-server
After=network.target[Service]
Type=forkingEnvironment="JAVA_HOME=/usr/local/jdk1.8.0_181"ExecStart=/bin/bash /usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/solr/bin/shutdown.sh
ExecReload=/bin/kill -s HUP $MAINPIDUser=root
Group=root[Install]
WantedBy=multi-user.target

确保 JAVA_HOME、CATALINA_HOME、CATALINA_BASE 等环境变量设置正确,并且 ExecStart 指向正确的Tomcat启动脚本路径。

2 重新加载systemd管理器配置:

sudo systemctl daemon-reload

3 启用Tomcat服务:

sudo systemctl enable tomcat.service

4(可选)立即启动Tomcat服务:

sudo systemctl start tomcat.service

5(可选)检查Tomcat服务状态:

sudo systemctl status tomcat.service

这样配置后,无论系统重启还是启动,Tomcat都将作为服务自动启动。

6 tomcat指定jdk,

vi /usr/local/tomcat/bin/catalina.sh

在文件头部增加如下配置

JAVA_OPTS="-Xms512m -Xmx2048m -Djava.security.egd=file:/dev/./urandom"export JAVA_HOME=/usr/local/jdk1.8.0_181
export JRE_HOME=/usr/local/jdk1.8.0_181/jre

6 配置tomcat日志
Tomcat 配置日志保留期限
server.xml
打开conf/server.xml,找到下面代码,添加属性maxDays=“30”。

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" maxDays="30"prefix="localhost_access_log" suffix=".txt"pattern="%h %l %u %t &quot;%r&quot; %s %b" />

logging.properties
打开conf/logging.properties, 添加下列行。

1catalina.org.apache.juli.AsyncFileHandler.maxDays = 30
2localhost.org.apache.juli.AsyncFileHandler.maxDays = 30
3manager.org.apache.juli.AsyncFileHandler.maxDays = 30
4host-manager.org.apache.juli.AsyncFileHandler.maxDays = 30

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/56313.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java:玩家打怪小游戏

今天&#xff0c;我们尝试用Java来做一个“打怪小游戏”&#xff0c;听名字就知道&#xff0c;我们是应该创建几个成员和怪物&#xff0c;还有知道知道成员和怪物的血量&#xff0c;一次攻击的伤害等等。。当然我们的游戏攻击模式是“回合制”&#xff08;其实是别的方法&#…

Element-ui官方示例(Popover 弹出框)

Element-ui官方示例&#xff08;Popover 弹出框&#xff09;&#xff0c;好用的弹出框。 使用 vue-cli3 我们为新版的 vue-cli 准备了相应的​Element 插件​&#xff0c;你可以用它们快速地搭建一个基于 Element 的项目。 使用 Starter Kit 我们提供了通用的项目模版&#…

SQLAlchemy入门:详细介绍SQLAlchemy的安装、配置及基本使用方法

SQLAlchemy是一个流行的Python SQL工具包和对象关系映射&#xff08;ORM&#xff09;框架&#xff0c;它为开发人员提供了一种高效、灵活的方式来与数据库进行交互。本文将详细介绍SQLAlchemy的安装、配置及基本使用方法&#xff0c;并通过代码示例和案例分析&#xff0c;帮助新…

数据使用方法:

MySQL的存储引擎&#xff1a; 存储引擎的类型 MyISAM、InnoDB 、Memory、CSV等9种。 设置表的存储引擎&#xff1a; 数据表的存储位置 将查询结果插入新表 更新数据&#xff1a; 数据更新 更新数据记录 UPDATE 表名SET 字段1值1,字段2值2,...,字段n值 n [WHERE 条件]; 示例&a…

语音杂音问题解决方案-pcm-player

前言 近期在做语音的需求&#xff0c;语音识别(asr)和语音合成(tts)&#xff0c;此篇主要介绍语音合成中的杂音解决方案-pcm-player。 问题描述 语音合成 根据文本生成语音并播放&#xff0c;前端实现方式包括前端js&#xff08;speechSynthesis&#xff09;播放&#xff0…

论文笔记:Pre-training to Match for Unified Low-shot Relation Extraction

论文来源&#xff1a;ACL 2022 论文地址&#xff1a;https://aclanthology.org/2022.acl-long.397.pdf 论文代码&#xff1a;https://github.com/fc-liu/MCMN &#xff08;笔记不易&#xff0c;请勿恶意转载抄袭&#xff01;&#xff01;&#xff01;&#xff09; 目录 A…

手机屏幕上的OCR识别方案

今天要讲的这个技术方案&#xff0c;能用到人会觉得真有用&#xff0c;用不到的人会觉得真没用。这个方案就是采用python实现将安卓手机屏幕上的部分内容转为文字。效果如下&#xff1a; 就算是包含公式或者表格也可以识别&#xff1a; 有类似需求的人&#xff0c;自然能看到…

pnpm报错 cannot find package xxx,有的电脑正常运行,只有这个的电脑报错

pnpm build报错 cannot find package xxx&#xff0c;有的电脑正常运行&#xff0c;只有这一个报错 在网上查找各种资料发现是项目在电脑里的目录层级比较深导致的。 问题&#xff1a;在 Windows 系统上&#xff0c;文件路径过长&#xff08;超过 260 个字符&#xff09;可能…

VMware设置虚拟机与物理机在同一网段

1、设置虚拟网络编辑器 打开VMware编辑中的“虚拟网络编辑器...”菜单 将桥接模式选择为物理机的网卡。 2、设置虚拟机的网络适配器 打开“虚拟机|设置...”菜单&#xff0c;按下图设置。 3、查看Ubuntu的IP地址 输入命令&#xff1a; ip addr show 可查看ip地址是否与物…

2020前端面试 - JavaScript2.0篇

前言&#xff1a; 个人觉得面试其实是一个自我学习的过程&#xff0c;如果说短时间内找不到工作&#xff0c;那一定是你面的还不够多&#xff0c;不要气馁&#xff0c;不要放弃&#xff0c;在心底告诉自己&#xff0c;下一次面试&#xff0c;再下一次面试&#xff0c;一定能够拿…

基于Matlab使用蚁群算法寻找最优路径

基于Matlab使用蚁群算法寻找最优路径 与Dijkstra算法使用相同的地图。 每只蚂蚁都从起点出发&#xff0c;直到抵达终点。这与Example5_1.m 中解决旅行商问题不一样&#xff0c;旅行商问题中每一代的蚂蚁都是随机从一个节点出发。 文件说明 Example5_1.m 简单对参考资料2中的…

路由器原理和静态路由配置

一、路由器的工作原理 根据路由表转发数据 接收数据包→查看目的地址→与路由表进行匹配找到转发端口→转发到该端口 二、路由表的形成 它是路由器中维护的路由条目的集合&#xff0c;路由器根据路由表做路径选择&#xff0c;里面记录了网段ip地址和对应下一跳接口的接口号。…

Python 和 Jupyter Kernel 版本不一致

使用jupyter notebook时明明已经安装了包&#xff0c;但是导入时提示&#xff1a; ModuleNotFoundError: No module named ptitprince 1、检查安装环境 !pip show ptitprince Name: ptitprince Version: 0.2.7 Summary: A Python implementation of Rainclouds, originally…

Yocto - Meta-data中的PATCHTOOL变量介绍

在 Yocto 中&#xff0c;“do_patch ”任务负责在构建过程中为源代码打补丁。Yocto 支持多种补丁管理工具&#xff0c;例如 patch、quilt 和 git&#xff0c;每种工具都有不同的特性和用例。 在 Yocto 项目中&#xff0c;PATCHTOOL 变量决定了用于为源代码打补丁的工具。 In Yo…

uniapp学习(004-2 组件 Part.2生命周期)

零基础入门uniapp Vue3组合式API版本到咸虾米壁纸项目实战&#xff0c;开发打包微信小程序、抖音小程序、H5、安卓APP客户端等 总时长 23:40:00 共116P 此文章包含第31p-第p35的内容 文章目录 组件生命周期我们主要使用的三种生命周期setup(创建组件时执行)不可以操作dom节点…

JavaScript找到深层dom元素并修改的全部方法

在 JavaScript 中&#xff0c;找到深层标签元素并进行修改有多种方法。这些方法可以帮助我们遍历和操作 DOM 结构。以下是所有常用的方法&#xff0c;包括简单查找、选择器、遍历等方式&#xff0c;以及如何修改这些元素的属性和内容。 1. 使用选择器 1.1 querySelector que…

【开发工具】K8s经验: 在k8s中 服务1部署到了k8s,那服务2也在k8s中的某个dockers中,服务1和服务2能互相找到吗 ?

今天在开发中遇到了需要调用其他dubbo服务中的一个接口&#xff0c;首先通过注解DubboReference来引入另外一个dubbo服务&#xff0c;但是还需要设置url吗&#xff1f; 下面是思考经验&#xff1a;希望能帮到大家 服务1已经被部署到了Kubernetes&#xff08;k8s&#xff09;集…

最新CSS入门总结

CSS&#xff08;层叠样式表&#xff09;是一种用于网页样式设计的语言&#xff0c;它通过为 HTML 标签添加样式来控制网页的外观和布局。CSS 可以设置元素的颜色、字体、间距、对齐方式等&#xff0c;还可以用于创建响应式设计&#xff0c;以适应不同设备的屏幕尺寸。CSS 是前端…

再给我两分钟,我能教会你使用 nvm 一键搞定node 和 npm

1. nvm简介 NVM&#xff08;Node Version Manager&#xff09;是Node.js的版本管理工具&#xff0c;它允许用户在同一台机器上安装和管理多个Node.js版本。这对于需要在不同项目之间切换Node.js版本的开发者来说非常有用&#xff0c;因为不同的项目可能依赖于不同版本的Node.js…

排队模型和贪心算法,贪心算法在算力共享排队系统中的应用

目录 排队模型和贪心算法 一、排队模型概述 二、贪心算法简介 三、排队模型与贪心算法的关系 四、实例说明 贪心算法在算力共享排队系统中的应用 贪心算法的局限性 排队模型和贪心算法 之间存在密切的关系,主要体现在排队问题的求解过程中。 一、排队模型概述 排队模…