当前位置: 首页 > news >正文

华为云自助建站/青岛新闻最新消息

华为云自助建站,青岛新闻最新消息,在线做插画的网站,平面排版网站将代码上传到相应的目录,并且配置了一个.sh的启动脚本文件 文件内容: #!/bin/bash# 指定JAR文件的路径(如果JAR文件在当前目录,可以直接使用文件名) JAR_FILE"/usr/local/java/xs_luruan_client/lib/xs_luruan_…

将代码上传到相应的目录,并且配置了一个.sh的启动脚本文件

文件内容:

#!/bin/bash# 指定JAR文件的路径(如果JAR文件在当前目录,可以直接使用文件名)
JAR_FILE="/usr/local/java/xs_luruan_client/lib/xs_luruan_client.jar"
# 或者使用绝对路径
# JAR_FILE="/path/to/your/myapp.jar"# 检查JAR文件是否存在
if [ ! -f "$JAR_FILE" ]; thenecho "Error: JAR file '$JAR_FILE' not found!"exit 1
fi# 运行JAR文件
java -cp "$JAR_FILE" com.xs.start.Starter# 检查Java命令是否成功执行(可选)
# 注意:这个检查可能不够准确,因为Java应用可能会以非零状态码退出表示正常结束(例如,Spring Boot应用的优雅停机)
# 如果你需要更精确的检查,应该根据应用的具体行为来调整
if [ $? -ne 0 ]; thenecho "Error: Java application exited with a non-zero status code."exit 1
fiecho "Java application exited successfully."

运行start.sh

./start.sh

运行界面:

我现在要做成开机启动的方式:

创建.service文件

[Unit]
Description=XS Luruan Client Service
After=network.target[Service]
Type=simple
ExecStart=/usr/local/java/xs_luruan_client/start.sh
Restart=on-failure
User=root[Install]
WantedBy=multi-user.target

将文件命名为:xs_luruan_client.service

将文件通过filezille工具上传到:/etc/systemd/system文件夹下,但是提示权限不够

怎么办呢,那应该就得付权限了

想直接在这个目录下创建.service文件,或者将.service文件复制到该目录下,提示

sudo: /etc/sudoers.d/README is world writable

经过查询deepseek,让修改权限

可以上传了

然后将设置自启动

在系统上执行如下:

验证下是否启动:

竟然启动失败了,这是怎么回事呢

查看服务状态

提示如下:

[Unit]
Description=XS Luruan Client Service
After=network.target[Service]
Environment="JAVA_HOME=/usr/local/java/jdk1.8.0_391"
Environment="PATH=$JAVA_HOME/bin:$PATH"
Type=simple
ExecStart=/usr/local/java/xs_luruan_client/start.sh
Restart=on-failure
User=root[Install]
WantedBy=multi-user.target

增加了环境变了

重新刷新验证

还是同样的问题

查找javahome的绝对路径

readlink -f $(which java)

在.sh中命令增加绝对路径

#!/bin/bash# 指定JAR文件的路径(如果JAR文件在当前目录,可以直接使用文件名)
JAR_FILE="/usr/local/java/xs_luruan_client/lib/xs_luruan_client.jar"
# 或者使用绝对路径
# JAR_FILE="/path/to/your/myapp.jar"# 检查JAR文件是否存在
if [ ! -f "$JAR_FILE" ]; thenecho "Error: JAR file '$JAR_FILE' not found!"exit 1
fi# 运行JAR文件
/usr/local/java/jdk1.8.0_391/bin/java -cp "$JAR_FILE" com.xs.start.Starter# 检查Java命令是否成功执行(可选)
# 注意:这个检查可能不够准确,因为Java应用可能会以非零状态码退出表示正常结束(例如,Spring Boot应用的优雅停机)
# 如果你需要更精确的检查,应该根据应用的具体行为来调整
if [ $? -ne 0 ]; thenecho "Error: Java application exited with a non-zero status code."exit 1
fiecho "Java application exited successfully."

就可以正常启动了

现在要系统重启,发现的确执行了,但是联网失败了,看来是在终端联网就启动系统了,但是网络还没有通,所以联网失败了。

关闭服务:

# 停止单个服务(需管理员权限)
sudo systemctl stop <service-name># 示例:停止 Apache/Nginx
sudo systemctl stop apache2  # Ubuntu/Debian 的 Apache
sudo systemctl stop httpd     # CentOS/RHEL 的 Apache
sudo systemctl stop nginx     # Nginx# 查看服务状态(确认是否停止)
sudo systemctl status <service-name>

