cd dans le répertoire sans autorisation


117

Lors de l' cdentrée dans l'un de mes répertoires appelé, openfirel'erreur suivante est renvoyée:

bash: cd: openfire: Permission denied

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

Réponses:


149

La réponse de @ user812954 a été très utile, sauf que j'ai dû le faire en deux étapes:

sudo su
cd directory

Ensuite, pour quitter le mode "super utilisateur", tapez simplement exit.


107

Entrez en mode super utilisateur et insérez un cd dans le répertoire dans lequel vous n'êtes pas autorisé à accéder. Sudo nécessite un mot de passe administrateur.

sudo su
cd directory

2
réponse impeccable!
gaurav

46

S'il s'agit d'un répertoire que vous possédez, accordez-vous l'accès:

chmod u+rx,go-w openfire

Cela vous donne la permission d'utiliser le répertoire et les fichiers qu'il contient ( x) et de lister les fichiers qui s'y trouvent (r ); il refuse également aux groupes et aux autres l'autorisation d'écrire sur le répertoire, ce qui est généralement correct (bien que parfois vous souhaitiez autoriser le groupe à créer des fichiers dans votre répertoire - mais envisagez d'utiliser le sticky bit 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 rootpour modifier les autorisations pour vous).


J'ai cherché sur Google pendant une heure maintenant en essayant de corriger le fait que je ne pouvais pas SSH sans utiliser "sudo" (ce que je savais devait être faux) - et cela a résolu le problème. Finalement!
GrayedFox

25

chmod +x openfiretravaillé pour moi. Il ajoute l'autorisation d'exécution au dossier openfire.


@Winnemucca Je ne suis pas sûr. Je n'ai jamais travaillé avec docker auparavant. Mais je suppose que c'est possible
wcyn

6

Vous avez plusieurs options:

  • Utilisez un autre compte d'utilisateur, un avec des xautorisations d'exécution sur ce répertoire.
  • Modifiez les autorisations sur l'annuaire pour permettre à votre compte utilisateur d' xexécuter des autorisations.
    • Utilisez chmod(1)pour modifier les autorisations ou
    • Utilisez la setfacl(1)commande 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' acloption; 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 définies comme elles le sont? Pourquoi avez-vous besoin d'accéder à ce répertoire?



1

À moins que vous ne disposiez des autorisations sudo pour le modifier ou le modifier dans votre propre groupe d'utilisateurs / compte, vous ne pourrez pas y accéder.

Consultez man chmodle terminal pour plus d'informations sur la modification des autorisations d'un répertoire.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.