Ispravljeno: sudo: nije prisutan i nije naveden program askpass



Isprobajte Naš Instrument Za Uklanjanje Problema

Izlazni redak koji nije prisutan i nije naveden u programu passpass jedna je od onih ssh poruka o pogreškama koja zaista nije toliko korisna jer zapravo ne dolazi do točke koja uzrokuje problem. Više nego vjerojatno, zapravo radite s valjanom nekom vrstom TTY-a kad vidite poruku i vjerojatno ste se bavili unosom sudo lozinke preko ssh-a sasvim u redu. Više nego vjerojatno imate posla sa sintaksnom pogreškom, ali poruka se izravno ne odnosi na ovu činjenicu.



Budući da se radi o problemu povezanom sa samim ssh-om, problem ćete više nego vjerojatno moći reproducirati na Linuxu, FreeBSD-u, macOS-u i Cygwin-ovim Unix uslugama na sustavu Microsoft Windows. Srećom, popravak bi trebao biti približno jednak na svim ovim platformama.



Metoda 1: Pronalaženje terminala za ssh

Iako više nego vjerojatno već radite s terminala, ssh to vjerojatno ne shvaća. Možda još uvijek pokušava potražiti emulator terminala TTY, usprkos činjenici da ste unutar prozora naredbenog retka. Pokušajte reproducirati pogrešku da biste to testirali. Konfigurirali smo virtualni stroj koji će poslužiti kao primjer i pokrenuli smo se ssh user@linuxtest.example ‘sudo /var/mail/startup.sh’ kao test. Naravno, morat ćete promijeniti naredbu i ssh redak u nešto što odgovara onome što pokušavate učiniti.



Morali biste biti sigurni da se prijavljujete na poslužitelj za koji ste mislili da jeste. Bez obzira na to, provjerite primate li i dalje sudo: nema tty i nema poruke o pogrešci koja je navedena u programu passpass. Više nego vjerojatno, ako je još uvijek primate, vidjet ćete je tri puta, a možda će se čak i zatražiti da unesete lozinku onako kako biste je imali da lokalno pokrećete sudo na Debianu ili Ubuntuu.

Pokušajte dodati -t nakon ssh da biste ispravili sintaksnu pogrešku. Devet puta od deset ovo će prisiliti ssh da dodijeli sebi virtualni TTY i pretvara se da se događa unutar stvarnog terminala. Ne morate mijenjati ništa drugo u vezi sa svojom naredbom. Jednostavno dodajte opciju -t nakon slova ssh, a zatim zadržite naredbu host i proslijeđenu identičnu. To ćete također imati na umu ako ikada budete morali pokrenuti ssh u drugom dijelu vaše naredbe.



Na primjer, ako ste dobivali istu vrstu pogreške prilikom pokretanja naredbe koja je formatirana kao ssh -t user@linuxtest.example ‘ssh korisnik@linuxtest2.example’ morali biste zadržati opciju -t nakon prvog ssh-a da biste je spriječili. Imajte na umu da ako ste kasnije promijenili drugu naredbu bilo da proizvodite ili trošite podatke, tada uopće ne biste željeli koristiti -t. Na primjer, ako ste umjesto skripte počeli izvoditi mačku, mogli biste izbaciti -t jer za to ne biste trebali dodijeliti terminal.

2. metoda: krpanje datoteke visudo

Možda imate i problem s konfiguracijom koji uzrokuje ovu pogrešku. Izmijenite datoteku visudo izdavanjem datoteke sudo visudo naredbu i imajte na umu da ovu datoteku nikada nećete htjeti uređivati ​​na bilo koji drugi način. Trebali biste pronaći redak koji sadrži ALL = NOPASSWD, nakon čega slijede vrste naredbi koje za pokretanje ne trebaju za unos administratorske lozinke.

Svaka pojedinačna naredba treba završiti zarezom, osim posljednje na liniji. Dakle, ako ste imali nešto što je čitalo kao / sbin / poweroff / sbin / start / sbin / stop, sve će to tretirati kao jednu naredbu i baciti vam grešku. Isto tako, ako vam nedostaje naredba koju pokušavate pokrenuti putem ssh-a, dobit ćete i ovu pogrešku. Izvršite potrebne prilagodbe i spremite datoteku prije provjere je li pogreška još uvijek ponovljiva.

Ako i dalje imate pogrešku čak i nakon toga i ponovnog pokretanja usluge, isprobajte slijedeći naredbu na donjoj slici i pobrinite se da linija PermitTTY nakon nje sadrži riječ yes. Ako je ovo zadnji redak u datoteci, pobrinite se da nakon toga postoji prazan novi redak. GNU nano automatski izvršava ovaj zadatak prema zadanim postavkama.

Morat ćete ponovo pokrenuti sve relevantne usluge prije ponovnog pokušaja reprodukcije poruke o pogrešci.

3 minute čitanja