У меня есть пользователь ftpadmin:
-bash-3.2$ id ftpadmin
uid=10001(ftpadmin) gid=2525(fsg) groups=2525(fsg),10005(git)
Важная группа, которую нужно отметить, это "мерзавец"
Тогда у меня есть мой репозиторий:
ls -al
drwxrwxr-x 7 git git 4096 Apr 20 14:17 fsg
Итак, ftpadmin является участником git, и git предоставил все разрешения людям в группе. Почему я вижу это, когда я вхожу как ftpadmin:
-bash-3.2$ ls -al /home/git/
ls: /home/git/fsg: Permission denied
...
Похоже, у меня должно быть разрешение ...
Обновление Разрешения на / home / git
drwxrw-rw- 6 git git 4096 Apr 26 09:20 git
все еще выглядит хорошо ...
Обновление Новые разрешения для / home / git:
drwxrwxrw- 6 git git 4096 Apr 26 09:20 git
Разрешения на / home / git / fsg:
drwxrwxr-x 7 git git 4096 Apr 20 14:17 fsg
Тем не менее, я все еще получаю
ls: /home/git/fsg: Permission denied
ls: /home/git/fsg: Permission denied
linux
permissions
Тони
источник
источник
/home/git
?drwxrwxr-x
если вы хотите, чтобы он был доступен только для чтения для не членов группы, но мог быть изменен членами группы; должно быть,drwxrwx---
если вы хотите, чтобы в нем были только члены группы.Ответы:
Хотел дать mpez0 +1 специально для его ответа "Вам нужен бит x" группы, установленный в каталоге, чтобы разрешить групповой поиск. Разрешения "rw-" позволяют открывать файл с его именем (r) или создавать файл (w), но не перечислять или искать файлы (x). "
Его так легко забыть, и его решение похоронено посередине. Это определенно проблема для новых пользователей Linux в отношении прав доступа к файлам / каталогам для пользователей и групп.
Все, что сказал Эвери, было правильно на деньгах, опять же, хотелось бы, чтобы я тоже дал тебе +1.
Рисунок еще один более подробный пример может помочь новым пользователям Linux ( не ища кредит, просто предоставив другой пример для ясности ). На моем собственном компьютере я хотел создать дополнительного пользователя для конкретного проекта разработки. Тестировал некоторые проблемы SSH, SFTP между моей машиной и совмещенным сервером в сети. Получена та же самая ошибка «Отказано в доступе» после настройки всего ... и да, она выглядела правильно, за исключением проблемы поиска, основанной на разрешениях для других, на которые указал mpez0.
Примечание. Для новых пользователей Linux разрешения: пользователь, группа, другое или rwx, rwx, rwx, соответственно, выглядят следующим образом.
Для «другого» нам напоминают, что его НЕ достаточно для поиска / поиска каталога, таким образом, появляется сообщение об ошибке.
Вот что я сделал (столкнулся с сообщением об ошибке на шаге 6)
1) создал пользователя hoiuser (для просмотра информации о пользователе вы можете использовать finger cmd, finger hoiuser или прочитать файл cat / etc / passwd)
2) создал группу hoidevs (добавил пользователя "hoiuser" в группу)
Помните, что вам необходимо выйти и войти снова, чтобы новые «групповые» разрешения были связаны с идентификатором учетной записи.
3) chgrp hoidevs для каталога / home / userz / data / Sites / hoi и создал место для файлов
4) Открыл окно терминала, пользователь userz был активен
5) su - hoiuser (переключен на пользователя hoiuser)
6) Попытка CD / home / userz / data / Сайты
7) Изменены разрешения для Сайтов
И вуаля проблема исправлена .... вот доказательство
Даже нам, опытным пользователям Linux / Unix, время от времени нужно напоминание.
Как было указано, недостаточно просто дать правильные разрешения для каталога, в котором находятся файлы, вам также необходимо убедиться, что все каталоги, ведущие к этому каталогу, имеют правильные разрешения, особенно возможность для «других» «искать» и искать каталог и файлы. Вряд ли интуитивно понятно, когда x означает «выполнить», верно.
Моя структура подкаталога была: / home / userz / data / Sites / hoi / html /
Начиная с дома
Это была моя структура каталогов ДО chmod
Это была моя структура каталогов ПОСЛЕ chmod
Обратите внимание, что единственным изменением были разрешения rx для «other» для каталога «Sites». Надеюсь, что это помогает другим, это было хорошим освежающим напитком для меня.
источник
Вы должны иметь права доступа к каталогу, содержащему файл, чтобы получить к нему файл. Какие разрешения у / home / git? (да, Zoredache, я дал вам +1 за указание на это)
Последующие действия: вам необходимо установить бит выполнения (x) для группы, чтобы эта группа могла войти в каталог. Думайте об этом как о грубом аналоге настройки окна «Каталог перемещений». Без этого доступ будет запрещен для группы. Если вы в отчаянии, вы можете сделать:
Попробуйте следующее и опубликуйте сообщение от каждого:
Каждый из них должен быть доступен
ftpadmin
. Если какой-либо из них не так , то это остановит вас/home/git/fsg
.источник
/home/git
и ,/home/git/fsg
но каковы были результаты для/home
?После изменения групп пользователя X через root-доступ вы должны выйти из системы и войти снова с этим пользователем X, иначе новые группы не будут приняты во внимание
источник
Попробуйте войти снова или запустить
su - ftpadmin
для входа в текущую оболочку. Поскольку группы устанавливаются при входе в систему, возможно, вы просто добавили то или иное в группу, но старые настройки группы все еще используются.источник