web-dev-qa-db-fra.com

cd dans le répertoire sans avoir la permission

Lorsque cd entre dans l'un de mes répertoires appelé openfire, l'erreur suivante est renvoyée:

bash: cd: openfire: Permission denied

Y a-t-il un moyen de contourner cela?

88
user812954

Passez en mode super utilisateur et accédez au répertoire dans lequel vous n'êtes pas autorisé à accéder. Sudo nécessite un mot de passe administrateur.

Sudo su
cd directory
73
user812954

La réponse de @ user812954 a été très utile, sauf que je devais le faire en deux étapes:

Sudo su
cd directory

Ensuite, pour sortir du mode "super utilisateur", tapez simplement exit.

119
Jonathan

Si c'est un répertoire que vous possédez, accordez-vous l'accès à celui-ci:

chmod u+rx,go-w openfire

Cela vous autorise à utiliser le répertoire et les fichiers qu'il contient (x) et à répertorier les fichiers qu'il contient (r); elle refuse également l'autorisation de groupe et les autres personnes écrivent une autorisation sur le répertoire, ce qui est généralement correct (vous pouvez parfois autoriser le groupe à créer des fichiers dans votre répertoire - mais envisagez d'utiliser le bit collant sur le répertoire si vous le faites).

S'il s'agit du répertoire de quelqu'un d'autre, vous aurez probablement besoin de l'aide du propriétaire pour modifier les autorisations afin de pouvoir y accéder (ou vous aurez besoin de l'aide de root pour modifier les autorisations à votre place).

41
Jonathan Leffler

chmod +x openfire a travaillé pour moi. Il ajoute une autorisation d'exécution au dossier openfire.

20
wcyn

Vous avez plusieurs options:

  • Utilisez un compte d'utilisateur différent, avec les autorisations e xecute sur ce répertoire.
  • Modifiez les autorisations sur le répertoire pour permettre à votre compte utilisateur e xecute autorisations.
    • Utilisez chmod(1) pour modifier les autorisations ou
    • Utilisez la commande setfacl(1) pour ajouter une entrée de liste de contrôle d'accès pour votre compte d'utilisateur. (Cela nécessite également de monter le système de fichiers avec l'option acl; voir mount(8) et fstab(5) pour plus de détails sur le paramètre de montage.)

Il est impossible de suggérer la bonne approche sans en savoir plus sur le problème. pourquoi les autorisations de répertoire sont-elles configurées comme elles sont? Pourquoi avez-vous besoin d'accéder à ce répertoire?

6
sarnold

Si vous ne disposez pas des autorisations Sudo pour le modifier ou le modifier dans votre propre groupe/compte utilisateur, vous ne pourrez pas y accéder.

check-out chmod man dans le terminal pour plus d’informations sur la modification des autorisations d’un répertoire.

1
John Riselvato