cd nella directory senza avere il permesso


117

Quando si cdinserisce in una delle mie directory chiamata openfireviene restituito il seguente errore:

bash: cd: openfire: Permission denied

C'è un modo per aggirare questo?

Risposte:


149

La risposta di @ user812954 è stata abbastanza utile, tranne che ho dovuto farlo in due passaggi:

sudo su
cd directory

Quindi, per uscire dalla modalità "super utente", è sufficiente digitare exit.


107

Entra in modalità super utente e cd nella directory in cui non sei autorizzato ad entrare. Sudo richiede la password dell'amministratore.

sudo su
cd directory

2
risposta impeccabile!
gaurav

46

Se si tratta di una directory di tua proprietà, concediti l'accesso:

chmod u+rx,go-w openfire

Ciò ti garantisce il permesso di usare la directory ei file in essa ( x) e di elencare i file che sono in essa ( r); nega anche il permesso di scrittura al gruppo e ad altri sulla directory, il che di solito è corretto (anche se a volte potresti voler consentire al gruppo di creare file nella tua directory - ma considera di utilizzare il bit sticky sulla directory se lo fai).

Se è la directory di qualcun altro, probabilmente avrai bisogno dell'aiuto del proprietario per modificare i permessi in modo da potervi accedere (o avrai bisogno dell'aiuto di rootper cambiare i permessi per te).


Ho cercato su Google per un'ora cercando di risolvere il fatto che non potevo SSH senza usare "sudo" (che sapevo doveva essere sbagliato) - e questo lo ha risolto. Finalmente!
GrayedFox

25

chmod +x openfireha funzionato per me. Aggiunge il permesso di esecuzione alla cartella openfire.


@Winnemucca non sono sicuro. Non ho mai lavorato con Docker prima d'ora. Ma presumo che possa
wcyn

6

Hai diverse opzioni:

  • Utilizzare un account utente diverso, uno con xautorizzazioni effettive su quella directory.
  • Modificare le autorizzazioni sulla directory per consentire al proprio account utente di xeseguire le autorizzazioni.
    • Utilizzare chmod(1)per modificare le autorizzazioni o
    • Utilizzare il setfacl(1)comando per aggiungere una voce dell'elenco di controllo dell'accesso per l'account utente. (Ciò richiede anche il montaggio del filesystem con l' aclopzione; vedere mount(8)e fstab(5)per i dettagli sul parametro mount.)

È impossibile suggerire l'approccio corretto senza saperne di più sul problema; perché i permessi di directory sono impostati come sono? Perché hai bisogno di accedere a quella directory?



1

A meno che tu non abbia i permessi sudo per cambiarlo o nel tuo gruppo utente / account, non sarai in grado di accedervi.

Controlla man chmodnel terminale per ulteriori informazioni sulla modifica dei permessi di una directory.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.