Sistema de arquivos sendo preenchido devido ao grande arquivo uvcydnctrl-udev.log

11

Agora, minha instalação do Ubuntu me custa mais de 100 GB de espaço no disco rígido. E sempre que eu tento fslinte fdupes, eles dizem Permission deniedpara excluir as duplicatas. Por favor me ajudem pessoal.

Informação adicional

Saída de df:

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             296G  191G   90G  68% /
udev                  993M  4.0K  993M   1% /dev
tmpfs                 401M  824K  401M   1% /run
none                  5.0M     0  5.0M   0% /run/lock
none                 1003M  552K 1002M   1% /run/shm
/home/zipro/.Private  296G  191G   90G  68% /home/zipro

O arquivo com defeito é de 174 GB /var/log/uvcydnctrl-udev.log

user84055
fonte
3
Este é ainda um problema no Ubuntu 14.04 LTS
Andrew Fielden

Respostas:

11

1. Etapa: Descubra qual problema você realmente tem

Quando seu sistema de arquivos está inesperadamente cheio, há muitas causas possíveis. Veja a resposta de Eliah Kagan para um pouco mais sobre isso. Na grande maioria dos casos, deve ser fácil identificar (e eventualmente reparar) a causa real, de modo que a reformatação / reinstalação não seria necessária.

Portanto, o primeiro passo é descobrir qual é exatamente o problema, ou seja, para onde foi o espaço que faltava. Então, primeiro execute

df -hl -x tmpfs -x devtmpfs

Isso mostra uma lista de todas as partições usadas dos discos em sua máquina, seu tamanho, quão cheias elas estão e seu ponto de montagem. Nesta lista, pegue o que você acha que está cheio demais e anote seu ponto de montagem. No seu caso, é o sistema de arquivos raiz que está montado em /.

