Por engano, notei que no diretório / tmp são criados continuamente alguns arquivos e imediatamente excluídos. Usando uma sucessão de ls -l /tmp
eu consegui pegar os arquivos criados:
-rw------- 1 root root 0 Apr 2 19:37 YlOmPA069G
-rw------- 1 root root 0 Apr 2 19:37 l74jZzbcs6
ou outro exemplo:
-rw------- 1 root root 0 Apr 2 19:44 AwVhWakvQ_
-rw------- 1 root root 0 Apr 2 19:44 RpRGl__cIM
-rw------- 1 root root 0 Apr 2 19:44 S0e72nkpBl
-rw------- 1 root root 0 Apr 2 19:44 emxIQQMSy2
É sobre o Ubuntu 18.10 com o 4.18.0-16-generic. Esta é uma instalação quase recente: eu adicionei algum software de servidor (nginx, mysql, php7.2-fpm), mas mesmo com aqueles fechados o problema persiste.
Quais são os arquivos criados e por quê? Como eu pararia esse comportamento? muito indesejável em um SSD
Obrigado!
ATUALIZAR
A questão é sobre quando não há / tmp na RAM (sem tmpfs ).
O software culpado é x2goserver.service, caso contrário, é necessário ter um.
/tmp
normalmente está no tmpfs (um sistema de arquivos ramdisk que usa o pagecache como armazenamento de backup); você marcou sua pergunta com os tmpfs , para que seus comentários sobre SSDs pareçam incorretos./tmp
normalmente esteja em tmpfs" seja válida para um usuário normal do Ubuntu - Basta usar a instalação padrão do Ubuntu,/tmp
estar em disco e o OP precisará criar as entradas fstab apropriadas para colocá-lo em um tmpfsRespostas:
Sugiro instalar e executar o fnotifystat para detectar o processo que está criando esses arquivos:
Você verá o processo que está executando a atividade de abrir / fechar / ler / gravar algo como o seguinte:
fonte
/tmp/...
arquivos para IPC entre o daemon e o espaço do usuário, em vez do DBUS mais complicado.Determinar qual programa / processo está tocando nos arquivos
Você pode usar ferramentas como
lsof
para determinar quais processos e binários estão tocando / abrindo quais arquivos. Isso pode se tornar problemático se os arquivos forem alterados com frequência, para que você possa configurar um relógio para notificá-lo:Às vezes, simplesmente olhar para o usuário ou o proprietário do grupo fornece uma boa dica (por exemplo:)
ls -lsha
.Coloque
/tmp
na RAM em vez do discoSe desejar, você pode colocar seu
/tmp
diretório na RAM. Você precisará determinar se essa é uma jogada inteligente com base na RAM disponível, bem como no tamanho e na frequência de leitura / gravação.Se você tiver RAM suficiente, isso pode ser considerado uma coisa muito boa a ser feita tanto pela longevidade do seu SSD quanto pela velocidade do seu sistema. Você pode até fazer isso com quantidades menores de RAM se ajustar
tmpreaper
(às vezestmpwatch
) para ser mais agressivo.fonte
Você marcou sua pergunta com tmpfs ; portanto, não está claro para mim como isso se relaciona com o SSD. O tmpfs é um sistema de arquivos na memória (ou mais precisamente, no cache do bloco), portanto nunca atingirá um disco físico.
Além disso, mesmo que você tenha um armazenamento físico de backup para o seu
/tmp
sistema de arquivos, a menos que você tenha um sistema com apenas alguns kilobytes de RAM, esses arquivos de vida curta nunca atingirão o disco, todas as operações ocorrerão no cache.Portanto, em outras palavras, não há com o que se preocupar, pois você está usando o tmpfs e, se não estivesse, ainda não haveria o que se preocupar.
fonte
/tmp
está na RAM, isso não tem nada a ver com o seu SSD, por isso não é desejável nem indesejável, mas na verdade é completamente independente.As pessoas se preocupam demais com a resistência de gravação do SSD. Supondo que a criação e a exclusão de um arquivo vazio gravem 24 kB por segundo, e usando a especificação de 150 TBW para o popular Samsung 860 EVO 250 GB, o desgaste leva 193 anos!
(150 * 10 ^ 12) / ((2 * 3 * 4 * 1024) * 60 * 60 * 24 * 365,25) = 193
Para sistemas de arquivos ext4, use "tune2fs -l" para encontrar gravações ao longo da vida. Ou use "smartctl -a" e procure Total_LBAs_Written. Eu sempre acho que o SSD tem muita vida restante.
fonte
tune2fs: Bad magic number in super-block while trying to open /dev/nvme0n1 Found a gpt partition table in /dev/nvme0n1
.Você estava usando o
/dev/nvme0...
nome errado :O formato correto é:
Até a vida útil do SSD NVMe :
A linha principal aqui é:
Após 18 meses de uso, o percentual de SSD é de 0%. Se após 3 anos de uso atingir 1%, sei que o SSD durará 300 anos.
Obviamente, essa resposta não caberia na seção de comentários para responder a outros comentários.
fonte
tune2fs
em resposta ao seu comentário sobre a resposta de Fraser Gunn mostrando uma mensagem de erro.