Eu configurei uma VM usando turnkey linux redmine e estou tentando fazer o SSH no servidor para instalar mais alguns itens.
Não parece reconhecer o comando sudo. Sempre que tento sudo algo, recebo um erro dizendo:
-bash: sudo: command not found
Eu li em outro lugar para digitar 'whereis sudo' e a saída foi:
sudo:
Talvez não esteja instalado? Abra seu gerenciador de pacotes e instale o pacote sudo .
fonte
Primeiro, faça login na sua conta root. Então
Adicione seu usuário existente ao grupo
sudo
Você deve fazer login como
<user>
e osudo
comando deve estar lá.fonte
tente usar o caminho completo
se esse comando funcionar, inclua / usr / bin / na sua variável env PATH em ~ / .bashrc
espero que funcione ..
fonte
/usr/bin
certamente estará no seu caminho padrão. O problema, conforme indicado por outras respostas e comentários, é que osudo
comando não foi instalado.O erro ocorre porque o binário que você está tentando chamar da linha de comando é apenas parte da variável PATH do usuário atual, mas não faz parte do PATH do usuário raiz.
Você pode verificar isso localizando o caminho do binário que você está tentando acessar. No meu caso, eu estava tentando chamar "bettercap-ng". Então eu corri,
$ which bettercap-ng
output: /home/user/work/bin/bettercap
Eu verifiquei se esse local faz parte do PATH do meu usuário root.
$ sudo env | grep ^PATH
saída:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
Portanto, o sudo não consegue encontrar o binário que estou tentando chamar na linha de comando. Portanto, retorna o comando de erro não encontrado.
Você pode direcionar o sudo para usar o PATH do usuário atual ao chamar um binário como abaixo.
$ sudo -E env "PATH=$PATH" [command] [arguments]
De fato, pode-se criar um apelido:
$ alias mysudo='sudo -E env "PATH=$PATH"'
Também é possível nomear o próprio apelido sudo, substituindo o sudo original.
Consulte este vídeo para obter uma solução passo a passo
fonte