sonnenblen.de - Das unabhängige Sun User Forum

Betriebssysteme => Solaris => Thema gestartet von: sunfreak am 24. März 2011, 13:33:44

Titel: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: sunfreak am 24. März 2011, 13:33:44
Hallo,
ich habe mal eine Spezialfrage/Problem mit dem ich unter Sol10/SPARC nicht weiterkomme.

Problem:
Ich habe eine Software, die massig Files in ein Verzeichnis schreibt. Dieses Schreiben kann ich nicht abschalten. Das Verzeichnis wohin die SW schreibt, kann ich konfigurieren. Die SW überprüft, ob das auch wirklich ein Verz. ist.
Diese Software läuft mehrfach auf meinen Server. Nun laufen die Verzeichnisse immer wieder voll.
Ich brauche die entstehenden Files nicht!
/dev/null kann ich in der Configuration nicht angeben, da das nicht als Verz. erkannt wird.

Ich habe schon alles ausprobiert wie: rm per cronjob usw., aber die Aufraeumjobs werden der Masse nicht Herr und kommen nicht hinterher.

Nun ware mein Wunsch ware ein Verzeichnis zu haben, das sich wie /dev/null verhaelt.
So als Idee also irgendein "geheimnisvolles" mknod das ein Device erzeugt, das sich wie /dev/null verhaelt und das evtl. loopback mounten oder so..

Fuer Hilfe bin ich sehr dankbar.
Gruss
Frank
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: tassilo am 24. März 2011, 13:47:46
moin moin

es werden also files so schnell geschieben das sie nicht mehr gelöscht werden können?

hmm ich muss sagen auf anhieb fällt mir nur "pferdelogik" ein. z.b.

- wenn wirklich mehr geschrieben wird als gelöscht werden kann könnte man das in mehrere threads eintüten.z.b. n find über 1000 files und dann löschen und den prozess in den hintergund
- vielleicht hilft n named pipe da weiter ?
- wenn du nicht nach dev/null schreiben kannst hilft -imho- auch kein spezielles device, da das ja wieder sowas in der art wie /dev/null wäre...
- was ist wenn du nach dem starten das dir löscht. k.a. was passiert.

hmm keine ahnung.. hab wohl zuviel intus. hab meinen ausstand...

grüße

tassilo
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: Drusus am 24. März 2011, 14:19:39
Moin,

wie verhaellt sich denn die Software wenn das angegebene Zielverzeichnis zwar da ist aber das Filesystem dazu voll ist?
Eventuell waere ein Workaround ein separates tmpfs Filesystem anzulegen und dass auf eine minimale Groesse zu begrenzen, also z.B.
# mkdir /var/dummy
# mount -F tmpfs -o size=10m swap /var/dummy

Tschau,
  Drusus.
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: sunfreak am 24. März 2011, 15:33:34
Hi Drusus,
Mit einem "normalen" Verzeichnis habe ich schon rumgespielt:
- Wenn es voll ist dann steht die Software
- Wenn es nicht reinschreiben kann (Entzug der Schreibrechte) steht die Software

Was ausser einem Verzeichnis noch akzeptiert wird ist ein Bandlaufwerk mit norewind Eigenschaft (/dev/rmt/0) ...
Man bräuchte also irgendwas, was sich nach aussen wie ein Verzeichnis oder Tape präsentiert und nach innen wie /dev/null verhält.
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: Toktar am 24. März 2011, 16:44:06
Ein mount /dev/null /mnt funktioniert leider auch nicht, da mount ein blockdevice haben möchte. Vielleicht bekommt man das über ein Loopdevice hin, validiert hab ich das nicht....
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: sunfreak am 24. März 2011, 16:46:00
Ein mount /dev/null /mnt funktioniert leider auch nicht, da mount ein blockdevice haben möchte. Vielleicht bekommt man das über ein Loopdevice hin, validiert hab ich das nicht....

Hi,
genau das wäre evtl. auch meine Idee... Aber wie?
Frank
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: stiefkind am 25. März 2011, 23:15:15
/dev/null kann ich in der Configuration nicht angeben, da das nicht als Verz. erkannt wird.

Nur so eine schnelle Idee und nicht verifiziert, ob das überhaupt klappt: Versuch doch mal einen symbolischen Link von dem Verzeichnis nach /dev/null zu setzen.

wolfgang
Titel: Re: Verzeichnis das sich wie /dev/null verhaelt
Beitrag von: turrican am 26. März 2011, 23:43:48
Spontan fiele mir hier nur ein FIFO ein, mittels mknod und nem entsprechenden Device type und ner passenden Major-Device Number könntest du z.B. ein "Character Device" (entsprechend so einem Tapedrive) definieren - Type sollte "c" für Character sein und Major Number "9" für ein SCSI Tape.

Der FIFO hat normalerweise ne begrenzte Größe (5k in Sol 10 wenn ich mich recht erinnere) und schiebt die Daten einfach durch.

Is aber alles ausm Kopf eingetippt, hab ich selber noch nie ausprobiert, weiss nur, dass es sowas gibt.

Google mal nach mknod und FIFO, evtl. hilft dir das weiter?

Schönen Gruss,
Alex