sábado, 15 de agosto de 2009

Manipulando Hardware e Dispositivos

- Objetivos
  • Entender o funcionamento do /udev;
  • Diferenciar devfs de udev;
  • compreender o processo de montagem de um dispositivo;
  • testar alguns dispotivos presentes em /dev;
  • compreender como funciona o particionamento;
  • aplicar um sistema de arquivos a uma partição;
Dispositivos em Linux

O núcledo do sistema Operacional GNU/LINUX, o "kernel", se comunica com os dispositivos de uma maneira muito interessante: praticamente todos os dispositivos GNU/LINUX são representados por um arquivo correspondente dentro do sistema de arquivos. Exceções a esta regra são as placas de rede.

O local onde são armazenas estas representações é o diretórios /dev. Uma listagem deste diretório mostrará uma série de arquivos, todos eles representando uma parte do seu computador. A interação com estes arquivos pelo sistema operacional GNU/LINUX realiza as leituras dos pedidos, exemplo, comandando a placa de video para coordenar as respostas no seu monitor.
Explorando o /dev

Uma diferença marcante entre sistemas Windows e Unix-like é a forma de lidar com partições e dispositivos como unidade de disquete e CD-ROM. Em sistemas Windows desde a partição no disco rigído a um pen drive o acesso a eles são efetuados utilizando a idéia de "unidades" ou drives, como o drive C: ou A: ou até mesmo uma unidade de rede. Esse tipo de conceito faz com que o usuário final não precise sabe o que está por trás desses equipamentos, simplificando sua utilização ao preço da perda do conhecimento.

O diretório /dev consiste de um filesystem especial e pode ser de dois tipos: devfs ou udev.

O devfs é o mais antigo tendo sido substituído pelo udev a partir do kernel 2.6.12. Uma das diferenças entre os dois é que no devfs os arquivos de dispositivos são criados uma única vez, dessa forma, o diretóri /dev/ contém os dispostivos para todos os hardwares suportados pelo linux, não importando se eles estão disponiveis na maquina ou não. Com o udev os dispositivos são criados de acordo com a disponibilidade no sistema. Desta forma, o diretório contém apenas os arquivos de dispostivo para os hardwares presentes na máquina.

obs: Dispositivos de armazenamentos como hds sata e ide, os satas e scsi são identificados como /dev/sda e os dispotivos IDE são identificados como /dev/hda.



Prática dirigida

1- Altere o layout de teclado para utilizar o padrão americano:

# loadkeys -d us

2 - tente utilizar a tecla "ç"

3 - volte o layout de teclado para o padrão br-abn2:

# loadkeys -d br-abnt2

4 - Altere o layout de teclado padrão do sistema. Você tem duas opções:

# kbd-config

# dpkg-reconfigure console-data

Para se aprofundar no assunto:

parâmetros de montagem:

# info mount

O arquivo /etc/fstab:

# info fstab

Pratica dirigida 2

1 - Determine qual o dispositivo associado ao "hd", tanto o CD-ROM, quando o Disco Rígido:

#dmesg |grep hd

2 - Coloque um CD no drive e torne o contéudo acessível no diretório /media/cdrom:

# mount -t iso9660 /dev/cdrom /media/cdrom

3 - Verifique que o dispositivo foi montado:

# mount

# df -h

# cat /etc/mtab

# cat /proc/mounts

4- Entre no diretório e explore o contéudo do CD:

# cd /media/cdrom ; ls

5 - Desmonte o CD:

# umont /media/cdrom

deu erro ???? Por que ????


6 - Saia do diretório /media/cdrom:

# cd

7 - tente desmonta-lo novamente:

# umount /media/cdrom

Agora Sim! :)


- Agora que já sabemos montar dispostivos, vamos aprender a criar partições...


10 - Utilizando o particionar 'cfdisk' crie uma nova partição de 'swap' e uma nova partição linux:

