Невозможно получить доступ к папке через полномочия группы

Вы всегда можете искать через файл в другом Способы ...

seq 10000000 >f
{ wc -l >&2; echo new line\!; } <>f >&0; \
{ wc -l >&2; echo new line\!; } <>f >&0; \
{ wc -l >&2; echo new line\!; } <>f >&0; \
{ wc -l >&2; echo new line\!; } <>f >&0; \
{ wc -l >&2; echo new line\!; } <>f >&0; \
wc -l f; tail f

... Это странно выглядящая последовательность печати:

10000000
10000001
10000002
10000003
10000004
10000005 f
9999996
9999997
9999998
9999999
10000000
new line!
new line!
new line!
new line!
new line!

, но это вроде глупо.

Более полезный пример может выглядеть следующим образом:

 apnd() if    shift
        then  wc -l  >&2
              printf "$@"
        fi    <>"$1" >&0

Вы можете назвать это как:

 apnd /path/to/file          \
      "${printf_fmt_string}" \
       arbitrary list of strings

, и вы вынудите с количеством файла строк, написанные на STDERR Незадолго до того, как произойдет действие Append.

0
28.03.2014, 00:20
2 ответа
[114364] Возможно, это очевидный вопрос, но... изменили ли вы также права доступа к файлам внутри каталога? Другими словами, использовал ли Вы флаг "-r" (рекурсивный) при выдаче команд chown/chmod?[114365].
1
28.01.2020, 02:37
[116305]Может быть, это и не ответ (так как в сообщении недостаточно информации), но я могу исправить его при необходимости. При проведении учебных курсов linux я разработал способ быстро найти проблему с разрешением. Я знаю, что вы уже выполнили некоторые шаги, но мне нужно записать их полностью для полноты.

Переключитесь на пользователя, которого хотите использовать для доступа. Сделайте это, прежде чем делать что-либо еще.

Используйте команду [116847]id[116848] для проверки вашего текущего UID и групп. Используйте [116849]id имя пользователя[116850] для проверки конфигурации на диске. Выйдите из системы и снова войдите в систему, если они отличаются, и проверьте еще раз.

Используйте 'ls -l' для проверки целевого каталога. Не забудьте проверить символ сразу после прав доступа. Может быть точка, означающая selinux-контекст, или знак плюс, означающий, что установлены ACL linux.

Используйте 'cd' для входа в каталог.


Выполните необходимые действия с обычными файлами. Используйте [116851]touch[116852] для проверки доступа на запись, [116853]cat[116854] для проверки доступа на чтение.

Проверьте, работает ли все так, как ожидается на уровне приложения (например, используйте браузер для доступа к URL, который должен привести к соответствующему действию, используйте любимый инструмент редактирования, который ранее не работал и т.д.)

Добавьте любую из вышеперечисленных проверок на уровень приложения.

Если какое-либо из действий дает сбой, и вы понятия не имеете почему, проверьте журналы на наличие предупреждений selinux или подобных им. Вы также можете попробовать подготовить [116640]strace.log -o strace.log[116641] к командной строке, а затем проверить strace.log на наличие сообщений [116642]permission denied[116643]. Но это все черная магия, пока вы не узнаете точную причину разрешения [116644] denied[116645].[116310].

1
28.01.2020, 02:37

Теги

Похожие вопросы