Pode tmpfiles.d remover arquivos com base apenas no tempo (mas não no boot)?

1

Existe uma maneira de usar o systemd tmpfiles.d para limpar SOMENTE baseado no tempo, e não também no boot?

Eu tentei 'd' e 'D', por exemplo.

#/etc/tmpfiles.d/tmp.conf
d /var/tmp 1777 root root 30d

e

#/etc/tmpfiles.d/tmp.conf
D /var/tmp 1777 root root 30d

mas ambos resultam em arquivos sendo limpos na inicialização.

FYI Estou usando o Debian 9 (Stretch). Se os arquivos de configuração padrão forem usados, os arquivos não serão removidos do / var / tmp pelo tmpfiles.d (na inicialização ou por idade).

    
por lickdragon 08.11.2018 / 19:12

1 resposta

1

A primeira linha que você tem está correta:

#/etc/tmpfiles.d/tmp.conf
d /var/tmp 1777 root root 30d

Ele não deve estar causando a remoção do conteúdo do diretório. Consulte a documentação das opções d e D , que afirma:

d

Create a directory. The mode and ownership will be adjusted if specified and the directory already exists. Contents of this directory are subject to time based cleanup if the age argument is specified.

     

D

     

Similar to d, but in addition the contents of the directory will be removed when --remove is used.

É possível que isso esteja em conflito com outra configuração já existente em seu sistema (um dos arquivos enviados em /usr/lib/tmpfiles.d/*.conf )

Além disso, lembre-se de que, se criar um arquivo denominado tmp.conf in /etc/tmpfiles.d/ , você sombreará aquele com o mesmo nome em /usr/lib/tmpfiles.d/tmp.conf se existir um (e o systemd normalmente envia esse arquivo), portanto, estar inadvertidamente removendo a configuração que você pretendia manter por perto. (Então, novamente, essa é a maneira de soltar essa configuração, para que você possa substituir.)

Se a sua versão do systemd for recente o suficiente, você pode tentar o comando systemd-tmpfiles --cat-config para ver sua configuração completa, o que pode ajudá-lo a ver outras linhas inesperadas que você pode ter para /var/tmp que estão causando interferência ou comparar "antes" vs. "depois" quando você descarta um novo arquivo de configuração (por exemplo, mostrar que as linhas do arquivo de configuração com o mesmo nome em /usr foram eliminadas.)

    
por 08.11.2018 / 20:16

Tags