As novas partições devem ter os seguintes tamanhos:

  • /dev/hda9 partição tipo swap com 256mb;
  • /dev/hda10 nova partição com 1000/

# cfdisk /dev/hda


Após criar as novas partições será necessário rebootar a máquina para que a nova tabela de partições seja relida.


11 - Prepare a partição swap:

# mkswap

12 - ative essa nova partição de swap:

# swapon

O filesystem que desejamos aplicar a uma das novas partições é o ext3. Para que possamos realizar essa tarefa devemos determinar se o nosso kernel suporta filesystem e se o software necessário está instalado.

13 - Determine se o ext3 pode ser utilizado, ou seja, tem suporte no kernel:

# vim /proc/filesystems

14 - Instalados os softwares podemos aplicar o ext3 à nova partição:

# mkfs -t ext3

Uma vez que o filesystem foi aplicado à partição, vamos torná-lo acessível por meio do diretório /backup:

15 - Crie o ponto de montagem /backup:

# mkdir /backup


16 - Teste a montagem do novo filesystem:

# mount -t ext3 /backup

17 - Verifique se a partição foi montada e se o swap está em uso:

# mount
# df -h
#cat /etc/mtab
#cat /proc/mounts
#cat /proc/swaps

18 - crie um arquivo dentro do /backup:

# touch /backup/README
# echo "partição swap" >> /backup/README

19 - coloque as entradas no fstab para que o novo swap e a partição de backup sejam montadas na hora do boot:

# vim /etc/fstab

none swap sw 0 0
/backup ext3 defaults 0 0



Exercicio téorico


1 - Qual o nome do arquivo de dispositivo que é a oitava partição do HD conectado como slave na segunda controladora IDE? Forneça o caminho completo a ele?
r: www.google.com

2 - Qual a diferença entre os arquivos /etc/fstab e /etc/mtab?

3 - Qual comando pode ser utilizado para determinar se o mouse está conectado ao /dev/psaux?

4 - Qual comando mount pode ser executado com sucesso especificando apenas o nome do dispositivo ou apenas o ponto de montagem?

5 - Qual deve ser a linha no fstab para que não seja possível executar um programa ou script a partir da partição /home?

6 - Quais parâmetros dos comandos fdisk e cfdisk podem ser utilizados para imprimir na tela a tabela de partições sem entrar no programa propriamente dito? De os comandos completos como resposta.

DICA LPI: O arquivo /etc/fstab é criado automaticamente quando o linux é instalado;

Ao contrário do que pensam os file system não mordem, e podem ser grandes aliados na prova, principalmente no termo migração de file system.

Conhecer os particionadores é muito importante, anote mais um ai: Gparted.

E pleno entendimento da estruta desses dispostivos pode ser de ampla importância!

Leitura sugerida: man 8 mount.

2 comentários:

galdinocamargo disse...

Gostei! Gostaria de corrigir e acrescentar se me permite. Segue:Original: O udevfs é o mais antigo tento sido substituído pelo udev a partir do kernel 2.6.12.
Correção: O devfs é o mais antigo tendo sido substituído pelo udev a partir do kernel 2.6.12.

Original: obs: Dispositivos de armazenamentos como hds sata e ide, os satas e scsi são identificados como /dev/sda e os dispotivos IDE são identificados como /dev/hda.

Sugestão: obs: Dispositivos de armazenamentos como hds sata e ide, os satas e scsi são identificados como /dev/sda (Os IDE's também seguem esta nomeclatura desde o do kernel 2.6.20 onde foi abandonado o discos PATA antes disso ou talvez em algumas distros por ai os dispotivos IDE são identificados como: /dev/hda ou /dev/hdb

26 de agosto de 2009 às 19:21
Agnaldo disse...

Obrigado pela participação Galdino, realmente estava errado, quando você encontrar algum erro pode fazer um comentário, sua participação é muito importante, para que nosso contéudo fique sempre atualizado.

vlew

26 de agosto de 2009 às 19:44

Postar um comentário