0

我已经设置了一台 ec2 机器来运行一个应用程序。为了使我的部署脚本正常工作,我需要我的部署用户 (ec2-user) 对某些目录具有写入权限。我不精通 linux/unix 命令。我正在寻找使用 Google 的方法。

所以有问题的目录是/home/ec2-user/uc_social_server/releases。该目录是由 Capistrano 脚本创建的,无论出于何种原因,它都使 root 成为发布目录的所有者,即使该脚本是以 ec2 用户身份运行的。ls -l 表明 root 是所有者,并且所有者和组都具有 rwx 访问权限: 在此处输入图像描述

我的脚本失败,因为它试图以 ec2-user 身份写入发布目录但没有权限。

我想如果我创建一个名为 deployers 的组并将 root 和 ec2-user 添加到该组,那么 ec2-user 将拥有该目录的 rwx 权限,因为 ec2-user 将属于与 root 相同的组,并且该组对该目录具有权限是rwx。但这没有用。

那应该有效吗?如果不是为什么(我对组权限的理解可能完全错误)?

我怎样才能让 ec2-user rwx 访问这个导演?

谢谢。

4

2 回答 2

1

Unix 规则 #1) 不要徒劳地使用 root

我建议您只需 sudo 到 root 并将目录的所有者和组更改为您想要的

  • 男主
  • 人 chgrp
于 2013-07-30T20:03:44.850 回答
1

跑:

sudo chown -R ec2-user releases ; sudo chgrp -R ec2-user releases

或者,如果您想保留所有者和组,root则可以尝试运行:

sudo chmod -R o=rwx releases 

阅读精美手册以获取有关chmodchgrpchown的更多信息。

于 2013-07-30T20:03:45.503 回答