ปัญหา
เมื่อทำงานapt-get installในเซสชันที่ไม่ใช่แบบโต้ตอบ SSH เซสชันจะไม่ปิด ตัวอย่าง:
ssh user@target "sudo apt-get -y install my_package"
my_packageไม่ได้รับการติดตั้งอย่างถูกต้อง แต่เซสชั่น SSH เพียง dangles เปิด
คำถาม
มีสถานะใดบ้างที่จะส่ง SSH เพื่อapt-getไปทำงาน
ข้อมูลเพิ่มเติม
บริบท
การติดตั้งระยะไกลใช้สำหรับการปรับใช้แพคเกจอัตโนมัติบนเซิร์ฟเวอร์การรวม ทันทีที่เราผลักดันการเปลี่ยนแปลงรหัสไปยังที่เก็บงานจะดึงรหัสสร้างแพ็คเกจและปรับใช้ในการรวมเพื่อตรวจสอบว่าทุกอย่างทำงานได้ดี (เท่าที่เกี่ยวข้องกับการปรับใช้)
พยายามแล้ว & บันทึก
- เซสชัน SSH เดียวกันที่กำลังดำเนินการ
apt-get updateปิดสนิท โปรดทราบว่าapt-get updateไม่โต้ตอบในขณะที่apt-get installเป็น สิ่งนี้อาจชี้ให้เห็นว่าการโต้ตอบเป็นปัญหา - คำสั่งเหมือนไม่เคยมาถึง
ssh user@target "sudo apt-get install my_package && echo Hello"echo debconfบ่นว่าไม่สามารถหาส่วนหน้าที่ดี (แสดง, Readline) และมันกลับไปที่ Teletype (แม้ว่า Readline จะพร้อมใช้งาน)- ในความสัมพันธ์กับส่วนหน้าของ debconf การส่งผ่าน
-tเพื่อบังคับ TTY กับ SSH ไม่ได้ช่วยDEBIAN_FRONTEND=noninteractiveทั้ง - ทำทั้งหมดใน Ubuntu 12_04 LTS
ssh user@targetนั้นคำสั่งจากเปลือก) มันทำงานอย่างถูกต้อง?