gpt4 book ai didi

node.js - 安装具有收缩包装的软件包时,NPM 安装在成功退出时不会删除/tmp

转载 作者:太空宇宙 更新时间:2023-11-03 22:41:01 27 4
gpt4 key购买 nike

我正在使用 npm 在 Ubuntu 14.04 服务器上安装一些内部开发的软件包。安装过程中,会在/tmp 下创建一个文件夹。根据docs ,临时文件夹应该在成功退出时被删除,但它没有发生。我已经检查了退出代码,它按预期为零,那么还有什么可能导致此情况呢?它堵塞了我的构建服务器,该服务器当前的可用磁盘空间非常有限 - 我可以通过使用 cronjob 进行清理或添加更多磁盘空间来解决此问题,但我想知道原因!

运行 npm v 1.4.28。

更新:仅当您正在安装的软件包已使用 npm Shrinkwrap 命令进行收缩包装时,才会发生这种情况。已确认为 npm v 1.4.28 和 2.1.10 中的问题。请参阅 GitHub 上的问题.

编辑:我还以详细模式运行安装,它以

结尾
npm verb exit [ 0, true ]
npm info ok

在写入和解压其中的内容方面,输出中多次提及/tmp,但没有明显的尝试清理它。

最佳答案

显然这是 npm 中的一个错误。我提出了一个问题 on GitHub 。仅当您安装收缩包装包时才会发生这种情况。

作为同时的解决方法,我最终只是运行一个 cronjob,通过在/etc/cron.hourly 中创建一个脚本来删除任何超过 10 分钟的文件夹。

#!/bin/bash

# Removes any folder starting with npm- in the /tmp folder.
sudo find /tmp/ -maxdepth 1 -name 'npm-*' -type d -mmin +10 -exec rm -rf {} +

更新

尽管这已被确认为一个错误,但听起来它不会在 npm2 中得到修复,因此您可以选择使用 npm3 或使用上面的脚本等解决方法。如果您使用的是 Windows,则 Github page 上有该脚本的 Powershell 版本。 .

关于node.js - 安装具有收缩包装的软件包时,NPM 安装在成功退出时不会删除/tmp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27226558/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com