คำถามติดแท็ก gnu-screen

GNU Screen เป็นแอปพลิเคชั่นซอฟต์แวร์ที่สามารถใช้เพื่อมัลติเพล็กซ์คอนโซลเสมือน

13
ฉันสามารถ nohup / กลั่นกรองกระบวนการที่เริ่มต้นแล้วหรือไม่
ฉันกำลังดำเนินการทดสอบสคริปต์การย้ายข้อมูลระยะยาวผ่าน SSH สมมติว่าฉันเริ่มเรียกใช้สคริปต์รอบ 16:00; ตอนนี้ 18:00 screenม้วนรอบและฉันแช่งตัวเองไม่ได้ทำเช่นนี้ทั้งหมดใน มีวิธีใดในการ "ย้อนnohupกระบวนการ" หรือฉันต้องออกจากคอมพิวเตอร์ออนไลน์ตลอดทั้งคืน? หากไม่สามารถแนบscreenกับ / nohupa โพรเซสที่ฉันเริ่มแล้วทำไม? มีบางอย่างเกี่ยวกับวิธีที่ผู้ปกครอง / เด็กโพรเซสโต้ตอบ? (ฉันจะไม่ยอมรับคำตอบที่ "ไม่" อย่างน้อยก็ไม่ได้ตอบคำถาม 'ทำไม' - ขอโทษ;)
260 linux  ssh  unix  gnu-screen  nohup 

3
การย้ายกระบวนการที่กำลังทำงานอยู่ไปยังหน้าจอ
งานสำนักงานของฉันเห็นฉันเชื่อมต่อกับกล่อง Linux ผ่าน VNC เป็นประจำ บางครั้งฉันเริ่มงานรีโมตบนคอนโซลและตระหนักในภายหลังว่าทำงานนานกว่าที่คาดไว้มาก (ควรจะเริ่มต้นหนึ่งภายใต้หน้าจอในสถานที่แรก ... ) ฉันไม่ต้องการให้เวิร์กสเตชันทำงานค้างคืนเพื่อเปิดเซสชัน VNC ฉันต้องการย้ายงานรีโมตที่รันแล้วไปยังเซสชันเซสชัน (บนกล่องรีโมต) ดังนั้นฉันสามารถปิดเวิร์กสเตชัน (และเชื่อมต่อใหม่ในเช้าวันถัดไป) สิ่งนี้สามารถทำได้ถ้าทั้งหมด?
222 linux  vnc  gnu-screen 

7
Sudo เป็นผู้ใช้ที่แตกต่างกันและหน้าจอทำงาน
ค้นพบในวันนี้ว่าหน้าจอที่ใช้งานในฐานะผู้ใช้อื่นที่ฉัน sudo ลงไปจะไม่ทำงาน! กล่าวคือ ssh bob@server # ssh into server as bob sudo su "monitor" - screen # fails: Cannot open your terminal '/dev/pts/0' ฉันมีสคริปต์ที่ทำงานเป็นผู้ใช้ "ตรวจสอบ" เรารันในเซสชันหน้าจอเพื่อดูผลลัพธ์บนหน้าจอ ปัญหาคือเรามีผู้ใช้จำนวนมากที่เข้าสู่ระบบด้วยบัญชีของตัวเอง (เช่น bob, james, susie, etc ... ) จากนั้นพวกเขา sudo ลงในผู้ใช้ "monitor" การให้พวกเขาเข้าถึงผู้ใช้ "มอนิเตอร์" นั้นไม่อยู่ในคำถาม
167 sudo  gnu-screen 

12
วิธีการเชื่อมต่อกับเซสชัน ssh ที่ไม่ได้เชื่อมต่ออีกครั้ง
มีวิธีเชื่อมต่อกับเซสชัน ssh ที่ถูกตัดการเชื่อมต่อหรือไม่? เรากำลังมีปัญหากับการเชื่อมต่อเครือข่ายของเราไปยังไซต์ระยะไกลที่เรากำลังทำงานแยกจากกัน อย่างไรก็ตามในระหว่างนี้เราพบว่ามีการยกเลิกการเชื่อมต่อจำนวนมากเนื่องจากแพ็กเก็ตหายไปในขณะที่เชื่อมต่อกับเซิร์ฟเวอร์ในสถานที่ห่างไกล หลายครั้งที่เซสชันยังทำงานอยู่พักหนึ่งและบางครั้งมันก็อยู่ในระหว่างการดำเนินการบางอย่าง (การแก้ไขไฟล์ใช้กระบวนการบางอย่าง ฯลฯ ) ที่ฉันต้องกลับไปใช้แทนที่จะเริ่มใหม่ถ้าเป็นไปได้
156 linux  ssh  gnu-screen 

2
วิธีสั่งซื้อหน้าต่างใหม่เปลี่ยนทางลัดการเลื่อนและแก้ไขเนื้อหาของแถบสถานะในหน้าจอ GNU
ฉันเรียนรู้ที่จะใช้ gnu-screen และใช้มันมาหลายสัปดาห์แล้ว ตอนนี้ฉันเข้าใจพื้นฐานแล้วและจะมีประโยชน์มากหากฉันได้รับข้อความค้นหาเหล่านี้อย่างชัดเจน: ฉันจะเปลี่ยนชื่อ / จัดลำดับใหม่ / ย้าย Windows ในยูทิลิตี้หน้าจอ Linux ได้อย่างไร สำหรับตัวอย่างเช่นหลังจากใช้งานไปสองสามวันฉันมาถึงสถานะที่หมายเลขหน้าต่างคือ 2, 3, 6, 8 ตอนนี้ฉันต้องการสร้างหน้าต่างใหม่ที่ # 9 หรือ # 7 เป็นไปได้ไหม ถ้าใช่เป็นอย่างไร นอกจากนี้ยังสามารถ 'ย้าย' หน้าต่าง # 6 ถึง # 4 หรือ # 7 ได้หรือไม่ ถ้าใช่เป็นอย่างไร ทางลัดในการเลื่อน: เลื่อนเพื่อใช้ Ctrl-A + Esc จากนั้นกด Ctrl-u / Ctrl-d มีวิธีในการแม็ป PgUp …
98 linux  gnu-screen 


7
ฉันจะตรวจสอบว่าฉันอยู่ในเซสชันของหน้าจอได้อย่างไร
เป็นไปได้ไหมที่จะตรวจสอบว่าตอนนี้ฉันอยู่ในเซสชั่นหน้าจอหรือไม่ ฉันต้องการมันเพื่อตรวจสอบว่ากดปุ่ม ctrl + d จะตัดการเชื่อมต่อฉันจากเซิร์ฟเวอร์หรือเพียงแค่ปิดหน้าจอปัจจุบัน ขอบคุณ

6
ฉันสามารถส่งข้อความไปยัง STDIN ของกระบวนการที่ทำงานอยู่ที่ทำงานอยู่ในเซสชันหน้าจอได้หรือไม่
ฉันมีกระบวนการเซิร์ฟเวอร์ที่ใช้เวลานานในเซสชันหน้าจอบนเซิร์ฟเวอร์ Linux ของฉัน มันค่อนข้างไม่เสถียร (และไม่ใช่ซอฟต์แวร์ของฉันดังนั้นฉันจึงไม่สามารถแก้ไขได้!) ดังนั้นฉันต้องการสคริปต์เริ่มกระบวนการทุกคืนเพื่อช่วยให้มีเสถียรภาพ วิธีเดียวที่จะทำให้การปิดระบบอย่างงดงามคือไปที่กระบวนการหน้าจอสลับไปที่หน้าต่างที่กำลังทำงานอยู่และป้อนสตริง "หยุด" บนคอนโซลควบคุม มีการเปลี่ยนเส้นทางสมาร์ทที่ฉันสามารถทำได้เพื่อให้ cronjob ส่งคำสั่งหยุดที่กำหนดเวลาทุกวัน?

