A maneira mais direta seria tornar o / var / log um link simbólico para / safepath / log, ou algo semelhante.
Cenário
Eu estou em um sistema Linux embutido. Como de costume /var/log/
é o diretório quando todos os logs são armazenados. Eu tenho um diretório chamado /safepath
, que é criado durante a criação da imagem e está na memória persistente. Isso significa que o que quer que eu coloque sob /safepath
persiste nas sessões de reinicialização.
Eu quero que os logs em /var/log/
não sejam perdidos a cada reinicialização e que sejam persistentes durante as reinicializações. Então eu pensei em montar /var/log/
em /persists
fazendo mount --bind /var/log /safepath
que eu li nessa discussão interessante aqui
Pergunta:
Mas fazendo isso, ainda me faz perder os dados em /var/log/
. Isso está correto? Como fazer com que /var/log/
persista nas sessões de reinicialização?
A maneira mais direta seria tornar o / var / log um link simbólico para / safepath / log, ou algo semelhante.
Não respondendo realmente à pergunta. mas oferecendo uma alternativa ... adicione uma regra ao syslog para encaminhar todas as mensagens para um servidor, por exemplo,
*.* @server.host.name
Se você fizer isso, não será necessário persistir /var/log
(minha experiência tem sido que você sempre preencherá seu armazenamento persistente se tiver /var/log
sobre ele) .
Note que você precisará habilitar o módulo de rede no syslog do seu servidor - como fazer isso depende de qual software syslog você está executando. Você também pode precisar lidar com firewalls (geralmente a porta UDP 514).
Observe também que você pode precisar usar um endereço IP em vez de server.host.name
se o seu resolvedor DNS não estiver disponível quando o daemon syslog for iniciado.
Uma (eu acho grande) vantagem de fazer isso é que você pode ter todos os seus dispositivos embarcados conectados ao servidor e todos os logs estão disponíveis em um único lugar - você deve usar as regras correspondentes no software syslog do seu servidor para armazenar mensagens de cada dispositivo em arquivos separados nomeados após o dispositivo de origem (isso pode ser difícil de configurar, às vezes, mas vale a pena).