AIX :как просмотреть содержимое службы?

Это безопасно, но, естественно, вы можете не закончить копию.

При запуске команды cpвыполняются системные вызовы, которые предписывают ядру сделать копии файла. Системный вызов или системный вызов — это функция, которую приложение может использовать для запроса службы от ядра, например чтения или записи данных на диск. Процесс пользовательского пространства просто ждет завершения системного вызова. Если бы вы проследили звонки с cp ~/hello.txt /mnt, это выглядело бы как:

open("/home/user/hello.txt", O_RDONLY)           = 3
open("/mnt/hello.txt", O_CREAT|O_WRONLY, 0644)   = 4
read(3, "Hello, world!\n", 131072)               = 14
write(4, "Hello, world!\n", 14)                  = 14
close(3)                                         = 0
close(4)                                         = 0

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

Из-за этого принудительное завершение процесса приведет к его завершению только после возврата текущего системного вызова. Это означает, что ядро, в котором находится драйвер файловой системы, может завершить операции, необходимые для приведения файловой системы в нормальное состояние. Любой ввод-вывод такого рода никогда не будет прерван в середине операции, поэтому риск повреждения файловой системы отсутствует.

1
02.06.2021, 23:39
1 ответ

Я думаю, самое близкое, что вы можете получить, это:

odmget -q subsysname=nimclient SRCsubsys

... который выводит строфу, включающую информацию о пути к программе и о том, к чему подключены ее ввод, вывод и stderr. Настраиваемые параметры поступают из команды mkssys , в которой содержится дополнительная информация об этих параметрах.

Если подсистема поддерживает это, вы можете запросить ее текущий статус в развернутой форме:

lssrc -l -s nimclient

Вот пример odmgetвывода службы xntpd (У меня нет подсистемы nimclient для демонстрации):

$ odmget -q subsysname=xntpd SRCsubsys

SRCsubsys:
        subsysname = "xntpd"
        synonym = ""
        cmdargs = ""
        path = "/usr/sbin/xntpd"
        uid = 0
        auditid = 0
        standin = "/dev/console"
        standout = "/dev/console"
        standerr = "/dev/console"
        action = 2
        multi = 0
        contact = 3
        svrkey = 0
        svrmtype = 0
        priority = 20
        signorm = 0
        sigforce = 0
        display = 1
        waittime = 20
        grpname = "tcpip"
1
28.07.2021, 11:27

Теги

Похожие вопросы