Управление файловым режимом созданного целевого каталога возможно для rsync?

Использование директивыPartOfвместе с целевым модулем для запуска всех служб как группы, похоже, позволяет достичь моих целей.

Мои служебные файлы теперь выглядят так:

[Unit]
Description=foo
After=syslog.target network.target
PartOf=foo.service bar.service baz.service all-services.target

[Service]
User=foo
WorkingDirectory=~
Restart=always
RestartSec=90
StartLimitInterval=400
StartLimitBurst=3
SyslogIdentifier=foo
ExecStart=/path/to/binary 
[Install]
WantedBy=all-services.target

и цель группировки выглядит как:

[Unit]
Description=all-services
PartOf=foo.service bar.service baz.service

Я могу запускать и перезапускать службы foo, barи baz, запустив systemctl start all-services.target, и уничтожение процесса, используемого foo, приведет к их остановке и перезапуску.

Одна неясная вещь: если я запущу systemctl stop all-services.target, он остановит все службы, но systemctl start all-services.targetиз остановленного состояния запустит только целевой модуль, а не все службы.

Я пытался заменить WantedByна RequiredByв служебных подразделениях, но это, кажется, ничего не меняет.

2
04.11.2019, 16:01
1 ответ

rsync может не поддерживать эту функциональность изначально, но вы можете использовать файловые системы ACL , чтобы гарантировать, что любой вновь созданный каталог под /some/existing/path/имеет определенный набор разрешений. Например:

$ setfacl -dm u::rwx,g::rx,o::r /some/existing/path/

Вновь созданные каталоги под /some/existing/path/теперь должны иметь разрешения 750вручную или через rsync.

1
27.01.2020, 22:08

Теги

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