มีวิธีสื่อสารกับใครบางคนที่เดสก์ท็อปของพวกเขาหรือไม่?


36

ภรรยาของฉันนั่งที่เดสก์ท็อปที่บ้านของเธอalphaซึ่งกำลังใช้งาน Ubuntu รุ่นล่าสุด ฉันอยู่บนรถบัสโดยใช้ ConnectBot บนโทรศัพท์ G1 ของฉันและสามารถ SSH alphaจากที่ใดก็ได้

ด้วยเหตุผลที่ซับซ้อนฉันไม่สามารถใช้ IM อีเมลหรือโทรศัพท์เพื่อติดต่อกับเธอ (เช่นฉันไม่ต้องการปลุกเด็กไคลเอนต์ IM ของฉันเสียเซิร์ฟเวอร์อีเมลของฉันไม่ทำงาน) ตัวเลือกเดียวของฉันคือการ ssh alphaจากระยะไกลและพยายามทำให้บางสิ่งบางอย่างปรากฏบนหน้าจอ เธอกำลังใช้ KDE ฉันจะทำให้บางสิ่งบางอย่างปรากฏขึ้นเพื่อดึงดูดความสนใจของเธอและแจ้งให้เธอทราบว่าฉันพยายามสื่อสารกับเธอได้อย่างไร ฉันคิดว่ามันเป็นไปได้ที่จะกระตุ้นบางสิ่งจากระยะไกล (เช่น xmessage) ให้ปรากฏบนหน้าจอของเธอแม้ว่าเซสชั่น SSH ของฉันไม่มีจอ X

แก้ไข: เพื่อชี้แจงโทรศัพท์ของฉันไม่ได้ใช้รสชาติใด ๆ ของ X ดังนั้น X-over-ssh เป็นไปไม่ได้ จะทำงานต่อไปนี้?

$ export DISPLAY=:0
$ xmessage "test"

ส่งข้อความไปยังโทรศัพท์ในโหมดเงียบ ... หรือเป็นแค่ฉันหรือเปล่า
Nivas

คำตอบ:


27

คุณสามารถบอกโปรแกรม X ที่จะแสดงผลให้ใช้กับDISPLAYตัวแปรสภาพแวดล้อมตราบใดที่คุณรู้ว่าจอแสดงผลalphaใดกำลังแสดงอยู่ เกือบจะเป็นเพียงจอแสดงผลเท่านั้น:0เว้นแต่ว่าคุณเล่นซอกับมันด้วยตนเองดังนั้นหากคุณเรียกใช้:

$ export DISPLAY=:0

จากนั้นแอปพลิเคชัน X ใด ๆ ที่คุณเรียกใช้จะปรากฏขึ้นบนalphaจอภาพของ xmessageเป็นตัวเลือกที่ดีสำหรับการแสดงข้อความ xdialogนอกจากนี้ยังมี หากคุณlibnotifyติดตั้งแล้วคุณสามารถใช้notify-sendเพื่อป๊อปอัพข้อความที่มุมของหน้าจอ:

ตัวอย่าง


ถูกxauthหรือxhostจำเป็นที่นี่มากเกินไป?
มิเคล

@Mikel ฉันไม่แน่ใจว่าระบบความปลอดภัยทำงานอย่างไรเมื่อผู้ใช้รายอื่นกำลังใช้งาน X ฉันคิดว่ามันดี ฉันเคยใช้xhostเพื่ออนุญาตการเชื่อมต่อระยะไกล แต่เขา SSHing ไปยังเครื่องโดยตรง
Michael Mrozek

ไม่เป็นไรถ้าคุณสามารถเข้าสู่ระบบในบัญชีเดียวกับที่เธอลงชื่อเข้าใช้ไม่เช่นนั้นคุณจะต้องจัดการกับ X access control
user7440

10

ดังที่Michael Mrozek อธิบายคุณสามารถเรียกใช้แอปพลิเคชั่น X ที่แสดงบนเดสก์ท็อปของภรรยาของคุณ สิ่งที่คุณต้องทำคือตั้งค่าDISPLAYตัวแปรสภาพแวดล้อมเป็นค่าที่ถูกต้อง (เกือบตลอดเวลา:0) …และรับสิทธิ์ด้วยตนเอง

โซลูชันนี้ต้องการให้คุณได้รับอนุญาตให้อ่านไฟล์ภรรยาของคุณ การเข้าถึงเซิร์ฟเวอร์ X ต้องใช้“ คุกกี้”รับรองความถูกต้องซึ่งเป็นรหัสผ่านที่สร้างแบบสุ่มเมื่อ X เริ่มต้นและเก็บไว้ในไฟล์ ไฟล์มักจะ~/.Xauthority; หากไม่เป็นเช่นนั้นจะต้องระบุในXAUTHORITYตัวแปรสภาพแวดล้อม ใน Ubuntu ด้วยการตั้งค่าเริ่มต้น (ใช้ Gdm) คุกกี้เซสชันของภรรยาของคุณไม่ได้อยู่ใน~wife/.Xauthorityแต่ในไฟล์ที่มีชื่อที่สร้างขึ้นโดยอัตโนมัติ ดูตัวแปรที่แสดง SSH ดูเพิ่มเติมที่รูทฉันจะเปิดโปรแกรมกราฟิกบนเดสก์ท็อปของผู้ใช้คนอื่นได้อย่างไร , ลินุกซ์: wmctrl สามารถแสดงผลได้เปิดเมื่อช่วงเริ่มต้นผ่านทางหน้าจอ + SSH

หากภรรยาของคุณเปิดเทอร์มินัลข้อความคุณสามารถใช้write ตามที่แนะนำโดยผู้ใช้ 7440เพื่อเขียนข้อความในเทอร์มินัลของเธอ ที่ต้องการให้เทอร์มินัลยอมรับการแจ้งเตือนดังกล่าว คุณสามารถเปิดและปิดด้วยmesg yหรือหรือmesg nและฉันไม่รู้ว่าสถานะเริ่มต้นคืออะไรในเทอร์มินัลอีมูเลเตอร์สมัยใหม่

กลไกที่ซับซ้อนมากขึ้นว่าเป็นwrite talkโปรโตคอลการพูดคุยเป็นบรรพบุรุษของโปรแกรมแชท คุณสามารถพูดคุยกับทุกคนในเครื่องที่ใช้เซิร์ฟเวอร์ทอล์คและไม่มีพอร์ต UDP 517 หรือ 518 (มีตัวแปรโปรโตคอลสองแบบ) ไม่ถูกกรอง ดังนั้นการติดตั้งtalkd ติดตั้ง talkd http://bit.ly/software-smallลูกค้าเช่นytalk ติดตั้ง ytalk http://bit.ly/software-smallytalk wifeและ นอกจากนี้ยังมีลูกค้า X, xtalk ติดตั้ง xtalk http://bit.ly/software-small เท่าที่ฉันรู้การพูดคุยก็หลุดออกจากเรดาร์ (ทุกคนที่ใส่ใจใช้หนึ่งในการแชทสมัยใหม่) และไม่มีองค์ประกอบของระบบที่จะสร้างการแจ้งเตือนของ KDE สำหรับการร้องขอการพูดคุย

ในขณะที่คุณพูดว่าคุณไม่สามารถเรียกใช้ไคลเอนต์ IM ใด ๆ ... ไคลเอนต์ IM บรรทัดคำสั่งที่ทำงานบนเครื่องที่บ้านของคุณที่เข้าถึงผ่าน SSH จะโอเคไหม มีดังกล่าวเช่นweechat ติดตั้ง weechat http://bit.ly/software-small คุณยังคงต้องพึ่งพาเซิร์ฟเวอร์บางตัวเพื่อเชื่อมต่อคุณกับภรรยาของคุณ แต่จะสามารถเข้าถึงได้จากเครื่องที่บ้านของคุณเท่านั้นไม่ใช่จากโทรศัพท์ของคุณ


finchเป็นเวอร์ชันบรรทัดคำสั่งของ pidgin
LawrenceC

4

หากเธอเปิดหน้าต่างเทอร์มินัล (ใช้ 'who' เพื่อค้นหา) คุณสามารถเขียนไปยังเทอร์มินัลนั้นโดยใช้ 'เขียน' สิ่งนี้จะไม่ทำงานกับเทอร์มินัลหลักเนื่องจาก KDE ซ่อนไว้ แต่หน้าต่างเทอร์มินัลใด ๆ ควรใช้งานได้ (หากอยู่บนเดสก์ท็อปปัจจุบันไม่ย่อเล็กสุดเธอกำลังดูอยู่ ... )


3

ฉันไม่แน่ใจ 100% การตั้งค่าDISPLAY=:0.0จะทำงาน ฉันคิดว่าคุณต้องการวิธีที่จะได้รับอนุญาตให้เชื่อมต่อกับเซิร์ฟเวอร์ X บนพีซีของภรรยาคุณ เครื่องมือในการทำที่มีxhostและxauthแต่พวกเขาดูเหมือนจะต้องการให้คุณมีการเข้าถึงไปยังเซิร์ฟเวอร์ X จึงสันนิษฐานเพียงภรรยาของคุณอาจจะเรียกพวกเขา (ปัญหาไก่และไข่)

หากไม่สามารถทำได้คุณอาจเริ่มต้นเซิร์ฟเวอร์ X ตัวที่สองเช่นใช้X :1หรืออาจchvtช่วยได้

ตัวอย่างเช่นบางสิ่งบางอย่าง

# X :1
# export DISPLAY=:1.0
# xmessage 'hello'

ดูเหมือนว่าจะทำงานบนระบบของฉันถ้าฉันเรียกใช้เป็นราก

X :1 เริ่มต้นใน vt7 บนระบบของฉันดังนั้นคุณจึงสามารถเรียกใช้

# chvt 7

เพื่อให้แน่ใจว่า X display เป็นสิ่งที่มองเห็นได้ในปัจจุบัน

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