psea
написал 13 марта 2009 года в 22:08 (1039 просмотров)
Ведет себя
неопределенно; открыл 1 тему в форуме, оставил 2 комментария на сайте.
Как сделать так чтоб информация о группах из файла /etc/groups попала в ядро.
пример:
-добавляем пользователя в группу с gid 10 в файле /etc/groups при помощи текстового редактора
-смотрим что возвращает функция getgroups(): пользователь несостоит в группе с gid 10
-завершаем сеанс, логинимся снова
-смотрим что возвращает функция getgroups(): пользователь состоит в группе с gid 10
т.е. получается для того чтобы информация о группах пользователя в ядре соответсововала файлу /etc/groups необходимо перелогиниться.
вопрос в следующем как можно программно синхронизировать информацию о группах в ядре и в файле /etc/groups?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Я не программист, могу ошибаться.
Ман по getgroups говорит:
Т.е. возвращаются ID групп процесса, вызвавшего функцию. Процесс наследует группы от запустившего его пользователя. Пользователь получает членство в группах, указанных в /etc/groups, в момент логина в оболочку. Далее, манипуляции с /etc/groups ни на что не влияют до следующего логина. ИМХО, кроме перелогина остаётся только запуск процесса в новой оболочке. Может, su user поможет?..
В этом то и вопрос: можно ли сделать так что бы при изменении /etc/groups менялась информация о состоянии в группах соответствующих процессов. т.е. что бы сразу после изменения файла /etc/groups пользователь получал или лишался соответствующих привилегий (доступ к файлам например)
Нет, так сделать нельзя.
а почему? есть же inotify например.
или все таки можно, просто не реализовано. а может есть какой нибудь патчик.