首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mdcheck_start服务启动失败

mdcheck_start服务启动失败
EN

Unix & Linux用户
提问于 2020-05-03 13:43:34
回答 2查看 2K关注 0票数 3

我有一台全新的Ubuntu20.04机器,它使用mdadm RAID5配置(3x10TB)。每次登录时,系统都会抛出一个错误。我可以从systemctl中看到mdcheck_start服务失败了。

通过检查服务状态,我还可以看到守护进程正在尝试启动一个不存在的脚本。此脚本未与Ubuntu或任何mdadm包一起安装。

代码语言:javascript
运行
复制
systemctl status mdcheck_start.service
● mdcheck_start.service - MD array scrubbing
     Loaded: loaded (/lib/systemd/system/mdcheck_start.service; static; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sun 2020-05-03 09:18:05 EDT; 5min ago
TriggeredBy: ● mdcheck_start.timer
    Process: 196602 ExecStart=/usr/share/mdadm/mdcheck --duration $MDADM_CHECK_DURATION (code=exited, status=203/EXEC)
   Main PID: 196602 (code=exited, status=203/EXEC)

May 03 09:18:05 BAILEYFS02 systemd[1]: Starting MD array scrubbing...
May 03 09:18:05 BAILEYFS02 systemd[196602]: mdcheck_start.service: Failed to execute command: No such file or directory
May 03 09:18:05 BAILEYFS02 systemd[196602]: mdcheck_start.service: Failed at step EXEC spawning /usr/share/mdadm/mdcheck: No such file or directory
May 03 09:18:05 BAILEYFS02 systemd[1]: mdcheck_start.service: Main process exited, code=exited, status=203/EXEC
May 03 09:18:05 BAILEYFS02 systemd[1]: mdcheck_start.service: Failed with result 'exit-code'.
May 03 09:18:05 BAILEYFS02 systemd[1]: Failed to start MD array scrubbing.

这是一个合法的错误吗?

我是否可以安全地禁用此服务,以便每次登录时停止获取这些恼人的错误?难道mdadm不应该定期清理我的数组以确保它正常工作吗?

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2020-05-03 15:05:03

这似乎是Ubuntu20.04‘S mdadm包中的一个bug。mdcheck脚本完全丢失,因此计时器/服务无法执行它。

安装mdadm时,它还会激活mdcheck_start计时器和服务。

代码语言:javascript
运行
复制
# apt-get install mdadm
[...]
Setting up mdadm (4.1-5ubuntu1) ...
Generating mdadm.conf... done.
update-initramfs: deferring update (trigger activated)
Created symlink /etc/systemd/system/mdmonitor.service.wants/mdcheck_start.timer → /lib/systemd/system/mdcheck_start.timer.
Created symlink /etc/systemd/system/mdmonitor.service.wants/mdmonitor-oneshot.timer → /lib/systemd/system/mdmonitor-oneshot.timer.
mdcheck_continue.timer is a disabled or a static unit, not starting it.
[...]

然后,mdcheck_start服务应该运行mdcheck脚本:

代码语言:javascript
运行
复制
[Service]
Type=oneshot
Environment=MDADM_CHECK_DURATION='"6 hours"'
ExecStart=/usr/share/mdadm/mdcheck --duration $MDADM_CHECK_DURATION

然而..。/usr/share/mdadm/mdcheck实际上根本不存在,所以它无法工作。

代码语言:javascript
运行
复制
# ls -l /usr/share/mdadm/
total 12
-rwxr-xr-x 1 root root 6475 Jan 23 19:41 checkarray
-rwxr-xr-x 1 root root 2637 Jan 23 19:41 mkconf

搜索这个文件的packages.ubuntu.com也不会产生任何结果。

所以,要么Ubuntu忘记包含mdcheck脚本,要么他们打算删除它,也忘记删除对它的systemd定时器/服务引用。

如果有兴趣的话,我想你可以在这里抓取文件:https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/tree/misc/mdcheck

我发现了一个从2020年1月开始的bug报告,https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/1858342,但是这个bug似乎还没有分配给任何人。

难道mdadm不应该定期清理我的数组以确保它正常工作吗?

如果在Ubuntu20.04中有什么可以做到的,那么我就找不到了。

安装了一个校验数组脚本,但是没有定时器或cron作业来调用它。

所以我不认为它现在会进行任何自动检查。

票数 4
EN

Unix & Linux用户

发布于 2022-06-30 10:52:03

tl;apt install mdadm博士

错误是在4.1-5ubuntu1.1中修复的:

mdadm (4.1-5 ubuntu1.1)焦点;urgency=medium

  • d/rules:安装misc/mdcheck (LP:#1852747)
    • 缺少mdcheck实用程序会阻止mdcheck_continue.service & mdcheck_start.service在服务通过ExecStart启动时执行命令。(关闭:#960132)

Debian changelog

mdadm (4.1-6)不稳定;urgency=medium

  • 安装misc/mdcheck;谢谢Richard Laager。(关闭:#960132)

Ubuntu错误报告

Debian错误报告

萨尔萨承诺

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/584199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档