日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

jtessboxeditorfx 界面显示不出来_macOS 使用 XQuartz 支持 X11 实现 Linux 图形化界面显示...

發(fā)布時間:2025/3/11 linux 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jtessboxeditorfx 界面显示不出来_macOS 使用 XQuartz 支持 X11 实现 Linux 图形化界面显示... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

更多奇技淫巧歡迎訂閱博客:https://fuckcloudnative.io

前言

在 Windows 中相信大家已經(jīng)很熟悉使用 Xmanager(Xshell), MobaXterm, SecureCRT 通過 X11 實現(xiàn) Linux 圖形化界面顯示,我的需求是在 macOS 下使用 iTerm2 作為 Terminal 實現(xiàn) X11 圖形化界面顯示,網(wǎng)上大部分教程只提到安裝 Xquartz 但并沒有結(jié)合實際問題給出完整的解決步驟,我把實踐過程做了詳細(xì)的記錄方便大家按照最簡單的步驟實現(xiàn) Linux 圖形化顯示效果。

1. X11 介紹

有些 Linux 服務(wù)器出于性能和效率的考慮,通常都是沒有安裝圖形化界面的,那么圖形化程序在服務(wù)器上壓根兒就跑不起來,或者無法直接顯示出來,這就很尷尬了!那么如何解決這個問題呢?可以基于 X11 Forwarding 技術(shù) + MobaXterm/Xshell/SecureCRT/XQuartz 等第三方工具,就可以輕松搞定,是不是很簡單?

X 協(xié)議

Linux 本身是沒有圖形化界面的,所謂的圖形化界面系統(tǒng)只不過中 Linux 下的應(yīng)用程序。這一點和 Windows 不一樣。Windows 從 Windows 95 開始,圖形界面就直接在系統(tǒng)內(nèi)核中實現(xiàn)了,是操作系統(tǒng)不可或缺的一部分。Linux 的圖形化界面,底層都是基于 X 協(xié)議。

X 協(xié)議由 X server 和 X client 組成:

  • X server 管理主機(jī)上與顯示相關(guān)的硬件設(shè)置(如顯卡、硬盤、鼠標(biāo)等),它負(fù)責(zé)屏幕畫面的繪制與顯示,以及將輸入設(shè)置(如鍵盤、鼠標(biāo))的動作告知 X client。
  • X client (即 X 應(yīng)用程序) 則主要負(fù)責(zé)事件的處理(即程序的邏輯)。

舉個例子,如果用戶點擊了鼠標(biāo)左鍵,因為鼠標(biāo)歸 X server 管理,于是 X server 就捕捉到了鼠標(biāo)點擊這個動作,然后它將這個動作告訴 X client,因為 X client 負(fù)責(zé)程序邏輯,于是 X client 就根據(jù)程序預(yù)先設(shè)定的邏輯(例如畫一個圓),告訴 X server 說:“請在鼠標(biāo)點擊的位置,畫一個圓”。最后,X server 就響應(yīng) X client 的請求,在鼠標(biāo)點擊的位置,繪制并顯示出一個圓。

X11 Forwarding

這么繞,有啥意義呢?當(dāng)然有!

許多時候 X server 和 X client 在同一臺主機(jī)上,這看起來沒什么。但是, X server 和 X client 完全可以運行在不同的機(jī)器上,只要彼此通過 X 協(xié)議通信即可。于是,我們就可以做一些 “神奇” 的事情,比如像本文開頭談到的,在本地顯示 (X server),運行在服務(wù)器上的 GUI 程序 (X client)。這樣的操作可以通過 SSH X11 Forwarding (轉(zhuǎn)發(fā)) 來實現(xiàn)。

X11 中的 X 指的就是 X 協(xié)議,11 指的是采用 X 協(xié)議的第 11 個版本。

2. macOS 實現(xiàn) X11 圖形化界面顯示

#?macOS?安裝?xquartz
brew?cask?install?xquartz

#?啟動?xquartz,實測?`Allow?connections?from?clients`?選項非必須條件
Run?Applications?>?Utilities?>?XQuartz.app

#?設(shè)置?DISPLAY?環(huán)境變量
export?DISPLAY=:0

#?沒有使用?xquartz?中?terminal?的話不會自動設(shè)置?DISPLAY?環(huán)境變量,可能會出現(xiàn)以下錯誤
[root@VM-2-11-centos?~]#?firefox
Failed?to?open?connection?to?"session"?message?bus:?Unable?to?autolaunch?a?dbus-daemon?without?a?$DISPLAY?for?X11
Running?without?a11y?support!
Error:?no?DISPLAY?environment?variable?specified

#?ssh?添加?-?Y?flag?登錄遠(yuǎn)程主機(jī)
ssh?-Y?user@host

#?登錄成功后可能出現(xiàn)以下錯誤,安裝?xauth?即可解決
ssh?-Y?root@192.168.117.148
X11?forwarding?request?failed?on?channel?0

#?遠(yuǎn)程主機(jī)安裝?xauth,以?centos?為例,使用?xclock?可以測試圖形化效果
yum?install?-y?xauth?xclock
xclock

#?如果需要瀏覽器支持安裝?firefox?或者?chrome?即可
yum?install?firefox
firefox

yum?install?https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
/usr/bin/google-chrome-stable?%U?--no-sandbox

3. FAQ

  • Why do I need to install Xquartz?

    From https://stackoverflow.com/a/50182736/6769366

    XQuartz is standard. It used to come bundled with the OS, but Apple removed it back around Mavericks.

  • Why do I have to add environment DISPLAY?

    Please see https://askubuntu.com/a/432257/745885[1]

  • Why do I have to use -Y instead of -X?

    I got the following error when trying to run a python script which draws some curves using matplotlib:

  • X?Error?of?failed?request:??BadAccess?(attempt?to?access?private?resource?denied)
    Major?opcode?of?failed?request:??18?(X_ChangeProperty)
    Serial?number?of?failed?request:??12
    Current?serial?number?in?output?stream:??15

    This problem is sovled when using -Y instead of -X. Haven’t got enough time to find exact explanation, just post a link for those who are curious:

    Can’t run “ssh -X” on MacOS Sierra[2]

  • How to fix X11 forwarding request failed on channel 0?

    Install X authority file utility

  • $?sudo?yum?install?xauth

    參考資料

    [1]

    https://askubuntu.com/a/432257/745885: https://askubuntu.com/a/432257/745885

    [2]

    Can’t run “ssh -X” on MacOS Sierra: https://stackoverflow.com/q/39622173/6769366

    原文鏈接:https://wsgzao.github.io/post/x11/

    你可能還喜歡

    點擊下方圖片即可閱讀

    在 k8s 中使用 Kubevirt 運行管理 Windows 10 操作系統(tǒng)

    云原生是一種信仰??

    碼關(guān)注公眾號

    后臺回復(fù)?k8s?獲取史上最方便快捷的 Kubernetes 高可用部署工具,只需一條命令,連 ssh 都不需要!

    點擊

    ??給個「在看」,是對我最大的支持??

    總結(jié)

    以上是生活随笔為你收集整理的jtessboxeditorfx 界面显示不出来_macOS 使用 XQuartz 支持 X11 实现 Linux 图形化界面显示...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。