问题标签 [lsof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
25754 浏览

linux - “lsof”将文件显示为(已删除),但我仍然可以在文件系统中看到它

在 Linux 2.6.27 中:

从“lsof”输出中,我看到一个进程持有一个(已删除)文件的打开 fd。奇怪的是我仍然可以使用“ls”在文件系统中看到该文件。这是为什么?

谢谢。

0 投票
2 回答
25475 浏览

linux - 在 Linux 中为特定用户运行的每个进程有多少打开文件

在 Linux 上运行 Apache 和 Jboss,有时我的服务器会意外停止,说问题是打开的文件太多。

我知道我们可能会在/etc/security/limits.conf为nprocnofile设置更高的限制来解决打开文件的问题,但我正在努力获得更好的输出,例如使用watch来实时监控它们。

使用这个命令行,我可以看到每个 PID 有多少打开的文件:

输出(第 1 列是用户 apache 的打开文件数):

如果我可以添加 watch 命令就足够了,但是下面的代码不起作用:

0 投票
2 回答
1621 浏览

macos - xargs 不适用于 lsof

当我运行时pgrep vim | xargs echo,它会打印93868 91234

当我运行时lsof -p 91234,它会打印:

那为什么

打印

我在 Mac OS 上运行。

0 投票
0 回答
1331 浏览

macos - 为什么 lsof 在 Mac 上将内存映射文件的文件描述符报告为 txt 而不是 mem?

lsof test在 Mac OS X 上运行时,我得到以下输出,其中test是内存映射文件的名称:

请注意,txtFD字段中报告。但是,根据以下文档lsof

那么问题来了:为什么是lsof报告txt而不是mem现场FD呢?

该文件映射如下:

其中length是长度,fd是文件的描述符。

0 投票
1 回答
1295 浏览

python - 恢复已删除但正在运行 python 脚本

python a.script在 linux 机器上运行 python 脚本(我从 /proc 知道所有关于它的进程信息),但我不小心运行了“rm a.script”,如何恢复脚本?我发现这个 如何确定进程二进制文件的路径?,但我只找到了python解释器。lsof 怎么样,但我不知道从什么开始。

0 投票
3 回答
5034 浏览

file - 为什么 lsof 报告的打开文件数高于 ulimit 的“打开文件”输出

Tomcat在我的工作站上运行了几天,现在没有响应,lsof命令输出很多close_wait状态连接,tomcat pid是25422,但是ulimit命令显示“打开文件”是1024,怎么会这样?

0 投票
1 回答
471 浏览

ubuntu - 当我在 cgi 中运行和回显 lsof 时没有显示输出 - Ubuntu

我最近开始使用 cgi。由于我必须显示某些端口的端口使用信息,我编写了以下代码:

方法1:这里的问题是echo "<pre> $(lsof -i :80) </pre>"没有给出任何输出。

方法 2:在此方法echo "$(lsof -i :80 > /home/shine/Desktop/tmp.txt)"中,永远不会在桌面上创建名为 tmp.txt 的文件,因为它应该这样做。

重要提示:上面指定的两种方法一旦在终端中执行就可以完美运行。

0 投票
1 回答
14034 浏览

python - 在 Linux 中使用 Python 检查打开的文件

我正在寻找一种方法来确定使用 Python 在我的整个系统(Linux)中打开了哪些文件。我找不到任何这样做的模块。

或者也许唯一的方法是使用命令 lsof?

0 投票
1 回答
1565 浏览

linux - Change the of the output in lsof in linux

I would like to obtain different result with lsof, I mean just want to show some columns, is it possible?

0 投票
1 回答
1040 浏览

bash - 使用 bash 和 watch 监控 qemu-kvm

我正在尝试qemu-kvm使用 bash 脚本监视一些进程并watch显示一些详细信息,例如内存/cpu 使用、资源、端口等。一切都很顺利,直到我尝试获取 qemu-kvm 正在使用的 IMG 文件。

最初我以为我可以从正在运行的进程 cmd 中获取该信息:

因此,经过大量测试后,我编写了这个小脚本来综合问题:

当我从命令行执行此脚本时,它的输出看起来完全正常:

当我尝试与 watch 一起运行脚本时,问题就来了:

watch -n1 "bash test-script"或者watch -n1 ./test-script

输出只是空的......

为什么我没有任何结果?如果有人可以帮助我理解这一点,我会很高兴。

编辑:我找到了替代解决方案。我现在通过使用一些数组解析 procfs 来获取信息以查找 IMG 信息:

这可以很好地与 结合使用watch,但我仍然想知道另一种方法有什么问题。有lsof限制吗??