Aqui em casa tenho um netbook que fica ligado 24h ele é o gateway da rede (coloquei um adaptador USB2LAN nele para segunda ethernet) e pluguei um disco usb para manter também downloads de torrents. Acontece que não tenho no-break e a energia é meio instável aqui, daí surgiu esta idéia. Por que não automontar o dispositivo cada vez que a energia falhasse? Meus torrents ficariam parados até que eu reiniciasse os downloads, mas eu não precisaria acessar o console e montar o dispositivo de novo.
Outra situação em que isso pode ser útil é para discos de backup, se por algum motivo o servidor for reiniciado ou o disco desconectado ele estaria automaticamente montado quando normalizasse o cenário e os scripts de backup podem continuar funcionando normalmente.
Ah! Você também pode reaproveitar a ideia e configurar um script para copiar automaticamente as fotos de sua máquina digital para o computador quando ela fosse conectada ;)
Chaga de blá-blá-blá e vamos ao que interessa, como configurar um servidor Linux para automontar um hd usb externo :D
Primeiro temos que identificar o nosso dispositivo. Com ele ligado a uma porta usb vamos utilizar o comando udevinfo da seguinte maneira:
udevinfo -a -p /sys/block/sdc/ | grep model (em /sys/block/sdc você deverá substituir o sdc pelo identificador do seu disco usb neste momento)
A resposta será uma linha com o modelo do seu dispositivo USB, no meu caso foi:
ATTRS{model}=="7AS "
Agora vamos configurar o udev para criar um link específico para este dispositivo quando ele for conectado ao PC.
Em /etc/udev/rules.d crie um arquivo chamado z10-meuhd.rules, e coloque nele o seguinte conteúdo:
KERNEL=="sd*", ATTRS{vendor}=="ST316082", ATTRS{model}=="7AS ", SYMLINK+="ehd%n", RUN+="/bin/montadados"
Para entendermos melhor:
KERNEL=="sd*", => Identificador do dispositivo pelo kernel
ATTRS{model}=="7AS ", => Modelo do dispositivo
SYMLINK+="ehd%n", => Identificador para o link que será criado
RUN+="/bin/montadados" => script que irá montar este dispositivo automaticamente
Agora reinicie seu udev (/etc/init.d/udev restart) e vamos ao script, criando um arquivo chamado /bin/montadados com o seguinte conteúdo:
#!/bin/bash
mount | grep /dados
if [ $? -eq 0 ]; then
umount -l /dados
fi
mount /dev/ehd1 /dados
Este script foi escrito apenas para teste e não foi melhorado, fique a vontade para faze-lo, mas a ideia é verificar se o diretório está montando (/dados é onde eu monto o HD externo) e caso ele esteja montado (lembre-se que ele pode ter sido desligado ou removido de forma forçada) realiza um umount com a opção -l (para desmontagem "relaxada", não é feita nenhuma checagem no dispositivo antes de desmontar) e depois realizada a montagem novamente.
Prontinho!
Com esta gambiarra , digo, este recurso técnico avançado meu disco estará sempre montado, mesmo que a energia falhe, falhe e falhe hahahahaha
Só um lembre-te, nunca deixe de analisar o log e efetuar fscks periódicos uma vez que o disco está mais suscetível a falhas devido a forma errada de funcionamento. Este é apenas um recurso temporário permanente até eu comprar um no-break (estou prometendo há quase 1 ano que irei comprar um)
Abraços a todos!


tindi tudo!!
Amor!!
Cada vez que leio essas coisas fico muito feliz em só ter que pedir e não ter trabalho algum!!
Já baixou Cartas para Julieta?? Agora não tem mais desculpa que o download parou no meio!!! kkkk
TQM!!!
Enviar novo comentário