Fundamentos do sistema Linux - arquivos e diretórios

Nos sistemas Unix, tudo o que pode ser manipulado pelo sistema operacional é representado sob a forma de arquivo, incluindo aí diretórios, dispositivos e processos. Esse artigo, retirado do Guia Bozolinux - Fundamentos do Sistema Linux, aborda os principais conceitos sobre arquivos e diretórios no Linux.

[ Hits: 177.063 ]

Por: Davidson Rodrigues Paulo em 28/10/2005 | Blog: http://davidsonpaulo.com/


Arquivos



Costuma-se definir arquivo como o lugar onde gravamos nossos dados. Em outros sistemas operacionais é feita uma distinção entre arquivos, diretórios, dispositivos e outros componentes do sistema. No GNU/Linux, entretanto, tudo aquilo que pode ser manipulado pelo sistema é tratado como arquivo.

Mas, se tudo é arquivo, como o sistema operacional faz a distinção entre arquivo regular, diretório, dispositivo, processo, etc? Muito simples: todo arquivo tem o que é chamado cabeçalho, que contém informações como: tipo, tamanho, data de acesso, modificação, etc. Através desse cabeçalho o GNU/Linux sabe então quando se trata de arquivo regular, diretório, dispositivo, e assim por diante.

Tipos de Arquivos


Os tipos de arquivos existentes num sistema GNU/Linux são os seguintes:
  • Arquivo regular: tipo comum que contém dados somente. Os arquivos regulares podem ser dos mais variados tipos, guardando os mais diferentes tipos de informações. Existem arquivos de áudio, vídeo, imagem, texto, enfim. Os arquivos se dividem em 2 (duas) categorias principais:
    • Binários: arquivos binários são compostos por bits 1 e 0 e só podem ser interpretados pelo sistema operacional, sendo incompreensíveis por nós humanos. Se um arquivo binário for aberto por um editor de textos, serão exibidos vários símbolos estranhos. Programas e bibliotecas são exemplos de arquivos binários;
    • Texto: arquivos do tipo texto são compostos por informações em forma de texto, que podem ser entendidas pelo usuário comum. Arquivos desse tipo não necessariamente contém texto propriamente dito. Quando se diz que um arquivo é do tipo texto estamos querendo dizer que, se o abrirmos num editor de texto, serão exibidos informações legíveis (ainda que possam não fazer muito sentido).
  • Diretórios: os diretórios são utilizados para separar um grupo de arquivos de outros. Um diretório pode conter arquivos e outros diretórios, que serão chamados subdiretórios;
  • Dispositivos: todo componente de hardware instalável é chamado dispositivo. Placas de vídeo, som, rede, drives de CD-ROM, tudo o que se liga na interface USB, memória RAM, são dispositivos. Os dispositivos podem ser:
    • De bloco: dispositivos de bloco utilizam buffer para leitura/gravação. Geralmente são unidades de disco, como HD's, CD's, etc;
    • De caracter: esses dispositivos não utilizam buffer para leitura/gravação. A maioria dos dispositivos PCI e outros dispositivos como impressoras, mouse, etc. são do tipo caracter;
    • Fifo: trata-se de um canal de comunicação, através do qual pode-se ver os dados que estão trafegando por um dispositivo;
  • Links: os links são arquivos utilizados para fazer referência a um outro arquivo localizado em outro local. Em outras palavras, são atalhos. Os links podem ser de 2 (dois) tipos:
    • Simbólicos: fazem uma referência ao arquivo através de seu endereço lógico no disco ou memória. São os links mais comuns;
    • Absolutos: fazem referência ao arquivo através do seu endereço físico no disco rígido ou memória.
  • FIFO: canal de comunicação, utilizado para direcionar os dados produzidos por um processos para um outro processo.

Arquivos podem conter diferentes tipos de informações. Cada tipo de informação requer um método específico de trabalho. Assim, um arquivo de imagem não pode ser lido por um programa de reprodução de áudio, porque os dados de um arquivo de imagem são organizados de forma totalmente diferente da de um arquivo de áudio, e o programa em questão só é capaz de lidar com arquivos de áudio.

Tendo isso em vista, é necessário que o sistema operacional e os demais programas possam diferenciar os diversos tipos de arquivos disponíveis, para evitar que um programa tente manipular um tipo de arquivo que não suporta. O GNU/Linux faz essa diferenciação através da leitura do cabeçalho do arquivo. Assim, a extensão do arquivo geralmente não importa para o sistema operacional, mas é usada tão somente para fácil identificação do usuário, motivo pelo qual é muito comum encontrarmos arquivos sem extensão no GNU/Linux.

