bash script para cd em um dispositivo USB

1

Estou criando um atualizador simples para um programa que será executado em um Odroid C1 com o servidor Ubuntu 14.04.

Preâmbulo

1) Eu quero o updater.run baixado do meu servidor e colocado em um USB; então o usuário terá apenas que conectar o USB, e um script bash terá que fazer o resto 2) o usuário não terá acesso ao dispositivo, nem interface do usuário ou ssh ou qualquer outra coisa

Pergunta

Como posso copiar o updater.run de um USB conectado (e montado) para o Odroid?

Eu li muito sobre as regras do udev, mas as regras do udev precisam ter o fornecedor / modelo USB já conhecido. meu problema é que eu não tenho idéia de qual USB será conectado pelo usuário .. então eu preciso um script "geral" para pesquisar em um USB genérico para o updater.run e copiá-lo para o Odroid.

Mais uma consideração

O Odroid terá apenas um USB conectado / montado por vez, porque eu vou desabilitar todas as portas USB, mas uma. Considerando isso, eu escrevi um script bash que me dá qual / dev / sd * é o atual plug-in USB

#!/bin/bash
usb=$(lsscsi -t | grep usb) #output: [15:0:0:0] disk usb: 2-1.3:1.0 /dev/sdb 

sd=${usb#*/dev/} # catch the output above and keep just "sdb"
dev="/dev/"

full=$dev$sd # append "/dev/" to "sdb"

echo "$full" # the result is now "/dev/sdb"

read  -p "Wait the user to close the terminal" mainmenuinput -n 1

Bem .. sabendo apenas que eu tenho um USB com uma partição / dev / sdb montado em mídia (eu não sei ainda qual é o nome do dispositivo, caso contrário eu poderia apenas cd para / media / user / usb-name), como posso obter o nome dele e / ou pesquisar e copiar o updater.run?

obrigado

EDITAR

Que atraso .. Acabei de encontrar isso: Executar um script ao conectar o dispositivo USB

basicamente (agora é tão óbvio) eu só preciso colocar **** no fornecedor e modelo nas regras do udev, e o script será executado para todas as chaves USB.

Mas eu ainda tenho o problema de obter o nome do USB e copiar o updater.run no Odroid

    
por Sciakysystem 06.03.2015 / 15:13

0 respostas