当我尝试使用新附加的卷将文件直接上传到 Elastic beanstalk 上的 Django 应用程序时,出现“权限被拒绝”错误

问题描述

我最近将 django 应用程序部署到 AWS 弹性 beantalk。我已使用 boto3 将我的视频存储到 s3 存储桶。但是我需要先转换本地存储上的视频文件,然后再将其存储在 S3 上。我使用 moviepy 和 ffmpeg 来转换视频。但是当我尝试上传文件时,出现错误 “[errno 32] 断管moviepy 错误:ffmpeg 在写入文件/home/ec2-user/mount_point/u3files/temp_files/21editedtemp_mpy_wvf_snd.mp3 时遇到以下错误:/home/ec2-user/mount_point/u3files/temp_files/21editedfv_mpsnd_ mp3:权限被拒绝”。

我已经在卷的根文件夹和本地存储中的“u3files”文件夹上设置了 chmod 777。有什么我想念的吗?我该如何解决这个问题?我是 AWS beanstalk 的新手,任何帮助将不胜感激。谢谢。

解决方法

修复了它。只是发布我所做的以防万一其他人遇到同样的问题。

我使用 ssh 更改了我想存储文件的文件夹的权限。显然 ssh 使用不同的用户(ec2-user)登录。但是该应用程序由不同的用户(webapp)运行。所以我所要做的就是,

sudo su

切换到 root 然后切换到 webapp 用户的主目录,添加然后添加一个我想要存储文件的新文件夹并更改该文件夹的权限以启用该用户(webapp)的写入。然后就解决了。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...