AMD 64 und mounten auf USB (FreeBSD 7.1 beta)

i18n

Well-Known Member
Habe erfolgreich die 7.1 beta auf meinen Arbeitsrechner installieren können (die 7.0 wollte leider nicht, ewig lahm, ich brach dann irgendwann ab).
Trotz des Beta-Stadiums laufen die meisten Sachen zufriedenstellend, so ein paar Kleinigkeiten wollen aber nicht.
Zu den größeren Kleinigkeiten gehört das Mounten von USB-Geräten. Da es ein Arbeitsrechenr ist, hätte ich es gern bequem, automount über HAL (Oberfläche ist GNOME) wäre ideal.
Bin also nach Handbuch, vor allem aber nach http://www.freebsd.org/gnome/docs/halfaq.html vorgegangen, auch nach betreffenden Beiträgen hier im Forum.
  1. in die /etc/rc.conf
    Code:
    dbus_enable="YES"
    und
    Code:
    hald_enable="YES"
    sowie
    Code:
    gnome_enable="YES"
    (ohne die beiden ersten Einträge gab es Fehlermeldungen)
  2. in die /etc/fstab
    Code:
    proc           /proc       procfs  rw  0   0
    und alle Geräte wie CD-ROM raus
  3. Code:
    vfs.usermount=1
    in die /etc/sysctl.rc eingestellt
  4. mich selbst und einen anderen Nutzer in die Gruppe "operator" eingetragen
  5. localrules festgelegt (siehe http://www.bsdforen.de/showthread.php?t=20936&highlight=HAL )

Nach bestem Wissen und Gewissen sollte alles laufen. CD-ROMs werden auch fein brav automatisch eingebunden, nur die USB-Geräte und Speicherkarten funktionieren nicht. Irgendwo habe ich wohl etwas vergessen?

PS.: Kernel ist noch im Originalzustand, per Modul noch atapicam (/boot/loader.conf) geladen, das Brennen funktioniert hervorragend, in der /etc/rc.conf den USB-Dämonen gestartet:
Code:
usbd_enable="YES"

Keine Ahnung, ob sich das Problem mit dem neuen 7.1-Kernel beheben läßt, wenn ich ihn erst mal gebaut haben werde. Scheinbar taucht das Problem nicht oft auf, bitte um Hilfe bei der Lösung.
 
PolicyKit.conf

Hallo i18n,

hast Du die PolicyKit.conf angepasst?
Zu finden ist die PolicyKit.conf
auf FreeBSD normalerweise an folgendem Ort:
/usr/local/etc/PolicyKit/PolicyKit.conf

Code:
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->

<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">

<!-- See the manual page PolicyKit.conf(5) for file format -->

<config version="0.1">
    <match user="root|user_name">
	<return result="yes"/>
    </match>
    <define_admin_auth group="wheel"/>
<match action="org.freedesktop.hal.storage.mount-removable">
  <match user="root|user_name">
    <return result="yes"/>
  </match>
</match>
<match action="org.freedesktop.hal.storage.mount-fixed">
  <match user="root|user_name">
    <return result="yes"/>
  </match>
</match>
</config>

user_name muss natürlich mit dem jeweiligen user Namen
ersetzt werden, vom Benutzer, der mounten erlaubt bekommen soll.
Mehr dazu ist im manual zu PolicyKit.conf nachzulesen.


Gruß, Fusselbär
 
Hi, Fusselbär!
Ja, ist geschehen. Hatte ich vergessen, zu erwähnen. Zudem steht in der FAQ, daß es unter GNOME nicht notwendig sei, zumindest nicht für die losen Gerätschaften:
If you are not a GNOME user, or you start GNOME without using GDM,
then you will need to edit /usr/local/etc/PolicyKit/PolicyKit.conf, and add
the org.freedesktop.hal.storage.mount-removable action to your username.

PS.: Ist es notwendig, den USB-Dämonen zu starten?
 
Hi, Fusselbär!
PS.: Ist es notwendig, den USB-Dämonen zu starten?

Habe ich zumindest bei mir in der /etc/rc.conf
auch drin:
Code:
#------------------------------------------------------------------------------------------------------------
# HAL (for KDE 3.5.5 and higher):
#
# enable the HAL backend for the media kioslave,
# you should enable dbus, hal and policy kit during system startup
#------------------------------------------------------------------------------------------------------------
dbus_enable="YES"
polkitd_enable="YES"
hald_enable="YES"
usbd_enable="YES" 	# USB-Daemon

Ich benutze ziemlich gerne KDE.
Bei KDE ist das noch zusätzlich im Kontrollzentrum
zu beschalten, ob und was KDE macht, wenn ein Medium
eingestöpselt oder eingeschoben wird.
Ich habe die Automatik ausgeschaltet.
War mir zu lästig, habe eigentlich nur selten was zu mounten.
Ist im KDE Kontrollzentrum mit Deutsch als Sprache
unter "Angeschlossene Geräte" / "Speichermedien"
und dann auf dem Tab "Erweitert" zu finden.

Irgendwie benutze ich immer mehr mit wachsender Begeisterung die Konsole
falls ich dann doch mal was zu mounten habe.
Für die Standardmedien habe ich auch noch KwikDisk im Kicker sitzen,
womit sich mit einem Klick Partitionen mounten und umounten lassen.
KwikDisk ist noch aus der Zeit vor dbus, polkitd, hald und polkitd.


Gruß, Fusselbär
 
Hem, also ich habe sowohl unter FreeBSD 7 als auch 6.3 das Problem gehabt, das ich problemlos USB-Sticks mounten konnte, aber keine CDs. Was habe ich alles gemacht?

1. Gnome2 über pkg_add installiert.
2. gnome_enable="YES" in /etc/rc.conf eingetragen.
3. haldaemon user angelegt (ist wohl ein Bug, da er doch zwingend gebraucht wird und trotzdem nicht autom. von gnome2 angelegt wird) und ihm superuser Rechte gegeben.
4. gnome2 über GDM starten. (steht aber alles in der gnome-FAQ)

Danach konnte ich ohne Probleme als User USB-Sticks mounten!
CD-ROMs ging dagegen nicht, aber dazu siehe folgenden Thread:
http://forums.freebsd.org/showthread.php?t=409
Die Lösung steht im letzten Post!

An Policy u.a. Konfigs habe ich nichts gedreht! (habe absolut keine Ahnung von der Materie) Habe allerdings x86-FreeBSD installiert, was aber doch keinen Unterschied machen sollte?!
 
Zuletzt bearbeitet:
FreeeBSD 7.0 und höher haben keinen USBd mehr, ihr müsst ihn also folglich auch nicht starten. Die Funktionalität ist nun in devd integriert.
 
Bei den letzten beiden 7.1BETA Installationen, die ich durchlaufen ließ, da funktionierte die Sache hervorragend auf Anhieb. Zuvor hatte ich immer wieder Bastelarbeit, hauptsächlich mit der /usr/local/etc/PolicyKit/PolicyKit.conf. Die will meistens nur mit dem User root arbeiten, doch das scheint bei dir ja nicht der Fall zu sein, wenn deine CDs automatisch erkannt und eingebaunden werden.
KDE nutzt eine Menge von Gnome, um die Funktionen durchzuführen. Grundsätzlich sollten daher Gnome oder XFCE eigentlich einen kleinen Vorteil dabei haben. Da kann ich aber gar nicht mitreden: bei den erwähnten installationen funktionierte es einfach überall und zuvor habe ich stets nur KDE drauf.
Ein häufiger Grund ist, daß USB-Geräte nicht glücklich gebaut sind. Da gibt es oft zwei Geräte in einem. Damit kann die Automatik schon Probleme haben. Ebenso, mit Namen, also LABELn der Geräte, die ungültige Syntax haben. Diese Dinge solltest du in dmesg sehen können. Große Sticks/Geräte können schon eine Weile brauchen, bis sie durch die Automatik erkannt und eingebunden werden.
Es gibt auch einen hal-device-manager der gute und übersichtliche Informationen liefert. Ich mochte den eher, als die Information auf der Kommandozeile rauszukitzeln.
Achso, /media muß vorhanden sein und der Nutzer, der das Gerät einbinden will, sollte dazu berechtigt sein, hier ein Verzeichnis anzulegen.
Versuch es mal als root.
Und vielleicht mal so in /usr/local/etc/PolicyKit/PolicyKit.conf:

<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->

<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">

<!-- See the manual page PolicyKit.conf(5) for file format -->

<config version="0.1">
<match action="org.freedesktop.hal.storage.mount-removable">
<return result="yes"/>
</match>
</config>
 
FreeeBSD 7.0 und höher haben keinen USBd mehr, ihr müsst ihn also folglich auch nicht starten. Die Funktionalität ist nun in devd integriert.

Oh, danke für die Information. Mußte gestern abbrechen, es war schon spät, hier in China ist man eben der Zeit (um 7 Stunden) voraus. ;) also keinen USB-Dämonen.
 
