Điểm:0

X2Go và sử dụng dòng lệnh?

lá cờ fr

Tôi đã bắt đầu dùng thử X2Go thay vì VNC để kiểm soát các PC chạy Ubuntu của mình - và mặc dù nó thường hoạt động, nhưng tôi hoàn toàn không thể tìm ra cách thực hiện những việc được liệt kê bên dưới.

Nhưng trước tiên - tôi đang sử dụng Ubuntu 20.04 với máy tính để bàn MATE trên cả hai PC và đang sử dụng Sudo add-apt-repository ppa:x2go/stable (http://ppa.launchpad.net/x2go/stable/ubuntu). Trên máy tính được điều khiển (máy chủ), tôi đã cài đặt:

sudo apt cài đặt x2goserver x2goserver-xsession
sudo apt cài đặt x2godesktopshare
sudo usermod -a -G x2godesktopshared myuser

Trên máy tính đang điều khiển (máy khách), tôi đã cài đặt:

sudo apt cài đặt x2goclient
  1. Trên máy chủ, tôi thực sự nhận được một "applet" trên máy tính để bàn, nơi tôi có thể bật hoặc tắt máy chủ, điều mà tôi khá thích:

ứng dụng máy tính để bàn x2go

Tuy nhiên, giả sử tôi đăng nhập vào máy chủ qua ssh và máy chủ x2go đã tắt tính năng chia sẻ máy tính để bàn. Câu hỏi của tôi là, sau đó:

  • Làm cách nào để kích hoạt (và hủy kích hoạt) chia sẻ máy tính để bàn trong máy chủ x2go từ dòng lệnh (qua ssh)?

Tiếp theo, tôi thắc mắc về ứng dụng khách và kích thước màn hình - hãy để tôi minh họa qua một ví dụ với VNC:

Nếu tôi có máy chủ VNC trên máy chủ của mình (giả sử 192.168.0.100) trên cổng 5900, tôi có thể kết nối với nó từ dòng lệnh bằng cách sử dụng, chẳng hạn như ssvncviewer:

ssvncviewer 192.168.0.100

Nếu máy chủ của tôi có màn hình nền với độ phân giải lớn hơn (kích thước pixel, chẳng hạn như 1920 x 1200) và máy khách của tôi có màn hình nền với độ phân giải thấp hơn (kích thước pixel, chẳng hạn như 800 x 600), thì lệnh trên sẽ hiển thị "phần bị cắt" của máy tính để bàn máy chủ mà không mở rộng quy mô:

cửa sổ cắt ssvncviewer

Sau đó, nếu tôi nhấn F9 để cấp "Toàn màn hình" cho SVNC, thì phần "cắt bỏ" này sẽ chiếm toàn màn hình - và vì không có tỷ lệ, văn bản trên màn hình máy chủ có thể đọc được, nhưng tôi vẫn có thể điều hướng, bằng cách đặt con trỏ chuột ở các cạnh của màn hình (trên, dưới, trái, phải) - và sau đó tự động cuộn (hoặc tự động quét) được thực hiện bởi ssvncviewer.

Mặt khác, nếu tôi phát hành

ssvncviewer -tỷ lệ tự động 192.168.0.100

... sau đó tôi lấy toàn bộ màn hình nền (lớn) của máy chủ được chia tỷ lệ thành cửa sổ có thể vừa với máy khách - vì vậy tôi có thể quan sát toàn bộ màn hình máy chủ; tuy nhiên do mở rộng quy mô, văn bản không thực sự đọc được (lưu ý, các tạo phẩm ở dưới cùng của ảnh chụp màn hình là do bộ nhớ đệm của máy chủ VNC):

ssvncviewer được thu nhỏ

Chà - tôi thực sự thích có thể chuyển đổi giữa hai chế độ xem này (cắt bỏ không chia tỷ lệ so với chia tỷ lệ)... tuy nhiên:

  1. Tôi thực sự không thể tìm thấy các tùy chọn cho chế độ xem được chia tỷ lệ và không theo tỷ lệ trong GUI máy khách X2Go, ngoài các tùy chọn này (Phiên/Quản lý phiên.../(chọn phiên)/Tùy chọn phiên/Đầu vào/Đầu ra):

tùy chọn khách hàng x2go

Vì vậy, nếu tôi kết nối qua X2GoClient với kích thước "Tùy chỉnh", tôi sẽ bị cắt bỏ, nhưng được căn giữa:

khách hàng tùy chỉnh x2go

... và tôi không thể tìm ra cách nào để xoay; nếu sau đó tôi đánh ĐIỀU KHIỂN+ALT+SỰ THAY ĐỔI+F, tôi chuyển sang chế độ toàn màn hình - nhưng nó bị thu nhỏ (văn bản không thể đọc được); nếu tôi đánh ĐIỀU KHIỂN+ALT+SỰ THAY ĐỔI+F một lần nữa, tôi thoát khỏi chế độ toàn màn hình, nhưng sau đó cửa sổ không hiển thị phần bị cắt nữa mà thay vào đó là chế độ xem được chia tỷ lệ:

ứng dụng khách x2go được chia tỷ lệ

Và tất nhiên, nếu tôi bắt đầu ở chế độ Toàn màn hình, thì tôi luôn nhận được chế độ xem theo tỷ lệ.

Vì vậy, câu hỏi của tôi ở đây là:

  • Có cách nào để bắt đầu kết nối máy khách X2Go từ dòng lệnh (chẳng hạn như tôi có thể bắt đầu kết nối máy khách VNC bằng ssvncviewer 192.168.0.100)?
  • Có chế độ "cutout" (nghĩa là không chia tỷ lệ) trong ứng dụng khách X2Go với một số dạng xoay tương tác không và nếu có, làm cách nào tôi có thể kích hoạt nó (thông qua GUI hoặc thông qua dòng lệnh)?
Điểm:0
lá cờ fr

Cuối cùng tôi đã tìm thấy bài đăng này trên một danh sách gửi thư, Các lựa chọn thay thế dòng lệnh cho x2goclient-cli, rõ ràng là từ năm 2011:

Nếu tôi đã giải thích lưu lượng thư gần đây (và lộ trình trong wiki) chính xác, x2goclient-cli không được dùng nữa và sẽ không còn hoạt động nữa phát triển. Theo như tôi có thể thấy hiện tại có hai lựa chọn thay thế để sử dụng x2goclient-cli:

  • x2goclient (máy khách QT) với các tùy chọn dòng lệnh.
  • pyhoca-cli.

Tôi đã thử xem xét các tùy chọn dòng lệnh của x2goclientvà tôi thực sự không thể tìm ra cách bắt đầu phiên sử dụng ...

Mặt khác, tôi thấy rằng pyhoca-cli có trong kho Ubuntu:

... và tôi đã tìm thấy một tài liệu về cách sử dụng nó:

Vì vậy, tôi đã cài đặt nó với:

sudo apt cài đặt pyhoca-cli

... và làm theo hướng dẫn, tôi đã thử cái này (vì tôi đã tạo kết nối từ gui x2goclient, tôi bỏ --add-to-known-hosts từ các ví dụ trong trang); người đầu tiên cần "liệt kê máy tính để bàn", tức là liệt kê các phiên máy tính để bàn (vì vậy bạn cần ít nhất một lần thiết lập kết nối từ GUI máy khách X2Go)

$ pyhoca-cli --server 192.168.0.100 --list-desktops --user myuser
pyhoca-cli[139077] THÔNG BÁO: chuẩn bị phiên X2Go được yêu cầu
...
Mật khẩu: 
pyhoca-cli[139077] (x2gocontrolsession-pylib) THÔNG BÁO: kết nối với [192.168.0.100]:22
pyhoca-cli[139077] (PyHocaCLI) THÔNG BÁO: xác thực đã thành công

Máy tính để bàn X2Go có sẵn để chia sẻ
===================================
Máy chủ: 192.168.0.100 - [192.168.0.100]:22
Tên người dùng: myuser

myuser@:0

Vì vậy, từ trên, tôi có phiên myuser@:0 - và đó là những gì tôi có thể kết nối với:

$ pyhoca-cli --server 192.168.0.100 --share-desktop myuser@:0 --user myuser --share-mode 1
pyhoca-cli[139324] THÔNG BÁO: chuẩn bị phiên X2Go được yêu cầu
...
pyhoca-cli[139324] (PyHocaCLI) THÔNG BÁO: tiến hành đăng nhập tương tác cho người dùng ,,myuser''
Mật khẩu: 
pyhoca-cli[139324] (x2gocontrolsession-pylib) THÔNG BÁO: kết nối với [192.168.0.100]:22
pyhoca-cli[139324] (PyHocaCLI) THÔNG BÁO: xác thực đã thành công
pyhoca-cli[139324] (x2gosession-pylib) THÔNG BÁO: Sử dụng phiên myuser-50-1639641479_stS1XSHADmyuserXSHADPP0_dp24 làm phiên chính cho hồ sơ Pyhoca-Client_Session.
pyhoca-cli[139324] (PyHocaCLI) THÔNG BÁO: Nhấn CTRL+C để kết thúc chia sẻ màn hình cho phiên này...


^CKeyboardInterrupt
2021-12-16T07:58:35Z
pyhoca-cli[139324] (x2gosession-pylib) CẢNH BÁO: tính năng chia sẻ thư mục cục bộ bị tắt cho cấu hình phiên này
pyhoca-cli[139324] (x2gosession-pylib) CẢNH BÁO: tính năng chia sẻ thư mục cục bộ bị tắt cho cấu hình phiên này
pyhoca-cli[139324] (x2goterminalsession-pylib) THÔNG BÁO: dọn dẹp phiên myuser-50-1639641479_stS1XSHADmyuserXSHADPP0_dp24 sau khi chấm dứt
pyhoca-cli[139324] (PyHocaCLI) THÔNG BÁO: Phiên X2Go myuser-50-1639641479_stS1XSHADmyuserXSHADPP0_dp24 đã bị chấm dứt

Vì vậy, nó hoạt động - lưu ý rằng:

  • Tôi đã trải nghiệm rằng --share-máy tính để bàn lệnh có thể không kết nối được; trong trường hợp đó, tôi đã phải dừng lại pyhoca-cli; sau đó khởi động máy khách X2Go ở chế độ GUI và kết nối một lần (thành công) từ đó; sau tất cả --share-máy tính để bàn bắt đầu làm việc trở lại
  • Các --share-máy tính để bàn lệnh một lần nữa sẽ mở một phần bị cắt ở giữa như được mô tả trong OP - sau đó yêu cầu toàn màn hình được chia tỷ lệ và tỷ lệ được giữ lại sau khi thoát toàn màn hình

Vì vậy, điều đó thật tuyệt - bây giờ chỉ cần tìm ra:

  • Cách bật/kích hoạt máy chủ X2Go từ dòng lệnh qua ssh
  • Làm cách nào để xác định rằng tôi muốn có một "phần cắt" không chia tỷ lệ ở chế độ toàn màn hình, với tính năng xoay tự động (thông qua con trỏ chuột được di chuyển về phía các cạnh trên/dưới/phải/trái của màn hình).

CHỈNH SỬA: Đã phát hiện ra những điều sau: các ví dụ trên đã được thực hiện với (tôi nghĩ) GUI X2GOClient/Tùy chọn phiên/Loại phiên "Chia sẻ màn hình X2Go/X11". thúc đẩy bởi Máy khách Windows x2go hiển thị ở độ phân giải không chính xác,

Tôi đã cố gắng thay đổi Loại phiên thành "MATE" (là môi trường máy tính để bàn mà tôi sử dụng trên cả máy chủ và máy khách và được hiển thị trong ảnh chụp màn hình ở trên).Với điều này, một cửa sổ mở ra được chia tỷ lệ theo kích thước khả dụng tối đa ở độ phân giải màn hình của máy khách và bên trong, tôi nhận được màn hình máy khách được hiển thị ở kích thước pixel chính xác, bắt đầu từ cạnh trên cùng bên trái (và thanh trên cùng được chia tỷ lệ theo kích thước của cửa sổ này) - và vì vậy tôi có thể chạy các chương trình và xem những gì đang diễn ra.

Điều tôi không thể nói vào lúc này là liệu đây có phải là bản sao của máy tính để bàn thực sự đang chạy hay đây là phiên mới cho cùng một người dùng (có thể là mới, pyhoca-cli --list-desktops --server 192.168.0.100 sau đó liệt kê hai phiên thay vì một); ít nhất, đối với một số chương trình tôi sử dụng, điều đó không thành vấn đề, vì vậy điều này đã giải quyết được độ phân giải không thể đọc được đối với tôi (ít nhất là một phần cho đến bây giờ). Cũng xin lưu ý rằng khi bạn đóng kết nối GUI X2GoClient - khi bạn mở Tùy chọn phiên/Loại phiên vào lần tới, nó (như đã nói trong bài đăng được liên kết):

tự động thay đổi thành "Màn hình tùy chỉnh" bằng lệnh "MATE"

Tôi đoán, tương đương với điều này trên dòng lệnh là tạo một phiên mới:

pyhoca-cli --server 192.168.0.100 --username myuser --new --command MATE

... và khi một phiên mới được tạo, sau khi bạn đóng cửa sổ (cũng lưu ý rằng nếu bạn nhấn ĐIỀU KHIỂN+C còn trên pyhoca-cli` thì nó cũng đóng cửa sổ, và nó không xóa session mà tạm dừng session) muốn connect lại thì không cần tạo lại session mới. Đầu tiên xác nhận có một phiên hiện có với:

pyhoca-cli --username myuser --list-sessions --server 192.168.0.100

... hoặc cách khác, liệt kê các máy tính để bàn:

pyhoca-cli --username myuser --list-desktops --server 192.168.0.100

... và sau đó, bạn có thể tiếp tục phiên thay thế (lưu ý rằng tên phiên là bắt buộc, không phải tên máy tính để bàn; nhưng cũng có thể sử dụng tên phiên CŨ NHẤT và MỚI NHẤT):

pyhoca-cli --username myuser --server 192.168.0.100 --resume MỚI NHẤT

... hay đúng hơn, bạn có thể, nếu không có lỗi này #1445 - pyhoca-cli không kết nối được với phiên x2go bị treo - Nhật ký báo cáo lỗi X2Go, dường như đã được sửa trong pyhoca-cli 0.6.1.3, tuy nhiên Ubuntu 20.04 của tôi vẫn có 0.6.1.2.

Và cuối cùng, để hủy/giết/xóa một phiên, hãy sử dụng --chấm dứt (cũng chấp nhận TẤT CẢ):

pyhoca-cli --username myuser --server 192.168.0.100 --terminate TẤT CẢ
lá cờ fr
Ngoài ra còn có các phím tắt để xoay, nhưng không thể làm cho chúng hoạt động: https://wiki.x2go.org/doku.php/doc:usage:x2goclient -> https://wiki.x2go.org/doku.php/ wiki:advanced:nx-keyboard-shortcuts ; https://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=1339;

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.