rdesktop USB-redirection salva la rimozione


0

Abbiamo in uso diversi thin client HP di tipo t5545. Reindirizziamo USB-Media al terminal server. Poiché il t5545 esegue un debian personalizzato da hp, possiamo in qualche modo trattarlo come un debian.

Innanzitutto, spiegherò come è configurato il reindirizzamento USB:

  • montarlo automaticamente su / tmp / tmpfs / media
  • / tmp / tmpfs / media viene reindirizzato come disco "Z" tramite rdesktop-parametro -r disco: sharename = percorso
  • in caso di supporti USB rimossi udev eseguirà uno script per umount -l il dispositivo ed eliminerà il mountpoint

L'ambiente:

  • I thin client eseguono linux: root @ mac-addr : / tmp / tmpfs / media # uname -a
    Linux mac-addr 2.6.26-2-686 1 SMP mer 4 nov 20:45:37 UTC 2009 i686 GNU / Linux
  • Terminalserver esegue Windows Server 2008 R2

Problema: quando gli utenti scrivono su supporti USB, le cuciture devono essere scritte all'istante. Ma in effetti il ​​file ha bisogno di pochi secondi per essere scritto anche se ha solo pochi kb. Server 2008 R2 non mostra alcun suggerimento al riguardo. Se l'utente rimuove il suo supporto USB direttamente dopo aver scritto sul supporto USB, il file non sarà sul suo supporto USB.

Domanda: posso fare qualcosa per informare l'utente sull'avanzamento della scrittura? Se possibile, quello non dovrebbe essere uno strumento di terze parti che deve essere installato sul client perché c'è molto meno spazio.

Modifica: Nessuna idea? La soluzione non dovrebbe essere come la rimozione salvataggi di media USB di Windows-7. Sarebbe bene se ci fosse anche una notifica se l'avanzamento della scrittura è in corso o pronto.

Aggiornamento:
nessuna soluzione ancora! C'è ancora la possibilità di ottenere i 150 punti reputazione!

Ho bisogno di uno di questi 2 punti:
- un modo per informare l'utente quando il processo di scrittura è terminato, oppure ...
- uno script / piccola applicazione senza dipendenze (perché il disco flash è quasi pieno) che consente la rimozione del salvataggio di supporti USB

Modifica :
mi piacerebbe davvero regalare quella taglia. Sbrigati ;)


Aspetta, Rdesktop per il 2008 R2? Non l'ho mai fatto funzionare! Si disconnette sempre all'istante ...
sinni800

Sì, funziona ... principalmente ... Secondo dpkg -l | grep rdesktoprdesktop 1.6.0-1.36 personalizzato da HP installato. Hanno dovuto applicare una patch per risolvere alcuni errori di reindirizzamento USB come non essere in grado di eliminare le directory non vuote e una regola udev aggiuntiva per smontare automaticamente i media USB quando è scollegato. Ma a parte questo, funziona.
Wullxz,

Eh, l'ultima volta che l'ho provato non ha funzionato, devo riprovare ...
sinni800,

Risposte:


1

Monta le tue cose locali ( /tmp/tmpfs/* nel tuo caso) con l' syncopzione.


nel frattempo, non supervisioniamo più il cliente. Tuttavia, questo suggerimento eviterebbe principalmente la perdita dei dati e accetto questa risposta per questo motivo. Tuttavia, non sono in grado di testare questa soluzione: leggo solo la manpage di mountper sapere cosa fa l' syncopzione.
Wullxz,

1

Il problema non è con RDESKTOP né con Windows. È dal modo in cui Linux (e altri sistemi operativi) funzionano con i supporti rimovibili. Dovrebbero essere rimossi in modo sicuro e quindi scollegati per assicurarsi che i dati appena scritti siano stati sincronizzati.

Quello che puoi fare è informare il tuo sistema per rendere queste "sincronizzazioni" più spesso.

puoi scrivere un demone C che lo farebbe per te. Oppure puoi scavare nelle impostazioni del modulo del kernel e specificare di non usare write-cache.


Avrei potuto scrivere un demone C ma non sono un buon programmatore e ancor meno un programmatore Linux. Capisco anche la tua idea e ci ho pensato, ma non è possibile per me implementarla. Tuttavia, non mi hai dato alcuna soluzione, ma buoni suggerimenti: ti voto comunque.
Wullxz,

0

Questo è difficile. Se ho capito bene, vuoi che un utente aspetti qualche secondo prima di rimuovere la sua unità USB, che appare come una cartella all'interno della sessione del desktop remoto. La mia unica idea per risolvere questo sarebbe quella di utilizzare questa utility che vedrà la cartella (punto di montaggio) ha ottenuto nuovi dati e quindi può attivare uno script per avviare una finestra di dialogo ( userei autohotkey ) che avviserebbe l'utente, " Di recente hai inserito un dispositivo USB, attendi 20 secondi dopo l'ultima volta in cui hai salvato i dati su USB prima di rimuoverli. Altrimenti, i tuoi dati potrebbero non essere salvati correttamente. " Fallo monitorare Z: \ per vedere se viene creata una cartella.

Oppure, hai provato Freerdp ? Potrebbe non contenere il ritardo menzionato.


il problema è che il mio client è un thin client. Non c'è molto spazio rimasto sul disco flash. Vorrei avere una soluzione che consenta di salvare la rimozione di supporti USB o che non mi senta esattamente dopo che tutte le attività di scrittura sono terminate. Non so quali file verranno scritti su supporti USB e quanto saranno grandi. Ciò significa: potrebbe essere che 20 secondi non siano sufficienti per aspettare ... Voglio essere salvato con quello.
Wullxz,

ma se le persone si trovano in una sessione RDP e qualcosa viene visualizzato sulla loro macchina al di fuori del loro RDP, lo vedranno? dai un'occhiata a questa utility: iwatch.sourceforge.net/index.html
yeedl

okay ... devo guardare questo. Purtroppo ho molte attività oggi e non posso testarlo entro le prossime 24 ore. Potete dirmi di quanto spazio su disco ha bisogno questo pacchetto? Ci sono delle dipendenze? Se non funziona nulla, dovrò scrivere un piccolo script per il server e il thin client per consentire all'utente di smontare la chiavetta USB (che non dovrebbe essere troppo difficile).
Wullxz,

purtroppo iwatch ha troppe dipendenze che non sono ancora installate sul client. Non si adatterebbe sul disco flash. Hai altre idee?
Wullxz,

0

Puoi usare fuserper vedere quale pid sta usando un mount point.

/media/sdc1sta lavorando? fuser -vm /media/sdc1mostrerà utente, pid, accesso e comando. Avrai bisogno di alcuni script per fare il trucco. Controlla se l' accesso F (file aperto per la scrittura) è attivo.

Ad esempio, se qualcuno sta usando sr0:

$ fuser -m / dev / sr0 -v

COMANDO ACCESSO PID UTENTE / dev / sr0:
dvd 17298 F .... xfburn

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.