Linux: Entenda a estrutura de pastas e arquivos, além de permissões e direitos de usuário

Publicado em 31/05/2006 • Outros3 comentários »

(boa parte do texto sobre a estrutura de pastas foi do Carlos E. Morimoto, num arquivo que vinha no Kurumin Linux; esse texto aqui acabou virando um "remix")

Entendendo as interfaces gráficas do Linux

O sistema Linux, quando se inicializa, assim como todo sistema operacional ele interage com o hardware do computador, preparando e deixando pronto para uso os recursos da máquina, para que você possa rodar seus programas. O Linux "puro" seria sem uma "interface gráfica", sem janelas de programas, por exemplo. Ele apresenta uma tela preta, onde você inicializa programas e trabalha com seus arquivos digitando comandos. É a mesma forma de interação do MS-DOS, por exemplo, variando-se é claro os comandos. As interfaces gráficas, como o KDE, Gnome, Blanes, IceWM etc., são "programas" que rodam no Linux, são programas que facilitam a interação do usuário com o computador, permitindo o uso de recursos visuais, do mouse, etc. Dependendo da instalação do computador, a interface gráfica é carregada automaticamente, de modo que você nem percebe que ela é um programa "separado". Porém em servidores de redes ou de sites, por exemplo, não é necessário carregá-la (economizando memória e deixando o processador mais livre para outras funções), já que o computador ficará trabalhando sem ninguém utilizá-lo diretamente, exceto para configurá-lo ou solucionar problemas.

Permissões e acesso aos arquivos

No Linux há o conceito de permissões. Um administrador pode, por exemplo, configurar o sistema e instalar programas, já um operador de telemarketing trabalhará com um navegador para acessar a Internet, uma planilha e um processador de textos. O operador de telemarketing pode trabalhar como um "usuário restrito", ou seja: ele não pode fazer alterações no computador, nem acessar os arquivos do administrador. Esse conceito existe no Windows NT e nos seus descententes, Windows 2000, XP, 2003, etc. Para cada pessoa que usa com certa freqüência o computador, deve ser criada uma conta de usuário. A conta de administração é a "root", e só deve ser usada para configurar o sistema e instalar novos programas. Equivale a conta "Administrador", no Windows. Os usuários utilizam uma conta que pode levar o seu nome, como "Marquinhos", por exemplo, ou outro nome qualquer, como "micro01", "geek", etc (depende de quem é o dono do computador e onde ele será usado!). Assim, numa empresa, por exemplo, o operador de telemarketing não pode acessar os arquivos do administrador do sistema (root), nem do pessoal do departamento de vendas.

Cada conta de usuário guarda as configurações pessoais dos programas e da interface gráfica, por exemplo o papel de parede e o esquema de cores da área de trabalho.

Entendendo as pastas no Linux

O primeiro choque para quem está chegando agora é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas C:\Windows\ e C:\Arquivos de programas\ e você pode criar e organizar suas pastas da forma que quiser.

No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.

Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?

A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz ou simplesmente "/".

Dentro deste diretório temos não apenas todos arquivos e as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos, formando a estrutura que você está vê quando abre o gerenciador de arquivos.

O diretório */bin* armazena os executáveis de alguns comandos básicos do sistema, como o su, tar, cat, rm, pwd, etc. Geralmente isto soma de 5 a 7 MB, pouca coisa. O grosso dos programas ficam instalados dentro do diretório */usr* (de "Unix System Resources"). Este é de longe o diretório com mais arquivos em qualquer distribuição Linux, pois é aqui que ficam os executáveis e bibliotecas de todos os principais programas. A pasta */usr/bin* (bin de binário) por exemplo armazena cerca de 2.000 programas e atalhos para programas numa instalação típica do Linux. Se você tiver que chutar em que pasta está o executável de um programa qualquer, o melhor chute seria justamente a pasta /usr/bin :-)

Outro diretório populado é o */usr/lib*, onde ficam armazenadas bibliotecas usadas pelos programas. A função destas bibliotecas lembra um pouco a dos arquivos .dll no Windows. As bibliotecas com extensão .a são bibliotecas estáticas, enquanto as terminadas em .so.versão (zzz.so.1, yyy.so.3, etc.) são bibliotecas compartilhadas, usadas por vários programas.

Subindo de novo, a pasta */boot* armazena (como era de se esperar) o Kernel ("coração" do sistema) e alguns arquivos usados pelo Lilo (o gerenciador de boot do sistema, caso você esteja utilizando o Lilo), que são carregados na fase inicial da inicialização do computadoer. Estes arquivos são pequenos, geralmente ocupam menos de 5 MB.

Logo abaixo temos o diretório /dev, que é de longe o exemplo mais exótico de estrutura de diretório no Linux. Todos os arquivos contidos aqui, como por exemplo /dev/hda, /dev/dsp, /dev/modem, etc. não são arquivos armazenados no HD, mas sim "links" para dispositivos de hardware. Por exemplo, todos os arquivos gravados no "arquivo" */dev/dsp* serão reproduzidos pela placa de som, enquanto o "arquivo" */dev/ttyS0* contém os dados enviados pelo mouse (ou outro dispositivo conectado na porta serial 1).

