เรียกใช้ซอฟต์แวร์บนเครื่อง Linux ที่แตกต่างกันด้วย “xhost”

ตรงกันข้ามกับการใช้คอมพิวเตอร์ในบ้านที่ใช้ Windows โดยทั่วไปในสภาพแวดล้อม Linux / Unix การทำงาน "บนเครือข่าย" ถือเป็นบรรทัดฐานมาโดยตลอดซึ่งจะอธิบายถึงคุณลักษณะระบบเครือข่ายที่มีประสิทธิภาพของระบบปฏิบัติการ Unix และ Linux Linux รองรับการเชื่อมต่อที่รวดเร็วและเสถียรกับคอมพิวเตอร์เครื่องอื่น ๆ และการใช้งานส่วนต่อประสานผู้ใช้แบบกราฟิกผ่านเครือข่าย 

คำสั่งหลักสำหรับดำเนินกิจกรรมเครือข่ายเหล่านี้คือ xhost - โปรแกรมควบคุมการเข้าถึงเซิร์ฟเวอร์สำหรับ X. xhost โปรแกรมใช้เพื่อเพิ่มและลบชื่อโฮสต์ (คอมพิวเตอร์) หรือชื่อผู้ใช้ในรายการเครื่องและผู้ใช้ที่ได้รับอนุญาตให้ทำการเชื่อมต่อกับเซิร์ฟเวอร์ X กรอบนี้จัดเตรียมรูปแบบพื้นฐานของการควบคุมความเป็นส่วนตัวและความปลอดภัย


สถานการณ์การใช้งาน

ลองเรียกคอมพิวเตอร์ที่คุณนั่งอยู่ที่ "localhost" และคอมพิวเตอร์ที่คุณต้องการเชื่อมต่อกับ "โฮสต์ระยะไกล" คุณใช้ครั้งแรก xhost เพื่อระบุคอมพิวเตอร์ที่คุณต้องการให้สิทธิ์ในการเชื่อมต่อกับ (X-server ของ) localhost จากนั้นคุณเชื่อมต่อกับโฮสต์ระยะไกลโดยใช้ telnet ถัดไปคุณตั้งค่าตัวแปร DISPLAY บนโฮสต์ระยะไกล คุณต้องการตั้งค่าตัวแปร DISPLAY นี้เป็นโลคัลโฮสต์ ตอนนี้เมื่อคุณเริ่มโปรแกรมบนโฮสต์ระยะไกล GUI ของมันจะปรากฏบนโลคัลโฮสต์ (ไม่ใช่บนโฮสต์ระยะไกล)


ตัวอย่างการใช้งานกรณี

สมมติว่าที่อยู่ IP ของโลคัลโฮสต์คือ 128.100.2.16 และที่อยู่ IP ของโฮสต์ระยะไกลคือ 17.200.10.5 คุณอาจสามารถใช้ชื่อคอมพิวเตอร์ (ชื่อโดเมน) แทนที่อยู่ IP ได้ทั้งนี้ขึ้นอยู่กับเครือข่ายที่คุณใช้งานอยู่

  1.  พิมพ์คำสั่งต่อไปนี้ที่บรรทัดคำสั่งของ localhost:

    xhost + 17.200.10.5

  2. เข้าสู่ระบบโฮสต์ระยะไกล:

    telnet 17.200.10.5

  3. บนโฮสต์ระยะไกล (ผ่านการเชื่อมต่อเทลเน็ต) สั่งให้โฮสต์ระยะไกลแสดงหน้าต่างบนโลคัลโฮสต์โดยพิมพ์:

    setenv DISPLAY 128.100.2.16:0.0

    (แทนที่จะใช้ setenv คุณอาจต้องใช้ export กับเชลล์บางตัว)

  4. ตอนนี้คุณสามารถเรียกใช้ซอฟต์แวร์บนโฮสต์ระยะไกลได้แล้ว ตัวอย่างเช่นเมื่อคุณพิมพ์ "xterm" บนโฮสต์ระยะไกลคุณควรเห็นหน้าต่าง xterm บนโลคัลโฮสต์

  5. หลังจากเสร็จสิ้นคุณควรลบโฮสต์ระยะไกลออกจากรายการควบคุมการเข้าถึงของคุณดังนี้ ในประเภทโฮสต์ภายใน:

    xhost - 17.200.10.5


อ้างอิงด่วน

แพทเทิร์น xhost คำสั่งมีเพียงไม่กี่รูปแบบที่จะช่วยคุณในการสร้างเครือข่าย:

  • xhost + ชื่อโฮสต์: เพิ่มชื่อโฮสต์ในรายการควบคุมการเข้าถึงเซิร์ฟเวอร์ X
  • xhost - ชื่อโฮสต์: ลบชื่อโฮสต์ออกจากรายการควบคุมการเข้าถึงเซิร์ฟเวอร์ X
  • xhost + : ปิดการควบคุมการเข้าถึง (โฮสต์ระยะไกลทั้งหมดจะสามารถเข้าถึงเซิร์ฟเวอร์ X ได้)
  • xhost - : เปิดการควบคุมการเข้าถึงอีกครั้ง

เนื่องจากการกระจาย Linux และระดับการเผยแพร่เคอร์เนลแตกต่างกันให้ใช้ไฟล์ มนุษย์ คำสั่ง (% man) เพื่อดูว่า xhost ถูกนำไปใช้ในสภาพแวดล้อมคอมพิวเตอร์ของคุณโดยเฉพาะ