rdesktop USB-Umleitung zum Entfernen speichern

3969
wullxz

Wir haben mehrere HP Thin-Clients vom Typ t5545 im Einsatz. Wir leiten USB-Medien auf den Terminalserver um. Da der t5545 ein von hp angepasstes Debian ausführt, können wir es irgendwie wie ein Debian behandeln.

Zuerst werde ich erklären, wie die USB-Umleitung konfiguriert ist:

  • mounten Sie es automatisch in / tmp / tmpfs / media
  • / tmp / tmpfs / media wird als Datenträger "Z" über den rdesktop-parameter -r Datenträger umgeleitet: Freigabename = Pfad
  • Im Falle eines entfernten usb-media führt udev ein Skript aus, um -l das Gerät umount zu machen und den Mountpoint zu löschen

Die Umgebung:

  • Thin-Clients laufen unter Linux: root @ mac-addr : / tmp / tmpfs / media # uname -a
    Linux mac-addr 2.6.26-2-686 1 SMP Mi 4 Nov 20:45:37 UTC 2009 i686 GNU / Linux
  • Terminalserver führt Windows Server 2008 R2 aus

Problem: Wenn Benutzer auf USB-Medien schreiben, scheint es, dass sie sofort geschrieben werden. Tatsächlich benötigt die Datei einige Sekunden, um geschrieben zu werden, selbst wenn sie nur wenige KB hat. Server 2008 R2 zeigt dazu keinen Hinweis. Wenn der Benutzer sein USB-Medium direkt nach dem Schreiben auf das USB-Medium entfernt, befindet sich die Datei nicht auf seinem USB-Medium.

Frage: Kann ich den Benutzer über den Schreibfortschritt informieren? Wenn möglich, sollte dies kein Drittanbieter-Tool sein, das auf dem Thinclient installiert werden muss, da sehr wenig Platz zur Verfügung steht.

Edit: Keine Ideen? Die Lösung sollte nicht wie die von Windows-7 bekannte sein, außer das Entfernen von USB-Medien. Es wäre gut, wenn es sogar eine Benachrichtigung gibt, wenn der Schreibvorgang läuft oder fertig ist.

Update:
Noch keine Lösung! Es gibt immer noch die Chance, die 150 Reputationspunkte zu erhalten!

Ich brauche einen dieser zwei Punkte:
- eine Möglichkeit, den Benutzer darüber zu informieren, wenn der Schreibvorgang abgeschlossen ist, oder ...
- ein Skript / eine kleine Anwendung ohne Abhängigkeiten (da die Flash-Platte fast voll ist), die ein sicheres Entfernen ermöglicht von usb-media

Edit :
Ich möchte dieses Kopfgeld wirklich gerne verschenken. Beeile dich ;)

0
Warten Sie, Rdesktop bis 2008 R2? Das habe ich noch nie gemacht! Es wird immer sofort getrennt ... sinni800 vor 13 Jahren 0
Ja, es funktioniert ... meistens ... Laut `dpkg -l | grep rdesktop` es gibt rdesktop 1.6.0-1.36, das von hp installiert wurde. Sie mussten einen Patch anwenden, um einige usb-Umleitungsfehler zu beheben, z. B. das Nicht-Leeren-Verzeichnis nicht löschen zu können, und eine zusätzliche udev-Regel, um das Aufheben der Bereitstellung von USB-Medien automatisch zu beenden, wenn das Plug-In nicht angeschlossen ist. Aber abgesehen davon funktioniert es. wullxz vor 13 Jahren 0
Huh, das letzte Mal habe ich es versucht, es hat nicht funktioniert, ich muss es nochmal versuchen ... sinni800 vor 13 Jahren 0

4 Antworten auf die Frage

1
bakytn

Das Problem liegt weder bei RDESKTOP noch bei Windows. Es ist von der Art, wie Linux (und andere Betriebssysteme) mit Wechselmedien arbeiten. Sie sollten sicher entfernt und anschließend entfernt werden, um sicherzustellen, dass frisch geschriebene Daten synchronisiert wurden.

Sie können Ihr System informieren, damit diese "Synchronisierungen" häufiger vorgenommen werden.

Sie können einen C-Daemon schreiben, der dies für Sie tun würde. Oder Sie können in die Kernel-Moduleinstellungen einsteigen und angeben, dass der Schreibcache nicht verwendet werden soll.