Zuletzt bearbeitet:
Hm, komme einfach nicht weiter, hänge mal die dmesg an und die PolicyKit.conf an, vielleicht fällt ja jemandem was auf, ich bin mit Blindheit geschlagen.

Danke übrigens für Eure bisherigen Hilfeversuche.
 

Anhänge

  • dmesg.txt
    21,2 KB · Aufrufe: 382
  • PolicyKit.conf.txt
    821 Bytes · Aufrufe: 242
Hallo i18n,

wenn "bla" und "blub" Deine User sind:
/usr/local/etc/PolicyKit/PolicyKit.conf
Code:
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- XML -*- -->

<!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd">

<!-- See the manual page PolicyKit.conf(5) for file format -->

<config version="0.1">
    <match user="root|bla|blub">
        <return result="yes"/>
    </match>
    <define_admin_auth group="wheel"/>
<match action="org.freedesktop.hal.storage.mount-removable">
  <match user="root|bla|blub">
    <return result="yes"/>
  </match>
</match>
<match action="org.freedesktop.hal.storage.mount-fixed">
  <match user="root|bla|blub">
    <return result="yes"/>
  </match>
</match>
</config>

Sind "bla" und "blub" in der group wheel?
Mounten darf nicht jeder.
Mit:
Code:
    <define_admin_auth group="wheel"/>
