/etc/hotplug/run_mount modifizieren

Mir ist das aufgefallen als ich damit fertig war. So im nachhinein hätte ich mir das natürlich sparen können. Da hast du wohl Recht.
Ich finde deinen Vorschlag gut und wäre auf alle Fälle dafür ihn umzusetzen.

MfG Oliver
 
Ich auch. Die Sachen kommen rein, wenn sich Niemand über deine Leistung noch beschwert ;)
 
ok, ich hoffe nur, dass meine Patches immer noch passen.
@Oliver: Wie groß schätzt du den Aufwand alle usbstorages-Patches so anzupassen, wie ich es vorschlage? Ich hatte zwar für 7170 und 7270 es gemacht, aber alles war händisch und sehr zeitaufwendig. Außerdem hatte ich festgestellt, dass man da nicht viel rausnehmen darf und z.B. diesen netten Kommentar von AVM mit ## vor nicename() lieber stehen lassen sollte, damit die doppelten und die dreifachen patches von run_mount (autorun, ftpd) doch alle nacheinader durchlaufen können, ohne abzubrechen.
Oder sieht ihr da den Bedarf eventuell noch mehr zu uns auszulagern oder run_mount komplett zu ersetzen? Ich hatte da die Tage etwas mit /etc/hotplug/storage rumgespielt. Im Prinzip sehen alle diese hotplug-Skripte von AVM den rc-daemons ähnlich aus. Sie können mit unterschiedlichen Parametern (leicht aus den Skripten zu erlesen) aufgerufen werden. Eine alternative/zusätzliche Methode die ganzen Patches zu ersparen wäre einen wrapper für diese hotplug-Skripte zu schreiben. Aber da weiß ich noch nicht genau, ob es gut/besser ist und wie das in Details gehen sollte.

MfG
 
kleine bemerkung am rande: es gab doch schon mal das bestreben, die hotplug-chain ztu modifizieren/auszutauschen (und ist sogar immer noch im trunk): mdev

dort funktionierte das mounten per uuid, automatischer e2fsck-check vor dem mounten schon. nur leider wird das nicht mehr gewartet und passt deshalb nicht mehr auf die neusten firmwares - evtl. macht es mehr sinn, das weiterzuentwickeln?

ob es nun einfacher ist, was neues zu machen oder mdev anzupassen, kann ich nicht sagen... aber zumindest könnte man aus mdev vielleicht etwas lernen.
 
Das Problem an mdev war/ist, dass es sich zu weit von avm entfernt hat, ergo ein "replacement" ist fuer die avm-sachen. Auch die Wartung ist natürlich nach johnbocks zeitknappheit etwas schwierig, und "fertig" war das Paket imho auch noch nicht.
Dies hier aber ist dort näher am Original, und merzt nur einige Schwächen aus, die das Original hat.

Edit: Auch hat hermann bevor er hier angefangen hat im mdev-Thread nachgefragt.
 
dort funktionierte das mounten per uuid, automatischer e2fsck-check vor dem mounten schon.
Vom mounten über uuid halte ich gar nichts. Kennst du alle uuid-s von deinen Partitionen/Medien auswendig? Was ist, wenn du anstatt 2GB-Stick einen neuen 8GB-Stick nehmen willst? Nach meiner Methode reicht es, die Partition beim Stick genau so heißen zu lassen und schon wird sie "sauber" gemounted.
Zum automatischen check hatte ich mich auch anderswo geäußert. Man kann es nicht bei großen Systemen mit einem Monitor "abgucken". Die Gegebenheiten bei einer Box sind anders. Und man muss strategisch anders vorgehen.
Mit dem e2fsck ist es ebenfalls nicht getan. Es gibt auch FAT-Partitionen auf dem Stick der Box, die genau so viel gewartet werden wollen, wie die ext-Partitionen. Das "saubere" unmounten von diesen Partitionen ist nur mit AVM-Mitteln möglich, bzw. nach der gleichen Art und Weise, wie AVM es macht. NTFS hatte ich mir noch gar nicht angeschaut. Vermutlich gibt es dafür auch was Ähnliches, wie "e2fsprogs" oder "dosfstools". Zusammenfassend will ich dazu sagen, dass man hier schon möglichst nah an der AVM-Realisierung bleiben sollte, um den Wartungsaufwand zu minimieren.
nur leider wird das nicht mehr gewartet und passt deshalb nicht mehr auf die neusten firmwares - evtl. macht es mehr sinn, das weiterzuentwickeln?
Ich weiß es nicht, ob es Sinn macht oder nicht. Ich habe eine andere Möglichkeit der Realisierung gefunden, die udev nicht braucht. Und sie werde ich weiter genau so ohne udev verfolgen. Es bleibt dir überlassen, ob du udev weiterentwickelst. Dann haben wir beide mögliche Wege erschlagen.

