Почему путь к бину 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 на нем удобен, но менее безопасен.