-bash: sudo: comando non trovato


63

Sto cercando di distribuire l'app django. Quando stampo apt-get update vedo

W: Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (13: Permission denied)
W: Unable to read /etc/apt/sources.list.d/ - DirectoryExists (13: Permission denied)
W: Unable to read /etc/apt/sources.list - RealFileExists (13: Permission denied)
E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied)
E: Unable to read /var/cache/apt/ - opendir (13: Permission denied)
E: Unable to read /var/cache/apt/ - opendir (13: Permission denied)
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

Quando stampo sudo apt-get update vedo

-bash: sudo: command not found

Ho provato a usare suinvece di sudo. Ma è strano. Ad esempio, stampa su apt-get update e non succede nulla, vedo solo una nuova riga,

(uiserver):u78600811:~$ su apt-get update
(uiserver):u78600811:~$

Lo stesso se provo ad installare alcuni pacchetti. Cosa faccio?

Se si tratta di informazioni utili, sto usando Debian

(uiserver):u87600811:~$ uname -a
Linux infong1559 3.14.0-ui16294-uiabi1-infong-amd64 #1 SMP Debian 3.14.79-2~ui80+4 (2016-10-20) x86_64 GNU/Linux

È un account cliente su un server commerciale?
Tomasz,

@tomas yeah ////
user2950593

1
Se non possiedi il server, cosa ti ha fatto pensare di avere il diritto di installare o rimuovere il software? chiedi
all'amministratore

Cosa succede se corri apt-cache policy sudo? Non tutte le distribuzioni Linux installano sudo di default (Debian, ad esempio, installerà sudo se e solo se non si specifica una password di root all'installazione). È possibile eseguire apt-cache senza i privilegi di root.
Rosuav,

Risposte:


79

Di default sudo non è installato su Debian, ma è possibile installarlo. Per prima cosa abilitare la modalità su:
su -

Installa sudo eseguendo:
apt-get install sudo -y

Dopodiché dovrai giocare con utenti e autorizzazioni. Dai a sudo il diritto al tuo utente.

usermod -aG sudo yourusername

Assicurati che il tuo file sudoers abbia aggiunto il gruppo sudo. Esegui:
visudoper modificare il file sudoers e aggiungere la seguente riga (se mancante):

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

È necessario riaccedere o riavviare completamente il dispositivo per rendere effettive le modifiche.


3
Questa dovrebbe essere una risposta accettata, questo ha risolto il mio problema
Callat,

Ricevo "su: Impossibile determinare il tuo nome utente". on doing su -
user674669

@ user674669 hai controllato questo post: serverfault.com/questions/816969/… ?
Maksim Luzik

Grazie @MaksimLuzik. Il mio è un contenitore docker. Le idee su quella pagina non mi sono state utili. Forse dovrei pubblicare una domanda separata.
user674669

19

Poiché si tratta di un server commerciale, non avrai accesso all'account root né sarai in grado di operare con i privilegi di root. Ciò significa che non sarai in grado di eseguire sudoné installare pacchetti. Quello che puoi provare a fare è:

  • Controlla se hai accesso a un compilatore e compila ciò che desideri per te e nel tuo spazio domestico.

  • Verifica se riesci a eseguire una macchina virtuale. Ciò potrebbe consentire di eseguire l'istanza privata di un sistema operativo in cui installare i pacchetti.


12

sue sudosono due comandi diversi, ma correlati. È insolito che sudonon venga installato, ma potrebbe semplicemente non trovarsi nel tuo percorso. Prova /usr/bin/sudo command.

Se effettivamente sudonon è disponibile, è necessario come si suppone utilizzi su, ma non funziona allo stesso modo di sudo. Il modo più semplice per usarlo è semplicemente eseguire:

su -

Questo ti chiederà la rootpassword dell'utente, a quel punto dovresti probabilmente apt install sudodisconnetterti dalla shell di root e quindi procedere normalmente.

Ricorda che sudo, diversamente da quello che ti chiede la tua password, suti chiederà la password di root .


quando scrivo su - non succede nulla - solo una nuova riga
user2950593

3
Quindi probabilmente sei già root. Verificare con whoami. Se sei root, apt install sudocome descritto.
DopeGhoti

(uiserver): u78600811: ~ $ apt installa sudo
user2950593

1
W: Impossibile leggere /etc/apt/apt.conf.d/ - DirectoryExists (13: autorizzazione negata) E: Impossibile aprire il file di blocco / var / lib / dpkg / lock - aperto (13: autorizzazione negata) E: Impossibile per bloccare la directory di amministrazione (/ var / lib / dpkg /), sei root?
user2950593

1
A seconda di ciò che PS1è impostato su.
DopeGhoti
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.