ENOSPC设备-Nodejs上没有剩余空间

Yin*_*nka 13 node.js

我刚刚为一个上传视频教程的机构用expressJs构建了一个应用程序.起初视频正在上传到同一台服务器,但后来我切换到亚马逊.我的意思是只有视频被上传到亚马逊.现在,每当我尝试上传ENOSPC时,我都会收到此错误.我已经清除了tmp文件无济于事.我需要说我已经广泛搜索过这个问题但是没有一个解决方案似乎对我有用

Ren*_*V K 61

只需要清理 Docker 系统即可解决它。为我工作。

$ docker system prune
Run Code Online (Sandbox Code Playgroud)

官方文档链接

  • 我建议使用“docker system prune --all”来释放更多空间 (7认同)
  • 当磁盘上没有足够的可用空间时会发生此错误。如果您使用 Docker 并在同一台机器上构建容器而不使用 docker hub,那么磁盘最终可能会因为您拉取和构建的镜像中的孤立/未使用的容器而变满。所以这个命令只是帮助我们修剪未使用的图像和容器。这样我们就可以释放空间。释放空间后,Node.js 应用程序将有足够的空间运行。 (4认同)

omt*_*t66 35

我遇到了同样的问题,请在这里查看Stackoverflow中的选定答案:

Node.JS错误:ENOSPC

这是我使用的命令(我的操作系统:LinuxMint 18.3 Sylvia,它是基于Ubuntu/Debian的Linux系统).

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Run Code Online (Sandbox Code Playgroud)

  • 在基于 Docker 的环境中,在主机中执行此操作适用于所有容器。 (3认同)

小智 9

我遇到过类似的情况,磁盘空闲但系统无法创建新文件。我永远使用它来运行我的节点应用程序。永远需要打开一个文件来跟踪它正在运行的节点进程。

如果您的系统上有可用的可用存储空间,但不断收到错误消息,例如“设备上没有剩余空间”;您可能会遇到 inode 表中没有足够空间的问题。

使用df -i它给出IUser%这样的

Filesystem       Inodes  IUsed    IFree IUse% Mounted on
udev             992637    537   992100    1% /dev
tmpfs            998601   1023   997578    1% /run
Run Code Online (Sandbox Code Playgroud)

如果您IUser% 到达100%意味着您的“inode 表”已用尽

识别系统中的虚拟文件或不必要的文件并删除它们


aln*_*h29 5

当我的脚本尝试创建新文件时出现此错误。看起来您的磁盘上有很多空间,但是如果磁盘上有数百万个小文件,那么您可能已经用完了所有可用的 inode。运行df -hi以查看有多少空闲的 inode。


小智 5

就我而言,在docker中运行nodeJS时出现错误“ npm WARN tar ENOSPC:设备上没有剩余空间”,我只是在下面的命令中回收了空间。

sudo docker system prune -af
Run Code Online (Sandbox Code Playgroud)

  • a=删除所有未使用的图像,而不仅仅是悬空的图像,f=不提示确认 (5认同)
  • 什么是 -af 标志? (2认同)

vip*_*lrv 5

您可以通过以下方式设置临时新限制:

sudo sysctl fs.inotify.max_user_watches=524288

sudo sysctl -p

如果您想让限制永久存在,请使用:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf

sudo sysctl -p


Xel*_*hin 5

我遇到了同样的问题,如果你还没有清理垃圾,你可以为我工作:

(我从论坛搜索的命令,所以在决定使用它之前先阅读一下它,我是初学者,只是复制它,我不知道它的确切功能的全部范围)

$ rm -rf ~/.local/share/Trash/*
Run Code Online (Sandbox Code Playgroud)

该命令来自该论坛:

https://askubuntu.com/questions/468721/how-can-i-empty-the-trash-using-terminal


Yin*_*nka 4

就我自己的情况来说。实际发生的情况是,当文件上传到亚马逊网络服务时,我没有从临时文件夹中删除文件。每个开发人员都知道,将文件上传到服务器时,它们最初存储在临时文件夹中,然后复制到您想要的任何文件夹(我知道 Nodejs 和 php);因此,请尝试删除您的临时文件夹并查看。并确保您的上传方法在每次上传后立即处理临时文件夹的清除