Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Bug]: Poor network connection causes command blocking

未关闭
#4,835 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
32/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
停滞
技术栈
shell
领域
cli

调研方向

首先跟踪 /app/dstserver start、monitor、stop 和 restart 命令,包括 ps 输出中显示的 update 和 monitor 进程。检查针对 package.json 的 curl 请求,并在网络连接较差的情况下复现该行为。当网络访问缓慢或不可用时,这些命令不再无限期阻塞,即可视为完成。

由索引模型根据 Issue 内容生成。

描述

command: monitor command: restart command: start command: stop distro: Debian engine: dontstarve game: Don't Starve Together info: docker type: bug
User story

as a server owner, i want command has a timeout, to keep running

Game

Don't Starve Together

Linux distro

Debian 12

Command

command: start, command: monitor, command: stop, command: restart

Further information

system info

linux: debian 13
using docker image: gameservermanagers/gameserver:dst
linuxgsm@gameserver:/app$ cat /build-time.txt 
Sat Oct  4 03:31:44 AM UTC 2025

with poor network connection, and docker restart dstserver, after few mins, got a lot of commands

linuxgsm@gameserver:/app$ ps -ef
UID          PID    PPID  C STIME TTY          TIME CMD
root           1       0  0 10:40 ?        00:00:00 /bin/bash ./entrypoint.sh
root          13       1  0 10:40 ?        00:00:00 cron
linuxgsm      23       1  0 10:40 ?        00:00:00 /bin/bash /app/entrypoint-user.sh
linuxgsm     510       0  0 10:41 pts/0    00:00:00 bash
linuxgsm    1355       1  0 10:41 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm    2170       1  0 10:44 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm    3392    2170  0 10:49 ?        00:00:00 npm update
linuxgsm    3409       1  0 10:50 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm    3833       1  0 10:52 ?        00:00:00 /bin/bash /app/dstserver monitor
root        5458      13  0 11:00 ?        00:00:00 CRON
linuxgsm    5459    5458  0 11:00 ?        00:00:00 /bin/sh -c /app/dstserver update > /dev/null 2>&1
linuxgsm    5460    5459  0 11:00 ?        00:00:00 /bin/bash /app/dstserver update
linuxgsm    7696       1  0 11:02 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm    8110       1  0 11:04 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm    8974    3409  0 11:06 ?        00:00:00 npm update
linuxgsm    8991       1  0 11:06 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm    9387    8991  0 11:06 ?        00:00:00 npm update
linuxgsm   10290    8110  0 11:09 ?        00:00:00 npm update
linuxgsm   10307       1  0 11:10 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   10720       1  0 11:12 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   12675   10307  0 11:15 ?        00:00:00 npm update
linuxgsm   12692       1  0 11:16 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   13587       1  0 11:18 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   16043   12692  0 11:21 ?        00:00:00 npm update
linuxgsm   16060       1  0 11:22 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   16456   13587  0 11:23 ?        00:00:00 npm update
linuxgsm   16941       1  0 11:24 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   17337    1355  0 11:24 ?        00:00:00 npm update
linuxgsm   17354       1  0 11:26 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   17750   17354  0 11:26 ?        00:00:00 npm update
linuxgsm   18428       0  0 11:27 pts/1    00:00:00 bash
linuxgsm   19453       1  0 11:28 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   20942    7696  0 11:28 ?        00:00:00 npm update
linuxgsm   20953   16941  0 11:29 ?        00:00:00 npm update
linuxgsm   21497       1  0 11:31 ?        00:00:00 tmux -L dstserver-12fb60da new-session -d -x 80 -y 23 -s dstserver  ./dontstarve_dedicated_server_nullrenderer -persistent_storage_root 
linuxgsm   21498   21497  0 11:31 pts/2    00:00:00 sh -c  ./dontstarve_dedicated_server_nullrenderer -persistent_storage_root /data/.klei -conf_dir DoNotStarveTogether -cluster Cluster_1 
linuxgsm   21500   21498 12 11:31 pts/2    00:01:25 ./dontstarve_dedicated_server_nullrenderer -persistent_storage_root /data/.klei -conf_dir DoNotStarveTogether -cluster Cluster_1 -shard 
linuxgsm   21880       1  0 11:32 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   22278   19453  0 11:33 ?        00:00:00 npm update
linuxgsm   22289   10720  0 11:33 ?        00:00:00 npm update
linuxgsm   23621      23  0 11:34 ?        00:00:00 /bin/bash ./dstserver update
linuxgsm   24590   21497  0 11:34 ?        00:00:00 cat
linuxgsm   24619       1  0 11:34 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   25850       1  0 11:36 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   26300   25850  0 11:36 ?        00:00:00 npm update
linuxgsm   26324    5460  0 11:37 ?        00:00:00 npm update
linuxgsm   26335   21880  0 11:37 ?        00:00:00 npm update
linuxgsm   26352       1  0 11:38 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   26748   26352  0 11:38 ?        00:00:00 npm update
linuxgsm   26759   23621  0 11:39 ?        00:00:00 npm update
linuxgsm   26770   24619  0 11:39 ?        00:00:00 npm update
linuxgsm   26781    3833  0 11:39 ?        00:00:00 npm update
linuxgsm   26798       1  0 11:40 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   27195   26798  0 11:40 ?        00:00:00 npm update
linuxgsm   27347       1  0 11:42 ?        00:00:00 /bin/bash /app/dstserver monitor
linuxgsm   27741   27347  0 11:42 ?        00:00:00 curl -s -L -o package.json https://raw.githubusercontent.com/GameServerManagers/LinuxGSM/master/package.json
linuxgsm   28425   16060  0 11:43 ?        00:00:00 curl -s -L -o package.json https://raw.githubusercontent.com/GameServerManagers/LinuxGSM/master/package.json
linuxgsm   28427   18428  0 11:43 pts/1    00:00:00 ps -ef

I also found that network problems can also cause the start and stop commands to be blocked.
It seems that it will also curl something?
Image
I hope these commands can be offline or non-blocking

Relevant log output

Steps to reproduce

No response

主要语言
Shell
星标
4.9k
派生
870
平均合并
14 小时 50 分钟
30 天内合并 PR
109

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

GameServerManagers/LinuxGSM 的其他 Issue

查看 GameServerManagers/LinuxGSM 的全部 Issue

相似的 Issue

更多 Shell/Bash Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。