Processo pasmado, mas conexão não terminada para arquivos no locasystem

0

Não tenho certeza se esse é o lugar certo ou não, mas como essa é uma pergunta que precisava de uma solução que estou postando aqui.

Eu usei

kill -SIGSTOP 1234

comando para passar um processo chamado 1234 e sua pausa então eu gostei

echo "" > mylogfile.log

e seu tamanho agora como 1byte , então funcionou. Então eu comecei novamente esse processo pausado com

kill -SIGCONT 1234

e com ls -sh , mas não sei como mylogfile.log mostrando tamanho antigo e não novo tamanho atualizado como 1byte.

Então, o que estou tentando alcançar?

Simples, eu não quero matar o processo para anular meu arquivo de log. quando eu fiz SIGSTOP process executando mas meu arquivo de log foi para 0 bytes e quando eu iniciei com SIGCONT e seu tamanho GB de volta, mas eu não quero esse tamanho de GB. Eu quero ter meu arquivo de log como 0 byte only

Existe alguma maneira de conseguir isso?

Por favor, ajude e tenho certeza que isso vai ajudar muitos administradores de sistema.

Obrigado.

    
por rɑːdʒɑ 16.08.2015 / 23:21

1 resposta

1

SIGSTOP pausa um processo sem o conhecimento ou consentimento dos processos. O processo sabe que o próximo byte que deseja gravar em um de seus arquivos abertos é em GB + 1. SIGSTOP/SIGCONT não ajusta esta informação de posição.

A maneira usual de lidar com esse problema é pegar um SIGHUP no programa e reabrir o log, em seguida, contuning.

    
por waltinator 16.08.2015 / 23:33