MfG
 
Vom mounten über uuid halte ich gar nichts. Kennst du alle uuid-s von deinen Partitionen/Medien auswendig? Was ist, wenn du anstatt 2GB-Stick einen neuen 8GB-Stick nehmen willst? Nach meiner Methode reicht es, die Partition beim Stick genau so heißen zu lassen und schon wird sie "sauber" gemounted.

ich hatte damals einfach für jeden stick bzw. jeder uuid einen eintrag in der fstab und frei gewähltem mountpoint... da musste ich mir nur den mountpoint merken (uuids kann man übrigens auch setzen). aber klar, per label ist schon komfortabler (und dafür ja auch da) - ich hatte übersehen, dass dies ja die idee ist...

und zum check (e2fsck): wenn das unmounten aus irgendeinem grunde nicht klappt und das system filesystem doch kaputt ist (stromausfall?), dann muss wohl oder übel e2fsck drüberlaufen (oder das entsprechende pendant für fat, ntfs). auch wenn es bei einer 1TB platte ne stunde dauert... besser, als daten zu verlieren.

ich bin übrigens kein verfechter von mdev, mir ist es ehrlich gesagt schnuppe, was damit passiert. versuchte nur zur entwicklung beizutragen, indem ich hinweis darauf gab, der offensichtlich unnütze war.
 
@coolphoenix:
Und diese eine Stunde sitzt du und vor allem deine Frau/Freundin ohne Telefonanlage und evtl. ohne Internet? (die Frauen sind da besonders empfindlich, wie wir aus mehreren Berichten hier in IPPF kennen).
Denn wenn man es nach der klassischen PC-Methode macht, dann musst du es ganz früh im Startvorgang tun. Was ich auf einer anderen Stelle hier vorgeschlagen hatte, war einen passiven Check z.B. jede Nacht durchzuführen. Wenn während dieser passiven Prüfung Fehler entdeckt werden (Fehlalarme nicht ausgeschlossen, aber meiner Meinung nach beherrschbar), dann soll die betroffene Partition abgetrennt, repariert und wieder eingebunden werden. Dieses wiedereinbinden kann man gerade mit LABELs relativ gut reproduzierbar machen. Der Unterschied zur klassischen Methode würde darin liegen, dass die Box für die erste passive Prüfung gar nicht runtergefahren werden müsste und dass die ganzen Vorgänge durch Parametrierung auf eine späte Stunde (z.B. 3 Uhr nachts) gelegt werden können. Zu dieser (oder einer anderen) Stunde kann der Benutzer verkraften, dass eine seiner Partitionen eventuell fehlen würde, oder dass die Funktionalitäten der Box eventuell eingeschränkt sind. Aber mehr dazu steht in einem anderen Thread.

MfG
 
besteht nicht die möglichkeit, dass das system weiter hochfährt und nebenbei den platten-check macht? aber ich kenn mich viel zu wenig mit dem mount-system von avm aus, eigentlich gar nicht, von daher... kenne es halt nur von mdev ;) dort passierte der e2fsck auch "nebenbei".

und das remounten ist so eine sache... zuvor müsste nämlich alles gekillt werden, was die parition benutzt (samba, rrdstats speichert dort logs, apache, external, ...). man müsste auf jedes programm achten und es bei bedarf beenden. fände ich ziemlich aufwändig, aber ich lasse mich gerne eines besseren überzeugen :)
 
Die Platten werden ja jetzt auch eingehängt, von daher sollte das gehen. Herman: Wie wäre eine Warnung, wenn denn Fehler auftauchen? ext3 zumindest gibt ja Warnungen aus. Wie sieht es mit anderen Filesystemen aus? Diese Warnungen dann freundlich ins Webinterface mit Button zum erledigen des Problems, und allen sollte geholfen sein. (Evtl. noich nen Haken für "automatisch regeln" andenken...)
 
