DSBMC/DSBMD

Hä? Aber wahrscheinlich nur, weil HAL aktiv ist, sonst würde es nicht funktionieren. (Und kannst Du so automatisch NTFS-Dateienträger mounten?) Es wäre doch jetzt gerade interessant, Gnome/Nautilus mit dsbmd zu testen. Also mach mal bitte folgendes:
Ja, sehr wahrscheinlich.

Deaktiviere HAL: #service hald stop
Erledigt. Ich habe hald komplett auskommentiert und damit deaktiviert.

Dann habe ich lt. der letzten Anweisung von @marcel das aktuelle dsbmd neu installiert einschließlich des Patches.

Und in die /etc/rc.conf eingetragen:
Code:
dsbmd_enable="YES"

und Rechner neu gestartet.

Alle Medien CD/DVD und meine USB Sticks werden automatisch einwandfrei gemountet und der Inhalt auch korrekt angezeigt. Auch das Aushängen funktioniert problemlos. Leider gibt es dann immer noch die Fehlermeldung in einem Dialog "Unable to mount", obwohl das ja nicht stimmt.

Also @marcel und @cabriofahrer, auch unter Gnome funktioniert es einwandfrei, nochmals vielen Dank.:)

Jetzt habe ich noch eine Frage, braucht es nicht hald trotzdem, damit erkannt wird, wenn ich Drucker oder Scanner einschalte?

Oder kann ich nun auf hald komplett verzichten?
 
Jetzt habe ich noch eine Frage, braucht es nicht hald trotzdem, damit erkannt wird, wenn ich Drucker oder Scanner einschalte?

Oder kann ich nun auf hald komplett verzichten?
wenn du den nutzt, dann brauchst du ihn auch.
Das ist eine komische Antwort, aber irgendwie ist auch die Frage merkwürdig.
Man braucht HAL gar nicht mehr, auch X kommt ohne aus. Benutzt man aber Anwendungen, die ihn unbedingt haben wollen, dann fehlt denen natürlich etwas ohne ihn. Das kann man generell so nicht sagen. Ich brauche HAL nicht und habe auch keinen dbus über rc.conf gestartet. Irgendwelche automatischen Drucker oder Scanner-Erkenner habe ich aber auch nicht in Benutzung.
 
"Hal is in the process of being deprecated, since it has become a large monolithic unmaintainable mess, and also duplicates a lot of functionality which are nowadays provided by udev and the kernel itself."

Diese Aussage findet man hier.
 
Jetzt habe ich noch eine Frage, braucht es nicht hald trotzdem, damit erkannt wird, wenn ich Drucker oder Scanner einschalte?

Ich bin mir nicht sicher, aber ich glaube nicht. Ich nutze hplip und HAL scheint auf den ersten Blick keine Abhängigkeit zu sein, auch nicht von cups:

https://www.freshports.org/print/hplip/

Gebraucht wird dbus, das kann aber unabhängig von HAL laufen. Ich werde es zuhause aber dennoch mal ausprobieren.
 
and also duplicates a lot of functionality which are nowadays provided by udev and the kernel itself.
wobei in FreeBSD immer schon der kernel und das Device-System alle Informationen lieferten und wir niemals einen HAL gebraucht hätten, ihn aber trotzdem nehmen mussten, weil etliche Programme eben darauf setzten (die natürlich im Hinblick auf Linux entwickelt waren).
Desto mehr HAL aus Linux entfernt wird, desto weniger Programme ihn noch benutzen, desto freier können wir uns davon machen.
Das nutzt aber dann nichts, wenn ich ein ganz bestimmtes Programm habe das ihn unbedingt braucht, um bestimmte System-Meldungen mit Aktionen zu verknüpfen. Wenn ich dann dieses Programm weiter haben möchte, kann ich eben nicht auf HAL verzichten.
 
Also, das HAL unter Linux obsolet ist, wußte ich, war mir aber bei FreeBSD nicht ganz sicher, weil das Aktivieren und Setzen des HAL Dämon in der rc.conf ja immer noch im FreeBSD Handbuch steht.
 
danke, ich sehe es nun.

Bei mir läuft kein GNOME und kein KDE und doch habe ich durch irgendwelche SW auch Abhängigkeiten dazu installiert, die ich gar nicht so einfach loswerden kann, obwohl sie mich schon lange stört. Dazu gehört auch der hald. Dieser wird bei mir verlangt von gnome-mount (das ich nicht will), gnome-vfs (das ich schon gar nicht will), gvfs (das mich sogar stört) und kdelibs, was vermutlich zu k3b gekommen ist, das ich aber gelegentlich sogar nutze und das dann auch einen laufenden dbus verlangt, den ich dann eben manuell starte.
Nun ist das bei mir vorhanden und würde deshalb nach einem laufenden hald schreien, da ich aber nichts davon benutze und nichts davon möchte, kann ich mir offenbar leisten, zumindest auf den laufenden hald zu verzichten.
Ob das bei dir auch so ist, kannst du am einfachsten mal probieren.
Wenn ich das Handbuch richtig verstehe, dann gehen die davon aus, dass ein GNOME-Desktop einen laufenden hald braucht. Man könnte dazu auch mal einen Maintainer fragen.

Generell ist es ja so ein Ding. Der Wechsel von HAL weg vollzog sich in Linux ja durch Hinwendung auf UDEVD, mher oder weniger.
UDEVD haben wir aber gar nicht, weshalb ich mir gut vorstellen kann, dass viele Maintainer noch auf dem funktionierenden HAL für FreeBSD sitzen blieben, anstatt alles zu ändern und für FreeBSD anzupassen.

Also, ich kann für mein System nur sagen, dass hald und polycikit und einige andere Dinge als Abhängigkeiten drauf kamen, dass ich aber nichts dazu konfiguriert habe und die Dienste nicht starte und alles auch ohne sie funktioniert, was ich so an SW benutze.
 
Wenn ich das Handbuch richtig verstehe, dann gehen die davon aus, dass ein GNOME-Desktop einen laufenden hald braucht. Man könnte dazu auch mal einen Maintainer fragen.

Und ich glaube, dass Gnome das eben nur noch zum Automounten braucht und KDE4 zum Automounten und für das Powermanagement. Und damit kommen wir genau an den Punkt, den ich hier schon die ganze Zeit meine:

Wenn HAL von den verschiedenen DE's nur noch zum Mounten gebracht wird, kann dsbmd es ersetzen. Und das testen wir hier gerade und das müssten wir dann den Maintainern berichten. Ich denke mal, wenn dsbmd mit gnome und Mate funktioniert, dann ist das der Fall, weil es dann gnome-vfs und gnome-mount es unbewusst dann auch tun, oder etwa nicht?

Also ich habe den Eindruck, dass man z.B. mit MATE mit dsbmd tatsächlich kein HAL mehr braucht. Und @ralli scheint hier gerade auch zu beweisen, dass man es mit Gnome wohl auch nicht mehr braucht. Wie sollen denn die Verfasser des Handbooks wissen, woran wir hier gerade arbeiten?
 
Ich habe jetzt mal den Port für Version 1.0 fertig gemacht, und bitte nochmals alle, diesen zu installieren und zu testen:
Code:
# fetch http://freeshell.de/~mk/download/dsbmd-port.tgz
# tar xf dsbmd-port.tgz
# cd dsbmd
# make && make install
# cp /usr/local/etc/dsbmd.sample /usr/local/etc/dsbmd.conf
# service dsbmd onerestart

dsbmd benutzt die optionale Laufzeitabhängigkeit fusefs-ext2; damit ist es möglich, auf Ext4-Datenträger auch schreibend zuzugreifen. Leider gab es noch keine Fortschritte, hfsfuse in die Ports zu bringen, sonst hätte ich dies auch schon als Option in das Makefile aufnehmen können.
 
drei unterschiedliche Medien getestet und alle drei liefen durch, problemlos.
Es wurde allerdings einiges aus den Ports installiert, was ich mir nun nochmal genauer ansehen muss (vielleicht). Meist wird dann beim nächsten pkg update dieses Zeugs ja wieder entfernt. Da ich keine Probleme mit der älteren Version von dsbmd/dsbmc hatte, werde ich das vielleicht auch hinnehmen den Einzug der neueren Version in Quarterly abwarten.

nochmal:
Code:
# cp /usr/local/etc/dsbmd.conf.sample /usr/local/etc/dsbmd.conf
 