7
ฉันจะรู้ได้อย่างไรว่าฉันกำลังใช้งานภายใน "หน้าจอลินุกซ์" หรือไม่?
หน้าจอ "" หมายถึงโปรแกรมที่กล่าวถึงในวิธีการเชื่อมต่อกับครั้ง ssh ตัดการเชื่อมต่อ นั่นคือสิ่งอำนวยความสะดวกที่ดี แต่มีคำถามที่ฉันอยากรู้ ฉันจะรู้ได้อย่างไรว่าฉันกำลังทำงานอยู่ภายใน "หน้าจอ"? ความแตกต่างคือ: ถ้าใช่ฉันรู้ว่าฉันสามารถปิดหน้าต่างเทอร์มินัลปัจจุบันได้อย่างปลอดภัยเช่นปิดหน้าต่าง PuTTY โดยไม่สูญเสียเซสชันเชลล์ (Bash ฯลฯ ) ถ้าไม่ฉันรู้ว่าฉันต้องดูแลงานที่ค้างอยู่ก่อนที่ฉันจะปิดหน้าต่างเทอร์มินัล ดีกว่าฉันต้องการแสดงสถานะนี้ในพรอมต์ PS1 เพื่อให้ฉันสามารถดูได้ตลอดเวลาโดยอัตโนมัติ
60 linux  gnu-screen 

4
ฉันจะเปิดใช้เซสชันของหน้าจอด้วยคำสั่งผ่าน ssh บนเซิร์ฟเวอร์ระยะไกลจากเดสก์ท็อปของฉันได้อย่างไร
ฉันต้องการที่จะสามารถเปิดเซสชันหน้าจอบนเซิร์ฟเวอร์ระยะไกลจากคำสั่ง ssh เดียวบนเดสก์ทอปของฉัน อย่างไรก็ตามหน้าจอดูเหมือนจะต้องการเทอร์มินัลซึ่งไม่สามารถใช้งานได้เมื่อรันคำสั่งผ่าน ssh ดังนั้นความชัดเจน ssh root@my.machine screen "tail -f /var/log/messages" (เป็นตัวอย่าง) ใช้งานไม่ได้และให้ Must be connected to a terminal. ฉันต้องการ ssh เพื่อเปิดใช้คำสั่งภายใต้หน้าจอเพื่อให้ฉันสามารถเข้าสู่ระบบในภายหลังและแนบในขณะที่ฉันจะไปที่เซสชั่นหน้าจอฉันจะได้เปิดตัวด้วยตนเอง
57 ssh  terminal  gnu-screen  tty 

12
การตั้งค่า. screenrc มีประโยชน์อย่างไร
โดยพื้นฐานแล้วฉันชอบโพสต์ด้านล่าง ฉันกำลังมองหาฟังก์ชั่นที่เพิ่มเข้ามาใน 'หน้าจอ' ของโปรแกรม อย่างน้อยต้องดูบรรทัดสุดท้ายสำหรับ 'แถบเมนู' ที่ยอดเยี่ยมที่ด้านล่างของหน้าจอเซสชัน ## gyaresu's .screenrc 2008-03-25 # http://delicious.com/search?p=screenrc # Don't display the copyright page startup_message off # tab-completion flash in heading bar vbell off # keep scrollback n lines defscrollback 1000 # Doesn't fix scrollback problem on xterm because if you scroll back # all …

4
สีโป๊วและหน้าจอและบัฟเฟอร์เลื่อนด้านหลัง [ปิด]
เมื่อฉันใช้หน้าจอในช่วงที่มีผงสำหรับอุดรูฉันไม่สามารถใช้ scrollback buffer ของ putty เพื่อดูสิ่งที่เพิ่งเลื่อนออกจากหน้าจอ แต่ฉันเพิ่งเห็นสิ่งที่เกิดขึ้นในเซสชั่นฉาบก่อนหน้าจอที่ทำงานของฉัน สิ่งที่ฉันหายไปที่นี่? ฉันชอบความสามารถในการเลื่อนกลับและฉันไม่ต้องการใช้ฟังก์ชันการทำงานของหน้าจอเพื่อดูบัฟเฟอร์ที่ผ่านมา ล้อเลื่อนของเมาส์ไม่มีตะขอเข้ามาในหน้าจอและฉันไม่คาดหวังเลย ขอบคุณ!
38 gnu-screen  putty 

