Nastavil jsem virtuální počítač pomocí linuxového redminu na klíč a pokouším se SSH na server nainstalovat další položky.
Nezdá se, že by rozpoznával příkaz sudo. Pokaždé, když se pokusím o něco sudo, zobrazí se chyba s hlášením:
 -bash: sudo: command not found 
Četl jsem někde jinde, abych napsal „whereis sudo“ a výstup byl:
 sudo: 
Odpověď
 Vypadá to z  http://www.turnkeylinux.org/redmine  jako Redmine na rozdíl od Ubuntu ve výchozím nastavení nepoužívá sudo. Jaké uživatelské jméno používáte pro SSH? Pokud je to root, nemusíte používat sudo, protože vše, co děláte při SSHed do systému Redmine, je provedeno jako root. Pokud jde o něco jiného, například admin, můžete zkusit pomocí su získat root prostředí, ve kterém lze spouštět příkazy jako root. 
Komentáře
odpověď
Možná není nainstalován? Otevřete správce balíčků a nainstalujte balíček sudo .
Komentáře
- Nebylo nainstalováno '! Dík. Jsem ' v Linuxu docela nový a předpokládal jsem, že je to na všech instalacích. Potřebuji také balíček sudo nebo sudo-ldap?
 - Nepotřebujete ' balíček sudo-ldap. Sudo funguje na mém počítači dobře a nemám ' nainstalován sudo-ldap.
 
Odpovědět
Nejprve se přihlaste ke svému účtu root. Poté
$ apt-get install sudo 
 Přidejte stávajícího uživatele do skupiny sudo 
$ sudo adduser <user> sudo 
 Poté byste se měli přihlásit jako <user> a měl by tam být příkaz sudo. 
Odpověď
zkuste použít celou cestu
/usr/bin/sudo 
pokud tento příkaz funguje, zahrňte / usr / bin / do své env proměnné PATH v ~ / .bashrc
echo "export PATH="$PATH:/usr/bin"" >> ~/.bashrc 
snad funguje ..
Komentáře
-  To ' je velmi nepravděpodobné, že by to byl problém; 
/usr/binbude téměř jistě ve vaší výchozí cestě. Problém, jak naznačují další odpovědi a komentáře, spočívá v tom, že příkazsudonebyl vůbec ' nainstalován. 
Odpověď
Došlo k chybě, protože binární soubor, který se pokoušíte volat z příkazového řádku, je pouze částí PATH aktuálního uživatele proměnná, ale není součástí PATH uživatele root.
Tuto skutečnost můžete ověřit vyhledáním cesty binárního souboru, ke kterému se pokoušíte získat přístup. V mém případě jsem se pokoušel nazvat „bettercap-ng“. Tak jsem běžel,
 $ which bettercap-ng 
 output: /home/user/work/bin/bettercap 
I zkontroloval, zda je toto umístění součástí PATH mého kořenového uživatele.
 $ sudo env | grep ^PATH 
 výstup: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin 
Takže sudo nemůže najít binární soubor, který se pokouším zavolat z příkazové řádky. Vrátí tedy chybový příkaz, který nebyl nalezen.
Můžete použít sudo k použití aktuálního uživatele „PATH při volání binárního souboru, jak je uvedeno níže.
 $ sudo -E env "PATH=$PATH" [command] [arguments] 
Ve skutečnosti z něj lze vytvořit alias:
 $ alias mysudo="sudo -E env "PATH=$PATH"" 
Je také možné pojmenovat samotný alias sudo, který nahradí původní sudo.
Viz do tohoto videa pro řešení krok za krokem
sudolepší volba