Permitir que uma unidade do sistema systemd acesse / monte um disco requerido para esse serviço ser executado

2

Prefácio: Eu sou novo no Ubuntu e Linux em geral, então fique comigo.

Eu criei uma unidade de sistema systemd para executar um programa como um serviço. Para maior segurança, o serviço é executado sob seu próprio grupo e usuário sem capacidade de login. Para que o serviço seja executado, ele requer acesso a vários discos. Para dar ao serviço acesso aos discos, estou usando bindfs para remontar os discos montados pela minha conta de usuário com permissões permitindo que o usuário do serviço acesse os discos montados também.

O serviço é executado com sucesso; no entanto, posso ver problemas com essa abordagem porque, se eu reiniciar, e o serviço iniciar antes de eu ter efetuado login, ele falhará, presumo, porque ainda não fiz login, minha conta de usuário não montou os discos, bindfs não terá nada para remontar e o serviço não terá acesso aos discos.

Então, qual é a melhor maneira de executar o serviço e dar a seu usuário acesso a esses discos? Existe uma maneira de a unidade montar os discos de maneira que eles fiquem acessíveis ao serviço e à minha conta de usuário? É a única solução para executar o daemon na minha conta de usuário? Ou estou me aproximando disso de um ângulo totalmente errado?

Qualquer ajuda será muito apreciada.

    
por Marc A 01.02.2016 / 01:06

1 resposta

0

Então, após um pouco mais de pesquisa, consegui resolver meu problema criando um novo grupo e adicionando minha conta de usuário e conta de serviço a ele. Em seguida, em fstab , montei os discos usando minha conta de usuário e o novo grupo como o proprietário e configurei-o para montagem automática na inicialização. Agora, na inicialização, os discos são montados e os serviços têm acesso a eles.

Instruções detalhadas sobre como realizar os itens acima podem ser encontradas nesta resposta .

    
por Marc A 07.02.2016 / 20:19