Node.js GraphicsMagick+;ImageMagick+;拒绝错误:命令失败:

Node.js GraphicsMagick+;ImageMagick+;拒绝错误:命令失败:,node.js,ubuntu,imagemagick,command-line-interface,graphicsmagick,Node.js,Ubuntu,Imagemagick,Command Line Interface,Graphicsmagick,通用汽车使用的版本是最新的1.9.0 节点版本为0.12.0 gm是用{imageMagick:true}标志初始化的。ImageMagick也会更新。面临这个问题的服务器是Ubuntu 原则上,我认为问题是由用户权限引起的。应用程序在rootuser上运行时工作。但是,在另一个用户safeuser中运行时,会发生错误。它正在尝试进行一系列调整大小等操作,如下所示: gm(imagePath) .resize(size, size) .quality(quality) .

通用汽车使用的版本是最新的1.9.0

节点版本为0.12.0

gm是用{imageMagick:true}标志初始化的。ImageMagick也会更新。面临这个问题的服务器是Ubuntu

原则上,我认为问题是由用户权限引起的。应用程序在
root
user上运行时工作。但是,在另一个用户
safeuser
中运行时,会发生错误。它正在尝试进行一系列调整大小等操作,如下所示:

gm(imagePath)
    .resize(size, size)
    .quality(quality)
    .writeAsync(path + suffix).catch(function(err) { // note #writeAsync is promisification
        throw (err); //don't swallow the error
    });
有很多文档试图解决与访问权限有关的错误。但是,在我的节点实例在
safeuser
上运行的这种情况下,如何授予它对ImageMagick CLI套件的访问权限尚不清楚。而且,
safeuser
能够在文件夹被传送到文件系统时执行文件系统操作。这样就消除了部分怀疑


有什么帮助吗?

错误显然与权限无关

通过在imageMagick上使用GraphicsMagick自己的CLI解决:

var gm = require('gm').subclass({imageMagick: true}); // remove this subclass to use gm's own CLI
var gm=需要('gm')

如何在ubuntu上安装gm:

$ sudo add-apt-repository ppa:dhor/myway

$ sudo apt-get update

$ sudo apt-get install graphicsmagick