Разрешения файловой системы при разработке на разных машинах

Я установил стек xampp (apache + mysql + php) на переносной том (том truecrypt на USB-диске), который я использую на разных компьютерах Linux для разработки веб-приложений.

Этот том отформатирован в ext3, поэтому у меня возникают проблемы с разрешениями, так как я не могу быть одним и тем же пользователем на каждой машине. Например, я попытался проверить состояние git проекта, запущенного на другом компьютере, и доступ запрещен.

В прошлый раз, когда я столкнулся с подобной проблемой, я выполнил chmod 777 (или он был chown?) Для всего каталога, так что я полагаю, что статус разрешений моих файлов php грязный. На этот раз меня также беспокоят особые случаи, такие как git-файлы и веб-фреймворк Symfony, который я недавно установил.

Как мне справиться с этой ситуацией? Я хотел бы установить эту проблему разрешения правильно.

Большое спасибо за ваше внимание.


Редактировать: мне может понадобиться написать скрипт для локального "sudo chown lampp: lamppusers" каждый раз, когда я использую другую машину. Или какой-нибудь трюк с вуду при экспорте из локальных репозиториев? Любая идея?

2 ответа

Решение

Похоже, это лучшее решение, которое я нашел:

sudo chown -R polypheme:lamppusers webdir

Таким образом, я снова могу владеть всем каталогом с моим локальным именем пользователя и локальной группой.

  • полифема это имя пользователя
  • lamppusers это имя группы
  • webdir - это каталог, содержащий все мои файлы веб-разработки

Обратите внимание, что на компьютере 1 мое имя пользователя - полифема, и я принадлежу к группе lamppusers, а на компьютере 2 мое имя пользователя - полифема, и я принадлежу к группе lamppusers. Имена пользователей и группы абсолютно совпадают. Я не уверен на 100%, что это сработало бы отлично, если бы имена оказались разными.

Я не модифицировал ни один chmod, что хорошо, так как проблема намного сложнее, чем просто сглаживание каждого разрешения файла глобальным

chmod -R 744 webdir  

Было бы неправильно делать защищенные файлы в среде Symfony. И.git / files тоже наверное. (gbjbaanb был прав об этом)

На этом этапе я восстановил ту же конфигурацию, что и на другой машине, и это то, что я искал. Я снова могу работать.

Зная это, мой вопрос внезапно кажется глупым. Ну, мультикомпьютерный контекст делает его достаточно хитрым, чтобы быть ценным. (Для меня по крайней мере)

(Этот ответ будет подтвержден, как только он будет должным образом проверен)

Я сомневаюсь, что есть способ обойти это - вы могли бы попробовать использовать ACL SELinux вместо обычного разрешения, но я думаю, что это было бы излишним для вас.

Я бы посоветовал просто установить для всего каталога значение 777 с помощью chmod (chown изменения владельца), так как пользователь и группа, в которой находится каждый пользователь, будут отличаться на каждой машине, вы не сможете добиться большего успеха. Ваша единственная проблема здесь - это безопасность, но, поскольку она находится в вашем локальном ящике для ваших собственных целей, я не вижу проблемы. Нет, пока вы не скопируете файлы на сервер, после чего вам лучше всего их правильно восстановить.

Вы можете попробовать аутентификацию на сервере LDAP, вы получите uid для имени пользователя, которое вы вводите, и это будет сопоставлено с одним и тем же uid на каждом ПК, так что вы сможете один раз установить группу или владельца. (Я думаю, вам нужно спросить кого-то более опытного в отображениях LDAP ud).

Другие вопросы по тегам