Montando HD Externo, câmeras e pen-drive com permissões avançadas de usuário
Esse tutorial eu irei falar sobre como configurar HD Externo, Câmeras Fotográficas e Pen-Drive com permissão do seu usuário. Eu resolvi fazer esse artigo por ver com muita frequência esse tipo de dúvida em forums e listas de discussão e por ter que responde-las algumas vezes .
Bem quando você monta um HD na mão usando o comando mount ou ntfs-3g sem especificar nenhum parâmetro ele vai usar a conta do usuário root, e na maioria das vezes ele monta a partição somente com permissão de leitura para os outros usuários , ou seja , você só vai poder ler o conteúdo do dispositivo de armazenamento.
Bem falando das câmeras Fotográficas a grande maioria usa sistema fat32, falando dos Pen-drivers quase que 100% usa fat32 e os hds externos fica de acordo com o usuário.
Principio fundamental do funcionamento de um Dispositivo de armazenamento USB qualquer .
- Quando você coloca ele na entrada USB , o kernel do linux reconhece esse dispositivo automaticamente e um script que se chama hald tenta montar esse dispositivo automaticamente em uma pasta no diretório no /media com o nome do label (nome da unidade de disco) uma pasta com o nome desse label.
- O que pode acontecer para o Sistema operacional não montar esse dispositivo automaticamente? olha isso é dificil de dizer , são diversas maneiras de erro, difícil de generalizar .
- O que eu devo fazer se ele não montou meu dispositivo? você tem que montar ele na mão .
- Mas o meu sistema operacional reconheceu esse dispositivo? Sim ele reconheceu , basta você usar o comando sudo fdisk -l para ver.
Então vamos aprender como montar esse dispositivo . primeiro vamos colocar o dispositivo na entrada USB .

Nesse caso ele reconheceu automaticamente . o nome do label é PEN_ESTUDO , ele montou esse pen-drive no /media então ficou .
/media/PEN_ESTUDO

Então como eu faço pra desmontar esse dispositivo? No console digite.
sudo umount /media/PEN_ESTUDO
julio6@Julio-Desktop:~$ sudo umount /media/PEN_ESTUDO
[sudo] password for julio6:
julio6@Julio-Desktop:~$
Então eu digamos que eu coloquei o dispositivo USB e ele não montou, como eu faço para saber qual a unidade de letra que ele reconheceu em meu sistema operacional? apenas com o comando sudo fdisl -l.
julio6@Julio-Desktop:~$ sudo fdisk -l
Disco /dev/sde: 2043 MB, 2043674624 bytes
62 heads, 61 sectors/track, 1055 cylinders
Units = cilindros of 3782 * 512 = 1936384 bytes
Disk identifier: 0×04030201Dispositivo Boot Início Fim Blocos Id Sistema
/dev/sde1 1 1056 1995656 6 FAT16
Nesse caso a unidade de letra que ele reconheceu foi /dev/sde1 .
Então todo dispositivo de armazenamento ao ser colocado na porta usb vai receber do kernel do linux a sua unidade de letra automático que nesse caso foi a /dev/sde1 , bem isso se aplica a câmeras fotográficas e a HDs externos USB? sim todos eles recebem essa letra automático do kernel.
Bem o que eu preciso para montar um dispositivo de armazenamento ? . vou precisar da letra dele que no meu caso é /dev/sde1 e a pasta que vai ser usada para monta-lo.
Exemplo : /dev/sde1 /media/mmt .
Então vamos montar esse dispositivo com a autoridade do meu usuário.
sudo mount /dev/sde1 /media/mmt -o umask=0,uid=1000,gid=1000
Traduzindo umask=0 vai dar permissão total , leitura gravação e execução .
uid=1000,gid=1000 o id do meu usuário que é 1000 e o grupo do meu usuário 1000 e .
Como eu faço para saber sobre esses parâmetros? vai no console e digita id .
julio6@Julio-Desktop:~$ id
uid=1000(julio6) gid=1000(julio6) grupos=4(adm),20(dialout),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),
104(scanner),108(lpadmin),109(admin),115(netdev),117(powerdev),1000(julio6)
julio6@Julio-Desktop:~$
Então vamos para o processo de montar os dois principais tipos de arquivos .fat32, ntfs .
1 - Para montarmos um dispositivo fat32 em um diretório com a permissão do meu usuário como o exemplo acima .
sudo mount /dev/sde1 /media/mmt -o umask=0,uid=1000,gid=1000
Para monta-lo na inicialização do sistema precisamos colocar na fstab .
sudo nano /etc/fstab
/dev/sde1 /media/mmt vfat defaults,utf8,umask=0,uid=1000,gid=1000 0 0
Nesse caso o parâmetro utf8 é o sistema de codificação padrão, e esse ultimo parâmetro 0 e 0 é a frequência com que o sistema vai checar a integridade da partição durante a inicialização , esse dois zeros diz ao sistema que o dispositivo nunca vai precisar ser verificado a integridade do file system .
2 - Para montarmos um dispositivo ntfs , precisamos saber a unidade de letra dela ? como foi falado no começo do artigo , usando o comando sudo fdisk -l .
Então eu vou montar um HD externo que eu tenho aqui . Primeiro eu vou verificar qual a letra dele.
julio6@Julio-Desktop:~$ sudo fdisk -l
Disco /dev/sde: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cilindros of 16065 * 512 = 8225280 bytes
Disk identifier: 0×12859ce4Dispositivo Boot Início Fim Blocos Id Sistema
/dev/sde1 * 1 14592 117210208+ 7 HPFS ou NTFS
Para monta-lo.
sudo ntfs-3g /dev/sde1 /media/mmt -o force,umask=0,uid=1000,gid=1000,utf8
Para colocar na inicialização no arquivo /etc/fstab .
sudo nano /etc/fstab
/dev/sde1 /media/mmt ntfs-3g defaults,utf8,umask=0,uid=1000,gid=1000 0 0
Na imagem abaixo podemos ver as permissões na pasta do HD que nós montamos .

Pronto .

24/07/08 às 12:41
Julio
Teria como tocar um som quando se pluga um disco USB, Pendrive ou Câmera Digital