ปัญหา
เมื่อทำงาน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
นั้นคำสั่งจากเปลือก) มันทำงานอย่างถูกต้อง?