Ich musste jetzt noch mal eine Änderung vornehmen, da ich schon neurotisch unzufrieden mit dem Code war.
Code:
# fetch http://freeshell.de/~mk/download/dsbmd-1.1-port.tgz
# tar xf dsbmd-1.1-port.tgz
# cd dsbmd
# make && make install
# cp /usr/local/etc/dsbmd.conf.sample /usr/local/etc/dsbmd.conf
# service dsbmd onerestart

Ich lasse jetzt die Finger davon.
 
Ich lasse jetzt die Finger davon.
von mir aus gerne ;-)
sieht nämlich bei mir alles gut aus!

Ich glaube, dass ich deine Empfindungen sehr gut verstehen kann. Irgendwie hat man in sich doch einen gewissen Hang zur Perfektion. Zunächst macht man aber mal nur, dass alles überhaupt geht und man versteht, wie alles zusammen hängt und laufen muss. Dann bringt man das in bessere Form und findet dabei immer neue Möglichkeiten etwas zu verbessern oder eleganter zu machen, selbst, wenn eigentlich alles schon läuft und funktioniert. Man ist zwar schon zufrieden, aber so richtig glücklich vielleicht trotzdem noch nicht.
Man muss sich dann irgendwann zwingen, es gut sein zu lassen, wenn man sich nicht unnötig verrennen will.

Ich glaube, was bei mir vorhin zusätzlich aus den Ports gezogen wurde, waren wohl hauptsächlich "unnötige"-Compiler Sachen, die ich als Paket-Benutzer normalerweise nicht brauche und nun auch unbedenklich wieder los werden kann.
 
Hallo Marcel !

Habe mal dsbmd-1.1-port.tgz installiert ! Da jetzt ext4 im "rw" Modus gemounted wird
habe ich den Schreibmodus mal ausprobiert !

Habe mal spasseshalber mehrere Dateien und einen Ordner auf der Linux-Platte im
Userordner gelöscht !

Beim 1. Neustart von Linux gabs Probleme ! Beim 2. Neustart gabs ein fsck und alles
ist wieder gut !

Ich vermute das der Löschvorgang nicht komplett abgeschlossen war und das Dateisystem
deshalb "unsauber" hinterlassen wurde !

Jetzt würde ich mir gerne ein Logout/Neustart script basteln das erst alle über dsbmd
gemounteten Platten aushängt und dann erst den Logout/Neustart durchführt !

Ein dsbmc-cli -h gibt :

Options:
-L <event> <command> [arg ...] ; Listen for <event>, and execute <command> every
time the event is received. Possible events are
mount, unmount, add, and remove.
-U <time> Auto-unmount. Try to unmount automounted de-
vices every <time> seconds.
-a [-L ...] Automount. Wait for devices added to the sys-
tem, and mount them.
-e <device> Eject <device>
-e <mount point> Eject the device mounted on <mount point>
-f Force operation even if device is busy.
-l List available devices supported by DSBMD.
-m <device> Mount <device>
-s <device> Query storage capacity of <device>
-u <device> Unmount <device>
-u <mount point> Unmount <device> mounted on <mount point>
-v <speed> <device> Set reading <speed> of the CD/DVD <device>

Gibt es eine Möglichkeit wie z.B. :

dsbmc-cli -u /device/all ???

Gruss
 
Hi @bluescreen ,

einen direkten Automatismus gibt es dafür nicht. Du könntest zumindest alle Dateisystem aushängen, die nicht automatisch per /etc/fstab gemountet worden sind, wie folgt aushängen:

Code:
for i in `dsbmc-cli -l`; do m=`echo $i | sed -E 's/.*:mntpt=([^:]+).*/\1/g'`; dsbmc-cli -u $m || dsbmc-cli -f -u $m; done
 
Ich vermute das der Löschvorgang nicht komplett abgeschlossen war und das Dateisystem
deshalb "unsauber" hinterlassen wurde !
ich habe kein EXT4 im Augenblick, weil ich nur Sticks mit EXT habe und die lasse ich immer in EXT2 (zumindest bisher). Dafür (also zumindest für EXT2) funktioniert die mount-Option sync und die ist genau dafür gedacht und ich nutze die bei alles Dateisystemen, wo immer möglich, die ich extern einbinde (also über dsbmc).
Mit dieser Option wird nicht gecached, sondern gleich geschrieben.
Das ist langsamer und wird deshalb normalerweise nicht gerne genommen.
Gerade bei Wechselmedien halte ich es aber für sehr gut und deshalb ist meine /usr/local/etc/dsbmd.conf entsprechend angepasst.
 