@coolphoenix: Man kann die Prüfung im Lesemodus durchführen, wie wir bereits irgendwo anders diskutiert hatten.
@Silent-Tears: Wie meinst du "ext3 gibt Warnungen aus"? Wann? Beim check oder im laufenden Betrieb einfach von sich aus? Wohin gehen sie denn dann? Oder meinst du Warnungen, wenn man unmounted?

@SVN-Schreibberechtigte: Kann bitte jemand den patch aus dem Posting 19 einchecken? Sonst wird es so dermassen veraltet, dass es gar nicht mehr an den trunk angewendet werden kann. Im default-Zustand sollten meine Änderungen nicht viel böses einrichten können. Erst wenn mann mit den LABELs anfängt zu spielen. Aber dagegen sind alle gewarnt.
Ich habe diese automount-Geschichte bei mir bereits auf drei Boxen erfolgreich am Laufen. Sticks sind mit den LABELs gemounted. TAM-Dateien sind mit meinem reparator gepatched.

MfG
 
Herman: Beim mounten von ext3 sieht man Warnmeldungen, wenn gechecked werden sollte. Ext3 mountet normalerweise trotzdem RW, aber gibt halt eben Warnungen aus wie "maximum mountcount reached"
 
guter Hinweis. Mal sehen, wie sich sowas einbauen lässt. Das Problem ist, dass das mounten in den Tiefen von AVM-Skripte passiert. Unser fs_mount() sitzt da ziemlich am Ende der Kette. Das als Rückgabewert zurückzuliefern ist nicht sinnvoll. Aber vielleicht kann man ja irgendwo unter /tmp dann so eine Datei anlegen, die dann die "unsauberen" Partitionen beinhalten würde. Un diese Datei könnte man dann mit mounted.cgi, oder was auch immer auswerten. Somit würde man eine saubere Schnittstelle zwischen dem automount, mounted.cgi und check-Routinen verschaffen.

MfG
 
Das checken einer Partition auf der FB selbst braucht aber viel Zeit und CPU
 
Das checken einer Partition auf der FB selbst braucht aber viel Zeit und CPU

lieber nicht checken und fröhlich weiterschreieben? oder einfach nicht mounten, benutzer soll sich drum kümmern? ersteres wohl auf keinen fall, zweiteres ziemlich aufwändig für den nutzer. soll die fb doch fehler korrigieren, auch wenn's lange dauert.

@coolphoenix: Man kann die Prüfung im Lesemodus durchführen, wie wir bereits irgendwo anders diskutiert hatten.

okey, dachte das höchstens bei ro - wo ist denn genau irgendwo anders?

Herman: Beim mounten von ext3 sieht man Warnmeldungen, wenn gechecked werden sollte. Ext3 mountet normalerweise trotzdem RW, aber gibt halt eben Warnungen aus wie "maximum mountcount reached"

maximum mount-count ist ja kein fehler, nur eine empfehlung - sollte ja auch bei ner fb nicht all zu häufig vorkommen (nach 40-60 mal mounten kommt das erst... selbst wenn man die fb jeden tag neustartet etc.). das kommt also nicht so häufig vor.

schlimmer ist es doch, wenn das system nicht sauber unmounted wurde (needs_recovery ist gesetzt) - dann muss (bei ext3) das journal zumindest abgespielt werden, bei ext2 müsste ein voller check laufen. bin mir nicht ganz sicher, ob für ersteres e2fsck nötig ist, für's zweite offensichtlich schon.

Mal sehen, wie sich sowas einbauen lässt. Das Problem ist, dass das mounten in den Tiefen von AVM-Skripte passiert. Unser fs_mount() sitzt da ziemlich am Ende der Kette. Das als Rückgabewert zurückzuliefern ist nicht sinnvoll. Aber vielleicht kann man ja irgendwo unter /tmp dann so eine Datei anlegen, die dann die "unsauberen" Partitionen beinhalten würde. Un diese Datei könnte man dann mit mounted.cgi, oder was auch immer auswerten. Somit würde man eine saubere Schnittstelle zwischen dem automount, mounted.cgi und check-Routinen verschaffen.

