Deepin 设置开机执行某sh文件
背景
deepin系统上部署了Geoserver,但是每次开机后都得手动过去起,麻烦,故想着找个办法解决下
过程
- 在
/etc/systemd/system目录下新建一个 geoserver.service,就是【自定义名称】.service的文件,后缀.service似乎不可变,名称随意,我这叫geoserver.service.
touch geoserver.service
- 编辑该文件
sudo vim geoserver.service
- 按照格式填充内容
[Unit]
Description=geoserver start up on boot # 该内容是对该service的一个描述
After=network.target # 在网络服务启动后启动该服务 主要用于控制服务的启动顺序,确保在指定服务或目标启动完成后再启动当前服务
[Service]
Type=simple # 默认类型,还有其他的参数,大家可以百度
Environment="JAVA_HOME=/home/service/jdk-11.0.22" # JDK给设置乱了,手动指定jdk,而且Geoserver官方文档里写了支持17,但是起来之后地图报错500
ExecStart="/home/service/project/geoserver-2.25/bin/startup.sh" # 写待执行的脚本
WorkingDirectory="/home/service/project/geoserver-2.25/bin" # 这里好像必须指定到bin,我也不知道为啥,牵扯到环境配置问题,就是GEOSERVER_HOME的配置,我没有配置它,如果在 Environment 里跟在 JAVA_HOME 后面写应该就不用指定该参数了
User=service # 运行程序的用户名
Group=service # 运行程序的用户组,一般来说,Linux 在创建用户的时候会创建一个和用户名相同的用户组,所以这里和用户名写一致就可以了
# Restart=on-failure # 失败后重启,默认重启5次,再失败就不重启了,我这里没有用到该参数
# RemainAfterExit=true # 退出程序后提醒? 这个参数我也没有用到
[Install]
WantedBy=multi-user.target # 主要用于定义服务的安装目标,指定服务在哪些目标下启用和启动。multi-user.target 似乎是在可以通过命令行进行登录时才运行
其他
- 手动启动geoserver的startup.sh时都是通过 windows10 的 powershell,通过ssh操作的:
cd xxx/xxx/geoserver/bin
sh startup.sh & # 后面加个 & 可以后台运行,就是关了Terminal程序不会停止
disown # 这个命令就是该terminal 不在拥有该进程,这个时候关了terminal就不影响程序运行了
- 按道理说,Debian系的linux都可以这么操作,Redhat就不知道了
Deepin 设置开机执行某sh文件的更多相关文章
- 攻城狮在路上(叁)Linux(二十四)--- linux设置开机挂载及镜像文件挂载
虽然可以手动进行文件系统的挂载,但是每次都手动挂载就会很麻烦,开机挂载的目的就是实现文件系统的自动挂载. 一.开机挂载:/etc/fstab及/etc/mtab 主要是通过修改/etc/fstab文件 ...
- Linux设置开机自动挂载镜像文件
1.将文件上传到服务器上(本例上传到/Data/software下) 2.挂载 mount -o loop /Data/software/rhel-server-7.6-x86_64-dvd.iso ...
- Linux执行.sh文件,提示No such file or directory的问题的解决方法
亲测有效:http://www.jb51.net/LINUXjishu/56395.html Linux执行.sh文件,提示No such file or directory的问题的解决方法 在win ...
- Linux执行.sh文件,提示No such file or directory的问题
问题描述 在window平台下,写好shell脚本文件,迁移到linux平台,赋过可执行权限,执行该sh文件,却提示NO such file or directory 解决方案 难道是文件格式兼容性问 ...
- linux sh文件提示 no such file or directory
Linux执行.sh文件,提示No such file or directory的问题的解决方法 12-06-28 16:59作者:love__coder Linux执行.sh文件,提示No such ...
- linux怎么运行.SH文件
执行sh xx.sh命令就可以执行.sh文件了.如果直接执行xx.sh文件,就报权限错误 解决办法:执行chmod u+x xx.sh 来添加执行权限
- Linux下面如何运行.sh文件
Linux下面如何运行.sh文件 本文介绍Linux下面用命令如何运行.sh文件的方法,有两种方法: 一.直接./加上文件名.sh,如运行hello.sh为./hello.sh[hello.sh必 ...
- linux下执行sh文件报错:oswatcher_restart.sh: line 13: ./startOSW.sh: Permission denied
1 查看执行sh文件的内容 [root@xxxdb0402 dbscripts]# more oswatcher_restart.sh #!/usr/bin/ksh #export oswdir=` ...
- centos7设置rc.local开机执行命令
在Centos7下,rc.local文件,开机默认是不执行的 它是个软链接 [root@data-1-1 ~]# ll /etc/rc.local lrwxrwxrwx. 1 root root 13 ...
- Linux 系统设置sh文件开机自启动
工作中有一个linux下的服务需要启动,但是机器总是断电,导致需要反复启动,找了一下开机自启动的方法,解决了这个问题.Linux设置开机自启动非常简单,只要找到rc.local文件,将你需要自启动的文 ...
随机推荐
- 在Windows下为CodeBlocks20.3安装、配置wxWidget3.2.6
0.前言 CodeBlocks是使用C++编写程序的一个很好的开发环境,最大的好处是它是开源的.免费的,而不仅仅是因为它具有跨平台的能力.还有一个很重要的原因是在CodeBlocks中可以使用wxWi ...
- C++顺序结构(2)学习任务
在坚果云中注册免费个人云盘 一.视频下载存放在规划好的文件夹中,并观看学习 1.变量存储.注释 2.四则运算.输入 3.认识设置DEV-C++ 4.第一个C++程序 5.头文件 6.命名空间 7.co ...
- Java 项目愚蠢的分层及解决方案
<整洁架构之道>的最后一章<细节决定成败>又在讨论 Javaer 永恒的问题:分层后 DAO Service Controller 应该按功能分包还是按层分包. 按功能分包的人 ...
- 【pygame】Python小游戏开发之看代码学编程
话说我学习的时候,英文文档难以理解,中文文档杂乱无章,最终还是觉得,还不如直接看代码学习. 下面是我学习过程中写的代码,注释写的很详细,我想会帮助你理解的 pip install pygame 1.游 ...
- Spring Boot 2.4 中文
Spring Boot 2.4 中文 https://runebook.dev/zh-CN/docs/spring_boot/spring-boot-features
- Socket、Http、WebSocket?强大的Netty几行语句就帮你实现!
一.概述 Netty是目前最流行的由JBOSS提供的一个Java开源框架NIO框架,Netty提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序. 相比 ...
- 将maven项目打包上传到私服
1. 配置私服账户密码 在maven 的setting.xml 中配置用户名和密码: <servers> <server> <username>deployment ...
- CentOS安装tigerVNC Server
- [转]在MyBatis中使用pageHelper5.1.9分页插件实现物理分页
pagehelper的GIT地址:https://github.com/pagehelper/Mybatis-PageHelper/ 废话少说,直接给出中文官方链接: 1.如何使用分页插件 2.HOW ...
- Android保活从入门到放弃:乖乖引导用户加白名单吧(附7大机型加白示例)
1.引言 IM在Android上的保活问题经常在即时通讯网的论坛和技术群里被讨论,自从Android 8.0后系统大大降低了后台运行应用的保活容忍度(详见<Android P正式版即将到来:后台 ...