Почему путь к бину logrotate /usr/sbin в Debian (по крайней мере, «wheezy») знает, что мы можем использовать его без привилегий root?
2 ответа
Путь для logrotate скорее всего находится в /usr/sbin , поскольку это утилита системного администрирования, которая обычно выполняется после монтирования всех файловых систем.
logrotate(8) - справочная страница по Linux
logrotate предназначен для упрощения администрирования систем, которые генерируют большое количество файлов журналов.
Linux Foundation - Стандарт иерархии файловой системы - /sbin Системные двоичные файлы
Утилиты, используемые для системного администрирования (и другие команды только для root), хранятся в
/sbin,/usr/sbinи/usr/local/sbin./sbinсодержит двоичные файлы, необходимые для загрузки, восстановления, восстановления и / или восстановления системы в дополнение к двоичным файлам в / bin. Программы, запускаемые после того, как/usrкак известно, смонтированы (когда проблем нет), обычно помещаются в/usr/sbin.
Примечание: многие утилиты в каталогах sbin могут использоваться обычными пользователями. Любой пользователь может запустить ifconfig для получения информации об активных сетевых интерфейсах. Конечно, использование ifconfig для изменения настроек сетевого интерфейса потребует дополнительных разрешений.
Пользовательский процесс может использовать logrotate в /usr /sbin, но только для своих собственных журналов. Root запускает logrotate из cron, чтобы сделать это для всех пользователей. Кусочек suid на нем удобен, но менее безопасен.
