OVH Cloud OVH Cloud

fichiers qui disparaisent "en mode unix"

36 réponses
Avatar
Thomas
bonjour :-)


j'ai des fichiers qui disparaisent "en mode unix",
cad quand des applications "purement unix", comme apache ou ssh,
essayent de lister les fichiers d'un dossier

il suffit d'ouvrir le dossier en question avec le finder, il affiche
donc le fichier, et il est à nouveau disponible "en mode unix"


comme je ne sais pas ce qui a fait disparaitre le fichier au depart,
j'ai pas pu le reproduire et faire des tests poussés

est ce que c'est deja arrivé à d'autres ?

--
Informations sur Nicolas Sarkozy :
http://www.betapolitique.fr/spip.php?article0602
http://www.betapolitique.fr/spip.php?article0601
http://www.betapolitique.fr/spip.php?article0414
http://www.betapolitique.fr/spip.php?article0606
http://tDeContes.hd.free.fr/divers/Ruptures.pdf

10 réponses

1 2 3 4
Avatar
Thomas
In article (Dans l'article)
,
Jacky Bendayan wrote (écrivait) :

le pb vient de se reproduire :

lydie% ls -l
ls: lentilles-vertes.jpg: Invalid argument
ls: lentillons-de-champagne.jpg: Invalid argument
lydie% ls -lw
ls: lentilles-vertes.jpg: Invalid argument
ls: lentillons-de-champagne.jpg: Invalid argument


Si je peux me mêler de ce fil,


bien sur :-) plus on est nombreux plus on a de chances :-)


l'erreur n'est pas "fichier
inexistant"


oui, je me suis corrigé en pensant au fait qu'apache faisait une erreur
403 et pas 404

(d'ailleurs, si qqn a une idée pour le msg d'erreur ...
)

(no such file or directory) mais "argument invalide", ce
qui n'est pas tout à fait pareil et qui aurait tendance à prouver que
les noms de fichier sont interprêtés comme "arguments" alors qu'ils
n'ont pas été tapés...



Trois pistes me viennent à l'esprit :
- caractères "bizarres" mais non-imprimables dans les noms de fichier
(mais je n'y crois pas trop) : essayer ls -lB


lydie% ls -lB
ls: lentillons-de-champagne.jpg: Invalid argument
total 640
-rwxrwxrwx 1 lydie lydie 154596 Apr 4 2006 lentilles-vertes.jpg

rien à l'horizon, donc ...


- alias de la commande "ls" positionné dans le shell, taper : alias
pour savoir


je sais pas bien comment ca marche, mais habituellement ls marche bien


- noms de fichier commançant par -


non, je maitrise le nom de mes fichiers


Que donne : ls lentill<TAB>

ou ls <TAB>TAB>,


?

<TAB> réprésqentant la
tabulation, ce qui demande au shell de faire l'expansion des noms de
fichier qui commencent par "lentill" ?


lydie% ls l<TAB>
lentilles-vertes.jpg* lentillons-de-champagne.jpg
lydie% ls lentill

qq ca veut dire ce "*" ?

--
Informations sur Nicolas Sarkozy :
http://www.betapolitique.fr/spip.php?article0602
http://www.betapolitique.fr/spip.php?article0601
http://www.betapolitique.fr/spip.php?article0414
http://www.betapolitique.fr/spip.php?article0606
http://tDeContes.hd.free.fr/divers/Ruptures.pdf


Avatar
Thomas
In article (Dans l'article) <C26FC3B0.A7ED5%,
Eric Levenez wrote (écrivait) :

Le 15/05/07 14:45, dans
,
« Thomas » a écrit :

le pb vient de se reproduire :

lydie% ls -l
ls: lentilles-vertes.jpg: Invalid argument
ls: lentillons-de-champagne.jpg: Invalid argument
lydie% ls -lw
ls: lentilles-vertes.jpg: Invalid argument
ls: lentillons-de-champagne.jpg: Invalid argument


La commande "ls" utilise une API bas niveau pour récupérer les noms des
fichiers (normaux ou spéciaux) d'un répertoire. Cette partie, je pense
marche dans ton cas (le simple "ls" doit afficher les 2 noms).


exact :-)

lydie% ls
lentilles-vertes.jpg lentillons-de-champagne.jpg

Avec l'option
-l, le programme "ls" cherche à récupérer des informations sur le fichier
(type, taille, date...) et c'est là qu'apparaît le "Invalid argument".


ok :-)