Gibt es eine Möglichkeit wie z.B. :

dsbmc-cli -u /device/all ???

Man kann auch /etc/rc.shutdown um den Befehl umount -A erweitern:
Code:
...
# Insert other shutdown procedures here
umount -A
...
umount(8) schrieb:
-A All the currently mounted file systems except the root are
unmounted.

Denkbar wäre auch eine boolsche Konfigurationsvariable, die dsbmd veranlasst, alle für diesen Dienst sichtbaren Dateisysteme beim Beenden auszuhängen.
 
Ich musste jetzt noch mal eine Änderung vornehmen, da ich schon neurotisch unzufrieden mit dem Code war.
Code:
# fetch http://freeshell.de/~mk/download/dsbmd-1.1-port.tgz
# tar xf dsbmd-1.1-port.tgz
# cd dsbmd
# make && make install
# cp /usr/local/etc/dsbmd.conf.sample /usr/local/etc/dsbmd.conf
# service dsbmd onerestart

Ich lasse jetzt die Finger davon.

Tja, dann hättest Du das wohl besser so gelassen, denn ich habe jetzt gerade dsbmd-1.1-port.tgz ausprobiert und schon funktioniert das Mounten von CD's in caja wieder nicht. Ich verstehe ja nichts von solchen Sachen, aber ich wundere mich, warum fast jedes Mal, nachdem ich erfolreich getestet habe, Du dann doch wieder etwas änderst und die Funktionalität von den CD's im Zusammenhang mit caja dann wieder verschwindet.
 
Tja, dann hättest Du das wohl besser so gelassen, denn ich habe jetzt gerade dsbmd-1.1-port.tgz ausprobiert und schon funktioniert das Mounten von CD's in caja wieder nicht. Ich verstehe ja nichts von solchen Sachen, aber ich wundere mich, warum fast jedes Mal, nachdem ich erfolreich getestet habe, Du dann doch wieder etwas änderst und die Funktionalität von den CD's im Zusammenhang mit caja dann wieder verschwindet.

Hi @cabriofahrer ,

wir haben es hier mit einem dem Anschein nach zufälligen Faktor zu tun. Du hattest berichtet, dass die Version dsbmd-1.0pre-2 nicht mit CDs funktioniert. Ich bat Dich, den Patch für Debug-Meldungen darauf anzuwenden, und mir dann die Ausgabe zukommen zu lassen. Darin zeigte sich – und so hattest Du es ja auch berichtet –, dass es funktioniert, obwohl sich semantisch nichts am Code geändert hat. Ferner hattest Du berichtet, dass dsbmd-1.0pre einwandfrei funktioniere. Dieser Code unterscheidet sich jedoch, insbesondere der Teil, der optische Speichermedien behandelt, funktional nicht von dsbmd-1.1. Es ist im Grunde nur ein Thread hinzugekommen, der sich alleine um die devd-Events kümmert, damit bei einem langsamen/hängenden Laufwerk, und bei einem gleichzeitig lärmenden devd keine Events verloren gehen.

dsbmd-1.1 ist jetzt in den Ports. Daher kann ich im Moment nur etwas verlegen dazu raten, dsbmd in /etc/rc.conf zu aktivieren, und einen Neustart zu machen.

funktioniert das Mounten von CD's in caja wieder nicht.
Wie genau meinst Du das? Es ist ja dsbmc-cli/dsbmd, das mountet, nicht caja. caja, oder welcher Dateimanager auch immer, zeigt ja nur an, welche Geräte gemountet sind, und lässt sie den Benutzer aushängen.

Es bleibt verwirrend und spannend. Allerdings hat es auch etwas Gutes, denn ich war bei meiner ersten Weisheitszahn-OP so von dem Problem im Beschlag genommen, dass ich von dem Eingriff kaum etwas mitbekommen habe ;)
 
Zurück
Oben