Problema de sistema de arquivos estranho no Linux Mint - Arquivo grande excluído, sem espaço em disco adicional disponível

1

Eu acredito que encontrei um problema com o Linux Mint. (Versão 17? - Como faço para verificar isso?)

Eu tenho um programa que está em execução há vários dias e produziu um arquivo de saída com centenas de gigabytes de tamanho.

Eu estava prestes a ficar sem espaço (tinha cerca de 10 GB restantes), então parei o programa com CTRL-Z em um ponto em que o arquivo de saída ainda estava aberto, mas consegui garantir que nenhuma operação de leitura / gravação fosse feita em o ponto em que o programa foi interrompido.

Então eu apaguei o arquivo. (Não foi possível abri-lo para limpar o conteúdo, era muito grande!)

Depois recriou o arquivo. (Talvez não seja uma surpresa que isso tenha me causado problemas, dificilmente poderia esperar que isso funcionasse corretamente.)

MAS eu tenho 2 problemas. Em primeiro lugar, o programa parece não estar mais escrevendo para QUALQUER um dos arquivos de saída? (Existem 3 diferentes, apenas um foi excluído.)

Em segundo lugar, não há espaço livre extra? Eu não consigo entender porque isso é? Deveria haver um extra de 100 GB ... mas não há?

Por que isso e posso "consertar"? (Eu não quero que meu sistema seja uma droga para sempre com um buraco de 100 GB.)

    
por user3728501 25.08.2015 / 16:06

2 respostas

0

Esse é o comportamento esperado. O arquivo não é realmente excluído até que todos os usuários do arquivo tenham fechado sua 'conexão' ao arquivo (isto é, liberaram o identificador de arquivo).

O que você precisa fazer é desligar o programa, não apenas pausá-lo. Isso fará com que o programa libere sua conexão, permitindo que o sistema de arquivos exclua o arquivo.

    
por 25.08.2015 / 16:13
0

Com o comando "lsof" (LiSt Open Files) você pode verificar se o arquivo que você apagou ainda é usado por um processo em particular (através de um descritor / manipulador de arquivo que você pode ver em / proc / $ PID_of_process / fd /) . Em caso afirmativo, o coletor de lixo não desalocará o espaço apontado por esse inode, mesmo que você tenha removido seu último link físico com "rm" (ou qualquer outro comando semelhante).

    
por 25.08.2015 / 23:07