Ce type de code d'erreur ne devrait pas apparaître. C'est le système de
fichier qui le remonte.


??


Es-tu en HFS+ ?


oui

Le répertoire est-il monté à distance ?


non


Peut-être que les fichiers sont des liens symboliques


non non, c'est pas des liens symboliques
quand ca marche, avec ls -l on a "-" comme 1er caractere, pas "l"

qui se cassent et se
refont. Normalement quand un tel lien est cassé on n'a pas ce code d'erreur,
mais pourtant cela y ressemble.

http://biocer.fr/produits/consommateur/legumineuses/lentilles/images/


Cette page est étrange.


c'est le pb dont je parle, vu par apache :-)


Cet après-midi la colonne Size étaient vide : le serveur Apache avait donc
les noms des 2 fichiers mais pas les infos sur ces fichiers. Comme "ls -l"
quoi. Mais ce soir, la colonne "Size" est renseignée avec des tailles. Là je
pense que "ls -l" doit marcher.


oui, l'employé a redémarré l'ordi à 18h et ca a resolu le pb ...
temporairement :-)


L'interface apache et la couche unix sont donc en concordance.


ca me parait logique :
apache utilise directement la couche unix,
alors que le finder utilise peut etre d'autres choses (made in apple)


Le problème, que je ne comprends pas, est autre, mais doit être lié au type
de système de fichiers et aux types des 2 fichiers.


en principe ces fichiers sont normaux ...


Une autre piste est le vérolage du système de fichiers, et là il faudrait
lancer un fsck ou équivalent.


bonne idée :-)
je vais verifier ca des que possible !

--
Informations sur Nicolas Sarkozy :
http://www.betapolitique.fr/spip.php?article0602
http://www.betapolitique.fr/spip.php?article0601
http://www.betapolitique.fr/spip.php?article0414
http://www.betapolitique.fr/spip.php?article0606
http://tDeContes.hd.free.fr/divers/Ruptures.pdf


Avatar
Eric Levenez
Le 16/05/07 16:15, dans
,
« Thomas » a écrit :

In article (Dans l'article) <C26FC3B0.A7ED5%,
Eric Levenez wrote (écrivait) :

Ce type de code d'erreur ne devrait pas apparaître. C'est le système de
fichier qui le remonte.


??


La commande "ls" utilise l'appel système "stat" pour connaître les
caractéristique d'un fichier. Ce que je voulais dire c'est que ce n'est pas
"ls" qui crée ce code d'erreur (ce n'est pas une erreur applicative) mais
que c'est le système de fichier (HFS+ dans ton cas) qui le retourne, et "ls"
ne fait que transmettre.

Une autre piste est le vérolage du système de fichiers, et là il faudrait
lancer un fsck ou équivalent.


bonne idée :-)
je vais verifier ca des que possible !


Sur un système de fichier type HFS+, les informations liées à un fichier
sont enregistrées dans des structures très compliquées et donc facilement
vérolable. Je ne suis pas sûr qu'en 10.2 tu aies la journalisation activée
(normalement cela évite les corruptions trop faciles sur HFS+).

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.


Avatar
Eric Levenez
Le 16/05/07 16:15, dans
,
« Thomas » a écrit :