das wäre aber so ein gefrickel und gerade ziemlich unsauber. erst wird gemountet, falls dann gesehen wird, die platte ist unsauber, doch wieder unmountet. zwischendurch wurden schon befehle der autorun.sh abgespielt, die hotplug chain hat ftpd/samba neugestartet und und und. oder wird die platte dann nicht gemountet? dann kann doch an dieser stelle, statt in tmp etwas anzulegen, der check passieren.

ich will jetzt eigentlich nichts sagen, da ich ja nicht der bin, der das programmiert und den aufwand habe, aber wenn man sich schon so viele gedanken darüber macht, dann sollte man versuchen es richtig zu lösen. und richtig bzw. am wenig aufwändigsten ist (meiner meinung nach), irgendwo in den tiefen des avm-skripts einen befehl zwischenzuschieben, der zuerst den zustand der platte prüft, bei bedarf die fehlerkorrektur vor dem mounten startet oder halt nicht, und dann das avm-skript normal weiterläuft. wo dafür die richtige stelle ist, ob das wirklich so geht usw. kann ich nicht sagen, da muss man erstmal die hotplug chain gut verstehen, aber das wäre eine saubere lösung. die autorun.sh/autoend.sh haben ja auch ihren platz in der hotplug-chain gefunden, von daher sollte das doch machbar sein. evtl. noch per webiface konfigurierbar machen, ob der user den check will (für den, dem es zu lange dauert, der deaktiviert es und nimmt inkonsistenz in kauf), und gut ist.

bei dem ganzen hackt es aber natürlich an dem, dass die tools, die die platten checken, erst mal auf die box müssten - bei 16mb flash / neueren modellen vermutlich kein problem, bei anderen schon eher gewaltig... und man müsste wissen, ob es bei ntfs/fat sowas wie "needs_recovery" gibt - ich meine aber, bei einem windows-rechner schon mal die meldung nach einstecken eines sticks gesehen zu haben, dass der stick nicht sauber entfernt wurde - also scheint es sowas auch dort zu geben.
 
lieber nicht checken und fröhlich weiterschreieben? oder einfach nicht mounten, benutzer soll sich drum kümmern? ersteres wohl auf keinen fall, zweiteres ziemlich aufwändig für den nutzer. soll die fb doch fehler korrigieren, auch wenn's lange dauert.
Nicht mounten oder nur lesend ist blöd, eine Warnmeldung (wie es extX macht) sollte reichen

@coolphoenix: Man kann die Prüfung im Lesemodus durchführen, wie wir bereits irgendwo anders diskutiert hatten.

okey, dachte das höchstens bei ro - wo ist denn genau irgendwo anders?
ro=readonly=Lesemodus ?!


maximum mount-count ist ja kein fehler, nur eine empfehlung

Das kann man ja nach eigenem Belieben setzen.
 
Nicht mounten oder nur lesend ist blöd, eine Warnmeldung (wie es extX macht) sollte reichen

die warnmeldung kommt aber nur beim mount-count (da muss das dateisystem nicht beschädigt sein) - wenn das dateisystem den flag needs_recovery hat, dann wird entweder das journal abgespielt oder e2fsck läuft voll drüber, ansonsten wird nicht gemountet. auch wenn das abspielen des journals nicht klappt oder e2fsck die fehler nicht beheben kann, wird nicht gemountet. alles andere würde entweder arbeiten mit inkonsistenten daten (ro-mount) oder schreiben auf ein fehlerhaftes dateisystem (rw-mount) mit sich bringen.

ro=readonly=Lesemodus ?!

ups, hab ich mich wohl vertan, okey. also erst jede platte ro mounten, check laufen lassen, beim fehler unmount und fehler korrigieren, ansonsten rw remount? vielleicht habe ich einfach nur den überblick verloren, von dem, was geplant ist, und reime mir da irgendwelche abläufe zusammen, die eigentlich gar nicht geplant sind.

wäre cool, wenn jemand/herman zwecks überblick den aktuellen stand der dinge niederschreibt, wie es denn nun eigentlich bis jetzt genau geplant ist. schließlich hat er ja sicherlich die beste idee davon, was er schreiben will ;) was soll wie passieren? wann wird wie gemountet, wann wird der ro-check gemacht, was passiert bei fehlern usw? denn ich glaube, ich blicke nicht mehr so ganz durch. dann hat man auch ne grundlage, auf die man sich beziehen kann.
 
