Score:0

X2Go และการใช้งานบรรทัดคำสั่ง?

ธง fr

ฉันเริ่มลองใช้ X2Go แทน VNC เพื่อควบคุมคอมพิวเตอร์ Ubuntu ของฉันแล้ว และแม้ว่าโดยทั่วไปจะใช้งานได้ แต่ฉันก็ยังคิดไม่ออกว่าจะทำอย่างไรกับสิ่งต่างๆ ตามรายการด้านล่าง

แต่ก่อนอื่น - ฉันใช้ Ubuntu 20.04 กับเดสก์ท็อป MATE บนพีซีทั้งสองเครื่องและใช้ sudo add-apt-repository ppa:x2go/stable (http://ppa.launchpad.net/x2go/stable/ubuntu). บนคอมพิวเตอร์ที่จะควบคุม (เซิร์ฟเวอร์) ฉันได้ติดตั้ง:

sudo apt ติดตั้ง x2goserver x2goserver-xsession
sudo apt ติดตั้ง x2godesktopsharing
sudo usermod -a -G x2godesktopsharing myuser

บนคอมพิวเตอร์ที่ควบคุม (ไคลเอนต์) ฉันได้ติดตั้ง:

sudo apt ติดตั้ง x2goclient
  1. บนเซิร์ฟเวอร์ ฉันได้รับเดสก์ท็อป "แอปเพล็ต" ซึ่งฉันสามารถเปิดหรือปิดใช้งานเซิร์ฟเวอร์ได้ ซึ่งฉันชอบมาก:

แอปเพล็ตเดสก์ท็อป x2go

อย่างไรก็ตาม สมมติว่าฉันลงชื่อเข้าใช้เซิร์ฟเวอร์ผ่าน ssh และเซิร์ฟเวอร์ x2go ได้ปิดใช้งานการแชร์เดสก์ท็อป คำถามของฉันคือ:

  • ฉันจะเปิดใช้งาน (และปิดใช้งาน) การแชร์เดสก์ท็อปในเซิร์ฟเวอร์ x2go จากบรรทัดคำสั่ง (ผ่าน ssh) ได้อย่างไร

ต่อไป ฉันสงสัยเกี่ยวกับไคลเอนต์และขนาดหน้าจอ - ให้ฉันอธิบายผ่านตัวอย่างด้วย VNC:

ถ้าฉันมีเซิร์ฟเวอร์ VNC บนเครื่องเซิร์ฟเวอร์ของฉัน (เช่น 192.168.0.100) บนพอร์ต 5900 ฉันสามารถเชื่อมต่อจากบรรทัดคำสั่งโดยใช้ เช่น ssvncviewer:

ssvncviewer 192.168.0.100

หากเซิร์ฟเวอร์ของฉันมีเดสก์ท็อปที่มีความละเอียดสูงกว่า (ขนาดพิกเซล เช่น 1920 x 1200) และไคลเอนต์ของฉันมีเดสก์ท็อปที่มีความละเอียดต่ำกว่า (ขนาดพิกเซล เช่น 800 x 600) คำสั่งด้านบนจะแสดง "ช่องตัด" ของ เดสก์ท็อปเซิร์ฟเวอร์ที่ไม่มีการปรับขนาด:

หน้าต่างคัตเอาต์ ssvncviewer

จากนั้น ถ้าฉันกด F9 เพื่อออก "เต็มหน้าจอ" เป็น SSVNC "คัตเอาต์" นี้จะใช้เต็มหน้าจอ - และเนื่องจากไม่มีการปรับขนาด ข้อความบนเดสก์ท็อปเซิร์ฟเวอร์จึงสามารถอ่านได้ แต่ฉันยังสามารถนำทางได้โดยการวาง ตัวชี้เมาส์ที่ขอบของหน้าจอ (บน, ล่าง, ซ้าย, ขวา) - จากนั้นทำการเลื่อนอัตโนมัติ (หรือเลื่อนอัตโนมัติ) โดย ssvncviewer.

ในทางกลับกัน ถ้าผมออก

ssvncviewer - ปรับขนาดอัตโนมัติ 192.168.0.100

... จากนั้นฉันจะได้รับเดสก์ท็อปแบบเต็ม (ขนาดใหญ่) ของเซิร์ฟเวอร์ที่ปรับขนาดให้พอดีกับหน้าต่างที่พอดีกับไคลเอนต์ - ดังนั้นฉันจึงสามารถสังเกตเดสก์ท็อปเซิร์ฟเวอร์ได้ครบถ้วน อย่างไรก็ตาม เนื่องจากการปรับขนาด ข้อความจึงไม่สามารถอ่านได้จริงๆ (หมายเหตุ ส่วนที่ด้านล่างของภาพหน้าจอเกิดจากการแคชเซิร์ฟเวอร์ VNC):

ปรับขนาด ssvncviewer

ฉันชอบที่สามารถสลับไปมาระหว่างโหมดการดูสองโหมดนี้ (คัตเอาต์ที่ไม่ได้ปรับขนาดเทียบกับการปรับขนาด) ... อย่างไรก็ตาม:

  1. ฉันไม่พบตัวเลือกสำหรับมุมมองที่ปรับขนาดและไม่ได้ปรับขนาดใน GUI ไคลเอนต์ X2Go นอกเหนือจากสิ่งเหล่านี้ (เซสชัน/การจัดการเซสชัน.../(เลือกเซสชัน)/การตั้งค่าเซสชัน/ อินพุต/เอาต์พุต):

การตั้งค่าไคลเอนต์ x2go

ดังนั้นหากฉันเชื่อมต่อผ่าน X2GoClient ด้วยขนาด "กำหนดเอง" ฉันจะได้ช่องตัด แต่อยู่กึ่งกลาง:

ลูกค้า x2go กำหนดเอง

... และฉันไม่สามารถหาวิธีแพน; ถ้าฉันตี CTRL+ALT+กะ+ฉันเข้าสู่โหมดเต็มหน้าจอ - แต่มันปรับขนาด (ข้อความที่อ่านไม่ได้); ถ้าฉันตี CTRL+ALT+กะ+ อีกครั้ง ฉันออกจากโหมดเต็มหน้าจอ แต่จากนั้นหน้าต่างไม่แสดงคัตเอาต์อีกต่อไป แต่แสดงมุมมองที่ปรับขนาดแทน:

ลูกค้า x2go ปรับขนาด

และแน่นอน ถ้าฉันเริ่มใช้แบบเต็มหน้าจอ ฉันก็จะได้มุมมองที่ปรับขนาดเสมอ

ดังนั้นคำถามของฉันคือ:

  • มีวิธีเริ่มต้นการเชื่อมต่อไคลเอนต์ X2Go จากบรรทัดคำสั่งหรือไม่ (เช่น ฉันสามารถเริ่มการเชื่อมต่อไคลเอนต์ VNC ด้วยพูด ssvncviewer 192.168.0.100)?
  • มีโหมด "คัตเอาต์" (นั่นคือไม่ได้ปรับขนาด) ในไคลเอ็นต์ X2Go ที่มีรูปแบบการแพนกล้องโต้ตอบบางรูปแบบหรือไม่ และถ้ามี ฉันจะเปิดใช้งานได้อย่างไร (ไม่ว่าจะผ่าน GUI หรือผ่านบรรทัดคำสั่ง)
Score:0
ธง fr

ในที่สุดฉันก็พบโพสต์นี้ในรายชื่อผู้รับจดหมาย ทางเลือกบรรทัดคำสั่งสำหรับ x2goclient-cliเห็นได้ชัดจากปี 2554:

หากฉันตีความการรับส่งอีเมลล่าสุด (และแผนการทำงานในวิกิ) ถูกต้อง x2goclient-cli เลิกใช้แล้วและจะไม่สามารถใช้งานได้อีกต่อไป พัฒนา เท่าที่ฉันเห็นตอนนี้มีสองทางเลือก การใช้ x2goclient-cli:

  • x2goclient (ไคลเอนต์ QT) พร้อมตัวเลือกบรรทัดคำสั่ง
  • pyhoca-cli.

ฉันพยายามค้นหาตัวเลือกบรรทัดคำสั่งของ x2goclientและฉันคิดไม่ออกจริงๆ ว่าจะเริ่มเซสชันโดยใช้สิ่งนั้นได้อย่างไร ...

ในทางกลับกัน ฉันพบว่า pyhoca-cli อยู่ในที่เก็บ Ubuntu:

... และฉันพบเอกสารเกี่ยวกับการใช้งาน:

ดังนั้นฉันได้ติดตั้งด้วย:

sudo apt ติดตั้ง pyhoca-cli

... และทำตามคำแนะนำ ฉันได้ลองสิ่งนี้แล้ว (เนื่องจากฉันได้ทำการเชื่อมต่อจาก x2goclient gui แล้ว ฉันจึงปล่อย --add-to-known-hosts จากตัวอย่างในหน้า); สิ่งแรกต้อง "แสดงรายการเดสก์ท็อป" นั่นคือรายการเซสชันเดสก์ท็อป (ดังนั้นคุณต้องสร้างการเชื่อมต่อจาก GUI ไคลเอนต์ X2Go อย่างน้อยหนึ่งครั้ง)

$ pyhoca-cli --server 192.168.0.100 --list-desktops --user myuser
pyhoca-cli[139077] ข้อสังเกต: กำลังเตรียมเซสชัน X2Go ที่ร้องขอ
...
รหัสผ่าน: 
pyhoca-cli[139077] (x2gocontrolsession-pylib) ประกาศ: กำลังเชื่อมต่อกับ [192.168.0.100]:22
pyhoca-cli[139077] (PyHocaCLI) ประกาศ: การรับรองความถูกต้องสำเร็จ

เดสก์ท็อป X2Go พร้อมสำหรับการแบ่งปัน
===================================
โฮสต์: 192.168.0.100 - [192.168.0.100]:22
ชื่อผู้ใช้: myuser

myuser@:0

จากด้านบน ฉันมีเซสชัน myuser@:0 - และนั่นคือสิ่งที่ฉันสามารถเชื่อมต่อได้:

$ pyhoca-cli --server 192.168.0.100 --share-desktop myuser@:0 --user myuser --share-mode 1
pyhoca-cli[139324] ประกาศ: กำลังเตรียมเซสชัน X2Go ที่ร้องขอ
...
pyhoca-cli[139324] (PyHocaCLI) ประกาศ: กำลังดำเนินการเข้าสู่ระบบแบบโต้ตอบสำหรับผู้ใช้ ,,myuser''
รหัสผ่าน: 
pyhoca-cli[139324] (x2gocontrolsession-pylib) ประกาศ: กำลังเชื่อมต่อกับ [192.168.0.100]:22
pyhoca-cli[139324] (PyHocaCLI) ประกาศ: การรับรองความถูกต้องสำเร็จ
pyhoca-cli[139324] (x2gosession-pylib) ข้อสังเกต: การใช้เซสชัน myuser-50-1639641479_stS1XSHADmyuserXSHADPP0_dp24 เป็นเซสชันหลักสำหรับโปรไฟล์ Pyhoca-Client_Session
pyhoca-cli[139324] (PyHocaCLI) ประกาศ: กด CTRL+C เพื่อสิ้นสุดการแชร์เดสก์ท็อปสำหรับเซสชันนี้...


^Cแป้นพิมพ์ขัดจังหวะ
2021-12-16T07:58:35Z
pyhoca-cli[139324] (x2gosession-pylib) คำเตือน: การแชร์โฟลเดอร์ในเครื่องถูกปิดใช้งานสำหรับโปรไฟล์เซสชันนี้
pyhoca-cli[139324] (x2gosession-pylib) คำเตือน: การแชร์โฟลเดอร์ในเครื่องถูกปิดใช้งานสำหรับโปรไฟล์เซสชันนี้
pyhoca-cli[139324] (x2goterminalsession-pylib) ประกาศ: ล้างเซสชัน myuser-50-1639641479_stS1XSHADmyuserXSHADPP0_dp24 หลังจากสิ้นสุด
pyhoca-cli[139324] (PyHocaCLI) ประกาศ: เซสชัน X2Go myuser-50-1639641479_stS1XSHADmyuserXSHADPP0_dp24 ถูกยกเลิกแล้ว

ใช้งานได้ - โปรดทราบว่า:

  • ฉันเคยมีประสบการณ์ว่า --share-เดสก์ท็อป คำสั่งอาจล้มเหลวในการเชื่อมต่อ ในกรณีนั้นฉันต้องหยุด pyhoca-cli; จากนั้นเริ่มไคลเอนต์ X2Go ในโหมด GUI และเชื่อมต่อครั้งเดียว (สำเร็จ) จากที่นั่น หลังจากนั้น --share-เดสก์ท็อป เริ่มทำงานอีกครั้ง
  • เดอะ --share-เดสก์ท็อป คำสั่งเปิดช่องเจาะตรงกลางอีกครั้งตามที่อธิบายไว้ใน OP - ซึ่งต้องใช้การปรับขนาดเต็มหน้าจอ และการปรับขนาดจะยังคงอยู่เมื่อออกจากโหมดเต็มหน้าจอ

นั่นเป็นสิ่งที่ดี - ตอนนี้แค่ต้องคิดให้ออก:

  • วิธีเปิดใช้งาน/เปิดใช้งานเซิร์ฟเวอร์ X2Go จากบรรทัดคำสั่งผ่าน ssh
  • จะระบุได้อย่างไรว่าฉันต้องการ "คัตเอาต์" แบบไม่ปรับขนาดในโหมดเต็มหน้าจอพร้อมการแพนกล้องอัตโนมัติ (เลื่อนตัวชี้เมาส์ไปที่ขอบบน/ล่าง/ขวา/ซ้ายของหน้าจอ)

แก้ไข: ค้นพบสิ่งต่อไปนี้: ตัวอย่างด้านบนทำด้วย (ฉันคิดว่า) X2GOClient GUI/Session Preferences/Session Type "X2Go/X11 Desktop Sharing" ขับเคลื่อนโดย ไคลเอนต์ Windows x2go แสดงด้วยความละเอียดที่ไม่ถูกต้อง,

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

สิ่งที่ฉันไม่สามารถบอกได้ในขณะนี้คือนี่เป็นสำเนาของเดสก์ท็อปที่ใช้งานอยู่จริงหรือไม่ หรือเป็นเซสชันใหม่สำหรับผู้ใช้รายเดิม (อาจใหม่ pyhoca-cli --list-desktops -- เซิร์ฟเวอร์ 192.168.0.100 หลังจากนั้นแสดงสองช่วงแทนที่จะเป็นหนึ่ง); อย่างน้อยสำหรับบางโปรแกรมที่ฉันใช้ ซึ่งไม่สำคัญ ดังนั้นสิ่งนี้จึงแก้ไขความละเอียดที่อ่านไม่ได้สำหรับฉัน (อย่างน้อยก็ในบางส่วนสำหรับตอนนี้) โปรดทราบว่าเมื่อคุณปิดการเชื่อมต่อ X2GoClient GUI - เมื่อคุณเปิดการตั้งค่าเซสชัน/ประเภทเซสชันในครั้งถัดไป (ดังที่กล่าวไว้ในโพสต์ที่เชื่อมโยง):

เปลี่ยนเป็น "เดสก์ท็อปที่กำหนดเอง" โดยอัตโนมัติด้วยคำสั่ง "MATE"

ฉันเดาว่าสิ่งที่เทียบเท่ากับสิ่งนี้ในบรรทัดคำสั่งคือการสร้างเซสชันใหม่:

pyhoca-cli -- เซิร์ฟเวอร์ 192.168.0.100 -- ชื่อผู้ใช้ myuser -- ใหม่ -- คำสั่ง MATE

... และเมื่อมีการสร้างเซสชันใหม่ หลังจากที่คุณปิดหน้าต่าง (โปรดทราบว่าหากคุณกด CTRL+ บน pyhoca-cli` มันจะปิดหน้าต่างด้วย และไม่ลบเซสชัน แต่จะระงับเซสชันแทน) และต้องการเชื่อมต่อใหม่อีกครั้ง คุณไม่จำเป็นต้องสร้างเซสชันใหม่อีก ก่อนอื่นให้ยืนยันว่ามีเซสชันอยู่กับ:

pyhoca-cli --ชื่อผู้ใช้ myuser --list-sessions --server 192.168.0.100

... หรืออีกทางหนึ่ง แสดงรายการเดสก์ท็อป:

pyhoca-cli --ชื่อผู้ใช้ myuser --list-desktops --เซิร์ฟเวอร์ 192.168.0.100

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

pyhoca-cli --username myuser --server 192.168.0.100 --resume ใหม่ล่าสุด

...หรือมากกว่านั้น คุณทำได้ ถ้าไม่มีบั๊กนี้ #1445 - pyhoca-cli ล้มเหลวในการเชื่อมต่อกับเซสชัน x2go ที่ถูกระงับ - บันทึกรายงาน X2Go Bugซึ่งเห็นได้ชัดว่าได้รับการแก้ไขใน pyhoca-cli 0.6.1.3 อย่างไรก็ตาม Ubuntu 20.04 ของฉันยังคงมี 0.6.1.2

และสุดท้าย หากต้องการทำลาย/ฆ่า/ลบเซสชัน ให้ใช้ --ยุติ (ซึ่งยอมรับทั้งหมดด้วย):

pyhoca-cli --ชื่อผู้ใช้ myuser --เซิร์ฟเวอร์ 192.168.0.100 --ยุติทั้งหมด
fr flag
นอกจากนี้ยังมีแป้นพิมพ์ลัดสำหรับการแพนกล้อง แต่ไม่สามารถใช้งานได้: https://wiki.x2go.org/doku.php/doc:usage:x2goclient -> https://wiki.x2go.org/doku.php/ วิกิ:ขั้นสูง:nx-แป้นพิมพ์ลัด ; https://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=1339 ;

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา