Pagina 1 di 1

Smontaggio hd usb

Inviato: lunedì 6 agosto 2012, 17:10
da bite
Dopo aver fatto un backup con rsync su un disco usb esterno, rimuovo l'unità in sicurezza e mi tocca aspettare parecchi secondi prima di avere il permesso di scollegarla.

Questo fatto per me è fastidioso. Mi piacerebbe lanciare rsync, andarmene a fare altro in attesa che si completi e poi smontare il disco esterno senza dover più aspettare.

Ho provato con uno script in cui rsync è seguito dal comando sync, ma non cambia nulla.

Immagino che se riuscissi a montare il disco esterno in modalità sync il problema sarebbe risolto, ma non sono riuscito a capire come si fa a dire all'automounter che i dischi esterni usb li voglio montati sync.

Re: Smontaggio hd usb

Inviato: lunedì 6 agosto 2012, 17:15
da cristian_c
bite » [url=http://forum.ubuntu-it.org/viewtopic.php?p=4151965#p4151965]5 minuti fa[/url] ha scritto:Dopo aver fatto un backup con rsync su un disco usb esterno, rimuovo l'unità in sicurezza e mi tocca aspettare parecchi secondi prima di avere il permesso di scollegarla.

Questo fatto per me è fastidioso. Mi piacerebbe lanciare rsync, andarmene a fare altro in attesa che si completi e poi smontare il disco esterno senza dover più aspettare.

Ho provato con uno script in cui rsync è seguito dal comando sync, ma non cambia nulla.

Immagino che se riuscissi a montare il disco esterno in modalità sync il problema sarebbe risolto, ma non sono riuscito a capire come si fa a dire all'automounter che i dischi esterni usb li voglio montati sync.
Quindi l'umount non funziona? :)

Re: Smontaggio hd usb

Inviato: lunedì 6 agosto 2012, 18:02
da bite
Funziona, ma evidentemente i dati vengono scritti solo in occasione dello smontaggio. Io vorrei evitare questa perdita di tempo.

Forse non mi sono spiegato bene. Attualmente la sequenza è questa:

1) inserisco l'hd esterno usb, che viene automaticamente montato
2) lancio rsync. So che ci mette un po' e mi sta bene. Vado a fare altro.
3) torno. rsync ha finito. Smonto l'hd esterno.
4) mi tocca aspettare ancora, fino a un minuto, che i dati vengano scritti.

Vorrei evitare il punto 4.

Re: Smontaggio hd usb

Inviato: martedì 7 agosto 2012, 9:05
da cristian_c
C'è qualcosa che non mi torna in tutto ciò :)

Sia rsync che sync trasferiscono dati. Puoi postare lo script così mi rendo conto meglio della situazione? :)

Re: Smontaggio hd usb

Inviato: martedì 7 agosto 2012, 9:56
da bite
cristian_c » [url=http://forum.ubuntu-it.org/viewtopic.php?p=4152439#p4152439]47 minuti fa[/url] ha scritto:C'è qualcosa che non mi torna in tutto ciò :)

Sia rsync che sync trasferiscono dati. Puoi postare lo script così mi rendo conto meglio della situazione? :)

Codice: Seleziona tutto

#!/bin/bash

# metti-in

if [ $UID -ne 0 ]
then
  echo "Devi essere root per eseguire questo script."
  exit 1
fi

if [ -z "$1" ] ; then
	echo "Manca destinazione"
	exit 1
fi

if [ -d Everything ] ; then 
	echo "La directory Everything esiste sulla sorgente, OK";
else 
	echo "Controlla sorgente"
	exit 1
fi

if [ -d $1/Everything ] ; then 
	echo "La directory Everything esiste sulla destinazione, OK";
else 
	echo "Controlla destinazione"
	exit 1
fi

echo "Rendo $1 uguale a $PWD, è questo che vuoi? (s/n)"
read ANSWER
case $ANSWER in
  s) echo "Vado";;
  n) echo "Rinuncio"
  	exit 1;;
  *) echo "??"
  	exit 1;;
esac

echo "rsync..."
rsync --exclude '*.d' --exclude '*.o' --exclude '*.so*' --exclude '*.a' -auv --delete --progress ./ $1/
sync



Re: Smontaggio hd usb

Inviato: martedì 7 agosto 2012, 10:18
da steff
Penso che dovresti montare con -o sync ma non so con quali opzioni viene gestito il mount automatico, controlla

