View previous topic :: View next topic |
Author |
Message |
Leander256 l33t
Joined: 05 Jul 2003 Posts: 910 Location: Singapour
|
Posted: Wed Nov 05, 2003 11:34 am Post subject: [e3fs] Impossible d'effacer un fichier (résolu) |
|
|
Comme ça fait un petit moment que le problème dure, et que personne ne m'a répondu sur le forum anglais, je me lance:
Depuis environ un mois, à la fin de mon emerge sync, j'ai l'affichage suivant:
Code: | rm: ne peut enlever `/var/cache/edb/dep//app-i18n/kanjipad-2.0.0': Opération non permise
>>> Updating Portage cache... /chmod: modification des permissions de `/var/cache/edb/dep//app-i18n/kanjipad-2.0.0': Opération non permise ...done!
|
J'avoue que ça ne m'empêche pas de dormir le soir, mais le problème c'est que j'ai découvert un autre fichier qui me fait le coup:
Code: | glorfindel src # rm -rf linux-2.6.0-test4/
rm: ne peut enlever `linux-2.6.0-test4//include/asm-ia64/checksum.h': Opération non permise
|
Et je n'ai franchement pas envie d'effacer toute la partition pour savoir combien de fichiers sont affectés (apparemment très peu).
Bien évidemment, j'ai vérifié les droits d'accès de chaque répertoire (et le rm -rf a effacé tous les fichiers des sources du kernel sauf celui cité), j'ai essayé de modifier le propriétaire, modifier les droits, mais rien n'y fait. Je me suis dit que c'était peut-être un bug dans les kernel 2.6 mais maintenant que je suis repassé à un 2.4 j'ai toujours ce problème. J'ai fait des lsof et fuser, mais ça ne renvoie jamais rien. J'ai rebooté plusieurs fois, fait plusieurs fsck (soit par moi-même, soit les automatiques) et jamais aucun problème de détecté. Je ne sais plus trop quoi faire, alors si quelqu'un a une idée, merci d'avance.
Last edited by Leander256 on Wed Nov 05, 2003 7:48 pm; edited 1 time in total |
|
Back to top |
|
|
sebbb Guru
Joined: 08 Oct 2003 Posts: 400 Location: [FR] - Paris
|
Posted: Wed Nov 05, 2003 11:58 am Post subject: |
|
|
je ne sais pas d'où vient le pb (désolé) mais je trouve le nom du fichier bizarre : Code: | /var/cache/edb/dep//app-i18n/kanjipad-2.0.0 |
y'a un double / !!!
j'ai eu quelques fois emerge qui me dissais que un fichier xxxx était pas bon et dans ce nom de fichier y'avais aussi un double slash... (effacer le fichier marchait par contre..)
d'où vient ce // et est-ce "légal" ??? _________________ Sebbb
De tous les gens qui n'ont rien à dire,
les plus agréables sont ceux qui se taisent... |
|
Back to top |
|
|
Leander256 l33t
Joined: 05 Jul 2003 Posts: 910 Location: Singapour
|
Posted: Wed Nov 05, 2003 12:10 pm Post subject: |
|
|
Les doubles / (et même multiples) sont autorisés dans les chemins et interprétés comme un seul /, très probablement pour simplifier la programmation, sinon il faudrait vérifier que chaque variable finit par un /, ou ne finit pas par un /, éventuellement le rajouter ou l'enlever, en bref une grosse perte de temps pour pas grand chose.
Par exemple:
Code: | glorfindel src # rm -rf linux-2.6.0-test4
rm: ne peut enlever `linux-2.6.0-test4/include/asm-ia64/checksum.h': Opération non permise
|
La commande rm ajoute donc automatiquement un / à la fin du chemin, mais le résultat est bien sûr le même.
Le problème ne vient de toute façon pas de là puisque j'ai essayé de les effacer à la main, en allant dans le répertoire contenant le fichier. |
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Wed Nov 05, 2003 12:44 pm Post subject: |
|
|
Quelle est la taille de ces fichiers ???
Il est possible que si ils font 0 octets, il soit impossible de les effacer.
Si c'est le cas copie un fichier de log (par exemple) à la suite (>>) ou à la place (cp xxx /usr/src/linux-2.6.0-test4/include/asm-ia64/checksum.h) des fichiers en question et essaie à nouveau de les effacer.
Sans aucune garantie de résultat ...
Je ne connaissais pas le coup des / multiples. Cool, je me coucherai moins bête ce soir _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
Leander256 l33t
Joined: 05 Jul 2003 Posts: 910 Location: Singapour
|
Posted: Wed Nov 05, 2003 12:52 pm Post subject: |
|
|
Malheureusement non, ils ne sont pas vides (et de toute façon je suis incapable de modifier leur contenu).
Code: | -rw-r--r-- 1 root root 2130 2003-09-05 04:32 /usr/src/linux-2.6.0-test4/include/asm-ia64/checksum.h
-rw-rw-r-- 1 root portage 227 2003-07-28 17:20 /var/cache/edb/dep/app-i18n/kanjipad-2.0.0
|
|
|
Back to top |
|
|
yoyo Bodhisattva
Joined: 04 Mar 2003 Posts: 4273 Location: Lyon - France
|
Posted: Wed Nov 05, 2003 12:58 pm Post subject: |
|
|
Tu as essayé de les renommer ???
Leander256 wrote: | et de toute façon je suis incapable de modifier leur contenu |
Pourtant root à les droits d'écriture dessus ... _________________ La connaissance s'accroît quand on la partage.
JCB |
|
Back to top |
|
|
guzu n00b
Joined: 29 Oct 2003 Posts: 12 Location: France
|
Posted: Wed Nov 05, 2003 1:40 pm Post subject: |
|
|
Leander256 wrote: | Malheureusement non, ils ne sont pas vides (et de toute façon je suis incapable de modifier leur contenu).
|
Modifier de quelle façon ?
Est-ce que un
Code: | echo >> <le_fichier_qui_va_bien>
|
fonctionne ?
Sinon regarde du coté de lsattr, même si je vois pas pourquoi tu te retrouverais avec des attributs changés sur ces fichiers en particuliers.
Dernière étape, voir d'un peu plus près se qu'il se passe avec debugfs...[/i] |
|
Back to top |
|
|
guitou Guru
Joined: 02 Oct 2003 Posts: 534 Location: France
|
Posted: Wed Nov 05, 2003 2:11 pm Post subject: |
|
|
C'est peut etre un pb avec le umask du repertoire dans lequel se trouve le fichier incrimine : si tu n'as pas les droits d'ecriture ndans le repertoire, tu ne peux pas en modifier les fichiers. |
|
Back to top |
|
|
fribadeau Apprentice
Joined: 13 Jul 2003 Posts: 153 Location: Thonon (France)
|
Posted: Wed Nov 05, 2003 4:02 pm Post subject: |
|
|
Bon, je n'ai pas non plus beaucoup d'idee. Mais peux-tu nous donner le resultat des commandes :
umask
ls -l <ton fichier>
file <ton fichier>
Pour commencer... |
|
Back to top |
|
|
Leander256 l33t
Joined: 05 Jul 2003 Posts: 910 Location: Singapour
|
Posted: Wed Nov 05, 2003 7:47 pm Post subject: |
|
|
guzu wrote: | Sinon regarde du coté de lsattr, même si je vois pas pourquoi tu te retrouverais avec des attributs changés sur ces fichiers en particuliers.
Dernière étape, voir d'un peu plus près se qu'il se passe avec debugfs... |
Un petit test sur les fichiers coupables:
Code: | glorfindel root # lsattr /var/cache/edb/dep/app-i18n/kanjipad-2.0.0
----ia-Ac---- /var/cache/edb/dep/app-i18n/kanjipad-2.0.0
glorfindel root # lsattr /usr/src/linux-2.6.0-test4/include/asm-ia64/checksum.h
-----a-Ac---- /usr/src/linux-2.6.0-test4/include/asm-ia64/checksum.h
|
Après lecture rapide du man, il s'avère que ces fichiers n'ont absolument pas à avoir ces attributs... Et maintenant après avoir fait des chattr, les fichiers s'effacent! Victoire! Un grand merci guzu ! Merci aux autres d'avoir offert leur aide . Je ne connaissais pas ces attributs spéciaux, il va falloir que je me mette à jour à ce niveau-là.
Pour ce qui est de la provenance de ces attributs, je n'ai pas d'idée précise. J'acccuserais bien les kernel 2.6, je suspecte la gestion des disques durs d'être à l'origine de mes kernel panics (le système était tellement planté que le magic sysrq ne marchait même pas). Cependant il me semble que le problème était antérieur à leur utilisation. |
|
Back to top |
|
|
|