Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1336 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  réseaux et sécurité

  Comment logger les écritures sur une partition

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment logger les écritures sur une partition

n°925631
Sly Angel
Architecte / Développeur principal
Posté le 21-06-2007 à 17:21:43  profilanswer
 

Salut,
 
Dans le cadre d'un système particulier que je souhaiterais tester, je voudrais pouvoir logger les écritures et modifications de fichier sur un disque.  
 
Le but est de pouvoir vérifier un fichier sitôt celui-ci écrit.
 
 
Mes approches ont été de checker au niveau VM ( /proc/sys/vm/block_dump ), au niveau FS ( ReiserFS ) et au pire au niveau NFS ( moins flexible à l'usage ). Actuellement je n'ai pas de solution efficace dans le sens ou je n'ai que des informations partielles, notamment le log verbeux de block_dump me donne le nom du fichier et l'inode mais pas son emplacement. A coup de find -inum ça le fait pas trop du coup sur une grosse masse de petits fichiers.
 
Si quelqu'un a une expérience dans le debug/log de file system pour suivre les écritures de fichiers ça m'intéresse grandement.
 
Eventuellement si y'a moyen de cacher la correspondance inode -> file je suis preneur également, parce que find c'est pas trop dans ses compétences.
 

mood
Publicité
Posté le 21-06-2007 à 17:21:43  profilanswer
 

n°925637
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:28:05  profilanswer
 

Regardes du côté de inotify, ptet que ça pourrait t'aider dans ce que tu cherches à faire :)
 
http://inotify-tools.sourceforge.net/
 
http://en.wikipedia.org/wiki/Inotify


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925639
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:30:03  profilanswer
 

Regardes du côté d'un outil appelé "dnotify" aussi.


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925645
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:38:43  profilanswer
 

Sinon, t'as la "vieille" mais éprouvée alternative Fam/Gamin (oui, je sais :D), dont tu pourrais t'inspirer.


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925646
Sly Angel
Architecte / Développeur principal
Posté le 21-06-2007 à 17:39:12  profilanswer
 

oui inotify remplace dnotify, le problème c'est que c'est pour grosso modo 100 000 fichiers, inotify étant sur un fichier défini si je ne dis pas de bétise, ça risque d'être un peu tendu.
 
Pour dnotify je vais regarder si le fonctionnement est différent :jap:

n°925647
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:44:17  profilanswer
 

pas trop en fait, et je crois que c'est plutot pour surveiller des directories.
 
inotify, c'est le nom du framework. Après, y'a des outils qui utilisent ce framework/API pour faire diverses choses, comme les inotify-tools.
 
Reste qu'un truc comme Beagle utilise, en partie, inotify, donc ça doit pouvoir être possible de faire ce que tu veux avec inotify en écrivant l'outil dont tu as besoin s'il n'existe pas  :o => man 7 inotify :D


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925649
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:45:26  profilanswer
 

Ha bah tiens, tiré du man  :o  :
 

Citation :

The inotify API provides a mechanism for monitoring file system events.  Inotify can be used
       to monitor individual files, or to monitor directories.  When a directory is monitored, ino-
       tify will return events for the directory itself, and for files inside the directory
.

Message cité 1 fois
Message édité par Zzozo le 21-06-2007 à 17:53:42

---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925650
P-Y
Posté le 21-06-2007 à 17:47:28  profilanswer
 

apparement on peut faire ce que tu recherches avec inotify:
http://www-128.ibm.com/developerwo [...] otify.html

n°925651
Sly Angel
Architecte / Développeur principal
Posté le 21-06-2007 à 17:49:17  profilanswer
 

Zzozo a écrit :

Ha bah tiens, tiré du man  :o  :
 

Citation :

The inotify API provides a mechanism for monitoring file system events.  Inotify can be used
       to monitor individual files, or to monitor directories.  [b]When a directory is monitored, ino-
       tify will return events for the directory itself, and for files inside the directory[/b].



 
Même si c'est un sous répertoire dans un sous répertoire donc ? ( comprendre que c'est pas juste le check du last changed du répertoire parce qu'on a modifié son contenu )

n°925653
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:52:50  profilanswer
 

Sinon, un peu plus "brute", y'a les les kernel probes  [:joce]
 
http://sourceware.org/systemtap/
 
Exemples de "scriptlet" qui pourraient t'intéresser :
 
http://sourceware.org/systemtap/wi [...] ries%29%29
 
et
 
http://sourceware.org/systemtap/wiki/WSFileMonitor2
 
[:anathema]


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
mood
Publicité
Posté le 21-06-2007 à 17:52:50  profilanswer
 

n°925654
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 17:54:36  profilanswer
 

Sly Angel a écrit :

Même si c'est un sous répertoire dans un sous répertoire donc ? ( comprendre que c'est pas juste le check du last changed du répertoire parce qu'on a modifié son contenu )


mmm   bonne question   :o
 
Le mieux, c'est d'essayer  :D
 
Le temps d'emerger les inotify-tools, et je pourrais te dire ça  [:tinostar]


---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925659
Zzozo
Modérateur
Un peu, passionément, à la fol
Posté le 21-06-2007 à 18:08:09  profilanswer
 

Bon bah je me suis amusé avec une commande du style inotifywait -e modify -r -m /simu/ pour surveiller les modifs de fichier, ça a marché, après avoir modifié un paramètre, vu que /simu/ contient 283239 fichiers et 14661 sous dossiers [:anathema] [:tinostar]
 
J'ai du faire un echo 16000 > /proc/sys/fs/inotify/max_user_watches pour qu'il puisse établir ses "points de surveillance"  :o
 
Attention, qd tu le lances, ça prend un petit peu de temps (enfin, c'est relatif :o ) à initialiser si y'a bcp de choses à surveiller mais après c'est bon  :)

Message cité 1 fois
Message édité par Zzozo le 21-06-2007 à 18:13:12

---------------
« Ce qui ne vous tue pas vous rend plus fort » F. Nietzsche | « Vise_ la Lune. Si tu rates, au pire, t'es dans la merde » Un poète disparu dans le cercle
n°925669
Tomate
Posté le 21-06-2007 à 18:55:53  profilanswer
 

avec grsec je crois que c'est faisable :)


---------------
:: Light is Right ::
n°925750
Sly Angel
Architecte / Développeur principal
Posté le 22-06-2007 à 00:11:25  profilanswer
 

Zzozo a écrit :

Bon bah je me suis amusé avec une commande du style inotifywait -e modify -r -m /simu/ pour surveiller les modifs de fichier, ça a marché, après avoir modifié un paramètre, vu que /simu/ contient 283239 fichiers et 14661 sous dossiers [:anathema] [:tinostar]
 
J'ai du faire un echo 16000 > /proc/sys/fs/inotify/max_user_watches pour qu'il puisse établir ses "points de surveillance"  :o
 
Attention, qd tu le lances, ça prend un petit peu de temps (enfin, c'est relatif :o ) à initialiser si y'a bcp de choses à surveiller mais après c'est bon  :)


 
Oui je suis sur le même test, ça prend son temps ( un échantillon de 52 000 fichiers en test ) mais ça se comporte pas trop mal a priori :jap:

n°925997
Taz
bisounours-codeur
Posté le 22-06-2007 à 12:39:49  profilanswer
 

t'es sur que tu n'as pas juste besoin d'accounting / quota ?
 
t'as essayé strace sur ton programme juste comme ça ...

n°926037
Sly Angel
Architecte / Développeur principal
Posté le 22-06-2007 à 14:32:44  profilanswer
 

Taz a écrit :

t'es sur que tu n'as pas juste besoin d'accounting / quota ?

 

t'as essayé strace sur ton programme juste comme ça ...

 

Euh rien à voir avec un quelconque système de quota, mon objectif est de suivre les écritures de fichiers sur un répertoire, ce à quoi inotify semble bien répondre finalement :)

 

strace ? Le problème n'est pas de suivre les écritures d'un programme ( auquel cas je change directement le code du programme en prenant un truc libre ), mais bien de pouvoir suivre les écritures de n'importe quelle programme ou commande ( FTP, NFS, commandes shell, etc )

 


Bon bah me reste plus qu'à reproduire un test grandeur nature sur plusieurs centaines de milliers de fichiers :D


Message édité par Sly Angel le 22-06-2007 à 14:33:14
n°926136
Taz
bisounours-codeur
Posté le 22-06-2007 à 17:44:38  profilanswer
 

de l'accounting quoi ...


Message édité par Taz le 22-06-2007 à 17:45:04

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  réseaux et sécurité

  Comment logger les écritures sur une partition

 

Sujets relatifs
(Debian Etch) Problèmes de droits sur partition WindowsTable de partition, et partition cassé suite à un plantage de mysqld
Récupération partition...Debian : perte espace partition fat32
partition fat nom fichier et majusculeswindows xp et linux sur la meme partition est-ce possible?
Fichier midi -> partitionperdu manuelle partition magic comment repartionner dualboot win linu
créer une partition dans un scriptPartition formatée et divisée par erreur
Plus de sujets relatifs à : Comment logger les écritures sur une partition


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR