Добавить разрешения на чтение для всех каталогов пути

Добавить разрешения на чтение для всех каталогов пути

Я хочу добавить (не изменять другие разрешения файлов) для всех каталогов в пути, указанном ниже. Что-то вродеchmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/

Путь

/home/mDB/admin/KNUCKLES/dbs/

Я пробую использовать эту команду, которую нашел на форуме, но она у меня не работает.

chmod +r /home/mDB/admin/KNUCKLES/dbs/ -R

Я хочу изменить разрешения только для всех пользователей, а не для владельца файла/каталога или групп.

Заранее спасибо.

решение1

Ты можешь сказать:

chmod -R o+r /home/mDB/admin/KNUCKLES/dbs/

Это дало бычитатьразрешение рекурсивнодругие, т.е. не владелец/группа.

EDIT: Согласно вашему комментарию, похоже, что проблема в разрешениях для каталогов, а не для файлов. Можно сказать:

chmod o+rx /home/mDB/{admin,admin/KNUCKLES,admin/KNUCKLES/dbs}

Обратите внимание, что поскольку это каталоги, вам необходимо установить xбит выполнения. Без этого rне будет никакого смысла!

решение2

Вам придется разделить его и выполнить несколько команд.

chmod -R xx4 /home/
chmod -R xx4 /home/mDB/
chmod -R xx4 /home/mDB/admin/
chmod -R xx4 /home/mDB/admin/KNUCKLES/
chmod -R xx4 /home/mDB/admin/KNUCKLES/dbs/

Кто-то с более продвинутыми познаниями в командной строке, чем я, может знать более короткий путь.

решение3

Чтобы установить бит выполнения только для каталогов, выполните следующие действия:

chmod -R a+X dir

Из man chmod:

выполнять/искать только если файл является каталогом или уже имеет разрешение на выполнение для какого-либо пользователя (X)

Ответ от:https://unix.stackexchange.com/questions/39761/execute-bit-on-directories-but-not-files

Связанный контент