ฉันได้เชื่อมต่อกับเซิร์ฟเวอร์ของฉันผ่าน SSH และสร้างกระบวนการ แต่ทันใดนั้นการเชื่อมต่ออินเทอร์เน็ตของฉันถูกตัดการเชื่อมต่อ ฉันรู้ว่ากระบวนการกำลังดำเนินอยู่ แต่จะคืนค่าเซสชันก่อนหน้าเพื่อดูความคืบหน้าของกระบวนการได้อย่างไร
ฉันได้เชื่อมต่อกับเซิร์ฟเวอร์ของฉันผ่าน SSH และสร้างกระบวนการ แต่ทันใดนั้นการเชื่อมต่ออินเทอร์เน็ตของฉันถูกตัดการเชื่อมต่อ ฉันรู้ว่ากระบวนการกำลังดำเนินอยู่ แต่จะคืนค่าเซสชันก่อนหน้าเพื่อดูความคืบหน้าของกระบวนการได้อย่างไร
คำตอบ:
ตามที่แนะนำข้างต้นในอนาคตคุณสามารถใช้หน้าจอเพื่อป้องกันสิ่งนั้น คำอธิบายสั้น ๆ เกี่ยวกับวิธีใช้หน้าจอ:
screen -S compiling_stuff
./configure
screen -r comp
CTRL+A+D
โชคดี
screen
เป็นวิธีที่ดีที่สุดในการเริ่มต้นคำสั่งในเทอร์มินัลที่จะถูกเก็บไว้เมื่อคุณตัดการเชื่อมต่อจากมัน (ในวัตถุประสงค์ ctrl + ad หรือเพราะการเชื่อมต่อตาย ฯลฯ )
อย่างไรก็ตามคุณสามารถแนบกระบวนการทำงานอีกครั้ง (เช่น: เชลล์ของเซสชันการทำงานของคุณหากยังคงทำงานอยู่) กับเทอร์มินัลปัจจุบันของคุณ (เช่นแนบ stdin, stdout, คีย์บอร์ดอีกครั้ง แต่ยังทำให้เทอร์มินัลใหม่เป็นสถานีควบคุม กระบวนการ) โดยใช้: reptyr
สำหรับสิ่งที่ดีที่สุดของโลกทั้งสอง: ติดตั้งscreen
ให้เริ่มจากนั้นแนบกระบวนการนั้นอีกครั้งในเซสชันหน้าจอนั้นด้วยreptyr
^^
คุณทำไม่ได้ ในอนาคตคุณสามารถป้องกันบางสิ่งเช่นนี้ได้ด้วยการใช้screen
หรือtmux
ที่ซึ่งสร้างขึ้นเพื่ออนุญาตให้เชื่อมต่อเซสชันอีกครั้งหลังจากยกเลิกการเชื่อมต่อ
แค่คิดว่าฉันจะพูดถึงhttp://mosh.mit.edu/
แอปพลิเคชั่นเทอร์มินัลระยะไกลที่อนุญาตให้โรมมิ่งรองรับการเชื่อมต่อเป็นระยะและให้เสียงสะท้อนในพื้นที่และการแก้ไขการกดแป้นของผู้ใช้
Mosh แทน SSH มันแข็งแกร่งและตอบสนองได้ดียิ่งขึ้นโดยเฉพาะอย่างยิ่งผ่าน Wi-Fi, โทรศัพท์มือถือและลิงก์ระยะไกล
ใช้screen
ผ่าน ssh เพื่อเชื่อมต่อกับเซสชั่นของคุณในภายหลัง
เท่าที่ฉันรู้ไม่มีวิธีเชื่อมต่อกับเซสชัน ssh ที่ปิดอีกครั้ง
ฉันสามารถแนะนำByobu :
Byobu เป็นการปรับปรุงสำหรับเทอร์มินัลมัลติเพล็กเซอร์หน้าจอ GNU หรือ tmux ที่สามารถใช้ในการแจ้งเตือนบนหน้าจอหรือสถานะเช่นเดียวกับการจัดการหลายหน้าต่างแบบแท็บ มันมีวัตถุประสงค์เพื่อให้ประสบการณ์การใช้งานที่ดีขึ้นสำหรับเซสชันเทอร์มินัลเมื่อเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกล
ฉันอยากจะแนะนำให้ใช้tmux :
คุณสามารถเรียกคืนเซสชั่น tmux tmux attach
ผ่าน
tmux เป็นแอพพลิเคชั่นซอฟต์แวร์ที่สามารถใช้ในการทำมัลติเพล็กซ์คอนโซลเสมือนได้หลายแบบช่วยให้ผู้ใช้สามารถเข้าถึงเทอร์มินัลเซสชันแยกต่างหากภายในหน้าต่างเทอร์มินัลเดียวหรือเซสชันเทอร์มินัลระยะไกล มันมีประโยชน์สำหรับการจัดการกับหลาย ๆ โปรแกรมจากอินเตอร์เฟสบรรทัดคำสั่งและสำหรับการแยกโปรแกรมออกจาก Unix shell ที่สตาร์ทโปรแกรม [1] มันมีฟังก์ชั่นมากมายเช่นเดียวกับหน้าจอ GNU แต่มีการแจกจ่ายภายใต้ใบอนุญาต BSD