Agora analisamos onde é usado o espaço dentro desse sistema de arquivos. Executar

 sudo du -xhsc /* 2> /dev/null

(Substitua /pelo ponto de montagem identificado acima.) Ele precisa do sudo porque nem todos os diretórios podem ser legíveis para o usuário. Pode levar algum tempo (especialmente em sistemas de arquivos grandes) porque ele precisa visitar todos os diretórios neles.

O que esse comando faz é mostrar cada arquivo e diretório dentro do diretório fornecido, juntamente com seu tamanho (incluindo subdiretórios). Portanto, nesta lista, pegue o que você acha que é maior do que deveria e chame o comando novamente neste diretório. (Ou seja, execute o comando novamente, mas substituindo o nome de um grande diretório de uma listagem anterior /.)

Por exemplo, no seu caso, ficou claro que /varera o único diretório grande, então você precisaria executar

 sudo du -xhsc /var/* 2> /dev/null

Continue com estas etapas até encontrar um único arquivo tão grande ou encontrar um diretório com muitos arquivos que ocupam todo esse espaço.

No seu caso, o próximo passo foi executar

 sudo du -xhsc /var/log/* 2> /dev/null

porque /var/logera muito grande e isso mostrou a você que havia um único arquivo de log nomeado uvcdynctrl-udev.logcom 174 GB (o que é obviamente ruim).

2. Etapa: identifique por que os arquivos estão lá e por que são tão grandes

Agora, precisamos descobrir por que os identificados estão lá ou por que são tão grandes, se é esperado que estejam lá.

No seu caso, um arquivo de log /var/lognão é nada suspeito, mas seu tamanho certamente é. Felizmente, uma pesquisa no Google simplesmente com o nome do arquivo traz o seguinte relatório de bug como o primeiro hit, o que é claramente o mesmo problema que temos: http://bugs.launchpad.net/ubuntu/+source/libwebcam/+bug / 811604

3. Etapa: Resolva o problema

Nesse caso, um arquivo de log de algumas coisas relacionadas à webcam não parece ser interessante; portanto, podemos excluí-lo facilmente com o comando sudo rm /var/log/uvcdynctrl-udev.loge liberar todo o espaço.

Infelizmente, o relatório de bug ainda está aberto e não há soluções ou soluções alternativas nos comentários, então você provavelmente precisará conviver com esse bug por enquanto. Você pode excluir o arquivo de log de tempos em tempos para liberar espaço.

Philipp Wendler
fonte
6

Se você copiou e colou os arquivos do sistema, reproduzindo-os manualmente, deve fornecer mais informações sobre o que fez para copiá-los e colá-los, onde os colou, qualquer coisa que possa se lembrar. Mesmo fazendo uma cópia extra de todos os arquivos do sistema em sua máquina é improvável que cause perto de 100 GB de uso do disco. O Ubuntu requer menos de 5 GB de espaço disponível para ser instalado, e mesmo um sistema Ubuntu com muitos pacotes instalados é improvável que seus arquivos de sistema ocupem mais do que várias vezes esse tamanho. Você provavelmente teria que fazer muitas cópias para ocupar tanto espaço. Ou talvez você tenha copiado outros arquivos que não sejam do sistema ?

Se o seu sistema Ubuntu foi expandido por si só (de arquivos de log e atualizações‽) para ocupar 100 GB de espaço (ou 50 GB de espaço), apenas nos arquivos do sistema (em oposição aos seus documentos, fotos, vídeos, máquinas virtuais e assim por diante), algo está muito errado. As três causas gerais mais prováveis ​​disso são provavelmente:

  • Isso realmente não está acontecendo e você interpretou mal as informações fornecidas pelo seu sistema. (Observe que não estou lhe dizendo que você está enganado ; se você sabe como conseguiu 100 GB de arquivos do sistema, nem esta nem as outras duas causas sugeridas abaixo estão corretas.)
  • Há um erro que afeta o sistema e faz com que o espaço usado e livre seja reportado incorretamente.
  • Há um bug bastante sério, que afeta o sistema e faz com que os arquivos (talvez arquivos de logon /var/log) cresçam a uma taxa extremamente alta e sem limites.

Como Sergey tem dito , apagando indiscriminadamente todos os arquivos que têm o mesmo conteúdo será bastante provável causa danos ao seu sistema. Por exemplo, existem vários arquivos em branco que podem existir no seu sistema e são usados ​​como bloqueios ou para indicar alguma condição. Você também pode ter programas que contêm cópias separadas de arquivos idênticos (quando os arquivos fornecem a mesma funcionalidade para ambos os programas, que não foram removidos para uma biblioteca ou pacote separado).

Provavelmente, você pode excluir os arquivos "duplicados" executando-o comoroot . Mas você realmente não deve fazer isso - provavelmente causará graves danos ao seu sistema Ubuntu.

Você perguntou em um comentário:

Existe alguma maneira de comandar o fdupes para excluir todas as duplicatas sem me pedir ou notificar?

fdupes -f pode fazer o que quiser. Veja a página de fdupesmanual . Mas você realmente não deve fazer isso.

Em vez disso, você deve descobrir o que está acontecendo. Se você quiser que o ajudemos com isso, certamente o ajudaremos. Se você expandir sua pergunta para explicar que deseja ajuda para descobrir o que está ocupando espaço, obterá respostas para fornecer essas informações ou isso poderá ser fechado como uma duplicata de outra pergunta que fornece informações sobre como descobrir isso. (É provável que qualquer uma dessas situações o beneficie.) Obviamente, isso pressupõe que você queira que ajudemos a encontrar a causa do seu sistema ocupando tanto espaço (ou parecendo).

A primeira etapa para investigar isso é examinar (e publicar, editando sua pergunta) a saída desses comandos, que fornecem informações detalhadas sobre quais discos você possui e quanto espaço há neles:

mount
df -h
sudo du -sh /*

Você pode executar esses comandos em uma janela do Terminal ( Ctrl+ Alt+ T). O último comando levará um tempo. Você também pode receber alguns Permission deniederros (mesmo executando-o como root), principalmente em relação às .gvfspastas nos diretórios pessoais dos usuários. Isso não é nada para se preocupar.

Eliah Kagan
fonte
4

Eu tenho uma solução rápida e suja (definitivamente evite a gravação do arquivo de log, mas não resolva o problema raiz):

esse arquivo de log é gravado por / lib / udev / uvcdynctrl

  1. Original de backup sudo cp /lib/udev/uvcdynctrl /lib/udev/uvcdynctrl_backup
  2. Editar original gksu gedit /lib/udev/uvcdynctrl
  3. Procure todos os elementos que estão nesse formato " debug = 1 "
  4. Mude para " debug = 0 "
  5. Exclua o arquivo de log de uma vez por todas sudo rm /var/log/uvcdynctrl-udev.log
Des
fonte
3

O problema é este pacote: uvcdynctrl-udev.

É um programa de useles e buggies. Ele deve ser simplesmente removido dos repositórios debian e ubuntu. Não deve ser instalado. Este pacote não apenas cria esses arquivos de log ENORME, mas também causa o travamento ou o mau funcionamento do Cheese e de outros aplicativos de webcam (não é possível capturar o vídeo em resolução máxima com o Cheese ou o Guvcview? REMOVA ESTE PACOTE E FUNCIONA COMO DEVE SER !

Esse bug existe há anos e o manteiner do uvcdyn ... parece não se importar com isso.

A solução é simples: sudo apt-get remove uvcdynctrl-udev.

Se você quiser ter certeza do que está fazendo, use o Synaptic. Procure o pacote de buggies uvcdynctrl-udev e uvcdynctrl-udev-data . Mark'em para remoção completa. Você notará que isso não afetará outros programas; eles não são dependências; portanto, você pode removê-lo com segurança. Faça.

Em seguida, verifique / var / log, pesquise esse enorme uvcdynctrl-udev.log , como root, exclua-o. (abra um terminal **

cd /var/log
sudo rm uvcdynctrl-udev.log

**) Acredite, você não perderá este pacote.

tuprofe demusica
fonte
tuprofe demusica está certo! Quase joguei fora um microscópio porque pensei que estava quebrado. Eu tentei mais uma vez depois de excluir este pacote.
rickyrockrat 26/03/19
2

Vá para Terminal(o atalho é Ctrl+ Alt+ t) e digite:

gksudo nautilus

Isso abrirá o Nautilus com permissões de root. Agora exclua seus arquivos.

Espero que isso ajude você!

Max Tither
fonte
não ajuda, existem 10000s de arquivos
user84055
Como você fez 10000s de cópias. Será que as duplicatas parecido com este . Nesse caso, você não pode simplesmente selecionar um arquivo, pressionar Shift e, em seguida, selecionar todos eles e excluí-los.
Max Tither
o problema é que não consigo encontrar os arquivos específicos que foram duplicados porque não sei quais arquivos foram copiados e a localização deles.
user84055
Encontrei um script bash para encontrar arquivos duplicados. Ele os encontrará e os moverá para uma pasta. Então você pode simplesmente excluir a pasta duplicada.
Max Tither
não dá sorte com isso. Ele sai depois de executar por 2 minutos.
user84055
-1

Acho que a melhor coisa aqui é reinstalar, considerando a quantidade aparente de dano, o fato de não estar claro o que realmente aconteceu e o seu baixo nível de conforto ao repará-lo manualmente.

Preserve seu diretório pessoal ( não reformate ou particione) e reinstale, o que deve limpar os diretórios do sistema.

poolie
fonte
1
Embora a reinstalação seja certamente uma opção, geralmente é fácil descobrir onde os arquivos grandes foram copiados ou se há arquivos do sistema aumentando de tamanho incontrolavelmente, quais arquivos eles são.
Eliah Kagan
@Eliah, tenho certeza que você e eu acharíamos fácil, mas não tenho certeza de que o OP o fará. E, se não tiver sido investido muito tempo na máquina (eu nem vou mencionar backups de configuração), explodi-la pode ser a escolha mais eficiente.
poolieby
1
Observe que isso não ajudaria aqui. Ele /homeestá na mesma partição que /, portanto, ele não pode t clear that partition. And I donpensar que o instalador exclua arquivos supérfluos na partição que será usada para a instalação (tudo ou nenhum).
Philipp Wendler
2
O instalador removerá tudo em / var, exceto / var / local, portanto esta resposta é uma opção viável.
Jorge Castro