首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

修复systemd服务203/EXEC故障(没有这样的文件或目录)

基础概念

systemd 是 Linux 系统中的一种初始化系统和服务管理器,用于管理系统启动后的各种服务。systemd 服务文件通常位于 /etc/systemd/system//lib/systemd/system/ 目录下,文件扩展名为 .service

故障原因

systemd 服务 203/EXEC 故障(没有这样的文件或目录)通常是由于以下原因之一引起的:

  1. 服务文件路径错误:服务文件中指定的可执行文件路径不正确或不存在。
  2. 权限问题:服务文件或可执行文件没有正确的权限,导致 systemd 无法执行。
  3. 依赖问题:服务文件中指定的依赖项不存在或未正确配置。

解决方法

1. 检查服务文件路径

首先,检查服务文件中的 ExecStart 指令,确保指定的可执行文件路径是正确的。

代码语言:txt
复制
[Service]
ExecStart=/path/to/your/executable

确保 /path/to/your/executable 是正确的路径,并且该文件存在。

2. 检查权限

确保服务文件和可执行文件具有正确的权限。通常,服务文件需要 644 权限,可执行文件需要 755 权限。

代码语言:txt
复制
sudo chmod 644 /etc/systemd/system/your-service.service
sudo chmod 755 /path/to/your/executable

3. 检查依赖项

确保服务文件中指定的依赖项存在且正确配置。例如,如果你的服务依赖于另一个服务,确保该服务已经启动并且配置正确。

代码语言:txt
复制
[Unit]
Requires=another-service.service
After=another-service.service

4. 重新加载和启动服务

在修改服务文件后,需要重新加载 systemd 配置并启动服务。

代码语言:txt
复制
sudo systemctl daemon-reload
sudo systemctl start your-service.service
sudo systemctl status your-service.service

示例代码

假设你的服务文件 /etc/systemd/system/myapp.service 内容如下:

代码语言:txt
复制
[Unit]
Description=My Application Service
After=network.target

[Service]
ExecStart=/usr/local/bin/myapp
Restart=always
User=myuser
Group=mygroup

[Install]
WantedBy=multi-user.target

确保 /usr/local/bin/myapp 存在并且具有 755 权限:

代码语言:txt
复制
sudo chmod 755 /usr/local/bin/myapp

然后重新加载 systemd 配置并启动服务:

代码语言:txt
复制
sudo systemctl daemon-reload
sudo systemctl start myapp.service
sudo systemctl status myapp.service

参考链接

