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文件,将你需要自启动的文 ...
随机推荐
- mysql基础之增删改查
标签: mysql 增加数据 -- 增加数据 use myblog; insert into users(username, `password`, realname) values('zhangsa ...
- 【pygame】Python小游戏开发之看代码学编程
话说我学习的时候,英文文档难以理解,中文文档杂乱无章,最终还是觉得,还不如直接看代码学习. 下面是我学习过程中写的代码,注释写的很详细,我想会帮助你理解的 pip install pygame 1.游 ...
- 黑苹果(Hackintosh) - 问题,虚拟机中的黑苹果系统分辨率低,界面小
问题截图 解决办法 先把 draw.iso 放进 VMware 的安装根目录 再设置 Mac OS 虚拟机系统的配置情况 如果实在不行 就使用 VM 的拉伸显示功能吧,就将就着用用
- TypeNameExtractor could not be found
TypeNameExtractor could not be foundException 一.注意: 如果项目中使用了 knif4j或swagger (knif4j内核中就使用了swagger) 项 ...
- Qt编写地图综合应用54-动态点位标注
一.前言 动态点位标注是定制的一个功能模块,提供直接地图上选点设置标记点,点位信息用结构体存储,其中包括了经度.纬度.速度.时间等信息,单击对应的标注点可以显示详细的弹框信息,弹框信息采用自定义的ht ...
- 基于开源IM即时通讯框架MobileIMSDK:RainbowChat v11.0版已发布
关于MobileIMSDK MobileIMSDK 是一套专门为移动端开发的开源IM即时通讯框架,超轻量级.高度提炼,一套API优雅支持UDP .TCP .WebSocket 三种协议,支持iOS.A ...
- C Primer Plus 第6版 第六章 编程练习参考答案
编译环境VS Code+WSL GCC 源码请到文末下载 .注意:本章部分题目中用到了math.h 用gcc编译时加上-lm参数. /*第1题*************************/ #i ...
- 重温Go语法笔记 | 结构体
结构体 多个任意类型聚合成的复合类型 1.字段拥有自己的类型和值 2.字段名必须唯一 3.字段可以是结构体 结构体的定义是一种内存布局的描述 只有实例化才会真正分配内存,必须实例化之后才能使用结构体的 ...
- Swagger UI、RESTful简介
Swagger UI 简介 Swagger UI允许任何人(无论您是开发团队还是最终用户)都可以可视化API资源并与之交互,而无需任何实现逻辑.它是根据您的OpenAPI(以前称为Swagger)规范 ...
- consul简介
Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置. Consul是分布式的.高可用的.可横向扩展的.它具备以下特性 : 服务发现:consul通过DNS或者HTT ...