uadmin - административные действия
#include <sys/uadmin.h>
int uadmin (cmd, fcn, mdep) int cmd, fcn, mdep;
Системный вызов uadmin обеспечивает выполнение базовых административных функций. Он тесно связан с системными администраторскими процедурами и не предназначен для широкого использования. Аргумент mdep введен для реализации машинно-зависимых действий и здесь не описывается.
Эффект работы системного вызова uadmin определяется значением аргумента cmd, которое должно быть одним из следующих:
A_SHUTDOWN Система завершает работу. Все пользовательские процессы терминируются, буфера выталкиваются и корневая файловая система размонтируется. Последующие действия определяются значением аргумента fcn; на разных машинах выполняются разные действия в силу разных аппаратных возможностей. Самым разумным является перезапуск системы путем передачи управления программе загрузки, хранящейся в ПЗУ. A_REBOOT Система немедленно останавливается без каких-либо действий. Как и в предыдущем случае, дальнейшие действия определяются значением аргумента fcn. A_REMOUNT Корневая файловая система вновь монтируется после того, как она была зафиксирована. Это может быть сделано только в процессе загрузки.
Системный вызов uadmin завершается неудачей, если:
[EPERM] Соответствующий процессу действующий идентификатор пользователя не является идентификатором суперпользователя.
При успешном завершении в зависимости от значения cmd возвращаются следующие значения:
В противном случае возвращается -1, а переменной errno присваивается код ошибки.