代码之家  ›  专栏  ›  技术社区  ›  Kevin

在Windows 10上使用Dell加密软件加密的目录中安装npm失败

  •  3
  • Kevin  · 技术社区  · 6 年前

    我的公司要求使用Dell加密软件。

    最近,目录中保留的Dell Encryption tracker文件导致以下问题: npm install

    Dell Encryption具有 CredDB2.CEF 在跟踪每个加密文件状态的目录中创建的文件。当我 npm install request ,我最终在创建/修改其安装的bin文件的依赖项中出错:

    npm ERR! path C:\project\node_modules\sshpk\bin\CredDB2.CEF
    npm ERR! code ENOENT
    npm ERR! errno -4058
    npm ERR! syscall chmod
    npm ERR! enoent ENOENT: no such file or directory, chmod 'C:\project\node_modules\sshpk\bin\CredDB2.CEF'npm ERR! enoent This is related to npm not being able to find a file.
    npm ERR! enoent
    

    相关详细日志输出为:

    1254 silly build sshpk@1.13.1
    1255 info linkStuff sshpk@1.13.1
    1256 silly linkStuff sshpk@1.13.1 has C:\project\node_modules as its parent node_modules
    1257 verbose linkBins sshpk@1.13.1
    1258 verbose linkBins [ { 'CredDB2.CEF': 'bin/CredDB2.CEF',
    1258 verbose linkBins     'sshpk-conv': 'bin/sshpk-conv',
    1258 verbose linkBins     'sshpk-sign': 'bin/sshpk-sign',
    1258 verbose linkBins     'sshpk-verify': 'bin/sshpk-verify' },
    1258 verbose linkBins   'C:\\project\\node_modules\\.bin',
    1258 verbose linkBins   false ]
    

    Dell Encryption创建 CredDB2。CEF公司 文件作为加密状态的元数据,但是,在这种情况下创建的文件对典型的文件资源管理器是隐藏的(即使启用了显示隐藏文件),并且无法由使用文件完整路径的应用程序打开。

    我怀疑它可能是在一个勾号中以未隐藏的方式创建的,然后实际上隐藏在另一个勾号中。同时,bin的安装必须在bin目录上执行glob,其中包括 CredDB2。CEF公司 文件,然后稍后执行 chmod Dell Encryption隐藏文件后,会导致错误。

    我不确定这是否是一个应该向Dell、NPM或导致错误的NPM软件包上报的错误。

    我已经能够在两台计算机上再现错误,尽管不一致。我怀疑不一致的复制是由于 CredDB.CEF 创建/隐藏文件。

    如果我将项目安装在Dell加密软件明确标记为不加密的目录中,则一切正常。但从安全角度来看,这不是一个可接受的答案。

    npm中是否有忽略CEF文件或忽略这些特定错误的选项?

    是否有其他可以使用的解决方法?

    2 回复  |  直到 6 年前
        1
  •  1
  •   Jason Singh    5 年前

    按照本节中的建议,将Dell Encryption升级至版本10.0.0.12、A31或更高版本 support article 。这将解决CredDB。使用节点和“npm安装”时看到的CEF文件错误消息。

    可以找到最新的Dell加密驱动程序 here

        2
  •  1
  •   Prateek Gulati    5 年前

    我也面临同样的问题。 笔记本电脑中预装了Dell Encryption Tool,在windows更新后,它开始表现不正常。在跟踪加密日志时,了解到屏蔽服务未在端点上正确启动:

    [03.12.19 13:40:57:329       NTUtils.cpp: 1555 E] [SUPPORT] [E] The Shield service is not running!  Attempting to restart. Current service state = 1
    

    升级Dell Encryption解决了该问题。