in der PolicyKit.conf, wird dafür gesorgt,
dass user in der group wheel sich mit ihrem eigenen Passwort authentifizieren können.


Gruß, Fusselbär
 
Jep, sie sind. Alle beide :)

Aber, ich will gern mal Deine Variante der Datei ausprobieren. Dankeschön.
 
ich denke, deine Versionen sollten funktionieren und um Fehler auszuschließen, hatte ich auch den Vorschlag mit dem nur "yes" gemacht. Damit sollten imme alle, die berechtigt sind, mounten dürfen.
Was aber nicht geht, wird dein Stick sein.
Selbst, wenn du versuchen solltest den manuell zu mounten, solltest du scheitern, denn er wird einfach nicht erkannt, bzw. nicht richtig erkennt.
Nebenbei hast du andere Fehlermeldungen, die du bearbeiten solltest. Dein logo-saver scheint Probleme zu machen, die unbedingt abgestellt werden sollten.
Hier mal Beispiele von zwei unterschiedlichen Sticks, die nacheinander am gleichen Port genutzt wurden:
umass0: <USB DISK 2.0, class 0/0, rev 2.00/8.28, addr 2> on uhub6
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <USB DISK 2.0 0828> Removable Direct Access SCSI-0 device
da0: 40.000MB/s transfers
da0: 3840MB (7864320 512 byte sectors: 255H 63S/T 489C)
GEOM_LABEL: Label for provider da0s1 is msdosfs/UDISK.
GEOM_LABEL: Label msdosfs/UDISK removed.
GEOM_LABEL: Label for provider da0s1 is msdosfs/UDISK.
umass0: at uhub6 port 6 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
GEOM_LABEL: Label msdosfs/UDISK removed.
umass0: detached
umass0: <takeMS Mem-drive Mini, class 0/0, rev 2.00/1.01, addr 2> on uhub6
umass0: Get Max Lun not supported (STALLED)
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <takeMS Mem-drive Mini 8.07> Removable Direct Access SCSI-2 device
da0: 40.000MB/s transfers
da0: 8030MB (16445440 512 byte sectors: 255H 63S/T 1023C)