Ich meinte die Warnmeldung sihtbar zu machen, auf dem Webinterface zB
 
Alles, was geplant ist, steht hier irgendwo, bzw. ich hatte mich dazu schon an mehreren Stellen teilweise wiederholt ausgedruckt. Außerdem bin ich eher der Mensch der Taten, als der Ankündigungen. Die Diskussion ist ausführlich geführt worden, ich hatte eure Wünsche erhört und würde mein Bestes tun, wenn ich Zeit dazu habe.
Zum Check jedes Mal, wenn es unsauber gemounted wurde bin ich immer noch der Gegner, obwohl ich es vielleicht optional so einpflegen würde, wie vorgeschlagen. Eher würde ich die Checks bevorzugen, die regelmäßig (nachts) lesend ablaufen und beim Bedarf (optional konfigurierbar) die betroffene Partition unmounten und reparieren. Das Problem liegt einfach daran, dass es zur Zeit eher alles unsauber unmounted wird (Ursachen muss man erst erforschen) und man würde beim jeden Reboot so eine Dauertestroutine am Laufen haben. Und wie ich schon sagte sollte es logischerweise ganz am Anfang passieren, sprich, du wirst 10-20 Minuten auf deine Box warten müssen. Und das muss echt nicht sein.
Die Partition inkonsistent zu mounten klingt zwar hart, aber es läuft meistens nicht ganz in die Hose, wie die Erfahrung zeigt. Vor allem, wenn du weiß, dass deine nächste Prüfung/Reparatur in den nächsten 24 Stunden sowieso erfolgen wird. Ich würde eher das in Kauf nehmen, als verzögerte Reboots zu erleben. Daten, die dir wichtig sind, solltest du dadurch vom restlichen Müll trennen, dass du sie auf eine separate Partition packst. Z.B. Logs gehören nicht auf die gleiche Partition rein, wo deine Bewerbungsunterlagen liegen (wenn du sie denn so unbedingt da liegen haben willst).
Zum Prformance und Platzbedarf. cuma du malst den Teufel unnötig schwarz. Klar, wenn man da terabyte-lange Festplatten an der Box hängen hat, dann ist man selbst irgendwie schuld. Sonst könnte ich keine großen Einbusse bei meiner 7170 mit den 2-3GB-großen Partitionen feststellen. Lief relativ schnell. Prozessorleistung weiß ich nicht, deswegen will ich ja es auf nächtliche Stunden verlagern. Platzbedarf hält sich in Grenzen, wenn man nicht die kompletten ext2/fat-Pakete, sondern die einzelnen Tools zum checken mit aufs Bord nimmt. Modulenunterstützung für z.B. ext2 frisst da -glaube ich- eher Platz. Logischerweise sollen die Check-Tools natürlich auf die Box und nicht auf den Stick, obwohl auch da unterschiedliche Strategien möglich sind.

MfG
 
zur prozessorleistung: es ist kein problem, wenn ein check oder was auch immer den prozessor zu 100% auslastet, das stört die anderen funktionen wie telefonieren, internet surfen etc. rein gar nicht (höchstens dateitransfer per samba wird verlangsamt, da dort ja die cpu flaschenhals ist). habe schon so meine erfahrungen mit programmen, die stundenlang (>10 stunden) die cpu auf der box fressen und nichts gemerkt (allerdings auch nicht danach gesucht...)

und seitdem ich per autoend.sh alle programme beende, die auf die platten zugreifen bzw. deren binaries externalized sind, so wird bei mir bei einem "reboot" auf der konsole (oder per avm-iface) alles sauber unmounted. denn gerade die autoend.sh in zusammenhang mit "/etc/hotplug/storage unplug X" (was offensichtlich von avm bei einem reboot aufgerufen wird) ist ziemlich der bringer für den unmount (zumindest als übergangslösung).

wenn man weiß, welche programme in freetz auf die platte zugreifen und diese in die autoend.sh einträgt, werden die schön beendet - avms sachen werden dann automatisch durch die avm-hotplug-chain beendet.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.