文件 'containers/app.yml' 不可写

我正在按照此指南在 AWS EC2 实例上安装 Discourse。

已完成所有步骤,除了 ElastiCache(未使用单独的 Redis)。

完成 Discourse 设置后,我需要编辑我的 app.yml 以更改 RDS 和 SMTP 设置。

但系统提示文件 ‘containers/app.yml’ 不可写

有人遇到过这个问题吗?如何解决?

您检查过 app.yml 文件的所有者了吗?

不,如何找到这个?

在命令行中,cd 进入 containers 文件夹,然后输入 ls -l

抱歉,我对 Unix 命令不太了解。你能告诉我应该输入什么完整命令来查看 app.yml 文件的所有者吗?

cd /var/discourse/containers && ls -l

然后

运行 whoami

显示如下:-rw-r–r-- 1 root root 3819 7 月 30 日 10:21 app.yml

运行 whoami
结果是:ubuntu

好的。您当前并非以 root 身份登录,而该文件属于 root 用户。这就是您无法写入该文件的原因。

实际上,在 EC2 上无法直接以 root 身份登录。您当前是以 ubuntu 用户身份登录的。

请输入 sudo su -

好的。其实最初我按照这里给出的命令操作。

刚刚尝试了:sudo nano app.yml

现在我可以进行修改了!

太好了。每次需要修改您的实例时,都请记得执行此操作。