AWS Lambda 层中的 AccessDenied 可执行文件 - FFMPEG

AccessDenied executable in AWS Lambda Layer - FFMPEG

我有一个 FFMPEG 可执行文件作为 Lambda 层,使用无服务器框架部署。不幸的是我无法执行它,出现 AccessDenied 和 EACCESS 错误。

我尝试使用 FS-CHMOD 修复它,如下所示:

chmodSync('/opt/ffmpeg/ffmpeg', 0o100);

出现此错误:

Error EROFS: read-only file system, chmod '/opt/ffmpeg/ffmpeg'

我的问题是……现在怎么办?

除了 /tmp 在 Lambda 中您不能写入任何东西 或者 您需要挂载 EFS 文件系统。您将需要更改 ffmpeg 可执行文件的部署位置。

有关安装 EFS 卷的信息,请参阅 this documentation for /tmp or this link

对于 Windows 上的任何人(比如我)以后发现这个 - Lambda 文件权限是在 Lambda 之外设置的,您需要启动 Linux VM(或 Mac) 更改将在 Lambda 上结束的文件上的 CHMOD 内容。