通过以上步骤,你应该能够解决 systemd 服务 203/EXEC 故障(没有这样的文件或目录)。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 创建Linux服务,轻松管理(自启动,恢复)进程

    这样一个场景,在一台服务器上,我们想要启动一个简单网络文件服务器,用来提供给内网用户下载。...但是还有一些问题,比如 进程意外停止了,无法自动启动 服务器重启,该进程也不会自动启动 那么我们有没有什么好办法解决呢,答案是有的。就是下面介绍使用systemd创建Linux 服务方式解决。...创建服务Unit文件 创建一个服务文件,比如这里叫做vim /etc/systemd/system/apk_server.service(可以将apk_server替换为你希望名称) 内容如下 1 2...更新正确即可 设置工作目录 很多是否我们命令会是这样 进入一个目录 然后执行命令 但是当我们这样设置ExecStart=/usr/bin/env cd your_dir && ruby -run -ehttpd...: Main process exited, code=exited, status=203/EXEC localhost.localdomain systemd[1]: coo_code_review.service

    4.5K20

    滥用crond触发systemd-login故障一例

    故障现象 2021年1月20日接到通知,要把systemd升级到219-73.tl2.10或以上、并把rsyslog一起升级,以修复/var/log/messages无日志内容bug。...经实验,发现使用yum升级两个软件包之后,systemd-logind可执行文件也被更新,导致该服务处于原可执行文件已删除状态,所以我提议,在升级步骤中增加重启systemd-logind服务动作...检查yum日志,发现在去年6月升级了dbus包,但是服务进程是3月5日启动,也就是升级包时候并没有重启这个服务。...这样,strace可以跟踪到 1号进程clone+execv执行systemd-logind瞬间,以及systemd-login最开头行为。...检查systemd-loginstrace记录,发现大量访问 /run/systemd/session/ 目录下面文件动作。检查该目录,发现大量残留文件

    1.1K20

    第十六章.Linux系统管理-开机启动流程

    操作系统接管硬件以后,首先读取 /boot 目录内核文件。.../etc/rc.d/rc5.d/中rc启动脚本通常是KS开头连接文件,对于以 S 开头启动脚本,将以start参数来运行。...#退出 bash-4.2# exit #重启进入系统 bash-4.2# reboot 生产场景3: CentOS7 误删除grub文件,进行修复 1.模拟故障 #删除grub2 [root@zls...---- systemd相关配置文件 /usr/lib/systemd/system #类似C6系统启动脚本目录/etc/init.d/ /etc/systemd/system/ #类似C6系统...daemon-reload 创建新服务文件或者变更设置 systemctl服务状态说明 服务状态 状态说明 loaded 服务单元配置文件已经被处理 active(running) 服务一个多个进程在运行中

    2.4K20

    Linux系统-开关机

    开机常见故障 1.找不到引导盘 比如我系统安装在a硬盘,而我在bios里面配置了b盘作为启动盘,可以通过带外操作bios或者直接操作bios进行调整修复,如果是重装或者新安装系统,也是在这里选择引导盘...2.引导盘故障 比如某些误操作删除了系统关键文件,或者磁盘文件系统损坏。...以下故障是我手工删除了/etc目录和/bin目录重启失败情况,修复方法参考后面会讲Linux系统-救援模式 3.磁盘挂载失败 错误fstab是常见系统无法启动原因之一 输入root密码进入系统修复磁盘挂载问题...系统会按照一定顺序停止各种服务,如网络服务文件系统服务、打印服务等。这通常是由初始化系统(如 systemd)来管理。...如果是正常关机,系统会将电源管理系统设置为关机状态,计算机电源将被关闭。 关机一般不会遇到问题,当然在实际运维中,我是遇到过无法关机,必须强制关机情况,但是这个没有模拟出来故障

    4300

    RLIMIT_NOFILE设置陷阱:容器应用高频异常元凶

    File Descriptor Limits 最初,文件描述符(fd)主要用于引用打开文件目录等资源。...错误处理 这些问题主要与系统服务文件描述符限制有关,不同服务限制耗尽会导致不同错误。 有时这会导致任何docker命令(如docker ps)挂起(守护进程耗尽限制)。...containerd 已经合并了相应更改,从他们systemd服务文件中移除了LimitNOFILE设置。...(-u) 499403 containerdsystemd服务配置如下: cat /usr/lib/systemd/system/containerd.service [Unit] Description...这样好处是所选限制值不太随意,并且改善了在设置了rlimit容器中systemd行为。 由于笔者时间、视野、认知有限,本文难免出现错误、疏漏等问题,期待各位读者朋友、业界专家指正交流。

    32210

    CentOS 7下Redis5安装部署与开机自启动

    /local/redis/bin 此时目录结构是这样 •redis-benchmark redis性能测试工具 •redis-check-aof AOF文件修复工具 •redis-check-rdb...RDB文件修复工具 •redis-cli redis命令行客户端 •redis.conf redis配置文件 •redis-sentinal redis集群管理工具 •redis-server redis...适用 ps aux|grep redis #查看redis进程是否存在 方法二: centos 7以上是用Systemd进行系统初始化Systemd 是 Linux 系统中最新初始化系统(init...Systemd服务文件以.service结尾,比如现在要建立redis为开机启动,如果用yum install命令安装,yum命令会自动创建redis.service文件,直接用命令systemcel...enable redis.service设置开机启动即可  1.在系统服务目录里创建redis.service文件 vim /etc/systemd/system/redis.service 写入以下内容

    91710

    第十五章 系统服务管理

    其实,系统开机级别文件,与服务文件存放位置相同,也存放在/usr/lib/systemd/system/目录下,后缀大多以.target结尾。...其实无论图形字符界面,它开机服务管理都统一在/etc/systemd/system/multi-user.target.wants/目录中做设置,该目录中也都是一些软链接,指向/usr/lib/systemd.../system/目录各个服务文件,即只要是有软链接指向服务,就是开机自启服务没有软链接指向服务,开机就会关闭。...图中可见软链接atd.service指向,正是指向atd服务文件,当我们把atd设置为开机关闭状态时,再查看目录下就没有atd软链接了。...,如有故障硬件,则会报警无法开机,如:内存故障会黑屏或有滴滴响叫。

    1.8K51

    5分钟看懂微服务架构下Consul 特性及搭建

    这在故障情况下可用性和性能之间取得了平衡,因为随着添加更多机器,一致性会逐渐变慢。但是,客户端数量没有限制,可以很容易地扩展到数千数万。...这样做有几个目的:首先,不需要使用服务地址来配置客户端;服务发现是自动完成。其次,健康检查故障工作不是放在服务器上,而是分布式。这使得故障检测比单纯心跳模式更具可伸缩性。...拷贝到usr目录下 我这里事先在usr目录中单独创建了service 文件,可以通过mkdir 命令来完成,不过不一定要安装在这个目录下面,我这里就选择安装在usr目录里 mv consul /usr/...创建启动脚本 我们再service 目录中创建Consul开机自启动脚本文件consul.start.sh #!...=exited, status=203/EXEC异常错误信息,这个信息一般有如下几个原因造成: 错误脚本路径 脚本权限无效 服务用户没有读取脚本权限 脚本未标记为可执行 根据上面三种情况去排查解决

    1.1K20

    linux基础命令介绍十五:推陈出新

    Journal服务配置文件是/etc/systemd/journald.conf,在默认配置中,Journal日志保存在目录/run/log/journal内(tmpfs内存文件系统),系统重启将不会保留...centos7 systemd[1]: ping252.service: main process exited, code=exited, status=203/EXEC 12月 23 14:28:...不推荐在目录/usr/lib/firewalld中直接修改配置文件,最好是在/usr/lib/firewalld中复制一份配置文件到/etc/firewalld相应目录中,然后进行修改。...这样,在恢复默认配置时,直接删除/etc/firewalld中文件即可。 firewalld中引入了两个概念:service(服务)和zone(区域)。...service通用配置文件(位于目录/usr/lib/firewalld/services内)中定义了服务与端口映射,firewalld在使用时可以直接引用服务名而不是像iptables那样引用端口号

    1.3K20

    Linux项目开发,你必须了解Systemd服务!

    Systemd默认从目录/etc/systemd/system/读取配置文件,但是里面存放大部分文件都是符号链接,指向目录/lib/systemd/system,配置文件存放于/lib/systemd...它主要字段如下:WantedBy:它值是一个多个Target,当前Unit激活时(enable)符号链接会放入/etc/systemd/system目录下面以Target名+.wants后缀构成目录中...RequiredBy:它值是一个多个Target,当前Unit激活时,符号链接会放入/etc/systemd/system目录下面以Target 名 + .required后缀构成目录中Alias...由socker触发服务对应于 systemd 配置文件要有两个,后缀分别是.socket与.service ,除后缀外文件名要相同,这样就能自动关联,例如名为hello-world-socket服务...服务异常重运行为了确保服务在遭遇故障时能够自动重启。在Systemd服务单元文件中,Restart指令是控制服务重启行为核心设置。

    14610
    领券