Отказано в праве на редактирование файла в UNIX - PullRequest
0 голосов
/ 11 октября 2011

У меня есть файл, созданный пользователем oracle с разрешением rw-r--r--, а родительская папка имеет разрешение rwxrwsr-x.Теперь есть требование, чтобы пользователь пакета мог редактировать этот файл.Но, как вы видите, файл может редактировать только владелец, то есть пользователь Oracle.

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

Есть ли какое-либо исправление для этой проблемы?

Можем ли мы сделать некоторую конфигурацию в UNIX, чтобы позволить пакетному пользователю редактировать файл, созданный oracle user.

Редактировать: Исправлено разрешение родительской папки.Ранее я упоминал это как rwxrw-r-x

Ответы [ 3 ]

2 голосов
/ 11 октября 2011

Разрешения каталога для 'group' (rw-) необычны (rwx или r-x будет более обычным).

Вы не указываете, к какой группе принадлежит файл, ни к какой группе принадлежит каталог, а также к какой группе (группам) принадлежит пакетный пользователь , но это, вероятно, не имеет значения .

Обновление после изменения указанных разрешений для каталога: Учитывая, что группа может читать файл и создавать файлы в каталоге, то, если ваш пакетный пользователь принадлежит группе, которой принадлежит каталог, пакетный пользователь может сделать копию файла (в редакторе), удалить исходный файл и записать новый файл в каталог.

Поддерживает ли ваша система ACL (списки контроля доступа)? Если это так, то пользователь «оракул» как владелец файла может предоставить пакетному пользователю доступ на чтение и запись к файлу, даже если обычные разрешения Unix не показывают, что это может произойти.

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

Если там ничего не работает, то вы превращаетесь в программы SUID в той или иной форме - например, SUID 'oracle' или SUID 'root'. В комментарии была упомянута одна опция - команда sudo с некоторыми неопределенно подходящими аргументами.

0 голосов
/ 11 октября 2011

Я заметил, что в каталоге установлен бит + s ..... если вы измените владельца каталога на владельца пакета, владелец всех вновь создаваемых файлов должен принадлежать этому пользователю, и тогда вы сможете делать с ними все, что хотите *

0 голосов
/ 11 октября 2011

Если ваш пакетный пользователь находится в той же группе, что и пользователь oracle, вы можете сделать это:

chmod g+w filename

Это должно сделать файл доступным для записи для группы.

Запустите команду UNIX groups, чтобы определить, в какие группы входит пользователь, или отметьте /etc/passwd, /etc/group

...