2013-07-30 3 views
0

Я установил машину ec2 для запуска приложения. Чтобы сделать мой скрипт развертывания, мне нужен мой пользователь развертывания (ec2-user), чтобы иметь доступ на запись к определенным каталогам. Я не разбираюсь в командах linux/unix. Я использую Google.Linux Group Permissions

Таким образом, данный каталог является/home/ec2-user/uc_social_server/релизы. Каталог был создан сценарием Capistrano и по какой-то причине он укоренил владельца каталога выпусков, даже несмотря на то, что сценарий запускался как пользователь ec2. Ls -l показывает, что корень является владельцем и что оба владельца и группы имеют доступ RWX: enter image description here

Мой сценарий не удается, потому что он пытается записать в каталог релизов как ec2 пользователем, но не имеет разрешение.

Я решил, что если я создам группу под названием развертыватели и добавит в эту группу как пользователя root, так и ec2-пользователя, то ec2-пользователь будет иметь права rwx для этого каталога, так как ec2-пользователь будет принадлежать к той же группе, что и root, а группа Разрешения для этого каталога - rwx. Но это не сработало.

Должно ли это сработать? Если нет, почему (мое понимание разрешения группы может быть совершенно неверным)?

Как я могу предоставить доступ к этому директору ec2-пользователя rwx?

Спасибо.

ответ

1

пробег:

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

или если вы хотите, чтобы оставить владельца и группу как root то вы можете попробовать запустить это:

sudo chmod -R o=rwx releases 

Прочитайте хорошую инструкцию для получения дополнительной информации о chmod, chgrp и chown.

+0

не могли бы вы объяснить, что делают эти команды? благодаря! – septerr

+0

'chown' изменяет владельца данного файла. 'sudo' позволяет запускать команды так, как если бы вы были« root ». 'chgrp' изменяет групповое владение данным файлом; 'chmod' изменяет разрешения определенного файла или режим доступа. Передача '-R' этим программам заставляет их действовать рекурсивно, как при рекурсивном изменении разрешений всего каталога. Эти программы ожидают следующих аргументов: 'командные строки swithces (например, '-R')' 'user | group | mode'' file | directory' –

+0

Спасибо! Я должен был прочитать страницы руководства, а не объяснять это. Извините ~ – septerr

1

Unix Правило № 1) Не используйте корень напрасно

Я рекомендовал бы, чтобы вы просто Судо искоренять и изменить владельца и группу каталога, что вы хотите, чтобы это было

  • человек Чаун
  • человек команда chgrp