那么看看如何实现延时启动呢。

在.service文件中增加延时配置

[Unit]
Description=XS Luruan Client Service
After=network.target[Service]
Environment="JAVA_HOME=/usr/local/java/jdk1.8.0_391"
Environment="PATH=$JAVA_HOME/bin:$PATH"
Type=simple
ExecStartPre=/bin/sleep 50  # 延时5秒
ExecStart=/usr/local/java/xs_luruan_client/start.sh
Restart=on-failure
User=root[Install]
WantedBy=multi-user.target

然后重新将文件上传,并且复制到system目录,刷新systemctl

提示sleep不存在,

那么就监测sleep是否存在

which sleep   # 输出应为 /bin/sleep 或 /usr/bin/sleep

输出:

/usr/bin/sleep 

那么就把start.sh  和 service文件都改一下

#!/bin/bash# 指定JAR文件的路径(如果JAR文件在当前目录,可以直接使用文件名)
JAR_FILE="/usr/local/java/xs_luruan_client/lib/xs_luruan_client.jar"
# 或者使用绝对路径
# JAR_FILE="/path/to/your/myapp.jar"# 检查JAR文件是否存在
if [ ! -f "$JAR_FILE" ]; thenecho "Error: JAR file '$JAR_FILE' not found!"exit 1
fi
#延时50秒再执行,以便于设备联网成功
/usr/bin/sleep 50# 运行JAR文件
/usr/local/java/jdk1.8.0_391/bin/java -cp "$JAR_FILE" com.xs.start.Starter# 检查Java命令是否成功执行(可选)
# 注意:这个检查可能不够准确,因为Java应用可能会以非零状态码退出表示正常结束(例如,Spring Boot应用的优雅停机)
# 如果你需要更精确的检查,应该根据应用的具体行为来调整
if [ $? -ne 0 ]; thenecho "Error: Java application exited with a non-zero status code."exit 1
fiecho "Java application exited successfully."
[Unit]
Description=XS Luruan Client Service
# 声明需要网络在线后才能启动
After=network-online.target
Wants=network-online.target[Service]
Environment="JAVA_HOME=/usr/local/java/jdk1.8.0_391"
Environment="PATH=$JAVA_HOME/bin:$PATH"
Type=simple
ExecStart=/usr/local/java/xs_luruan_client/start.sh
Restart=on-failure
User=root[Install]
WantedBy=multi-user.target

通过在.sh中增加延时操作,终于可以在自启过程中,等待网络连接成功后再启动了,

http://www.whsansanxincailiao.cn/news/32019510.html

相关文章:

  • 做一个交友网站怎样做需要多少资金/中国搜索引擎排名
  • 深圳企业网站建设设计制作方案/百度做网站推广的费用
  • 网站源代码怎么上传/百度seo教程视频
  • 广州海珠区地图/郑州网站优化
  • 汕头网站关键排名/网络营销推广方案前言
  • 口碑好的网站建设服务/完整企业网站模板
  • 网站建设运行环境/如何销售自己产品方法有哪些
  • 泉州网站建设方案外包/搜索 引擎优化
  • 网页微信版下载/win7系统优化大师
  • 淘宝联盟建网站/建立一个网站需要多少钱
  • 焦作市建设工程网站/html底部友情链接代码
  • 美国网站人肉收做/上海网络seo
  • 青岛建网站哪个好/厦门seo厦门起梦
  • 营销型网站建设标准/站长之家seo一点询
  • 小型商城网站/怎么制作网站教程
  • 微网站开发工具/网店代运营商
  • 网站建设公司方案/百度推广一天费用200
  • 深圳官网建设公司/西安seo网站关键词优化
  • 临沂手机端建站模板/湖南seo优化哪家好
  • 龙华做棋牌网站建设哪家好/上海短视频seo优化网站
  • 成都创新互联做网站/谷歌手机版下载安装
  • .我爱你 域名网站/站长统计app下载大全
  • 动态网站制作报价/网络营销的特点是什么?
  • 代做网站平台/网络营销费用预算
  • 云主机可以做网站吗/自助建站系统源码
  • 网站的风格分析/2022近期时事热点素材摘抄
  • 做招聘长图用什么网站/目录型搜索引擎有哪些
  • 网站空间什么意思/网店如何推广
  • 进一步加大网站集约化建设力度/广州seo外包公司
  • 微网站建设包括哪些内容/培训班管理系统 免费