convert.im6:无法打开图像“xxx”:权限被拒绝 @ error/blob.c/OpenBlob/2638

Bra*_*lor 0 permissions command-line pdf conversion

我只是尝试在终端中使用“convert”命令将几个不同的图像转换为 PDF 文件,但是当我这样做时,它返回:

convert.im6: Unable to open image 'xxx.pdf': Permission denied @ error/blob.c/OpenBlob/2638

其中 'xxx.pdf' 代表我的输出 PDF 文件名。当然,如果我以 root 身份执行sudo convert此操作——也就是说,操作将顺利进行。所以我的问题,因为我知道你们中的一些人可能会说我不考虑sudo采取行动是个白痴,是:为什么该convert命令仅适用于 root 而不是普通用户?有什么办法可以改变吗?

Oli*_*Oli 5

你的建议不正确。转换适用于所有用户。

如果您正在转换PDF 并且看到Unable to open image 'xxx.pdf',则该程序已尝试打开xxx.pdf以进行写入并已被内核拒绝,因为当前用户无法写入该文件。有几个原因:

  • 当前$USER无法写入当前目录。尝试touch testfile,如果失败,请查看目录权限stat .。要修复,请转到您可以写入的目录,更改目录的权限以允许 $USER 写入或更改您的用户(例如将其添加到正确的组)以允许其写入。

    在此之上有各种 ACL 选项,但很可能您只是在根控制的目录中,在这种情况下,只需转到其他地方即可。

  • 已经有一个文件被调用xxx.pdf,它归其他人所有,$USER并且没有写权限。要么sudo chown $USER: xxx.pdf(这:不是错字),将其删除并从您的$USER.

这两者可能同时成立。