IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

numéro d'inode en cifs


Sujet :

Administration système

  1. #1
    Membre averti
    Avatar de if_zen
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 275
    Points : 316
    Points
    316
    Par défaut numéro d'inode en cifs
    Bonjour,

    J'aimerais essayer de comprendre un phénomène assez bizarre concernant les numéros d'inodes sur un système de fichiers monté en cifs.

    Ma partition principale est en ext3.

    Lorsque je fais un ls -i sur un fichier JPG issu d'un montage cifs, à plusieurs reprises consécutives, j'ai toujours le même numéro d'inode.

    J'utilise un script php pour mettre en cache des miniatures de ces images. J'utilise dans mon nom de fichier "cache" le numéro d'inode du fichier source pour détecter s'il a déjà été généré ou non.

    A chaque fois, mon script me renvoie un numéro d'inode différent pour le même fichier.

    Quand je refais un ls -i sur mon fichier, le numéro d'inode a changé.

    Un ls -l me permet de voir que la date du fichier n'a pas changé, donc a priori il n'a pas été touché (et n'a pas de raisons d'avoir été touché).

    Un touch sur le fichier suivi d'un ls -i me confirme que l'inode n'a pas changé.

    Quelqu'un peut-il m'expliquer ce qu'il se passe ?
    J'aurais pu poster sur un forum php, mais le bout de script ne fait qu'utiliser la fonction fileinode($file) ce qui à mon sens n'incrimine pas mon script.
    Par contre, peut-être est-ce dû au système de fichiers ou à quelque chose d'autre qui m'échappe pour que mes numéros d'indes changent comme ça. En loguant mes créations de miniatures, je peux confirmer que les chemins d'accès aux fichiers sont strictement identiques avec des inodes différents.

    J'irai voir du côté php si pour vous rien ne peut permettre un tel changement de numéro d'inode.

    En vous remerciant.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    505
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Août 2008
    Messages : 505
    Points : 712
    Points
    712
    Par défaut
    En fait, ce qui me pose problème, c'est la signification du concept d'inode en CIFS. Il doit y avoir des systèmes de cache qui doivent pouvoir perturber l'affaire, à mon sens.

  3. #3
    Membre averti
    Avatar de if_zen
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 275
    Points : 316
    Points
    316
    Par défaut
    Tu parles des délais d'écriture ?
    Je ne pense pas que le problème vienne de là, les fichiers n'ont pas forcément été écrits dans la journée.
    Mais il doit bien y avoir quelque chose de lié à cifs, enfin j'espère.
    Du coup je me suis basé sur la taille en octets du fichier pour gérer mon cache. La fonction fileinode du site de php ne relève aucun avertissement en ce sens par contre ; soit c'est un oubli, soit ça n'a rien à voir...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    505
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Août 2008
    Messages : 505
    Points : 712
    Points
    712
    Par défaut
    Regarde là : http://linux.die.net/man/8/mount.cifs
    Et notamment, la section serverino

    Use inode numbers (unique persistent file identifiers) returned by the server instead of automatically generating temporary inode numbers on the client. Although server inode numbers make it easier to spot hardlinked files (as they will have the same inode numbers) and inode numbers may be persistent (which is userful for some sofware), the server does not guarantee that the inode numbers are unique if multiple server side mounts are exported under a single share (since inode numbers on the servers might not be unique if multiple filesystems are mounted under the same shared higher level directory). Note that not all servers support returning server inode numbers, although those that support the CIFS Unix Extensions, and Windows 2000 and later servers typically do support this (although not necessarily on every local server filesystem). Parameter has no effect if the server lacks support for returning inode numbers or equivalent.

    A lire ça, je suppose, qu'il te suffirait de mettre cette option pour ne plus avoir ton problème, mais avec toutes les restrictions évoquées.

  5. #5
    Membre averti
    Avatar de if_zen
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 275
    Points : 316
    Points
    316
    Par défaut
    Merci thierry.chich pour cettre trouvaille.
    Ca correspond tout à fait à mon problème (plusieurs montages cifs). Mais du coup je me suis contenté du nom physique sans le chemin et de la taille du fichier pour nommer les fichiers "cache" générés.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Crystal] transformation d'une date en numéro de semaine
    Par barna dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 24/03/2017, 09h41
  2. Réponses: 3
    Dernier message: 31/08/2007, 18h31
  3. récuperation d'un numéro de téléphone
    Par herzleid dans le forum Delphi
    Réponses: 4
    Dernier message: 17/07/2007, 09h25
  4. Numéro de série du disque dur
    Par h_kamel dans le forum Assembleur
    Réponses: 8
    Dernier message: 21/05/2007, 11h28
  5. Calcul des numéros de semaine d'un calendrier
    Par Invité dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 06/11/2002, 21h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo