我正在使用 ubuntu 14.10。
我刚刚安装了 systemd 但有一个服务出现故障proc-sys-fs-binfmt_misc.automount
。
我在这里看到它是systemd
:
这个文件重要吗?我该如何解决激活问题?
输出systemctl status
:
svassaux@vps127101:~$ systemctl status
proc-sys-fs-binfmt_misc.automount -> '/org/freedesktop/systemd1/unit/proc_2dsys_2dfs_2dbinfmt_5fmisc_2eautomount'
proc-sys-fs-binfmt_misc.automount - Arbitrary Executable File Formats File System Automount Point
Loaded: loaded (/lib/systemd/system/proc-sys-fs-binfmt_misc.automount; static)
Active: failed (Result: resources)
Where: /proc/sys/fs/binfmt_misc
Docs: https://www.kernel.org/doc/Documentation/binfmt_misc.txt
http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
编辑:我的单位文件:
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Arbitrary Executable File Formats File System Automount Point
Documentation=https://www.kernel.org/doc/Documentation/binfmt_misc.txt
Documentation=http://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
DefaultDependencies=no
Before=sysinit.target
ConditionPathExists=/proc/sys/fs/binfmt_misc/
ConditionPathIsReadWrite=/proc/sys/
[Automount]
Where=/proc/sys/fs/binfmt_misc
答案1
binfmt_misc 机制用于注册“特殊”二进制格式的处理程序,以使内核能够直接执行此类文件。就像使用 /lib*/ld-linux*.so.2 执行普通 ELF 二进制文件以及使用其第一个“shebang”行执行各种脚本一样,可以通过告诉内核如何识别格式以及运行什么来使任何其他文件格式成为可执行文件。binfmt_misc 机制最常见的用户可能是 WINE,它需要它来使用“./program.exe”运行 Windows 可执行文件。
因此,除非您使用 WINE 的这一功能,否则我猜即使 binfmt_misc 机制不起作用,您的系统也能正常工作。
至于为什么在您的系统上激活自动挂载单元失败,如果不检查系统日志(至少),就无法知道。自动挂载单元非常轻量,因此不太可能失败。我猜您的问题可能与系统上的一些非标准安全或资源限制设置有关。
您可以使用 仔细查看故障单元journalctl _SYSTEMD_UNIT=proc-sys-fs-binfmt_misc.automount
。如果这没有帮助,请尝试journalctl -b
,找到单元启动失败的位置,并查看可能相关的任何错误。