Onde estou?? - Entendendo os Diretórios no Linux
Posted by Blog do Curso Técnico em Informática in Linux on domingo, 6 de setembro de 2009
Retirado do livro "Linux Entendendo o Sistema" por Carlos E. Morimoto.
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. No Windows temos os arquivos do sistema concentrados nas pastas Windows e 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ê vê no 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", ou recursos de sistema Unix). 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. 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, que fazem parte de um programa específico, enquanto as terminadas em ".so.versão" (xxx.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 e alguns arquivos usados pelo Lilo (o gerenciador de boot do sistema), que são carregados na fase inicial do boot. Estes arquivos são pequenos, geralmente ocupam menos de 5 MB. Versões antigas do Red Hat e de outras distribuições criam por default uma partição separada para o diretório "/boot" de cerca de 30 MB, posicionada no início do disco para evitar o limite de 1024 cilindros dos BIOS de micros antigos. Isto não é necessário hoje em dia, pois nas versões atuais do Lilo este limite não existe mais. Apesar disso, alguns usuários preferem manter o "/boot" numa partição separada por questão de hábito.
Se tiver curiosidade, o arquivo "config-2.6.11-kanotix-7" (o número de versão muda de acordo com a distribuição) é justamente o arquivo compactado com o Kernel do sistema, que é carregado durante o boot.
Quando se fala em particionamento, as possibilidades são muitas, existem até listas de discussão dedicadas exclusivamente ao assunto. Afinal, talvez usar o sistema de arquivos xxx na partição yyy possa melhorar em 0,03% o desempenho do sistema... Tem gente que realmente se prende aos detalhes. :-).
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 ponteiros 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/mouse" contém as informações enviadas pelo mouse.
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 Kernel se encarrega da parte complicada.
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í.
Os arquivos recebem o nome dos programas seguidos geralmente da extensão .conf. Por exemplo, o arquivo de configuração do servidor DHCP (que pode ser configurado para atribuir endereços IP aos outros micros da rede) é o "/etc/dhcpd.conf", enquanto o do servidor FTP é o "/etc/proftpd.conf". Claro, ao contrário do registro, 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 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", onde vai a lista de todos os dispositivos usados pelo sistema e as pastas em que cada um é montado.
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 (kdesu 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.
This entry was posted on domingo, 6 de setembro de 2009 at 03:23 and is filed under Linux. You can follow any responses to this entry through the RSS 2.0. You can leave a response.
Postar um comentário