In article (Dans l'article) <C26FC3B0.A7ED5%,
Eric Levenez wrote (écrivait) :

L'interface apache et la couche unix sont donc en concordance.


ca me parait logique :
apache utilise directement la couche unix,
alors que le finder utilise peut etre d'autres choses (made in apple)


Le Finder est une application unix comme les autres, mais hélas c'est une
application Carbon. Cette API n'est pas Posix et utilise pour référencer un
fichier un numéro unique. Pour rendre cela unix, Apple a créé un système de
fichiers appelé volfs et monté sur "/.vol". La couche applicative Carbon va
accéder, par les API unix, à travers volfs, aux fichiers HFS+. En gros cette
interface volfs n'est qu'une couche en plus. Au final l'interface Posix
directe et Carbon à travers volfs vont accéder aux mêmes infos d'un fichier.
Il doit donc y avoir concordance.

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.


Avatar
Olivier Croquette
Eric Levenez wrote, On 16.05.2007 20:52 Uhr:

Au final l'interface Posix
directe et Carbon à travers volfs vont accéder aux mêmes infos d'un fichier.
Il doit donc y avoir concordance.


Sauf en cas de bug dans volfs :D

Avatar
filh
Eric Levenez wrote:

Le Finder est une application unix comme les autres, mais hélas c'est une
application Carbon. Cette API n'est pas Posix et utilise pour référencer un
fichier un numéro unique. Pour rendre cela unix, Apple a créé un système de
fichiers appelé volfs et monté sur "/.vol". La couche applicative Carbon va
accéder, par les API unix, à travers volfs, aux fichiers HFS+. En gros cette
interface volfs n'est qu'une couche en plus. Au final l'interface Posix
directe et Carbon à travers volfs vont accéder aux mêmes infos d'un fichier.
Il doit donc y avoir concordance.



Well, étant donné un fichier dans ./volfs/xxx/toto, comment le retrouver
dans l'arborescence ?

(J'ai eu ce pb avec un installeur qui plantait en l'absence d'un fichier
précis qu'il m'a suffit de créer pour que ça marche, et j'ai un peu -
beaucoup - galéré pour retrouver où ça se passait).

FiLH

--
Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire
une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle.
Roland Barthes.
http://www.filh.org

Avatar
Eric Levenez
Le 17/05/07 10:33, dans <1hy96ak.tqo24jit6fgrN%, « FiLH »
a écrit :

Well, étant donné un fichier dans ./volfs/xxx/toto, comment le retrouver
dans l'arborescence ?


Je vais prendre un exemple :

Avec fs_usage, je vois que le Finder au lancement d'un programme utilise le
fichier "/.vol/234881032/17183338//Contents/PkgInfo". Le "17183338" est le
numéro de l'inode sur la partition "234881032". Comme je n'ai qu'une
partition, /, je peux retrouver le fichier "17183338" par la commande :

sudo find / -inum 17183338

Cette commande affiche le nom du répertoire utilisé :

/Applications/Retrospect 6.1/Retrospect Express

Le fichier utilisé par le Finder est donc :

/Applications/Retrospect 6.1/Retrospect Express/Contents/PkgInfo

--
Éric Lévénez -- <http://www.levenez.com/>
Unix is not only an OS, it's a way of life.

Avatar
filh
Eric Levenez wrote:

Le 17/05/07 10:33, dans <1hy96ak.tqo24jit6fgrN%, « FiLH »

Well, étant donné un fichier dans ./volfs/xxx/toto, comment le retrouver
dans l'arborescence ?


Je vais prendre un exemple :

Avec fs_usage, je vois que le Finder au lancement d'un programme utilise le
fichier "/.vol/234881032/17183338//Contents/PkgInfo". Le "17183338" est le
numéro de l'inode sur la partition "234881032". Comme je n'ai qu'une


Ah c'est juste l'inode.. bon j'avais aussi résolu à gros coup de find...

FiLH

--
Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire
une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle.
Roland Barthes.
http://www.filh.org


Avatar
Thomas
In article (Dans l'article) <C2711F7C.A802A%,
Eric Levenez wrote (écrivait) :

Le 16/05/07 16:15, dans
,
« Thomas » a écrit :

In article (Dans l'article) <C26FC3B0.A7ED5%,
Eric Levenez wrote (écrivait) :

L'interface apache et la couche unix sont donc en concordance.


ca me parait logique :
apache utilise directement la couche unix,
alors que le finder utilise peut etre d'autres choses (made in apple)


Le Finder est une application unix comme les autres, mais hélas c'est une
application Carbon. Cette API n'est pas Posix et utilise pour référencer un
fichier un numéro unique. Pour rendre cela unix, Apple a créé un système de
fichiers appelé volfs et monté sur "/.vol". La couche applicative Carbon va
accéder, par les API unix, à travers volfs, aux fichiers HFS+. En gros cette
interface volfs n'est qu'une couche en plus. Au final l'interface Posix
directe et Carbon à travers volfs vont accéder aux mêmes infos d'un fichier.
Il doit donc y avoir concordance.


ok merci :-)

donc le fait que le finder accedait au fichier via /.vol faisait
qu'ensuite les applications unix (pures) pouvaient à nouveau acceder à
toutes les informations sur le fichier via le chemin normal ...

--
Informations sur Nicolas Sarkozy :
http://www.betapolitique.fr/spip.php?article0602
http://www.betapolitique.fr/spip.php?article0601
http://www.betapolitique.fr/spip.php?article0414
http://www.betapolitique.fr/spip.php?article0606
http://tDeContes.hd.free.fr/divers/Ruptures.pdf



Avatar
Thomas
In article (Dans l'article) <C2711C76.A8028%,
Eric Levenez wrote (écrivait) :

Le 16/05/07 16:15, dans
,
« Thomas » a écrit :

In article (Dans l'article) <C26FC3B0.A7ED5%,
Eric Levenez wrote (écrivait) :

Ce type de code d'erreur ne devrait pas apparaître. C'est le système de
fichier qui le remonte.


??


La commande "ls" utilise l'appel système "stat" pour connaître les
caractéristique d'un fichier. Ce que je voulais dire c'est que ce n'est pas
"ls" qui crée ce code d'erreur (ce n'est pas une erreur applicative) mais
que c'est le système de fichier (HFS+ dans ton cas) qui le retourne, et "ls"
ne fait que transmettre.


ah ok, oui c'est bien ce que je pensais :-)



Une autre piste est le vérolage du système de fichiers, et là il faudrait
lancer un fsck ou équivalent.


bonne idée :-)
je vais verifier ca des que possible !


Sur un système de fichier type HFS+, les informations liées à un fichier
sont enregistrées dans des structures très compliquées et donc facilement
vérolable.


oui, j'avais deja entendu dire
apple n'a pas l'intention de l'ameliorer ?
(c'est vrai qu'ils l'ont deja fait avec la journalisation, mais il
parait que c'est encore bien loin de certains sf sous linux)

Je ne suis pas sûr qu'en 10.2 tu aies la journalisation activée
(normalement cela évite les corruptions trop faciles sur HFS+).


(tiens je t'avais pas dit que le mac distant etait sous 10.4 ? mince !
:-/ )

heureusement j'ai la journalisation activée :-)


le gars sur place a mal fait le pomme-s la 1ere fois, et apres il m'a
dit que le fsck avait dit "le volume semble ok" (je traduis) des la 1ere
fois
et ensuite le pb ne s'est pas reproduit (alors qu'avant ca arrivait
assez frequement)

est ce que quand on ne fait pas pomme-s, ca fait fsck automatiquement à
chaque fois qu'on redemarre ?
je croyais que ca le faisait seulement si il y avait eu une coupure de
courant

--
Informations sur Nicolas Sarkozy :
http://www.betapolitique.fr/spip.php?article0602
http://www.betapolitique.fr/spip.php?article0601
http://www.betapolitique.fr/spip.php?article0414
http://www.betapolitique.fr/spip.php?article0606
http://tDeContes.hd.free.fr/divers/Ruptures.pdf



1 2 3 4