Контроль целостности
Перед выполнением команд start и restart утилита pamirctl автоматически
проверяет целостность образов контейнеров и конфигурационных файлов приложения.
Эталонные контрольные суммы встроены в бинарник утилиты при сборке и не зависят
от внешних файлов.
Поведение при нарушении целостности:
- Образы контейнеров — несоответствие контрольной суммы или отсутствие образа блокирует запуск/перезапуск с ошибкой.
- Конфигурационные файлы — несоответствие контрольной суммы запуск не блокирует,
но фиксируется в лог аудита с уровнем
WARN.
Все события контроля целостности записываются в лог аудита:
/var/log/pamirctl-audit-YYYY-MM-DD-HH-MM-SS.log— при запуске от суперпользователя;~/.pamirctl-audit-YYYY-MM-DD-HH-MM-SS.log— при запуске от обычного пользователя.
Лог аудита полезен для анализа причин отказа запуска, а также для аудита факта обновления приложения (в нём фиксируются все изменения образов и конфигурационных файлов).
Просмотр и экспорт контрольных сумм
Просмотреть эталонные контрольные суммы, встроенные в бинарник, можно командой:
# Контрольные суммы образов контейнеров
pamirctl sums
# Контрольные суммы конфигурационных файлов
pamirctl sums --show-config
Экспортировать суммы в файл (без цветового форматирования):
pamirctl sums -o digests.json
pamirctl sums --show-config -o configs.json
Передать файл с суммами на внешний сервер по SSH:
pamirctl sums -o /tmp/digests.json
scp /tmp/digests.json user@audit-server:/srv/pamir-audit/digests.json
Загрузить файл с суммами на внешний сервер через HTTP:
pamirctl sums -o /tmp/digests.json
curl -s -X POST https://audit.example.com/upload \
-F "file=@/tmp/digests.json"
Проверка контрольных сумм
Флаг --verify выполняет живую проверку: запрашивает фактические ImageID у Docker Engine
и вычисляет SHA-256 файлов конфигурации, после чего сравнивает их с эталонными значениями,
встроенными в бинарник. Для каждого объекта выводится эталонное значение, актуальное значение
и статус.
pamirctl sums --verify
Статусы проверки:
| Статус | Объект | Значение |
|---|---|---|
OK | Образы / конфигурация | Контрольная сумма совпадает с эталоном |
ERROR | Образ | Несоответствие ImageID — аналог блокировки при start |
WARNING | Файл конфигурации | Несоответствие суммы файла — не блокирует, но требует внимания |
Если обнаружены нарушения, команда завершается с ненулевым кодом возврата. Все результаты дополнительно фиксируются в лог аудита.
Результаты можно сохранить в файл (без цветового форматирования):
pamirctl sums --verify -o /tmp/verify-report.txt
Пример вывода команды pamirctl sums --verify
2026/04/09 00:44:41 INFO Проверка контрольных сумм образов успешно пройдена count=36
Образы контейнеров (36):
pamir.io/acme-companion:2.2.9
Эталон: sha256:ddc87f47b5c475e3aad0d973f88a5d36592edf2a56459763efc84d831b0305a6
Актуально: sha256:ddc87f47b5c475e3aad0d973f88a5d36592edf2a56459763efc84d831b0305a6
Статус: OK
pamir.io/alertmanager:0.27.0
Эталон: sha256:3d53c034b07096f4bec930811cb6268210e03347f1813daa24d1bdb632230e92
Актуально: sha256:3d53c034b07096f4bec930811cb6268210e03347f1813daa24d1bdb632230e92
Статус: OK
pamir.io/auth:2.1.0-rc.217
Эталон: sha256:e1064ab05bfe82a07beaeee422e32c74422f59b8ad57e04cee5498fcfdb9ae82
Актуально: sha256:e1064ab05bfe82a07beaeee422e32c74422f59b8ad57e04cee5498fcfdb9ae82
Статус: OK
pamir.io/blackbox_exporter:0.20.0
Эталон: sha256:cbab5b05d7f84e9eab2a20999dd9918f12326c960c14f21cd199e002cefefc09
Актуально: sha256:cbab5b05d7f84e9eab2a20999dd9918f12326c960c14f21cd199e002cefefc09
Статус: OK
pamir.io/cadvisor:v0.50.0
Эталон: sha256:02dfeb84b83627ccc9dc245e8f875bb0c2182c828baa6ffd9c3617562aa79332
Актуально: sha256:02dfeb84b83627ccc9dc245e8f875bb0c2182c828baa6ffd9c3617562aa79332
Статус: OK
pamir.io/celery:2.1.0-rc.132
Эталон: sha256:6eac8439e0aa4f187b61b2a93709ad588e8e6f53a8a28e2962c8a7f5dac8518e
Актуально: sha256:6eac8439e0aa4f187b61b2a93709ad588e8e6f53a8a28e2962c8a7f5dac8518e
Статус: OK
pamir.io/docker-tool:2.1.0-rc.114
Эталон: sha256:65b75736d44dd3fa541a85ff74af9663eb51e5266e76b7920694d29fce90e326
Актуально: sha256:65b75736d44dd3fa541a85ff74af9663eb51e5266e76b7920694d29fce90e326
Статус: OK
pamir.io/docker_state_exporter:latest
Эталон: sha256:d23148abc50a2cd58cc3c6ad3f8584f252a22bf645c771add4bd6dfe70977d41
Актуально: sha256:d23148abc50a2cd58cc3c6ad3f8584f252a22bf645c771add4bd6dfe70977d41
Статус: OK
pamir.io/elasticsearch_exporter:v1.10.0
Эталон: sha256:c77721d42846bada8769fa818eeceaa454893988bd2c4464634f822192dd8cce
Актуально: sha256:c77721d42846bada8769fa818eeceaa454893988bd2c4464634f822192dd8cce
Статус: OK
pamir.io/flower:2.0.1
Эталон: sha256:0bc59970d3facb46359b917ce028afe0b124a60bc4d8250e62431f5472a759a4
Актуально: sha256:0bc59970d3facb46359b917ce028afe0b124a60bc4d8250e62431f5472a759a4
Статус: OK
pamir.io/fluent-bit:2.1.8
Эталон: sha256:1bfa6538fbb07773c8f539cd66d3247ba3052dad4b6d2605cd02b4e9fc4230da
Актуально: sha256:1bfa6538fbb07773c8f539cd66d3247ba3052dad4b6d2605cd02b4e9fc4230da
Статус: OK
pamir.io/frontend:2.1.0-rc.315
Эталон: sha256:5e13ed13c13d73b4231f06798a19468e12119d4d1b214b4212d6d4ce26314597
Актуально: sha256:5e13ed13c13d73b4231f06798a19468e12119d4d1b214b4212d6d4ce26314597
Статус: OK
pamir.io/jmx_exporter:latest
Эталон: sha256:49f23da00bdd11be6311d7c07f46c317f0d0041d5fad9c8cb4db2107c23ff3b4
Актуально: sha256:49f23da00bdd11be6311d7c07f46c317f0d0041d5fad9c8cb4db2107c23ff3b4
Статус: OK
pamir.io/json_exporter:1.3.0
Эталон: sha256:f723b26dfa155428d514bd61782882c275bdbe0982c17626f8a895ea52d744fe
Актуально: sha256:f723b26dfa155428d514bd61782882c275bdbe0982c17626f8a895ea52d744fe
Статус: OK
pamir.io/license:2.1.0-rc.117
Эталон: sha256:721092ba349b011ca9474f541abf3af348914516e8a02e7ddf239f2b8a1161f5
Актуально: sha256:721092ba349b011ca9474f541abf3af348914516e8a02e7ddf239f2b8a1161f5
Статус: OK
pamir.io/logstash:9.2.4
Эталон: sha256:91792264aa3b70749e14b3ecd940740b4501a154da58e1d6e7f96e2ab7712746
Актуально: sha256:91792264aa3b70749e14b3ecd940740b4501a154da58e1d6e7f96e2ab7712746
Статус: OK
pamir.io/monitoring:2.1.0-rc.286
Эталон: sha256:0517bd2c6272c1ce8c43aaaf61467da6f0107b22c2e5deaa34d1bb0f4ae71799
Актуально: sha256:0517bd2c6272c1ce8c43aaaf61467da6f0107b22c2e5deaa34d1bb0f4ae71799
Статус: OK
pamir.io/nginxlog_exporter:1.11.0
Эталон: sha256:931ec21a7fbb5b47ebbf4d453f4c579f8c359d377dc328f8376589a9ce445122
Актуально: sha256:931ec21a7fbb5b47ebbf4d453f4c579f8c359d377dc328f8376589a9ce445122
Статус: OK
pamir.io/notification:2.1.0-rc.129
Эталон: sha256:84041d44ac8de0975ec3746e06d38d55cb9362fc29a8652b3db0d599497141d2
Актуально: sha256:84041d44ac8de0975ec3746e06d38d55cb9362fc29a8652b3db0d599497141d2
Статус: OK
pamir.io/openldap:2.5.13
Эталон: sha256:acee985fb20ad28ff893ed23415c088a708d4e988a69a631de68271adfe93d95
Актуально: sha256:acee985fb20ad28ff893ed23415c088a708d4e988a69a631de68271adfe93d95
Статус: OK
pamir.io/opensearch-dashboards:3.3.0
Эталон: sha256:5906095a6f1c4aae8adae6c9131f095fca99178c61bc9d4501c7f2cd6758eca6
Актуально: sha256:5906095a6f1c4aae8adae6c9131f095fca99178c61bc9d4501c7f2cd6758eca6
Статус: OK
pamir.io/opensearch-migrator:2.1.0-rc.11
Эталон: sha256:ca74f7713490699dff2f4b51c8894fcffff2b4b458385b02dc000871b06f5dff
Актуально: sha256:ca74f7713490699dff2f4b51c8894fcffff2b4b458385b02dc000871b06f5dff
Статус: OK
pamir.io/opensearch:3.3.2
Эталон: sha256:255314438cf694569d5030476d5131f22947c827225bdd75a1b7ed6345032b40
Актуально: sha256:255314438cf694569d5030476d5131f22947c827225bdd75a1b7ed6345032b40
Статус: OK
pamir.io/pamir_agent:1.3.0
Эталон: sha256:26006f7b94adbd7d4204c9e682afce2ae3b95eb9d73254eeb4a0cf6e65fd5382
Актуально: sha256:26006f7b94adbd7d4204c9e682afce2ae3b95eb9d73254eeb4a0cf6e65fd5382
Статус: OK
pamir.io/postgres:15.13
Эталон: sha256:bd2e432b53aaea15f8b7e2878cae70957d1191598ccaed05710106e0b37b86ee
Актуально: sha256:bd2e432b53aaea15f8b7e2878cae70957d1191598ccaed05710106e0b37b86ee
Статус: OK
pamir.io/postgres_exporter:v0.15.0
Эталон: sha256:edbb6107c3d51a20b685406c0457f40dec8ffad9e25149c8bdb98cce09965141
Актуально: sha256:edbb6107c3d51a20b685406c0457f40dec8ffad9e25149c8bdb98cce09965141
Статус: OK
pamir.io/prometheus:2.35.0
Эталон: sha256:ead16d8678e48d8366f925f8fb3de1c92239e39cc1e0ce17584c11b7e98ae707
Актуально: sha256:ead16d8678e48d8366f925f8fb3de1c92239e39cc1e0ce17584c11b7e98ae707
Статус: OK
pamir.io/rabbitmq:3.10.8
Эталон: sha256:7edee07b5436dcd4f8d818c888e174d1e84abbc4e3d221cc23dafdb2ef5017fe
Актуально: sha256:7edee07b5436dcd4f8d818c888e174d1e84abbc4e3d221cc23dafdb2ef5017fe
Статус: OK
pamir.io/redis:7.0.15
Эталон: sha256:ed70e4151d060e2bf8e03e6ed2288a0a401eaf31c05e42fed156aaaae7fc2fac
Актуально: sha256:ed70e4151d060e2bf8e03e6ed2288a0a401eaf31c05e42fed156aaaae7fc2fac
Статус: OK
pamir.io/snmp_exporter:0.20.0
Эталон: sha256:253143e7393115dfbe745b2e10f6575892df3fa6c2516637db247ae4a7644ce1
Актуально: sha256:253143e7393115dfbe745b2e10f6575892df3fa6c2516637db247ae4a7644ce1
Статус: OK
pamir.io/sql_exporter:0.4.0
Эталон: sha256:7efda31730e63cc0ea2b2fc2137fd9cbecbb005050b6301f56a1fae95a6f21ea
Актуально: sha256:7efda31730e63cc0ea2b2fc2137fd9cbecbb005050b6301f56a1fae95a6f21ea
Статус: OK
pamir.io/srm:2.1.0-rc.165
Эталон: sha256:0b4ec17ffcf1fcc5e0c3d14bf398cc26bd396067c9703e0efbf63b3db952fbca
Актуально: sha256:0b4ec17ffcf1fcc5e0c3d14bf398cc26bd396067c9703e0efbf63b3db952fbca
Статус: OK
pamir.io/step-ca:0.24.1
Эталон: sha256:1d1675fd033ea0c67806f840b8b6e21da179456aa81191f4b32d5082f4b277cf
Актуально: sha256:1d1675fd033ea0c67806f840b8b6e21da179456aa81191f4b32d5082f4b277cf
Статус: OK
pamir.io/task-tool:2.1.0-rc.113
Эталон: sha256:96e018692f4ba542b31c974d7b26111827f46b4f66ac614da3b59f3582ebf41d
Актуально: sha256:96e018692f4ba542b31c974d7b26111827f46b4f66ac614da3b59f3582ebf41d
Статус: OK
pamir.io/vector:0.51.0-alpine
Эталон: sha256:44b8a36af1b9d30bcdde9a3edbfc9fd7ff5bdea33b63cf89c9123afe4618d4a2
Актуально: sha256:44b8a36af1b9d30bcdde9a3edbfc9fd7ff5bdea33b63cf89c9123afe4618d4a2
Статус: OK
pamir.io/victoria-metrics:1.81.2-pamir
Эталон: sha256:b10f808c7d7adec4f110b2fb69c51cb9dd69343f17f0f162e8ff62256fbd8d0c
Актуально: sha256:b10f808c7d7adec4f110b2fb69c51cb9dd69343f17f0f162e8ff62256fbd8d0c
Статус: OK
Файлы конфигурации (33):
.auth.autogen
Эталон: sha256:8e27ffe70349ac116a28323efc866c2016d274d7a1623d771ca8046c47dfd78a
Актуально: sha256:8e27ffe70349ac116a28323efc866c2016d274d7a1623d771ca8046c47dfd78a
Статус: OK
.auth.env
Эталон: sha256:c268aa391e31b4737265627b24588c904f2aae1f7af392920daeb479174c56b6
Актуально: sha256:5169813ede4f3efc13d020d38c7536520c80e7c1de9064acb43b89803caecc7f
Статус: WARNING
.celery.autogen
Эталон: sha256:8206beba84f7e2064999a2cd2a3cf10f16b196cc4ed4f88395e45d78426fa664
Актуально: sha256:8206beba84f7e2064999a2cd2a3cf10f16b196cc4ed4f88395e45d78426fa664
Статус: OK
.celery.env
Эталон: sha256:e6b92d9a2bea69a9378267bae2f320b0df1d0ca0a429427e3ae274006319c1e3
Актуально: sha256:115c0fcba1892f5a9a3c175d7897d27a391464ec92671eed75864b5d0a392959
Статус: WARNING
.deps.autogen
Эталон: sha256:d8bc7bbb28f60dbb98dd3a2598efc1f1e5da23fb521b255dcfe57c6094d6a3c2
Актуально: sha256:d8bc7bbb28f60dbb98dd3a2598efc1f1e5da23fb521b255dcfe57c6094d6a3c2
Статус: OK
.docker-tool.autogen
Эталон: sha256:5c2ccf0a654b1ce6d805b7b51e83cb21576b109131dcb21f611286af8154ae48
Актуально: sha256:5c2ccf0a654b1ce6d805b7b51e83cb21576b109131dcb21f611286af8154ae48
Статус: OK
.docker-tool.env
Эталон: sha256:1dffb082168584e9b8566922dbf303304cec8dd2a163c10619df07e3926505e8
Актуально: sha256:c9715d1ac95f0152be358e42c9aba9c1f2024876c7fbfa7b339674b0e0ac2d6e
Статус: WARNING
.env
Эталон: sha256:213aea6f28bb50775cfa330d87f8350b84d30fcc6879e40f90d3a954eb97f63c
Актуально: sha256:099cecd60438c9a57ef35c737afb7bcaa70465a70010ce2bf17a884df75264de
Статус: WARNING
.frontend.autogen
Эталон: sha256:1ecc4f8b597c0a93db0073e686d39bb9a1946cf11d66006daa46e30bc1fe3806
Актуально: sha256:1ecc4f8b597c0a93db0073e686d39bb9a1946cf11d66006daa46e30bc1fe3806
Статус: OK
.frontend.env
Эталон: sha256:69f4d6cb663f05eee19c59d498cf3ef2bda512340e92cd664a9e3dffbcad184e
Актуально: sha256:76c03d6b6809210de4b675860da2bdd8c6cba3671a7a885d36fad912fb6d315b
Статус: WARNING
.license.autogen
Эталон: sha256:d7094224c47f99a6985b83ff4455c3becdcfc3b7e770bd71e865a52fcc220994
Актуально: sha256:d7094224c47f99a6985b83ff4455c3becdcfc3b7e770bd71e865a52fcc220994
Статус: OK
.license.env
Эталон: sha256:af035863c12d42901be3ece905ac7f6799b71d60b23e0dab0ce0460a3eacc9e7
Актуально: sha256:5482e526a03056fbca64fda885882ee62e108fbeb59971c9a79364e2fe97680b
Статус: WARNING
.monitoring.autogen
Эталон: sha256:d288bcdc33728f9501e9fa0985a9f53c237a56278bc1350fdc4d122ce352d0b6
Актуально: sha256:d288bcdc33728f9501e9fa0985a9f53c237a56278bc1350fdc4d122ce352d0b6
Статус: OK
.monitoring.env
Эталон: sha256:ded8d466754e202cb06297edae6b408016df0129265c6fa86e81dbe897173699
Актуально: sha256:79aa12410ffda2719c476542502111c308329bef896fb3e33355af0f8c0442b4
Статус: WARNING
.notification.autogen
Эталон: sha256:b07823c26361a7d28f9d71c5bb04cdd9e23a761c92016cdd385bb3f41943b13a
Актуально: sha256:b07823c26361a7d28f9d71c5bb04cdd9e23a761c92016cdd385bb3f41943b13a
Статус: OK
.notification.env
Эталон: sha256:1dcb785e795ad1e9d87f203e045e832c4c0948a45f1fd3c4742191180057889a
Актуально: sha256:c640aa23dc250621238130cbd7ac08284316187864ed798cbc29eb0abd4bb600
Статус: WARNING
.opensearch-migrator.autogen
Эталон: sha256:c743b48f52e2da383f6db7e8c926a37f33e412a323f68e2257c2fd684263b450
Актуально: sha256:c743b48f52e2da383f6db7e8c926a37f33e412a323f68e2257c2fd684263b450
Статус: OK
.opensearch.env
Эталон: sha256:46e503fada54fa443dbe6ff95598039405f283776555475ce917837797042ad2
Актуально: sha256:46e503fada54fa443dbe6ff95598039405f283776555475ce917837797042ad2
Статус: OK
.postgres.env
Эталон: sha256:5a1a9c34b902778efc72adce9483ecbfdbf7ba6b1837111d70650e8d40da3c1c
Актуально: sha256:5a1a9c34b902778efc72adce9483ecbfdbf7ba6b1837111d70650e8d40da3c1c
Статус: OK
.srm.autogen
Эталон: sha256:b1fda630f7ad50350924d67c6b3d04ee55df1dedd61034db1dc5be0dd690d9f7
Актуально: sha256:b1fda630f7ad50350924d67c6b3d04ee55df1dedd61034db1dc5be0dd690d9f7
Статус: OK
.srm.env
Эталон: sha256:0cd59864f3fd789a9ef961a7027b235dad48afdc1c8daeced7d1927629de4b1f
Актуально: sha256:ece7d97a52ac1188823cc2bbb78e03247b244844604595902ab4b66e71beb078
Статус: WARNING
.task-tool.autogen
Эталон: sha256:5d15b32b161d09bb130cf4e418b085a83c86f71e3edbb14d863cfd282b697469
Актуально: sha256:5d15b32b161d09bb130cf4e418b085a83c86f71e3edbb14d863cfd282b697469
Статус: OK
.task-tool.env
Эталон: sha256:31d5993f3bf319c3011895e1b489db1ebf6cb247bc61786293bfdfda7b5a926a
Актуально: sha256:621b21f0d2f16cf1fbadfbc5228ad023b3c62e2ac12b50924c41f73e815bb375
Статус: WARNING
docker-compose.deps.yml
Эталон: sha256:5376f5fa7046862e68caa2e8ab9bad859353f0d87878aa00ba8ecab3e52d5de3
Актуально: sha256:e5099b7ede5312a6c411397fb6886e8e5dfac2acd45ac64076541de46bb43111
Статус: WARNING
docker-compose.server.migrations.yml
Эталон: sha256:ab7068db1bffeda761cc014f0be7a90b9532833929edf575157e664e6c782fa8
Актуально: sha256:ab7068db1bffeda761cc014f0be7a90b9532833929edf575157e664e6c782fa8
Статус: OK
docker-compose.server.yml
Эталон: sha256:7db5d1b4c481300129e49e52f30ec798ef37656b98ce1b63bff4057943482f99
Актуально: sha256:7db5d1b4c481300129e49e52f30ec798ef37656b98ce1b63bff4057943482f99
Статус: OK
docker-compose.yml
Эталон: sha256:0f0bd9e8ad54835a1211f14ea576252cc2ffad90b860471b7bf71fd684376092
Актуально: sha256:0f0bd9e8ad54835a1211f14ea576252cc2ffad90b860471b7bf71fd684376092
Статус: OK
init/database/init-database.sh
Эталон: sha256:a92a5a1b5459304be4f521f28c838051ff81db32315bd3bdca1def14a3911d44
Актуально: sha256:a92a5a1b5459304be4f521f28c838051ff81db32315bd3bdca1def14a3911d44
Статус: OK
init/nginx/static/docs/swagger-ui-bundle.js
Эталон: sha256:2a556306524bed2ca668ec5ae19b1dbd4d9cdaa34795c9063a1c44b29a9c6097
Актуально: sha256:2a556306524bed2ca668ec5ae19b1dbd4d9cdaa34795c9063a1c44b29a9c6097
Статус: OK
init/nginx/static/docs/swagger-ui.css
Эталон: sha256:c24ecffd63fc797d37bed1c68ea030479ad1c7a30638ffb6b5a2559ea98bc431
Актуально: sha256:c24ecffd63fc797d37bed1c68ea030479ad1c7a30638ffb6b5a2559ea98bc431
Статус: OK
init/step/organization.json
Эталон: sha256:bd90b0c7af56689f6be63bb0da93271efebeab46532a1e5c4925bc9e66fea21f
Актуально: sha256:bd90b0c7af56689f6be63bb0da93271efebeab46532a1e5c4925bc9e66fea21f
Статус: OK
init/step/templates/certs/x509/intermediate.tpl
Эталон: sha256:f2ac946eca3fca72668573205419f9a8be417dabe5c38101ce6c6e8c5eda0af3
Актуально: sha256:f2ac946eca3fca72668573205419f9a8be417dabe5c38101ce6c6e8c5eda0af3
Статус: OK
init/step/templates/certs/x509/leaf.tpl
Эталон: sha256:cab9e20a917e4c99952f14036dcd9e9195550bff56a77aa74674912c133535e8
Актуально: sha256:cab9e20a917e4c99952f14036dcd9e9195550bff56a77aa74674912c133535e8
Статус: OK
Результат: Обнаружены нарушения целостности (конфигурация: 11)
Ошибка: проверка целостности выявила нарушения (образы: 0, конфигурация: 11)
Демон периодического контроля целостности
Помимо разовых проверок при запуске, pamirctl поддерживает режим демона (--daemon),
который непрерывно контролирует целостность запущенных контейнеров и немедленно
останавливает те из них, что нарушают политику.
Что проверяется в каждом цикле (каждые 15 секунд по умолчанию):
- имя образа контейнера присутствует в эталонном
digests.json; ImageIDконтейнера совпадает с эталонной контрольной суммой;- корневая файловая система контейнера смонтирована в режиме
readonly.
При обнаружении нарушения контейнер немедленно останавливается. Повторный запуск заблокированного контейнера перехватывается через Docker Events API и также отклоняется.
Установка и запуск инсталлятором:
Сервис демона устанавливается и запускается автоматически при выполнении
pamir-installer install для обычного (не root) пользователя:
- файл юнита
pamirctl.serviceкопируется в~/.config/systemd/user/; - при первичной установке сервис включается в автозагрузку (
systemctl --user enable --now); - при обновлении сервис перезапускается (
systemctl --user restart).
По умолчанию пользовательские сервисы systemd останавливаются при выходе пользователя из системы. Если инсталлятор обнаружит, что lingering не включён, он выведет соответствующее предупреждение. Для постоянной работы демона выполните:
sudo loginctl enable-linger $USER
Управление сервисом вручную:
# Проверить состояние
systemctl --user status pamirctl.service
# Просмотреть журнал в реальном времени
journalctl --user -u pamirctl -f
# Или читать файл аудита напрямую
tail -f ~/.pamirctl-audit-daemon.log
На Astra Linux команда journalctl --user -u pamirctl -f может завершаться ошибкой
No journal files were found. Для корректной работы включите персистентное хранение
журнала:
sudo mkdir -p /var/log/journal
sudo systemd-tmpfiles --create --prefix /var/log/journal
sudo systemctl restart systemd-journald
Также следует добавить пользователя в группу systemd-journal (даёт доступ к
системному журналу, где также отображаются записи пользовательских сервисов):
sudo usermod -aG systemd-journal $USER
# перелогиниться