Codice: Seleziona tutto

mount
per vedere le opzioni in uso.

Re: Smontaggio hd usb

Inviato: martedì 7 agosto 2012, 12:15
da bite
Lo penso anch'io
ma non so con quali opzioni viene gestito il mount automatico,
è proprio quello che vorrei sapere anch'io :D
controlla

Codice: Seleziona tutto

mount
per vedere le opzioni in uso.
async (è il default)

Re: Smontaggio hd usb

Inviato: martedì 7 agosto 2012, 13:32
da steff
Ora io uso kde è non eseguo l'automount e non saprei dove mettere mano, ma esiste il metodo di una regola per udev che esegue il mount dove e come vuoi. Ma prima andrebbe fatto la prova se funziona davvero con

Codice: Seleziona tutto

sudo umount /dev/sdXY
sudo mount  - o sync /dev/sdXY /mnt
Ti incollo una regola esempio che monta una penna determinata - le proprietà (se è sdb1) si trovano con

Codice: Seleziona tutto

 udevadm info -a -p $(udevadm info  -q path -n /dev/sdb1)
poi esegue un comando e se la sfili si smonta.

Codice: Seleziona tutto

cat /etc/udev/rules.d/12-pennina.rules
KERNEL=="sd?1",ENV{ID_MODEL}="TS256MJF2B/2L",  SYMLINK+="penna"
ACTION=="add", KERNEL=="sd?1",ENV{ID_MODEL}="TS256MJF2B/2L", RUN+="/bin/mkdir /mnt/penna"
ACTION=="add", KERNEL=="sd?1", ATTRS{vendor}=="JetFlash", RUN+="/bin/mount -t vfat -o sync,flush,uid=1000,gid=100 /dev/penna /mnt/penna"
ACTION=="add", KERNEL=="sd?1", ATTRS{vendor}=="JetFlash", RUN+="/home/arch/bin/cp-test"
ACTION=="remove", KERNEL=="sd?1", ENV{ID_VENDOR}=="JetFlash", RUN+="/bin/umount /mnt/penna"
ACTION=="remove", KERNEL=="sd?1", ENV{ID_VENDOR}=="JetFlash", RUN+="/bin/rmdir /mnt/penna"

Re: Smontaggio hd usb

Inviato: martedì 7 agosto 2012, 21:36
da bite
Grazie della risposta, la sto digerendo.

Ti farò sapere, ciao

Re: Smontaggio hd usb

Inviato: mercoledì 8 agosto 2012, 0:37
da bite
Ho scritto il mio file di regole:

Codice: Seleziona tutto

KERNEL=="sd?1", ATTRS{manufacturer}=="Seagate ", ATTRS{product}=="Portable        ", ATTRS{serial}=="2GHXFEB6    ", SYMLINK+="Postumia"
ACTION=="add", KERNEL=="sd?1", ATTRS{serial}=="2GHXFEB6    ", RUN+="/bin/mkdir /mnt/Postumia"
ACTION=="add", KERNEL=="sd?1", ATTRS{serial}=="2GHXFEB6    ", RUN+="/bin/mount -o sync,flush /dev/Postumia /mnt/Postumia"
ACTION=="remove", KERNEL=="sd?1", ATTRS{serial}=="2GHXFEB6    ", RUN+="/bin/umount /mnt/Postumia"
ACTION=="remove", KERNEL=="sd?1", ATTRS{serial}=="2GHXFEB6    ", RUN+="/bin/rmdir /mnt/Postumia"
Queste regole vengono tenute parzialmente in considerazione, perché inserendo l'HD viene creata la directory sotto /mnt e smontandolo viene eliminata, ma l'HD viene montato invece in /media, cioé nello stesso posto dove veniva montato prima, e in async.
Evidentemente c'è qualche regola prioritaria che ammazza le mie.

Se riesco a capire come fare posto qui le istruzioni.

Ho consultato anche:
http://hackaday.com/2009/09/18/how-to-write-udev-rules/
http://www.reactivated.net/writing_udev_rules.html

Re: Smontaggio hd usb

Inviato: mercoledì 8 agosto 2012, 6:47
da steff
Hai disabilitato l'automount in gnome? (non mi chiedere come ma da qualche parte con gconf-editor è possibile)

Re: Smontaggio hd usb

Inviato: mercoledì 8 agosto 2012, 23:46
da bite
In effetti credevo soltanto di averlo disabilitato. OK, grazie.