สิ่งที่อาจทำให้ข้อความ“ การร้องขอ exec ล้มเหลวในช่อง 0” ปรากฏขึ้น


9

ฉันพยายามที่จะส่งคำสั่ง ssh แบบไม่โต้ตอบไปยังพร็อกซีเซิร์ฟเวอร์ HP Automation และในขณะที่ฉันสามารถเข้าใช้และใส่เข้ากับมันได้อย่างสมบูรณ์แบบฉันจะได้รับข้อความ "การร้องขอ exec ล้มเหลวในช่อง 0" เมื่อพยายามส่ง สั่งการแบบไม่โต้ตอบ มีอะไรที่ฉันสามารถเปลี่ยนฝั่งลูกค้าเพื่อให้ฉันส่งคำสั่งไปได้หรือไม่? มีไม่มากที่ฉันสามารถเปลี่ยนฝั่งเซิร์ฟเวอร์

ป้อนคำอธิบายรูปภาพที่นี่

เห็นได้ชัดว่าเป็นไปได้ แต่ฉันไม่สามารถทำให้การติดตั้งของฉัน (ดูลิงค์: https://community.hpe.com/t5/Network-Automation-Practitioners/Is-there-a-way-to-issue- a-command-to-an-NA-proxy-using-SSH-non / mp / 6935003 / ไฮไลต์ / false # M2821 )

ในกรณีที่มันจะช่วยให้ที่นี่มีรายละเอียดรุ่นสำหรับระบบปฏิบัติการของฉันและรุ่น openssh:

OpenSSH_7.2p2, OpenSSL 1.0.2j-fips  26 Sep 2016

NAME="openSUSE Leap"
VERSION="42.2"
ID=opensuse
ID_LIKE="suse"
VERSION_ID="42.2"
PRETTY_NAME="openSUSE Leap 42.2"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:leap:42.2"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"

ขอบคุณ

คำตอบ:


1

เซิร์ฟเวอร์อนุญาตให้คุณเปิดเชลล์แบบโต้ตอบ แต่ไม่ใช่การexecเรียกของระบบเพื่อดำเนินการคำสั่งโดยไม่มีเทอร์มินัลหลอก ใช้-tสวิตช์ดังต่อไปนี้เพื่อบังคับใช้การจัดสรรเทอร์มินัลเทียม

ssh austin@127.0.0.1 -p 8022 -t show version

อีกวิธีหนึ่งคือใช้expectสคริปต์โต้ตอบกับจุดปลายทางระยะไกล ดูคำตอบนี้สำหรับตัวอย่าง

อ้างอิง:


0

มักจะเป็นเพราะลูกค้าขอ tty และเซิร์ฟเวอร์ปฏิเสธ พยายามอย่าร้องขอ tty ด้วยssh -T ......


-1

คุณมีอะไรในเชลล์ rcfile (.bashrc, .zshrc, etc) หรือ .login, .profile ฯลฯ ที่กำลังตรวจสอบเพื่อให้แน่ใจว่าเชลล์นั้นทำงานแบบโต้ตอบได้หรือไม่? ถ้าไม่นั่นคือปัญหาของคุณ

คำแนะนำของฉันคือเปลี่ยนชื่อสิ่งชั่วคราวเช่น. profile, .bashrc, .login และ. bash_profile เป็น. profile.off (และอื่น ๆ ) และดูว่าปัญหายังคงมีอยู่หรือไม่

หากไม่เป็นเช่นนั้นคุณต้องมีโค้ดบางอย่างใน rcfile ที่ละเมิดซึ่งจะตรวจสอบเพื่อให้แน่ใจว่าเชลล์นั้นเป็นแบบโต้ตอบก่อนที่จะรัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.