Korjaus: Pseudopäätettä ei jaeta, koska stdin ei ole pääte
Useimmissa tapauksissa saat hämmentävän virheen "pseudopäätettä ei jaeta, koska stdin ei ole pääte" -virhe vain, kun suoritat jonkinlaista SSH-komentoa komentosarjalta. Jos suoritat samaa komentoa komentoriviltä, se saattaa toimia täydellisesti.
Ennen kuin jatkat, varmista, että olet lisännyt julkisen avaimen SSH-agenttiin, ja yritä sitten käyttää ssh uudelleen. Sinulta saattaa olla kadonnut avain. Toisaalta, jos tämä ei toimi, sinun on tehtävä pieni vianetsintä komentosarjassa.
Tapa 1: Pseudotty-allokoinnin pakottaminen ja poistaminen käytöstä
On olemassa pari komentorivivaihtoehtoa, jotka saattavat korjata ongelman nopeasti sinulle. Kokeile ssh -t -t -R: ää ja sen jälkeen mitä loput yritit yhdistää pakottaaksesi pseudopäätteen allokoinnin. Oletetaan esimerkiksi, että aiot käyttää ssh -p 80 [email protected] kirjautumalla tilillesi osoitteessa example.com, mikä on tietysti nukke dokumentaatiolle, jota ei ole olemassa.
Yritä juosta esim. ssh -t -t -R -p 80 [email protected] ja katso, korjaako tämä ongelman. Sinun on tietysti korvattava nimi todellisella tililläsi ja isäntänimelläsi, jotta voit kirjautua järjestelmään onnistuneesti. Tämä pakottaa päätelaitteen allokoinnin, joten sinun ei pitäisi nähdä, että näennäispäätettä ei jaeta, koska stdin ei ole päätelaitteen virhe.
Toisaalta saatat vain päätyä jatkuvaan virheviesteihin. Jotkut käyttäjät ovat huomauttaneet, että tätä voidaan pitää huvittavana.
Se on varmasti turhauttavaa, vaikka siitä huolimatta, joten käytä Ctrl + C tappaa prosessi.
Voit kokeilla joko vain yhden -t-kytkimen käyttöä tai lisätä numeroa. Jos tämä ei toimi, korvaa kaikki -kytkimet komennossa -T-kytkimillä, esim. ssh -T -R -p 80 [email protected] ja katso, toimiiko se.
Tämä menetelmä poistaa koko pseudopäätteen allokointiprosessin kokonaan, joten se saattaa toimia tapauksissa, joissa sen pakottaminen ei onnistu. Tietenkään mikään tästä ei saisi olla ongelma komentoriviltä, mutta muista tehdä muistiinpano, kun löydät, mikä vaihtoehto toimii komentosarjastasi, jotta voit käyttää sitä tulevissa komentosarjoissa, jotka sinun on suoritettava päästäksesi palvelimeen.
Koska ssh-komento antoi näille kahdelle vastakkaiselle vaihtoehdolle samanlaiset nimet, muista, että -t pakottaa pseudopäätteiden allokoinnin, kun taas -T poistaa sen käytöstä. Nämä vaihtoehdot ovat isot ja pienet kirjaimet, ja niitä tarvitaan usein komentosarjojen sisältä, koska ssh tarvitsee toimiakseen perinteisen TTY-päätelaitteen. Luonnollisesti käytit tapauksessasi pääteemulaattoriasi tähän tarkoitukseen.
Tapa 2: sshpassin käyttö
Jotkut ihmiset saattavat huomata, että heidän komentosarjansa toimivat paremmin sshpass-komennon kanssa, joka ei ole oletusarvoisesti mukana. Voit aina asentaa sen sudo apt-get install sshpass- tai sudo yum install sshpass -sovelluksella, jos haluat kokeilla sitä tai koska tarvitset sitä omaan käyttötapaukseesi.
Jos et vielä käytä sitä, et todennäköisesti tarvitse sitä. Siitä huolimatta voit käyttää samoja tekniikoita yllätykseksi pseudopäätteiden allokointiin liittyvistä virheilmoituksista myös tällaisessa ympäristössä.
Käytä esimerkiksi sshpass -p salasanaa ssh -T [email protected] pakottaaksesi järjestelmän toimimaan komentosarjan sisäpuolelta.
Tapa 3: Työnhallintavirheiden korjaaminen
Joskus saatat saada yhden muun virhesanoman, vaikka olet korjannut tämän kaiken. Jos saat varoituksen, joka ei lukea pääsyä tty: lle, ja muistutetaan, että kuoressasi ei ole työnhallintaa, sinun pitäisi pystyä toimimaan jonkin verran normaalisti.
Tämä virhe johtuu siitä, että etäpalvelimessa on jotain epäsäännöllistä joko csh: n, tcsh: n tai mahdollisesti jopa Almquistin tai muun kuoren suhteen. Et ehkä ole huomannut sitä, koska sait muita virheilmoituksia, mutta jos et näe muita näennäispäätteistä, sen pitäisi olla mahdollista jatkaa suhteellisen tavalliseen tapaan.
Et kuitenkaan halua yrittää käyttää Ctrl + Z: tä tässä tapauksessa prosessien lopettamiseksi, koska niitä ei ehkä voida käynnistää uudelleen. Jos saat virheilmoituksen, joka lukee pysäytetyt työt, kun poistut, et voi kirjautua ulos.
Käytä ps ja kill -komentoja sulkeaksesi kaikki työt, joita et voi sulkea, olettaen, että sinulla ei ole haittaa menettää työtä prosessin aikana. Voit poistua nyt.
Tunnisteet Linux-ohjeet ssh