[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Möglichkeiten Wechselmedien zu mounten; (FLASH ohne sync!)



Am Wednesday 19 October 2005 16:45 schrieb RalfGesellensetter:
> > - Wenn ein Schüler in eine Workstation einen USB-Stick steckt, wie
> > kann er darauf zugreifen?
>
> Unter Gnome soll es eine besonders einfache Lösung geben -

Der gnome-volume-manager bekommt vom laufenden hal-daemon events gemeldet und 
mountet für Benutzer die in der Gruppe plugdev sind mit pmount (policy-mount) 
eingesteckte USB Pens, Sticks, Laufwerke etc. automatisch unter /media. Das 
geht automatisch ohne extra Einstellungen. Es ist die fortschrittlichste und 
zukünftig wohl standard Methode.

Die Version in sarge dürfte aber, glaube ich, noch durcheinnander kommen wenn 
mehrere Benutzer gleichzeitig eingeloggt sind (Terminalserver!). Das 
automatische mounten und öffnen in Gnome auf Terminalservern etc. in dem Fall 
abschalten. Es reicht ja wenn bei allen angemeldeten Usern ein Button auf dem 
Desktop erscheint, und schon geht der Wettkampf los... :)


> aber auch 
> unter KDE lässt sich unter Desktop-Verhalten definieren, dass
> automatisch Symbole für gefundene Laufwerke eingeblendet werden.

Leider hat das KDE 3.3 in sarge noch kein volume-manager der auf hal events 
reagiert und unterstützt auch noch kein pmount für device icons. Solange das 
noch nicht geht gibt es einige Alternativen:

Man kann genau wie für floppys und cdroms statische Zeilen in die /etc/fstab 
eintragen. Solange dort Zeilen mit der Option "user" stehen können über 
automatisch erstellte KDE-Icons (Desktop-> Verhalten-> Geräte-> 
Festplattenpartitionen anzeigen lassen), unter Geräte im Konqueror, oder mit 
einem Applet Medien per user mount manuell ein- und ausgebunden werden.
(Leider... ändern sich die Device Nodes manchmal, daher sind statische 
einträge schlecht)


> Zusätzlich muss automount installiert sein AFAIK.

Mit einem automounter kann man sich das manuelle mounten und unmounten sparen. 
Mounten geschieht beim Zugriff auf den Mountpoint. Unmounten erfolgt nach 
einigen Sekunden inaktivität automatisch. (Pakete autofs oder am-utils)



...Die device nodes für hotplug Geräte sind nicht bei jedem Einstecken die 
gleich. Um das Problem zu lösen können hotplug skripte(s.u.), udev regeln 
oder der hal daemon selbst (mit fstab-sync) dazu dazu verwendet werden 
die /etc/fstab dynamisch zu modifizieren.

Skipte können die Medien auch gleich *systemweit* mounten (mit users option), 
und nach abziehen des hotplug Geräts wieder unmounten (sloppy, force), sofern 
der user das nicht ordnungsgemäß gemacht hat/konnte.
(Leider... ist da Abziehen ohne unmounten eine schlechte Idee solange die sync 
Mountoption noch nicht brauchbar ist. Das Automatische mounten empfiehlt sich 
also nur wenn die verwendete grafische Oberfläche keine mount funktionen 
bereitstellt, evtl. für die console, und nur wenn alle Wechselmedienbenutzer 
sich vertrauen.)

Das Paket usbmount installiert ein solches hotplug Skript, es kann usb-storage 
devices automatisch global nach /media/usb mounten. Also nicht für einzelne 
user, sondern nur für alle (floppy) user gemeinsam, oder immer für den 
gleichen. (/etc/usbmount/usbmount.conf konfigurien)


Ein hotplug Skript das für einen User mountet, und auch KDE-Icons erstellt ist 
dieses hier:  http://wiki.kanotix.net/CoMa.php?CoMa=usb-storage Es bietet 
auch eine UDEV_SUBTLE_SARGE_HACK="yes" Option mit der es device Nodes selber 
anlegt anstatt minutenlang (bei mir fast 5 Minuten) zu warten bis Sarges udev 
sie angelegt hat.
(Leider... funktioniert das Mounten für einen User aber wohl nur bei  
Workstations, bzw. solange immer nur ein Benutzer angemeldet ist.)



Dann gibt es noch submount/supermount aber da kenne ich mich nicht aus. Kann 
jemand anderes da etwas zu sagen?



Jetzt aber zur sync Option!

Da die zumindest die vfat sync Option nicht gut implementiert ist[1] leidet 
dabei der Flashspeicher (sind sehr langsam zu beschreiben und gehen schnell 
Kaputt) aber auch Floppylaufwerde und Festplatten.

Daher darauf achten, dass momentan die sync option besser *nicht* verwendet 
wird!

Also tatsächlich am besten (ggf. mit Hilfe (automatisch) erstellter Icons) 
immer manuell unmounten oder mit einem Auto(un)mounter arbeiten.


Sinvolle Optionen für removable media sind damit rw, async, nodev, noexec, 
nosuid, noauto und user. Die ersten Beiden sind Standard, die drei danach 
sind in user enthalten. Für "user" mounts reicht also:

"noauto,user"

"noatime" empfiehlt sich um unnötiges schreiben des Flashs bei wiederholtem 
lesen zu verhindern, sofern man auf die Zugriffsstatistik verzichten kann.

Mit diesen Optionen düften keine unzulässigen Devicedateien oder suid root 
Programme ins System gehängt und verwendet werden können. Beim reinkopieren 
gelten dann die Rechte des Users.


Für vfat Dateisystem (dos/win) zusätzlich folgendes verwenden:
quiet,shortname=mixed,codepage=850,dmask=0002,fmask=0113
(Auf UTF8 Systemen (ubuntu,Fedora,...) auch iocharset=utf8)

So sind die Dateirechte an ein ein Multi-User System mit umask 002 wie 
Skolelinux angepasst.

Wenn Skripte nicht als user, sondern systemweit mounten, passt man die vfat 
Optionen wie folgt an: (Also z.B. bei usbmount)

"users" anstatt "user",
zusätzlich gid=floppy und
andere Rechte: dmask=0007,fmask=0117 verwenden.
(Achtung: Bei solchen globalen vfat mounts können alle user unmounten, und 
alle in der Gruppe floppy mitlesen/schreiben)
(Weitere vfat Tipps: http://www.pro-linux.de/t_system/vfat-tipps.html)


Hier nun ein shell Skript, dass die fstab dynamisch anpasst (Solange immer nur 
ein X-Benutzer angemeldet ist kann es optional auch mounten).
http://ccomb.free.fr/wiki/wakka.php?wiki=UsbMassStorageEnglish

In Zeile 225 sollte man noch die zusätzlichen vfat Optionen anpassen:

...IOCHARSET=",quiet,shortname=mixed,codepage=850,dmask=0002,fmask=0113";...

Das ",iocharset=utf8" welches vorher da stand sollte man auf sarge Systemen 
weglassen.

An gleicher Adresse gibt es auch alternativ ein perl Skript das den autofs 
Automounter dynamisch für /media/hotplug konfiguriert.
Hätte den Vorteil das dann ein USB Stick gefahrlos abgezogen werden kann 
sofern für eine weile kein Programm mehr eine Datei darauf offen hat.

Gruß
Christian


[1]Sync option destroys flash!
http://www.ussg.iu.edu/hypermail/linux/kernel/0505.1/1249.html




Reply to: