Como inicio o serviço no systemd logo após o cryptsetup?

5

Eu tenho uma instalação do ArchLinux com o systemd. Eu estou tentando executar um gancho imediatamente após o meu dispositivo de dados criptografados é montado para colocar flashcache em cima dele. Eu tenho scripts que funcionam, mas não posso fazer com que eles sejam carregados na ordem correta. Aqui está o que eu fiz:

arquivo

: /usr/lib/systemd/system/flashcache.service

[Unit]
Description=FlashCache
[email protected]

[Service]
Type=oneshot
RemainAfterExit=no
ExecStart=/usr/local/bin/flashcache_startup_script

[Install]
WantedBy=dev-mapper-data_cached.device

Depois de criar o arquivo, eu corri systemctl enable flashcache.service .

No entanto, na inicialização ele não inicia, o dev-mapper-data_cached expira, após o qual eu posso entrar em um shell de root e executar flashcache_startup_script manualmente.

Eu examinei a saída de journalctl -b e determinei que o serviço FlashCache não é carregado antes do tempo limite.

Outra opção que tentei sem sucesso é Requires=dev-mapper-vg1-data.device

O que estou fazendo de errado?

    
por galets 04.07.2014 / 02:42

1 resposta

0

Eu tentei todo tipo de coisa, principalmente usando o recurso a seguir . Não sei exatamente por que funcionou, mas o seguinte arquivo de unidade resolveu o problema:

[Unit]
Description=FlashCache
BindsTo=dev-vg1-data.device
After=dev-vg1-data.device
DefaultDependencies=no

[Service]
Type=oneshot
RemainAfterExit=no
ExecStart=/usr/local/bin/flashcache_startup_script

[Install]
WantedBy=sysinit.target
    
por 05.07.2014 / 19:55

Tags