Processa alocação de espaço em disco excessivo para o arquivo (excluído) .xsession-errors

1

Meu disco raiz está cheio até a borda por causa do espaço em disco bloqueado por um arquivo .xsession-errors. O balão é causado por processos em execução que mantêm o arquivo de erro aberto e descarrega dados nele, ou seja, PID de várias aplicações diferentes, por exemplo, cromo sendo o maior culpado. Eu suspeito que este seja o caso porque lsof | o grep excluiu as linhas de retorno como:

chromium- 27607  user  2w  REG 8,1 1809493864448  108527952 /home/user/.xsession-errors (deleted)
chromium- 27762  user  2w  REG 8,1 1809493864448  108527952 /home/user/.xsession-errors (deleted)

A diferença aqui é que tenho um cron job definido para excluir o arquivo home / user / .xsession-errors 'de acordo com um trabalho sugerido em torno deste problema. Você pode imaginar como esta situação corre rapidamente quando o cromo abre muitos processos! Estou usando uma máquina UBUNTU 12.04 de 64 bits com a seguinte configuração HD (EXT4):

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       1.8T   34G  1.7T   2% /
udev             12G  4.0K   12G   1% /dev
tmpfs           4.8G  1.2M  4.8G   1% /run
none            5.0M   16K  5.0M   1% /run/lock
none             12G  2.1M   12G   1% /run/shm
/dev/sde1       1.8T  450G  1.3T  26% /media/SEA2T
/dev/sdd1       2.7T  201M  2.6T   1% /media/BUFF3T
/dev/sdb        3.6T  118G  3.3T   4% /media/INDAR
/dev/sdc        3.6T  3.0T  469G  87% /media/ALAYA

O que eu fiz até agora para resolver em vão:

  1. É possível recuperar esse espaço? Aparentemente não no meu caso, embora outros tenham conseguido truncar o arquivo para liberar o disco.
  2. Como isso parece ser uma espécie de ocorrência virtual, sem arquivos reais como culpado, A reinicialização foi a opção de trabalho para mim.
  3. Como garantir que isso não aconteça novamente? Eu ainda não sei. A solução atual é definir a variável ERRFILE no arquivo /etc/X11/Xsession to /tmp/$USER-xsession-errors

para descobrir o que está sendo despejado nesse arquivo de erro. Eu aprecio todas as sugestões sobre como lidar com o arquivo xsession-errors fugir de uma vez por todas! Agradecemos antecipadamente.

    
por Kambiz 29.05.2013 / 00:58

1 resposta

0

Você pode acessar o arquivo através de ls -l /proc/<PID>/fd/* (perigoso) e, depois de determinar o número fd, truncá-lo com truncate /proc/<PID>/fd/<fd> --size 0 (ainda mais perigoso). Essa é a alternativa para reiniciar ou matar o processo. No entanto, é difícil dizer o que acontecerá com as gravações subseqüentes em um arquivo mutilado.

O que você realmente deve fazer é descobrir o que está escrevendo para esse arquivo e por que e tomar as medidas necessárias para impedir que isso aconteça. Mesmo ignorando problemas de armazenamento, a gravação de logs de depuração é cara e prejudica o desempenho. Assim, você deve encontrar a causa raiz.

    
por frostschutz 29.05.2013 / 06:23