如何找出哪个设备或资源正忙?

如何找出哪个设备或资源正忙?

我正在寻求解决 Ubuntu 18.04 上与“cgroups”相关问题的建议。

应用程序(Mullvad)给出以下错误journalctl

    [mullvad_daemon][ERROR] Error: Unable to initialize daemon
    Caused by: Unable to initialize split tunneling
    Caused by: Unable to initialize net_cls cgroup instance
    Caused by: EBUSY: Device or resource busy

我想弄清楚为什么net_clscgroup 无法初始化。最大的线索是下一行EBUSY: Device or resource busy。有没有办法确定它指的是哪个设备或资源?这些信息显然是存在的——系统必须知道它试图访问哪个设备或资源。我可以知道它是什么吗?

这基本上是同一个问题这个,这两年的大部分时间都被忽视了。也许在不同的背景下提出一个新的问题会有所帮助。

编辑strace -rf以下是一些可能相关的 输出:

[pid 25845]      0.000071 poll([{fd=45, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=45, revents=POLLOUT}])
[pid 25845]      0.000062 writev(45, [{iov_base="\20\0\3\0\4\0G\0Meta", iov_len=12}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 12
[pid 25845]      0.000088 poll([{fd=45, events=POLLIN}], 1, -1) = 1 ([{fd=45, revents=POLLIN}])
[pid 25845]      0.000061 recvmsg(45, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\177\1\0\0\0\0\246\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid 25845]      0.000081 recvmsg(45, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid 25845]      0.000063 recvmsg(45, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)

输出中有许多这种形式的重复块。 “资源暂时不可用”位让我认为它可能与“未找到设备或资源”有关。

相关内容