du kannst sehen, daß die richtig erkannte Größe unbedingte Voraussetzung für das Einbinden des Gerätes ist. Schlägt das Fehl, hat das System keine Informationen darüber, wie der Speicher aufgebaut ist und wie darauf zugegriffen werden kann.
Vielleicht hilft es, den Stick neu zu formatieren und Partitionen anzulegen. Dazu würde ich ihn zuvor komplett "Nullen", also auch den MBR killen (und evtl Sicherheitskopien anlegen). dd if=/dev/zero of=/dev/da0 bs=1 oder bs=1k sollten das hinbekommen (bei Bitweisem Schreiben dauert es etwas).
Allerdings hatte ich auch schon Sticks, die überhaupt nicht funktionierten, egal, was ich probierte.
 
Hallo pit234a,
danke für Deine Analyse. Der Bildschirmschoner für die Konsole "Logo" ist erst mal nicht so wichtig, ich werde bein Erscheinen von 7.1 sowieso Welt und Kernel neu bauen, damit sollte sich das Problem erledigen.
Zu den USB-Geräten: Ich habe eine Uralt-Stick von 256 MB probiert, der auch unter anderen Rechnern und Systemen manchmal zickt, den habe ich sauber neu mit FAT 32 beschrieben, seitdem macht er wenigstens unter Linux keine Spirenzchen mehr.
Das andere Gerät ist ein Philips-Handy, das sich bislang unter Ubuntu-Linux und auch Windows ohne Probleme einhängen ließ und das ich mit der Flashcard gerne als Zwischendatenträger nutze, sehr bequem, hat man immer zur Hand. ;)
Somit ist von "Plattmachen" keine Rede. Zumal, es ging auf dem selben Rechner unter Ubuntu wunderbar. Somit ist es eher ein FreeBSD-Problem mit USB.
Meiner Meinung nach hängt das wirklich mit der FreeBSD-Unterstützung von USB-Geräten zusammen, oder eben mit meiner eigenen Unfähigkeit, diese richtig einzustellen. Gehe mal von letzterem aus. Da ich gerne bei FreeBSD asl Produktionssystem bleiben will, muß ich dieses Problemchen wohl in den Griff bekommen.
Kann ich noch mit weiteren Infos beisteuern, um die Sachlage klarer zu machen? Wo liegt der Hase im Pfeffer? Kann es auch mit AMD 64 zu tun haben?
Danke für Eure Hilfe bislang.
 
