Chaque fois que j'essaie d'installer un fichier .rpm que j'ai téléchargé, je reçois:
> sudo rpm -i something.rpm
error: open of something.rpm failed: Permission denied
Il semble que le choix du régime n'a pas d'importance. J'ai d'abord modifié le .rpm (777) mais cela ne fait aucune différence. Qu'est-ce que je rate? L'utilisation rpm -i -v
ne révèle aucune information supplémentaire.
Le système est RHEL6 64 bits.
sudo -l
Réponses:
Si votre fichier rpm se trouve dans votre répertoire personnel et que votre répertoire personnel se trouve sur NFS, root peut ne pas y avoir accès. C'est quelque peu inhabituel: normalement, root peut accéder à tous les fichiers. Mais dans la configuration courante, lorsque root accède à un répertoire monté sur NFS, les droits de l'utilisateur
nobody
sont utilisés à la place de l'utilisateur root. L'objectif principal est de s'assurer que root sur le client ne peut pas manipuler les fichiers en tant que root sur le serveur. Ceci est implémenté car "root n'a les permissions de personne" plutôt que "root peut avoir les permissions de n'importe qui sauf pour root" principalement parce que c'est plus facile (bien qu'il puisse y avoir d'autres raisons: certains serveurs NFS l'appliquent à des utilisateurs autres que root, afin de protéger tous les utilisateurs du système sur le serveur).Si tel est le problème, vous devez rendre le fichier rpm et le répertoire contenant le fichier accessibles à root. Cela signifie les rendre accessibles à l'utilisateur
nobody
, et généralement la seule façon de le faire est de rendre le fichier et le répertoire lisibles par le monde. Plus précisément, les autorisations minimales sontVous pouvez également déplacer le fichier rpm vers un répertoire local.
la source