Script de shell para verificar se algo está conectado na porta USB do wifi

0

Eu tenho um ponto de acesso Wi-Fi que permite conectar um disco rígido USB acessível a partir de qualquer computador que compartilhe o mesmo wifi. Gostaria de saber se havia uma maneira de testar um script de shell se algo estivesse conectado ou não.

Se houver uma maneira de verificar qual chave USB ou o disco rígido está conectado, será uma delícia, mas não estou pedindo muito.

editar

O objetivo é verificar se a unidade está ativada antes que eu possa trabalhar com os arquivos. Eu quero acessar a unidade usando o samba. O IP é 192.168.0.1 . Eu posso pegar o nome da unidade, mas o IP é fixo, qualquer que seja o disco que eu conecto.

OBSERVAÇÃO: meu objetivo final é fazer o upload de arquivos nessa unidade com um script de shell. Eu não me importo se você me der outra maneira de fazer isso: SSH, FTP, HTTP, código morse,…

    
por SteeveDroz 10.07.2013 / 09:51

1 resposta

1

Você provavelmente não será capaz de descobrir qual é a unidade sem alguns detalhes. Mais sobre isso depois.

Primeiramente, tente montar o dispositivo. Se a montagem falhar, nada é conectado. Mude os caminhos e as opções, obviamente. (deve ser executado como root ou com sudo)

mount -t cifs -o <options here> //192.168.0.1/share_name /mnt/whatever
if [[ $? = 1 ]]; then
   echo "Drive not available."
   exit 1;
fi

Se tiver sucesso, continue com suas cópias para / mnt / whatever.

Se você quiser saber qual unidade está inserida, uma coisa simples que você pode fazer é criar um arquivo na raiz da chave USB ou na unidade que o identifica. Eu tenho uma chave USB Corsair, por exemplo, criar um arquivo vazio chamado "CORSAIR" no diretório superior da chave. Obviamente, você poderia chamar o que quiser. Em seguida, após a montagem, teste a existência do arquivo. Você pode até mesmo desmontá-lo nesse ponto e montá-lo em outro diretório para uso posterior.

if [[ -f /mnt/whatever/CORSAIR ]]; then
    echo "CORSAIR USB key detected.."
    # do some stuff
fi
if [[ -f /mnt/whatever/PERSONAL ]]; then
    echo "Personal USB key detected..."
    umount /mnt/whatever
    mount -t cifs -o <options> //192.168.0.1/share_name /mnt/PERSONAL
fi

Como você está montando e desmontando, terá que executar como root ou usar "sudo mount", que solicitará senhas.

    
por ELadner 15.04.2014 / 23:25