关于软件syncthing无法开机启动及进入ssh窗口便启动web界面的现像修复

这个故障 很绕,但遇到的朋友一下就明白

先发下解析思路

rc.local开启一个用于建立screen 脚本xxxxx_s.sh

#!/bin/bash

ssh -t localhost

/usr/bin/screen -dmS ss1

sleep 1

/usr/bin/screen -x -S ss1 -p 0 -X stuff "w"

/usr/bin/screen -S ss1 -X stuff 'ssh -t localhost'`echo -ne '\015'`

/usr/bin/screen -S ss1 -X stuff 'date'`echo -ne '\015'`

/bin/nohup /usr/bin/syncthing &> /dev/null &

再crontab 中进行 * * * * * 的xxxxx_crontab.sh运行

#!/bin/bash

screenNum=`screen -ls |wc -l `;[[ $screenNum -lt 5 ]] && xxxxx_s.sh

发一下systemctl 使用中的代码

[Unit]

Description=Syncthing - Open Source Continuous File Synchronization for %I

Documentation=man:syncthing(1)

After=network.target

[Service]

User=%i

ExecStart=/usr/bin/syncthing -no-browser -no-restart -logflags=0

Restart=on-failure

RestartSec=5

SuccessExitStatus=3 4

RestartForceExitStatus=3 4

# Hardening

ProtectSystem=full

PrivateTmp=true

SystemCallArchitectures=native

MemoryDenyWriteExecute=true

NoNewPrivileges=true

Install]

WantedBy=multi-user.target

###########

[Unit]

Description=Restart Syncthing after resume

Documentation=man:syncthing(1)

After=sleep.target

[Service]

Type=oneshot

ExecStart=-/usr/bin/pkill -HUP -x syncthing

[Install]

WantedBy=sleep.target

#######

[Unit]

Description=Syncthing - Open Source Continuous File Synchronization

Documentation=man:syncthing(1)

[Service]

ExecStart=/usr/bin/syncthing -no-browser -no-restart -logflags=0

Restart=on-failure

RestartSec=5

SuccessExitStatus=3 4

RestartForceExitStatus=3 4

# Hardening

SystemCallArchitectures=native

MemoryDenyWriteExecute=true

NoNewPrivileges=true

[Istall]

WantedBy=default.target

/usr/lib/systemd/user/syncthing.service (E    


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容