Более нормально ограничивать доступ к ресурсам, необходимым для работы исполняемого файла, чем для принудительного разрешения на уровне исполняемого файла.Например, команда mount(8)
обычно может выполняться любым пользователем, но файлы устройств, необходимые для фактического монтирования реальных томов, ограничены определенными пользователями или группами, и команда монтирования проверяет, выполняет ли операциябыло бы возможно, прежде чем даже попытаться сделать системные вызовы для выполнения операций устройства.
Это работает также с обычными файлами.Например, многим менеджерам пакетов linux требуется база данных установленных программ.Перед установкой чего-либо, менеджер пакетов проверит разрешения для файла базы данных, чтобы увидеть, может ли вызывающий пользователь записать в него, а также проверит целевые каталоги, чтобы увидеть, может ли пользователь изменить их.даже если менеджер пакетов не выполняет эти проверки, они не могут вносить эти изменения при попытке, ядро просто запрещает программе выполнять действие, которое не разрешено выполнять владельцу.