Bestimmte Dateien von USB Stick auslesen & anzeigen
Bestimmte Dateien von USB Stick auslesen & anzeigen
Hallo!
Ich habe von meinem Chef (bin im Praktikum) die Aufgabe bekommen, einen sicheren Medien-PC zu entwerfen. Dafür hab ich einen Raspberry PI bekommen, sowie ein Debian-System, welches schon auf der SD-Karte installiert war.
Meine Aufgabe war es, den Internetzugang zu sperren (geschafft), sowie den Massenspeichergeräte zu verbieten. Dies ist (egal welche Anleitung ich im Internet fand) nicht möglich. Komischerweise..
Jetzt soll ich, wenn der USB Stick eingeschmissen wird, nur bestimmte Dateien anzeigen. PDF & Libre Office Dateien. Gibt es irgendein Programm, dass dies kann oder kann man das direkt im Kernel einstellen?
Nochmal kurz:
USB Stick rein => Fenster poppt auf => Nur PDF und LibreOffice Dateien sollen angezeigt werden
Gruß
Ich habe von meinem Chef (bin im Praktikum) die Aufgabe bekommen, einen sicheren Medien-PC zu entwerfen. Dafür hab ich einen Raspberry PI bekommen, sowie ein Debian-System, welches schon auf der SD-Karte installiert war.
Meine Aufgabe war es, den Internetzugang zu sperren (geschafft), sowie den Massenspeichergeräte zu verbieten. Dies ist (egal welche Anleitung ich im Internet fand) nicht möglich. Komischerweise..
Jetzt soll ich, wenn der USB Stick eingeschmissen wird, nur bestimmte Dateien anzeigen. PDF & Libre Office Dateien. Gibt es irgendein Programm, dass dies kann oder kann man das direkt im Kernel einstellen?
Nochmal kurz:
USB Stick rein => Fenster poppt auf => Nur PDF und LibreOffice Dateien sollen angezeigt werden
Gruß
- fragenfrager
- Beiträge: 658
- Registriert: 31.12.2003 08:47:15
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Hallo carreck
ich hatte vor einigen Wochen eine entfernt ähnliche Aufgabe. Nach einstecken der Kamera sollte alles in einen Ordner runtergeladen werden. Das wäre schonmal ein Ansatz, siehe hier : http://debianforum.de/forum/viewtopic.php?f=25&t=142641
Du willst halt nicht alles runterladen sondern nur manches anzeigen. Eventuell könntest ein temporäres Verzeichnis erstellen lassen und dorthin die erlaubten Dateien runterladen.
Wie und ob es geht kernelseitig nur bestimmte Dateien zuzulassen weiß ich leider nicht aber bin schon gespannt auf die Antwort darauf
ich hatte vor einigen Wochen eine entfernt ähnliche Aufgabe. Nach einstecken der Kamera sollte alles in einen Ordner runtergeladen werden. Das wäre schonmal ein Ansatz, siehe hier : http://debianforum.de/forum/viewtopic.php?f=25&t=142641
Du willst halt nicht alles runterladen sondern nur manches anzeigen. Eventuell könntest ein temporäres Verzeichnis erstellen lassen und dorthin die erlaubten Dateien runterladen.
Wie und ob es geht kernelseitig nur bestimmte Dateien zuzulassen weiß ich leider nicht aber bin schon gespannt auf die Antwort darauf
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Du kannst 'n FUSE-Overlay-Dateisystem schreiben, was sich dann nur als privilegierter Benutzer umgehen lassen wuerde. Dafuer kann jedes beliebige Programm auch nur diese Dateien sehen.
Im Prinzip kann man auch das Anzeigeprogramm patchen, sodass man nur die entsprechenden Dateien sieht, aber das darfst du dann nochmal fuer den "Datei oeffnen"-Dialog von LO und allen anderen beteiligten Programmen machen. Vielleicht ist's der Mittelweg: Eigenes Frontend schreiben/aendern, was nur die gewuenschten Dateien anzeigt, bei Bedarf kopieren und LO an der Kopie arbeiten lassen.
Damit das auch bei FAT-Medien funktioniert (die sind grundsaetzlich Welt-les-/beschreibbar), muss man entweder in einen unerreichbaren Mountpunkt mounten oder LO chrooten. Mit dem ersten Punkt meine ich etwas wie /media/private/stick0, wobei /media/private/ als Besitzer z.B. mountd:mountd (selbst angelegter Benutzer/Gruppe) und als Mode 0700 hat. Ein User viewer (der LO und den PDF-Viewer startet und daran arbeitet) kann nicht in /media/private/ "gehen" und sieht darunter liegende Mounts/Daten gar nicht.
Gruss Cae
Im Prinzip kann man auch das Anzeigeprogramm patchen, sodass man nur die entsprechenden Dateien sieht, aber das darfst du dann nochmal fuer den "Datei oeffnen"-Dialog von LO und allen anderen beteiligten Programmen machen. Vielleicht ist's der Mittelweg: Eigenes Frontend schreiben/aendern, was nur die gewuenschten Dateien anzeigt, bei Bedarf kopieren und LO an der Kopie arbeiten lassen.
Damit das auch bei FAT-Medien funktioniert (die sind grundsaetzlich Welt-les-/beschreibbar), muss man entweder in einen unerreichbaren Mountpunkt mounten oder LO chrooten. Mit dem ersten Punkt meine ich etwas wie /media/private/stick0, wobei /media/private/ als Besitzer z.B. mountd:mountd (selbst angelegter Benutzer/Gruppe) und als Mode 0700 hat. Ein User viewer (der LO und den PDF-Viewer startet und daran arbeitet) kann nicht in /media/private/ "gehen" und sieht darunter liegende Mounts/Daten gar nicht.
Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Hallo,
hab es jetzt erst wieder geschafft, hier reinzuschauen.
Also ich hab jetzt erstmal folgendes gemacht:
Eine Regel in /etc/udev/rules.d/ geschrieben, dass ein Script ausführt, sobald ein USB Stick eingesteckt wird. Das Script kopiert alle *.pdf und *.präsentationsdateien auf den Desktop.
Eine Regel in /etc/udev/rules.d/ geschrieben, dass ein Script ausführt, sobald ein USB Stick entfernt wird. Das Script löscht alle *.pdf und *.präsentationsdateien auf dem Desktop.
Windowstaste mit xkeycaps deaktiviert, damit "Ausführen" und der Dateimanager nicht mehr aufgerufen werden kann.
Taskleiste mit Openbox gelöscht
Rechtsklickaktionen auf dem Desktop mit obmenu entfernt.
Soweit, so gut.
Jetzt hab ich ein weiteres Problem
Und zwar muss diese Präsentation, die auf den Desktop kopiert wird, geöffnet werden. Ohne, dass ich eine Tastatur und Maus benutze. Also am besten irgendwie wieder im Script. Freu mich auf eure Hilfe
@fragenfrager: Dein Tipp war gut
hab es jetzt erst wieder geschafft, hier reinzuschauen.
Also ich hab jetzt erstmal folgendes gemacht:
Eine Regel in /etc/udev/rules.d/ geschrieben, dass ein Script ausführt, sobald ein USB Stick eingesteckt wird. Das Script kopiert alle *.pdf und *.präsentationsdateien auf den Desktop.
Eine Regel in /etc/udev/rules.d/ geschrieben, dass ein Script ausführt, sobald ein USB Stick entfernt wird. Das Script löscht alle *.pdf und *.präsentationsdateien auf dem Desktop.
Windowstaste mit xkeycaps deaktiviert, damit "Ausführen" und der Dateimanager nicht mehr aufgerufen werden kann.
Taskleiste mit Openbox gelöscht
Rechtsklickaktionen auf dem Desktop mit obmenu entfernt.
Soweit, so gut.
Jetzt hab ich ein weiteres Problem
Und zwar muss diese Präsentation, die auf den Desktop kopiert wird, geöffnet werden. Ohne, dass ich eine Tastatur und Maus benutze. Also am besten irgendwie wieder im Script. Freu mich auf eure Hilfe
@fragenfrager: Dein Tipp war gut
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Nein, standardmäßig wird die aktuelle umask beim mounten auf alle Inhalte angewendet. Ansonsten kann man das auch einfach mit mount -o umask=777 auf für alle unlesbar einstellen.Cae hat geschrieben:Damit das auch bei FAT-Medien funktioniert (die sind grundsaetzlich Welt-les-/beschreibbar), muss man entweder in einen unerreichbaren Mountpunkt mounten oder LO chrooten.
Diesen komischen Griff mit den Ordnern machen nur Leute die keine manpages lesen können (Vielleicht weil sie nur mit grafischem zu tun haben.)
rot: Moderator wanne spricht, default: User wanne spricht.
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
@carreck: gib den Usern einfach nicht die möglcihkeit zu mounten die Üblichen knöpfe zu verstecken ist ziemlcih sinnlos.
Man findet immer nochmal einen:
Ich würde einfach nen ext-Stick mit ausführbarem shell-Script mit .pdf-Endung und dem befehl pcmanfm als inhalt anhängen und doppelcklick...
Und wenn du das abschaltest wird es wieder 100 möglichkeiten geben.
=> Ändere die Rehte und nicht irgendwelche buttons. So macht das keinen sinn.
Wenn du den mount einfach mit -o umask=177,dmask=077 ausführst kann man als user nicht auf den Stick zugreifen und damit kannst du dir den ganzen anderen sch** der im übrigen das ganze System unnutzbar macht weglassen.
Man findet immer nochmal einen:
Mit Alt+Druck+R werden alle tasten wieder auf standard gesetzt.carreck hat geschrieben:Windowstaste mit xkeycaps deaktiviert,
Da das ding so nutzlos ist würde ich als erstes openbox beenden und auf der TTY Openbox wieder zurückkonfigurieren.carreck hat geschrieben:Taskleiste mit Openbox gelöscht
[/quote]carreck hat geschrieben:damit "Ausführen" und der Dateimanager nicht mehr aufgerufen werden kann.
Ich würde einfach nen ext-Stick mit ausführbarem shell-Script mit .pdf-Endung und dem befehl pcmanfm als inhalt anhängen und doppelcklick...
Und wenn du das abschaltest wird es wieder 100 möglichkeiten geben.
=> Ändere die Rehte und nicht irgendwelche buttons. So macht das keinen sinn.
Wenn du den mount einfach mit -o umask=177,dmask=077 ausführst kann man als user nicht auf den Stick zugreifen und damit kannst du dir den ganzen anderen sch** der im übrigen das ganze System unnutzbar macht weglassen.
rot: Moderator wanne spricht, default: User wanne spricht.
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Hallo wanne,
Der User muss ja den USB Stick mounten. Es soll alles von selbst ablaufen:
USB Stick rein => Daten kopieren => Datei öffnen => Präsentation halten => USB Stick entfernen => Daten löschen
So ungefähr in der Reihenfolge. An dem PC wird keine Tastatur angeschlossen, sondern nur eine Art Fernbedienung von Logitech (irgendsoein Presenter).
Der User muss ja den USB Stick mounten. Es soll alles von selbst ablaufen:
USB Stick rein => Daten kopieren => Datei öffnen => Präsentation halten => USB Stick entfernen => Daten löschen
So ungefähr in der Reihenfolge. An dem PC wird keine Tastatur angeschlossen, sondern nur eine Art Fernbedienung von Logitech (irgendsoein Presenter).
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Dann kommt halt noch ne Bildschirmtastatur auf den Stick.carreck hat geschrieben: An dem PC wird keine Tastatur angeschlossen
Du kennst ja schon die /etc/udev/rules.d/
Da kannst du veranlassen, das beim reinstecken ein script ausgeführt wird. (RUN+="/usr/local/sbin/script %k")
Da kommt dann folgendes rein:
Code: Alles auswählen
mount -o umask=177,dmask=077 $1 /mnt/stick
mkdir /home/user/Desktop/stick
cp -r /mnt/stick/*.pdf /home/user/Desktop/stick #kopieren
cp -r /mnt/stick/*.od? /home/user/Desktop/stick #kopieren
chown -r user /home/user/Desktop/stick/ #lesbar machen
export DISPLAY=":0" #anzeige setzen
su user -p - c "pdfviewerprogramm *pdf"& #alle pdfs zeigen
umount /mnt/stick
Edit: export vergedssen.
Zuletzt geändert von wanne am 29.07.2013 16:08:57, insgesamt 1-mal geändert.
rot: Moderator wanne spricht, default: User wanne spricht.
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Georg
RTFM, LMGTFY, Orakel... Ach... Warum muss man suchen...
Schrödingers Backup --- "Der Zustand eines Backups ist unbekannt, solange man es nicht wiederherstellt" --- Quelle: Nixcraft
RTFM, LMGTFY, Orakel... Ach... Warum muss man suchen...
Schrödingers Backup --- "Der Zustand eines Backups ist unbekannt, solange man es nicht wiederherstellt" --- Quelle: Nixcraft
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
Code: Alles auswählen
mount -o umask=177,dmask=077 $1 /mnt/stick
mkdir /home/user/Desktop/stick
cp -r /mnt/stick/*.pdf /home/user/Desktop/stick #kopieren
cp -r /mnt/stick/*.od? /home/user/Desktop/stick #kopieren
chown -r user /home/user/Desktop/stick/ #lesbar machen
Was ich jetzt gerade nicht verstehe ist folgendes:
Code: Alles auswählen
DISPLAY=":0" #anzeige setzen
su user -p - c "pdfviewerprogramm *pdf"& #alle pdfs zeigen
-Was sind das für Optionen "-p" und "-c"? und was zB müsste ich bei "pdfviewerprogramm" einsetzen, wenn das einfach mit dem "Dokument-Betrachter" geöffnet wird?
-
- Beiträge: 923
- Registriert: 09.07.2008 11:50:57
- Lizenz eigener Beiträge: MIT Lizenz
Re: Bestimmte Dateien von USB Stick auslesen & anzeigen
DISPLAY=":0" <- variable die Programen (die über X gehen) sagt welches display sie nutzen sollen.carreck hat geschrieben: Was ich jetzt gerade nicht verstehe ist folgendes:-Was meinst du mit "Anzeige Setzen"? Was genau wird da gesetzt?Code: Alles auswählen
DISPLAY=":0" #anzeige setzen su user -p - c "pdfviewerprogramm *pdf"& #alle pdfs zeigen
-Was sind das für Optionen "-p" und "-c"? und was zB müsste ich bei "pdfviewerprogramm" einsetzen, wenn das einfach mit dem "Dokument-Betrachter" geöffnet wird?
su user -p -c .... <- man su
Code: Alles auswählen
-c, --commandBEFEHL
gibt einen Befehl an, der von der Shell mittels ihrer Option -c ausgeführt wird
...
-m, -p, --preserve-environment
Erhält die aktuelle Umgebung mit Ausnahme von:
...