Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/09/2011, 16h03   #1
Membre habitué
 
Avatar de if_zen
 
Homme Olivier
Développeur Java
Inscription : juin 2004
Messages : 252
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 30
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 : 252
Points : 148
Points : 148
Envoyer un message via MSN à if_zen
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.
if_zen est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 05/09/2011, 22h37   #2
Membre expérimenté
 
Inscription : août 2008
Messages : 455
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : août 2008
Messages : 455
Points : 575
Points : 575
Envoyer un message via Skype™ à thierry.chich
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.
thierry.chich est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 05/09/2011, 23h42   #3
Membre habitué
 
Avatar de if_zen
 
Homme Olivier
Développeur Java
Inscription : juin 2004
Messages : 252
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 30
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 : 252
Points : 148
Points : 148
Envoyer un message via MSN à if_zen
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...
if_zen est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 06/09/2011, 11h44   #4
Membre expérimenté
 
Inscription : août 2008
Messages : 455
Détails du profil
Informations personnelles :
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : août 2008
Messages : 455
Points : 575
Points : 575
Envoyer un message via Skype™ à thierry.chich
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.
thierry.chich est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 07/09/2011, 21h54   #5
Membre habitué
 
Avatar de if_zen
 
Homme Olivier
Développeur Java
Inscription : juin 2004
Messages : 252
Détails du profil
Informations personnelles :
Nom : Homme Olivier
Âge : 30
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 : 252
Points : 148
Points : 148
Envoyer un message via MSN à if_zen
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.
if_zen est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h44.


 
 
 
 
Partenaires

Hébergement Web