8
ฉันจะขอให้หน้าจอทำงานเหมือนเปลือก bash มาตรฐานได้อย่างไร
เพิ่งเรียนรู้เกี่ยวกับคำสั่งหน้าจอบน linux - มันเป็นอัจฉริยะ ฉันรักมัน. อย่างไรก็ตามหน้าจอเทอร์มินัล / พรอมต์ที่เกิดขึ้นจริงจะมีลักษณะและการทำงานแตกต่างไปจากการแจ้งให้ใช้ bash มาตรฐาน นั่นคือสีไม่เหมือนกันการเติมแท็บดูเหมือนจะไม่ทำงาน ฯลฯ มีวิธีที่ฉันสามารถบอกให้หน้าจอทำงานเหมือนปกติ (อย่างน้อยปกติเหมือนในสิ่งที่ฉันคุ้นเคย) พร้อมท์ทุบตีหรือไม่? ข้อมูลเพิ่มเติม ฉันกำลังเชื่อมต่อผ่าน ssh จาก Mac (Terminal) ไปยังกล่อง linux ที่ไม่มีหัว (Ubuntu) หลังจากเข้าสู่ระบบผมมีและเมื่อผมทำงานหน้าจอผมมีTERM=xterm-colorTERM=screen ฉันจะลองทำตามคำแนะนำด้านล่างเพื่อดูว่าฉันสามารถเปลี่ยน$TERMค่าได้ก่อน
37 bash  gnu-screen  xterm 

2
เหตุใดการเปลี่ยนเส้นทาง 'สคริปต์' ไปยัง / dev / null / อนุญาตให้ 'หน้าจอ' ทำงานในขณะที่ผู้ใช้อื่นเป็นผู้ใช้
ฉันถูก su'ed เป็นผู้ใช้เพื่อเรียกใช้สคริปต์ยาวเฉพาะ ฉันต้องการใช้หน้าจอ แต่ได้รับข้อความแสดงข้อผิดพลาด "ไม่สามารถเปิด terminal '/ dev / pts / 4' - โปรดตรวจสอบ" ดังนั้นผมจึง Googled ไปรอบ ๆ $ script '/dev/null/'และมาข้ามโพสต์ฟอรั่มที่ได้รับคำสั่งให้วิ่ง ฉันทำเช่นนั้นแล้วฉันจะกลั่นกรอง ทำไมจึงใช้งานได้ หน้าจอนั้นกำลังทำอะไรซูไม่สามารถทำงานในฐานะผู้ใช้ที่เป็นผู้ใช้งานได้? เหตุใดการส่ง 'สคริปต์' ไปยัง / dev / null อีกครั้งจึงถูกป้องกันอย่างอื่น ใช้สคริปต์เพื่อเขียนบันทึกในฐานะผู้ใช้ดั้งเดิมไปยังที่อื่นหรือไม่?
36 linux  bash  gnu-screen  su 

1
กู้คืนสคริปต์ที่รันจากเซสชันเทอร์มินัล
ดังนั้นฉันจึงใช้GNU Screenเพื่อจัดการสคริปต์ / โปรแกรมที่กำลังทำงานอยู่หลายรายการ มัลติเพล็กซ์และการถอดได้ค่อนข้างมีประโยชน์ ฉันลบสคริปต์ออกจากดิสก์และตอนนี้ฉันมีปัญหาในการค้นหาข้อมูลสำรอง อย่างไรก็ตามหนึ่งในเทอร์มินัลเซสชันกำลังดำเนินการสคริปต์ก่อนที่ไฟล์จะถูกลบและมันก็ยังทำงานได้ตามปกติ มีวิธีการแย่งชิงเทอร์มินัลเซสชันที่กำลังเรียกใช้สคริปต์เพื่อกู้คืนเนื้อหาของไฟล์นี้หรือไม่?

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