Nomes de arquivos


Os nomes de arquivos no GNU/Linux podem ter até 255 caracteres, podendo utilizar espaços e acentos. Há exceção somente quanto ao uso dos caracteres especiais / \ | " * ? < > ! `.
Um ponto muito importante que deve ser frisado é que o GNU/Linux é case sensitive, ou seja, diferencia letras maiúsculas de minúsculas. Sendo assim, os arquivos file.iso e File.iso são diferentes para o GNU/Linux. Sendo assim, quando for se referir a um arquivo, tenha a certeza de escrever com a capitulação correta.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Arquivos
   3. Diretórios
   4. Créditos
Outros artigos deste autor

Fundamentos do sistema Linux - usuários e grupos

Zenwalk Core: Para quem só quer o essencial

Fundamentos do sistema Linux - comandos do Linux

Slackware no notebook Toshiba Satellite M55-S3262

Resolvendo dependências no Slackware com slackpkg

Leitura recomendada

Basicão Funtoo

A Catedral e o Bazar - Eric S. Raymond

Resumo LPI 102: Tópico 108 - Serviços Essenciais do Sistema

Caracteristica e descrição das principais distribuições Linux

Introdução ao Ubuntu - Instalação de programas e outras dicas

  
Comentários
[1] Comentário enviado por davidsonpaulo em 28/10/2005 - 11:05h

Salve pessoal.

Apenas para informar que se algum dos links acima não funcionar não é porque ele estão quebrados, mas sim porque o servidor que hospeda os wikis do Bozolinux está temporariamente sem DNS, mas deve voltar em breve.

No momento da publicação desse artigo, a versão 1.5 do Guia Bozolinux - Fundamentos do Sistema Linux não se encontra disponível no SourceForge.

Abraços

[2] Comentário enviado por igorsds em 28/10/2005 - 13:55h

ae cara..
muito bom.. agora dá pra entender legal como funciona.. ou pelo menos ter uma idea de como são as coisas.. por exemplo o lance de cabeçalho nos arquivos é bem inteligente.. a forma de organização difere de arquivo a outro, dispensando extensões..
interessante..
[]'s
igor

[3] Comentário enviado por agk em 07/11/2005 - 21:03h

Muito bom mesmo esse artigo. São artigos assim que todos deveriam ler antes de se aventurarem sem ter os conhecimentos básicos de como funciona a estrutura de um sistema de arquivos linux.
Parabéns.

[4] Comentário enviado por removido em 23/11/2005 - 11:02h

Parabens mesmo. Artigo muito legal..!

[5] Comentário enviado por newbiee em 07/03/2006 - 01:00h

parabens!interessante por completo para mim ke sou iniciante tow aprendendu os significados de varias coisa kra!!!!muito bom vlw!!!tow sempre visitandu aki para mim informar!!!!me ajuda e cometa sempre para mim blz!!!!

[6] Comentário enviado por gpr.ppg.br em 27/04/2008 - 13:53h

duvida? exemplo?

no windows usamos o abrir com...
e vamos no c:\arquivos de programas\firefox

e no linux cade?



[7] Comentário enviado por Lael em 18/06/2008 - 17:03h

debian? qm trabalha com isso????
aff...

[8] Comentário enviado por sandrosfc em 24/05/2009 - 21:15h

vlw,sou iniciante ni Linux também,e nada como aprender as funções básicas e diretórios,muito bem explicado e c/ linguagem de fácil entendimento,vlw!

[9] Comentário enviado por fellkevin em 29/06/2009 - 19:24h

PERFECT!!!!
da pra entender td muito bem sem dificuldade alguma

[10] Comentário enviado por removido em 08/11/2009 - 10:11h

Já foi para os favoritos!

[]'s

[11] Comentário enviado por doradu em 04/02/2010 - 15:32h

é bom saber onde fica o kernel

[12] Comentário enviado por dvdferrari em 28/06/2013 - 10:17h

Brother essas informações são grande ajuda para meu crescimento profissional agradeço pela iniciativa. já está add em meus favoritos !

[13] Comentário enviado por Steve em 22/08/2019 - 23:06h

DÚVIDA em relação a sua informação: "definido pela Filesystem Hierarquy Standard, ou simplesmente FHS, constante da LSB."

O que é LSB? Procurei no Google e não consegui encontrar nada a respeito. Se puder explicar o que essa sigla significa como explicou FHS, agradeço pois eu gostaria de saber.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts