datei änderungen protoklieren
datei änderungen protoklieren
hallo, kann ich das ändern/erstellen/löschen einer Datei als auslöser benutzten um ein programm zu starten? und wie mach ich das?
Also das problem ist folgendes: ich möchte die locate funktion ein wenig umändern so das immer wenn eine datei geändern/erstellen/gelöscht wird dies sofort in der Datenbank protokoliert wird.
ist das überhaupt sinvoll oder könnte dadurch das system beim schreiben auf die Festplatte deutlich langsamer werden?
EDIT: oder gibt es eine log datei des datei systems? es reicht ja auch aus die DB zu akktualisieren wenn locate aufgerufen wird
Also das problem ist folgendes: ich möchte die locate funktion ein wenig umändern so das immer wenn eine datei geändern/erstellen/gelöscht wird dies sofort in der Datenbank protokoliert wird.
ist das überhaupt sinvoll oder könnte dadurch das system beim schreiben auf die Festplatte deutlich langsamer werden?
EDIT: oder gibt es eine log datei des datei systems? es reicht ja auch aus die DB zu akktualisieren wenn locate aufgerufen wird
Re: datei änderungen protoklieren
Kennst du find?ZzLeCzZ hat geschrieben:Also das problem ist folgendes: ich möchte die locate funktion ein wenig umändern so das immer wenn eine datei geändern/erstellen/gelöscht wird dies sofort in der Datenbank protokoliert wird.
ist das überhaupt sinvoll oder könnte dadurch das system beim schreiben auf die Festplatte deutlich langsamer werden?
EDIT: oder gibt es eine log datei des datei systems? es reicht ja auch aus die DB zu akktualisieren wenn locate aufgerufen wird
Wie groß/lahm sind deine Festplatten?
Oder hast du zu viel Zeit?
Mir käme jedenfalls so ein daemon nur ins System, wenn er den allerletzten nice-Wert hätte. Und schreiben würde ich so etwas schon gar nicht. Nicht mal, wenn es neben dem PC kein richtiges Leben mehr geben würde...
Gruß
ernohl
ernohl
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Um Deine eigenen Worte zu verwenden: "Das ist Schwachsinn" . Du willst ja auch nicht in den PTEs und TLBs des Kernel herumspielen (virtuelles Speichermanagement), oder? Das Journal ist eine "interne Datenstruktur" des Kernels (bzw. des Dateisystems).
Wenn Du den FS Code debuggen willst: Bei ext3 kann man das Journal sehen, wenn man das Dateisystem als ext2 mountet. Es taucht dann als versteckte Datei ".journal" im TopLevel der Partition auf. Wenn die Partition sauber unmounted wurde, ist das Journal allerdings per Definition leer...
Patrick
Wenn Du den FS Code debuggen willst: Bei ext3 kann man das Journal sehen, wenn man das Dateisystem als ext2 mountet. Es taucht dann als versteckte Datei ".journal" im TopLevel der Partition auf. Wenn die Partition sauber unmounted wurde, ist das Journal allerdings per Definition leer...
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
Für welches Szenario brauchst du den diese Funktionalität? Vielleicht ist ja sogar ein Versionsverwaltungsprogramm etwas, was dir weiterhelfen kann.
Subversion kann zum Beispiel, wenn man über Webdav zugreift, Autoversionierung, so dass der Benutzer gar nicht mitbekommt das er ein Versionierungstool benutz (er muss halt nur den Webdavordner als Netzlaufwerk irgendwie einbinden).
cu
Subversion kann zum Beispiel, wenn man über Webdav zugreift, Autoversionierung, so dass der Benutzer gar nicht mitbekommt das er ein Versionierungstool benutz (er muss halt nur den Webdavordner als Netzlaufwerk irgendwie einbinden).
cu
Also das problem ist folgendes: ich möchte die locate funktion ein wenig umändern so das immer wenn eine datei geändern/erstellen/gelöscht wird dies sofort in der Datenbank protokoliert wird.
das ziel ist das man dateien zu jeder zeit blizschnell finden kann
so was soll auch im neuen macosx tiger sein...
ausprobieren kann man das auch mit dem betriebssystem "BeOS" http://bezip.de/app/306/ hier werden auch noch sehr gut die attribute der dateien ausgenutzt... z.b mails erhalten attribut read, unread, subject.... und nach dennen kann dann gesucht werden. zb alle mails mit attribute unread suchen und augenblick später hatt man alle ungelesenen mails, die auf der festplatte sind paratt!
was macht den so ein versionsverwaltungs programm?
edit: vieleciht sind die links hier besser: http://bezip.de/app/308/ http://bezip.de/app/1328/ http://www.yellowtab.com/
das ziel ist das man dateien zu jeder zeit blizschnell finden kann
so was soll auch im neuen macosx tiger sein...
ausprobieren kann man das auch mit dem betriebssystem "BeOS" http://bezip.de/app/306/ hier werden auch noch sehr gut die attribute der dateien ausgenutzt... z.b mails erhalten attribut read, unread, subject.... und nach dennen kann dann gesucht werden. zb alle mails mit attribute unread suchen und augenblick später hatt man alle ungelesenen mails, die auf der festplatte sind paratt!
was macht den so ein versionsverwaltungs programm?
edit: vieleciht sind die links hier besser: http://bezip.de/app/308/ http://bezip.de/app/1328/ http://www.yellowtab.com/
VCS werden meist bei der Entwicklung eingesetzt und erleichtern es in der Regel mehreren Programmieren an einem Projekt zu arbeiten. Es ist dort auch möglich den Verlauf einer Datei zu verfolgen, und welcher User wann welche Änderung gemacht hat.ZzLeCzZ hat geschrieben: was macht den so ein versionsverwaltungs programm?
Anscheinend ist es aber nicht für deinen Anwendungsfall sinnvoll zu benutzen, da du etwas komplett anderes zum Ziel hast. Hätt ja sein können.
cu
Hi,
was du du brauchst, ist wahrscheinlich eher über den Umweg einer der IDS-Systeme zu realisieren.
z.B. samhain
Evtl. hilft dir auch folgendes weiter:
http://www.bangstate.com/changedfiles/
bzw.
http://sourceforge.net/projects/doxfs/ (Eigetlich mehr Dokumenten-Management)
Aber auch das ist im Prinzip Murks (Ausnahme das letzte). Ein natives, kostenloses, vielfach getestetes Datenbankbasierendes FS ist mir so nicht bekannt.
Es gibt zwar immer wieder Ansätze oder Hilfesmittel wie:
http://sourceforge.net/projects/pgfindfile/
http://sourceforge.net/projects/dbvfs/
LinFS (kein Bookmark gefunden)
Aber wirklich "fertig" werden diese nie, was ich nur zu gut kenne. FS ist schon Schwierig genug und dann auch noch in Verbindung mit einer DB. :/
Hab schon selbst Ansätze mit über VFS + postgres angefangen und wieder verworfen.
Vielleicht hilft dir dennoch der eine oder andere Link weiter.
da minus
was du du brauchst, ist wahrscheinlich eher über den Umweg einer der IDS-Systeme zu realisieren.
z.B. samhain
Evtl. hilft dir auch folgendes weiter:
http://www.bangstate.com/changedfiles/
bzw.
http://sourceforge.net/projects/doxfs/ (Eigetlich mehr Dokumenten-Management)
Aber auch das ist im Prinzip Murks (Ausnahme das letzte). Ein natives, kostenloses, vielfach getestetes Datenbankbasierendes FS ist mir so nicht bekannt.
Es gibt zwar immer wieder Ansätze oder Hilfesmittel wie:
http://sourceforge.net/projects/pgfindfile/
http://sourceforge.net/projects/dbvfs/
LinFS (kein Bookmark gefunden)
Aber wirklich "fertig" werden diese nie, was ich nur zu gut kenne. FS ist schon Schwierig genug und dann auch noch in Verbindung mit einer DB. :/
Hab schon selbst Ansätze mit über VFS + postgres angefangen und wieder verworfen.
Vielleicht hilft dir dennoch der eine oder andere Link weiter.
da minus
He who work root can fell trees and knowledge is no substitute for experience.
Eine andere Möglichkeit wäre das Directory Notification Feature vom Kernel. Allerdings kann man damit - wenn ich das richtig verstanden habe - nur bestimmte Verzeichnisse überwachen und bei einer Änderung innerhalb des Verzeichnisses (Datei wird gelöscht, erstellt, ...) kriegt dein Programm ein Signal und kann dann entsprechende Aktionen ausführen. Das Problem ist aber, dass man nicht mitbekommt welche Datei sich geändert hat. Man bekommt nur "gesagt" in welchem Verzeichnis sich was geändert hat. Also müsste man dann dieses Verzeichnis mit seinem Programm durchsuchen und die Datenbank aktualisieren. Das wird dann bei Verzeichnissen mit sehr vielen Dateien wieder langsam.
dnotify ist ein Programm, das dieses Kernel Feature benutzt.
*edit*
Vielleicht muss man das Rad auch garnicht neu Erfinden:
Beagle
Storage
dnotify ist ein Programm, das dieses Kernel Feature benutzt.
*edit*
Vielleicht muss man das Rad auch garnicht neu Erfinden:
Beagle
Storage
smoon:#linuxger:Undernet