On Fri, 9 Feb 2001, Thierry Lombardot wrote:

> aujourd'hui et ca marche (?), le message d'erreur en boot a disparu. Je
> ne comprend pas pourquoi ce fichier de config (idedma.rc.config) a
> besoin de la permission execute alors que tous les autres fichiers dans
> /etc/rc.config.d/ sont en "rw-r--r--"...

Résumons:

   - ce fichier contient des positionnements de variables
   - cela ne peut se faire que si le script est sourcé, et non pas
     exécuté (implique dans un sous-shell, donc les variables ne
     sont pas changées dans l'appelant)

En clair, il n'est pas nécessaire d'avoir le bit x en fonctionnement
normal. Mais l'erreur que tu as donné pouvait venir d'un script du système
l'appelant comme script plutôt que le sourçant. Ajouter le bit x dans ce
cas fait disparaître l'erreur mais en la cachant: l'erreur fondamentale
est de lancer ce script sans le sourcer.

Exemple:

créer un script /tmp/set_variables, chmod 644 avec dedans:

   UNE_VARIABLE_A_POSITIONNER=valeur

Ensuite, depuis bash:

   schaefer@defian:/tmp% /tmp/set_variables
   bash: /tmp/set_variables: Permission denied

   schaefer@defian:/tmp% chmod u+x /tmp/set_variables
   schaefer@defian:/tmp% /tmp/set_variables
   schaefer@defian:/tmp% echo $UNE_VARIABLE_A_POSITIONNER

   schaefer@defian:/tmp% chmod u-x /tmp/set_variables # pour l'exemple
   schaefer@defian:/tmp% . /tmp/set_variables
   schaefer@defian:/tmp% echo $UNE_VARIABLE_A_POSITIONNER
   valeur

But pédagogique: comprendre la différence entre exécution et sourcing d'un
script.

Cela n'enlève pas le fait que ta distribution a vraisemblablement un bug
dans cette zone-là.

--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question.

Répondre à