Tatsächlich habe ich auf meinem AMD64 auch Probleme mit dem automatischen Einbinden über HAL und dbus. Diese Probleme führten zu Beginn auch zu einem Beitrag hier irgendwo und deshalb auch dazu, daß ich viel an meinem System gebastelt habe.
http://www.bsdforen.de/showthread.php?t=20370&highlight=hal+kde ist der Beitrag, hatte ihn noch offen.
Allerdings schob ich die Schuld an dem häufigen Versagen auf Unsauberkeiten in meinem System, wegen des Bastelns damit. Das äußert sich so, daß einige Male ein automatischer Mount gelingt, doch beim ersten fehlversuch, sich dieser Dienst ganz abstellt, jedenfalls keinen Erfolg und keine Aktion mehr vorlegt. Mißerfolge sind manchmal nachvollziehbar, weil falsche Dateisysteme vorhanden waren, falsche Strukturen oder ungültige Label vorlagen. Trotzdem funktioniert dann immer noch das Einbinden von Hand und weil es ja nicht zu schwierig ist und unter meinem KDE immer mehrere Konsolen offen und greifbar sind, auch schnell gemacht. Früher hatte ich auch mal ein kleines script auf meinen Desktop gelegt, das brauchte ich zum mounten nur zu klicken und fand dann einen Stick an einer vorbestimmten Stelle. Ein automatisiertes Script gibt es dazu auch in den Ports, wie ich sehen kann, von Kamikaze gebaut und von mir nicht getestet. Doch es liest sich in der Dokumentation absolut fantastisch und daß es mittels scripten überhaupt geht, weiß ich aus einem anderen Umfeld, wo ich das selbst so machte (allerdings wesentlich einfacher und beschränkter, weil ich eben nicht gut mit solchen Dingen bin). Davor bin ich zwar gewarnt worden, weil bei Ausführen eines Scriptes (bei mir wurde alle drei Sekunden auf die USB-Schnittstelle gesehen und falls ein Stick da war, wurde gemounted und falls eine bestimmte Kennung auf dem Stick gefunden werden konnte, wurden gesammelte Daten auf ihn übertragen und dann auch wieder umountet), weil also dabei zu viel Rechnerperformance verbraucht würde, doch in der Praxis kann ich nur sagen, daß der kleine und schwache PC darüber nur müde grinste. Das merkt niemand, ob das Script läuft oder nicht.
Also nochmal: es muß jedenfalls möglich sein, ein Gerät manuel einzubinden. Wenn das scheitert, weil die Vorrausetzung nicht gegeben ist, dann wird auch keine Automatik es können.
Warum Linux damit besser umgehen kann, weiß ich nicht, aber es spiegelt auch meine Erfahrung wieder.

NACHTRAG: der port ist /usr/ports/sysutils/automounter
 
Zuletzt bearbeitet:
UBS-Stick-Mounten, Problem reloaded

Soweit ich mitbekommen habe, hat sich ja so einiges in puncto USB im RELEASE 8.0 getan. Scheint, ich wirklich zu dumm, das Ganze hinzubekommen.

Habe neuerdings das ganz funkelnagelneue FreeBSD auf meinen Laptop gebraucht, (Medion MD95400 - Intel Centrino i386, also kein AMD). War lange Ubuntu drauf anwesend, aber nach dem letzten Upgrade schnarchte der Rechner vor sich hin, so hatte ich die Nase voll und bin auch hier gewechselt. Geht jetzt ab wie Schmidts Katze!

Hier wird der USB-Stick auch erkannt und eingebunden, Jubel! Aber leider dann der kalte Guß, leider kann ich keine Daten kopieren. Hm, der Stick ist noch mit ext2fs formatiert, ich bekomme keine Rechte, die Dateien zu kopieren.

Was tun? Ich kann die Daten auf meinen alten Rechner spielen und den Stick neu formatieren. Aber, rein generell interessiert mich, ob man ext2fs oder auch andere Dateisysteme auf dem Stick mounten kann, muß es immer FAT32 sein?

Welches Dateisystem würde sich eignen? Der Stick ist groß (8G) FAt macht da ein bißchen Kummer. Welches Dateisystem würde sich eignen, ich will nur zwischen BSD-Rechnern Daten austauschen.

Wäre über jede Hilfe dankbar, leider sind die Wiki-Einträge nicht mehr ganz aktuell, mit dem neuen USB-Stack sollte sich so einiges geändert haben.
 
Hmm, ich benutze Fat32 auf einem 8B Stick. Hast du mal versucht als root auf die Daten zuzugreifen und dein ein chown drüber laufen lassen, vorzugsweise :operator oder dergleichen?
 
Zu Transportzwecken schreib ich auf den Stick auch direkt mit dem tar. Nachteil, man muss komplett den Stick löschen, um wieder fat raufzuschreiben.
 
Zurück
Oben