Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Curso de Inglês Online

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

Determinando o número de arquivos em um sistema GNU Linux

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 27 de Fevereiro de 2003

O comando df é usado para exibir diversas informações sobre sistemas de arquivos. Em sua forma mais imediata, sem argumentos, ele exibe:

  % df
  Filesystem           1k-blocks      Used Available Use% Mounted on
  /dev/hda1               505605    220895    258606  47% /
  /dev/hda8               505605    224153    255348  47% /var
  /dev/hda9              5036284   4182564    597888  88% /usr
  /dev/hdb1              9803940   9305928         0 100% /work
  /dev/hda10              256667    134591    108824  56% /tmp
  /dev/hda5              3068312   2587388    480924  85% /usr/local
  /dev/hda7              9903732   9247408    656324  94% /home

Vemos aqui o tamanho de cada partição, quanto deste espaço está sendo usado, quanto está disponível, o percentual de uso, e o ponto de montagem.

Podemos também usar este comando para determinar o número de arquivos existente no sistema. Para isto empregamos a opção "-i", que exibe o número de inodes. Inodes são estruturas de dados que contêm informações sobre os arquivos em um sistema como por exemplo, quem é o dono dos arquivos, a quais grupos pertencem, data de última modificação, quem pode ler ou executar estes arquivos e assim por diante.

A cada arquivo do sistema está associado um inode. Desta forma, se pudermos saber quantos dos inodes disponíveis em um sistema estão sendo usados, determinamos o número de arquivos existentes neste sistema.

  % df -i
  Filesystem            Inodes   IUsed   IFree IUse% Mounted on
  /dev/hda1             130560   12457  118103   10% /
  /dev/hda8             130560    1951  128609    2% /var
  /dev/hda9             640000  104269  535731   17% /usr
  /dev/hdb1            1245184    6988 1238196    1% /work
  /dev/hda10             66264     308   65956    1% /tmp
  /dev/hda5            4294967295       0 4294967295    0% /usr/local
  /dev/hda7            4294967295       0 4294967295    0% /home

As partições /home e /usr/local estão formatadas com reiserfs e o total de inodes exibido é zero.

No campo Iused aparece o número de inodes usados pelo sistema. Com a ajuda do awk podemos determinar a soma de todos eles:

  % df -i | awk '{total=total+$3} END {print total}'
  125974

Se você somar o terceiro campo da saída do comando df acima verá que a conta bate. Por sinal, este pequeno exemplo com awk serve para várias outras coisas.... Use a sua imaginação :)


Comentários: Henrique Cesar Ulbrich <<henrique (a) digerati com br>>

Não dá pra dizer que inode = arquivo porque arquivos muito grandes estão contidos em vários inodes. Claro que, como o número de arquivos pequenos é muito grande (não deve haver mais que duas ou três dezenas de arquivos com mais de um inode), é possivel usar a dica como estimativa do número de arquivos. Mas não é possível dizer que o número de inodes é EXATAMENTE o número de arquivos.

Saiba mais lendo o "Linux Ext2fs Undeletion mini-HOWTO", em http://www.telenovela-world.com/~spade/linux/howto/mini/Ext2fs-Undeletion.html

Veja a relação completa dos artigos de Rubens Queiroz de Almeida

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 3.02/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1194 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script
Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Programando o Android