Esta organização visa facilitar a vida dos programadores, que podem acessar o hardware do micro simplesmente fazendo seus programas lerem e gravarem em arquivos. Não é preciso nenhum comando esdrúxulo para tocar um arquivo em Wav, basta "copiá-lo" para o arquivo */dev/dsp*, o resto do trabalho é feito pelo próprio sistema. O mesmo se aplica ao enviar um arquivo pela rede, ler as teclas do teclado ou os clicks do mouse e assim por diante.

O diretório */etc* concentra os arquivos de configuração do sistema, substituindo de certa forma o registro do Windows. A vantagem é que enquanto o registro é uma espécie de caixa preta, os scripts do diretório /etc são desenvolvidos justamente para facilitar a edição manual. É verdade que na maioria dos casos isto não é necessário, graças aos vários utilitários de configuração disponíveis, mas a possibilidade continua aí. É recomendável não sair alterando os arquivos dessa pasta indevidamente, pois o sistema poderá deixar de funcionar ou passará a apresentar erros.

Os arquivos de configuração recebem o nome dos programas seguidos geralmente da extensão .conf. Por exemplo, o arquivo de configuração do serviço de dhcp é o */etc/dhcpd.conf*, enquanto o do servidor proftp é o */etc/proftpd.conf*. Claro, ao contrário do registro do Windows, os arquivos do /etc não se corrompem sozinhos e é fácil fazer cópias de segurança caso necessário...

O diretório */mnt* (de "mount") recebe este nome justamente por servir de "ponto de montagem" para o CD-ROM (/mnt/cdrom), drive de disquetes (/mnt/floppy), drives Zip e outros dispositivos de armazenamento. O ponto de montagem é uma forma de acessar uma unidade de disco, por meio de um caminho que a identifique. Por exemplo, ao acessar o disquete, ele deverá ser "montado" na pasta /mnt/floppy. Assim, todo o conteúdo do disquete ficará acessível nessa pasta, e para gravar coisas no disquete, basta gravá-las nesta pasta. As distribuições mais recentes montam e desmontam as unidades automaticamente, para facilitar o uso. Para os usuários mais avançados, o uso do diretório /mnt é apenas uma convenção. Você pode alterar o ponto de montagem do CD-ROM para /CD, ou qualquer outro lugar se quiser. Isso é configurável através do arquivo /etc/fstab.

A pasta */home/seunome* guarda seus arquivos pessoais, é equivalente à pasta "Meus documentos", do Windows. Geralmente as configurações pessoais dos programas ficam em pastas ocultas dentro da sua pasta home. As pastas ocultas começam com um ponto, por exemplo, ".kde". (Você pode exibir ou ocultar os arquivos e pastas ocultos no Linux acessando as configurações do seu gerenciador de arquivos).

Nada impede que você crie mais pastas no diretório raiz para armazenar seus arquivos: apesar de ser recomendável em termos de organização e segurança, você não é obrigado a concentrar seus arquivos dentro do seu diretório de usuário. Nada impede que você abra o gerenciador de arquivos como root (sudo konqueror), crie uma pasta /MP3, abra o menu de permissões para que seu login de usuário tenha permissão para acessá-la e a utilize para guardar suas músicas, por exemplo.

Portanto, como usuário não muito familiarizado com o Linux, você precisa saber que os dados do disquete devem ser acessados na pasta /mnt/floppy, e os do CD, em /mnt/cdrom. Os arquivos do computador ficam na pasta /home/seunome, ou o nome da máquina (por exemplo, /home/micro01, /home/cliente-1, etc). Dependendo da distribuição de Linux utilizada, esses caminhos poderão ser diferentes, mas o conceito é o mesmo: todas as pastas e drives, são acessadas em algum caminho dentro da pasta principal, "root", designada pela barra /. Antes de acessar os dados nos discos em si, você deverá dar o comando "montar", que pode ser com um clique no ícone correspondente ao dispositivo, num botão do gerenciador de arquivos, etc (depende muito da distribuição de Linux utilizada e do seu ambiente gráfico).

2006-05-30@22:17


MAIS DICAS E TUTORIAIS!
Acesse as dicas mais recentes no Explorando.com.br :).


Dicas de inglês



Aviso: Os comentários são postados pelos visitantes do site, e não expressam a opinião da produção. Eventuais comentários indesejados, ofensivos ou que firam nossas políticas ou interesses de alguma forma poderão ser removidos sem aviso prévio. Ao comentar, seu IP ser[a gravado em log, assim como em praticamente todo blog. Evite comentários inúteis.
COMENTÁRIOS DESATIVADOS: A partir de abril de 2011 os comentários nesta seção antiga do site foram desativados, porque estava vindo muito SPAM automático. Para dúvidas ou novos comentários sobre algo que você não entendeu, poste no fórum que tanto a equipe como outros visitantes poderão lhe ajudar.

3 comentários

Comentário de: Marcelo Miguel [Visitante]
Obrigado amigo era justamente meu objetivo aprender sobre estes directórios no linux e você com certeza resolveu meus problemas pois achei varios conteúdos mais o seu foi muito bem explicado.
09.11.09 @ 18:14
Comentário de: Amanda teixeira [Visitante]
Valeu, enfim alguem que consegiu explicar o sistema.
26.10.10 @ 10:50
Comentário de: Joao [Visitante]
Parab'ens.
Otimo conteudo, muito didatico, bem explicado e objetivo. As comparacoes ajudam quando se esta migrando do windows para o Linux
Obrigado.
12.01.11 @ 17:17