L'informatique, c'est ma grande passion
Par djul le mercredi, 23 avril 2008, 15:20 - WTF - Lien permanent
Bon, j'écris ça de mémoire, la justesse des faits sera plus ou moins
approximative, mais c'est pas ça qui compte le plus, c'est juste tellement gros
que c'est difficile de croire que c'est réel...
Prenez le logiciel de cartographie OpenSource MapServer, installez le en
.rpm, en .deb, compilez le, enfin bref, installez le avec toutes ses
dépendances.
Une fois cette étape réalisée, vous commencez à la configurer avec les infos
que le prestataire ayant développé le site s'appuyant sur ce logiciel vous a
donné, pas de problème pour réaliser le tout, mais au moment du test, un
gros message d'erreur quand vous essayez d'afficher une carte
du genre :
msProcessProjection(): No such file or directory
Qu'à cela ne tienne, Google est définitivement votre ami et vous donne
l'explication en premier lien, bref, vous cherchez où est ce maudit fichier
'epsg', il se trouve dans /usr/share/proj/. Vous ne comprenez pas, le fichier
est bien présent...
Vous envoyez donc un mail au développeur, après tout, c'est
son boulot, il va surement nous dire ce qui cloche, mon collègue s'empresse de
le contacter et ce dernier lui indique de vérifier les
permissions sur le fichier et dans le doute d'appliquer les droits en
644 sur ce fichier. 644, pour ceux qui ne font pas d'UNIX, tout le monde peut
lire le fichier, c'est pas le plus propre et le plus secure, mais ça a le
mérite de fonctionner.
Accessoirement il conseille aussi de vérifier les permissions du
répertoire parent et de les définir aussi en 644, si vous connaissez
un minimum UNIX, vous avez déjà trouvé la première erreur,
sinon, ça reste du chinois, mais comme je suis super sympa, je vais vous
expliquer rapidement :
- 644 : Propriétaire en lecture/écriture, groupe en lecture, autres en
lecture.
- 755 : Propriétaire en lecture/écriture/exécution, groupe en
lecture/exécution, autres en lecture/exécution.
C'est pratiquement pareil, sauf qu'on a fait +1 sur chaque chiffre pour une raison toute conne, les répertoires ont besoin du bit d'exécution pour pouvoir être parcourus et donc pouvoir lire les fichiers dedans. Le développeur qui a énoncé cette solution bosse sous UNIX, donc l'erreur est assez inquiétante, comme dirait un de mes collègues : "Même un première année d'IUT info ferait pas ce genre d'erreur.", et pourtant...
Bon, soit il s'est planté, soit il est définitivement mauvais, mes chers collègues ne comprennent pas, ça ne marche toujours pas, il m'expliquent rapidement le problème, après avoir lutté deux jours dessus, daignent enfin m'en parler, en me transmettant les échanges de mails entre eux et le développeur, où je découvre rapidement la bourde sur les permissions, et je vais tout naturellement vérifier les permissions du répertoire en question :
ls -l /usr/share | grep proj drwxr-x--- 2 root root 4096 avr 15 16:05 proj
Oui, seul root, ou le groupe root peuvent parcourir le répertoire, c'est pas de chance, l'utilisateur apache, il va vraiment avoir du mal à le lire... Bref, après ce simple ls -l (durée de mon intervention : environ 42 secondes), je leur dis qu'il suffit de lire et je retourne à mes occupations.
Help me, kill a noob.
PS: Si vous voulez vraiment tout savoir sur les permissions UNIX, c'est par ici.
Commentaires
Euh, des deuxièmes années de DUT Info que je connais auraient fait l'erreur *sifflotte*
Quels boulets (:
heureusement que t'es pas au ministère de la défonce
ils sont blondes intérieures tes collègues ?
y en a pas un qui a dit "han mais j'le savais!" ?
Fil des commentaires de ce billet