Ich hätte einen C-Dämon schreiben können, aber ich bin kein guter Programmierer und noch weniger ein Linux-Programmierer. Ich verstehe Ihre Idee und habe auch darüber nachgedacht, aber ich kann sie nicht umsetzen. Sie haben mir jedoch keine Lösung gegeben, aber gute Hinweise - ich stimme Ihnen trotzdem zu. wullxz vor 12 Jahren 0
1
Bgs

Mount your local stuff (/tmp/tmpfs/* in your case) with sync option.

Inzwischen betreuen wir den Kunden nicht mehr. Dieser Hinweis würde jedoch meistens verhindern, dass Daten verloren gehen, und ich akzeptiere diese Antwort aus diesem Grund. Ich kann diese Lösung jedoch nicht testen - ich lese nur die Manpage von `mount ', um zu erfahren, was die` sync`-Option bewirkt. wullxz vor 12 Jahren 0
0
yeedl

Dies ist eine schwierige Frage. Wenn ich das richtig verstanden habe, soll ein Benutzer einige Sekunden warten, bevor er sein USB-Laufwerk entfernt, das als Ordner in seiner Remote-Desktopsitzung angezeigt wird. Meine einzige Idee, dieses Problem zu lösen, wäre, dieses Dienstprogramm zu verwenden, bei dem der Ordner (Einhängepunkt) neue Daten erhalten hat und dann ein Skript zum Starten eines Dialogfelds (ich würde autohotkey verwenden würde ) aufgerufen werden, das den Benutzer warnt. " Sie haben kürzlich ein USB-Gerät angeschlossen. Bitte warten Sie 20 Sekunden, nachdem Sie das letzte Mal Daten auf Ihrem USB-Gerät gespeichert haben, bevor Sie das Gerät entfernen. Andernfalls werden Ihre Daten möglicherweise nicht ordnungsgemäß gespeichert. " Lassen Sie es Z: \ überwachen, um zu sehen, ob ein Ordner erstellt wurde.

Oder hast du Freerdp ausprobiert ? Es enthält möglicherweise nicht die Verzögerung, die Sie erwähnen.

Das Problem ist, dass mein Client ein Thin-Client ist. Auf der Flash-Platte ist nicht mehr viel Platz. Ich hätte gerne eine Lösung, die das Entfernen von USB-Medien sicherer macht oder mich genau nach dem Beenden aller Schreibaufgaben auffällt. Ich weiß nicht, welche Dateien auf usb-media geschrieben werden und wie groß sie sein werden. Das bedeutet: Es kann sein, dass 20 Sekunden nicht reichen, um zu warten ... Ich möchte damit sparen. wullxz vor 13 Jahren 0
Aber wenn sich Leute in einer RDP-Sitzung befinden und etwas außerhalb ihres RDP auf ihrem Rechner auftaucht, werden sie es dann sehen? Sehen Sie sich dieses Dienstprogramm an: http://iwatch.sourceforge.net/index.html yeedl vor 13 Jahren 0
okay ... ich muss das anschauen. Leider habe ich heute viele Aufgaben und kann sie nicht innerhalb der nächsten 24 Stunden testen. Können Sie mir sagen, wie viel Speicherplatz dieses Paket benötigt? Gibt es Abhängigkeiten? Wenn nichts funktioniert, muss ich ein kleines Skript für den Server und den Thin-Client schreiben, damit der Benutzer den USB-Stick aushängen kann (das sollte nicht allzu schwierig sein). wullxz vor 13 Jahren 0
leider hat iwatch zu viele abhängigkeiten, die auf dem Thinclient noch nicht installiert sind. Das würde nicht auf die Flash-Disk passen. Hast du andere Ideen? wullxz vor 13 Jahren 0
0
dvd

Sie können verwenden, um fuserzu sehen, welche PID einen Einhängepunkt verwendet.

/media/sdc1funktioniert? fuser -vm /media/sdc1zeigt Benutzer, PID, Zugriff und Befehl an. Sie benötigen ein Skript, um den Trick auszuführen. Prüfen Sie, ob der F- Zugriff (zum Schreiben geöffnete Datei) aktiv ist.

ZB Prüfen, ob jemand verwendet sr0:

$ fuser -m / dev / sr0 -v

USER PID ACCESS COMMAND / dev / sr0:
DVD 17298 F .... xfburn