You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Debian 10可执行文件运行方法及systemd自启配置报错咨询

问题原因

你遇到的问题来自两个明确的错误:

  1. systemd的ExecStart参数强制要求可执行文件写绝对路径,即使配置了WorkingDirectory也不支持./这种相对路径写法,这是你报错的直接原因。
  2. myserver是静态编译的ARM架构ELF二进制文件,不是shell脚本,所以用bash myserver/sh myserver执行肯定会失败,没有任何意义。
解决方案

一、修复systemd开机自启配置

修改/etc/systemd/system/myserver.service里的ExecStart行,替换为绝对路径:

[Unit]
Description=myserver
After=network-online.target

[Service]
ExecStart=/home/sahar/myserver
WorkingDirectory=/home/sahar
StandardOutput=inherit
StandardError=inherit
Restart=always
User=sahar

[Install]
WantedBy=multi-user.target

修改完成后执行以下命令生效:

  • 重载systemd配置:systemctl daemon-reload
  • 启动服务测试运行:systemctl start myserver
  • 查看服务运行状态:systemctl status myserver
  • 确认运行正常后设置开机自启:systemctl enable myserver

二、其他手动执行方法(无需每次加./)

如果平时手动运行时不想每次都输入./myserver,可以用以下两种方案实现直接输入myserver即可运行:

  1. 将文件所在目录加入PATH环境变量
    • 临时生效(仅当前终端窗口有效):export PATH=/home/sahar:$PATH
    • 永久生效(针对sahar用户):把上面这行代码添加到~/.bashrc文件末尾,执行source ~/.bashrc后即可全局生效。
  2. 将文件移动到系统默认可执行目录
    执行命令:sudo mv /home/sahar/myserver /usr/local/bin/,之后所有用户都可以在任意位置直接输入myserver运行程序。如果你的程序依赖同目录下的配置文件,需要同步把配置文件移动到对应路径,或者修改程序内的配置读取路径。

内容的提问来源于stack exchange,提问作者Sahar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 18:24:05