Chạy phần mềm trên các máy Linux khác nhau với “xhost”

Trái ngược với việc sử dụng điển hình của các máy tính gia đình chạy Windows, trong môi trường Linux / Unix, làm việc "trên mạng" luôn là tiêu chuẩn, điều này giải thích cho các tính năng kết nối mạng mạnh mẽ của hệ điều hành Unix và Linux. Linux hỗ trợ kết nối nhanh chóng và ổn định với các máy tính khác và chạy giao diện người dùng đồ họa qua mạng. 

Lệnh chính để thực hiện các hoạt động mạng này là xhost - chương trình kiểm soát truy cập máy chủ cho X. xhost chương trình được sử dụng để thêm và xóa tên máy chủ (máy tính) hoặc tên người dùng vào danh sách máy và người dùng được phép kết nối với máy chủ X. Khuôn khổ này cung cấp một hình thức kiểm soát quyền riêng tư và bảo mật thô sơ.

Kịch bản sử dụng

Hãy gọi máy tính bạn đang ngồi là "localhost" và máy tính bạn muốn kết nối với "máy chủ từ xa." Lần đầu tiên bạn sử dụng xhost để chỉ định (các) máy tính bạn muốn cấp quyền kết nối với (máy chủ X của) máy chủ cục bộ. Sau đó, bạn kết nối với máy chủ từ xa bằng telnet. Tiếp theo, bạn đặt biến DISPLAY trên máy chủ từ xa. Bạn muốn đặt biến DISPLAY này thành máy chủ cục bộ. Bây giờ khi bạn khởi động một chương trình trên máy chủ từ xa, GUI của nó sẽ hiển thị trên máy chủ cục bộ (không phải trên máy chủ từ xa).

Trường hợp sử dụng mẫu

Giả sử địa chỉ IP của máy chủ cục bộ là 128.100.2.16 và địa chỉ IP của máy chủ từ xa là 17.200.10.5. Tùy thuộc vào mạng bạn đang sử dụng, bạn cũng có thể sử dụng tên máy tính (tên miền) thay vì địa chỉ IP.

  1.  Nhập nội dung sau vào dòng lệnh của localhost:

    xhost + 17.200.10.5

  2. Đăng nhập vào máy chủ từ xa:

    telnet 17.200.10.5

  3. Trên máy chủ từ xa (thông qua kết nối telnet), hướng dẫn máy chủ từ xa hiển thị các cửa sổ trên máy chủ cục bộ bằng cách nhập:

    setenv HIỂN THỊ 128.100.2.16:0.0

    (Thay vì setenv, bạn có thể phải sử dụng export trên một số shell nhất định.)

  4. Bây giờ bạn có thể chạy phần mềm trên máy chủ từ xa. Ví dụ: khi bạn nhập "xterm" trên máy chủ từ xa, bạn sẽ thấy cửa sổ xterm trên máy chủ cục bộ.

  5. Sau khi hoàn tất, bạn nên xóa máy chủ từ xa khỏi danh sách kiểm soát truy cập của mình như sau. Trên loại máy chủ cục bộ:

    xhost - 17.200.10.5

Tham khảo nhanh

Mô hình xhost lệnh chỉ chứa một số biến thể để giúp bạn kết nối mạng của mình:

  • xhost + tên máy chủ: Thêm tên máy chủ vào danh sách kiểm soát truy cập máy chủ X.
  • xhost - tên máy chủ: Xóa tên máy chủ khỏi danh sách kiểm soát truy cập máy chủ X.
  • xhost + : Tắt kiểm soát truy cập (tất cả các máy chủ từ xa sẽ có quyền truy cập vào máy chủ X)
  • xhost - : Bật lại kiểm soát truy cập.

Vì các bản phân phối Linux và mức phát hành hạt nhân khác nhau, hãy sử dụng người đàn ông lệnh (% man) để xem cách xhost được thực hiện trong môi trường máy tính cụ thể của bạn.