WSL - GEDIT 无法初始化服务器:无法连接:连接被拒绝

WSL - GEDIT Unable to init server: Could not connect: Connection refused

我在 Windows 10 机器上使用 Ubuntu 18.04 作为 Windows 的 Linux 子系统。
我已经安装了 gedit,没有任何错误或警告。

但每当我尝试使用命令 gedit something(这里是文件名)
我收到此错误:

Unable to init server: Could not connect: Connection refused

(gedit:48): Gtk-WARNING **: 21:03:26.729: cannot open display:

这可能是因为您运行将其与 root 用户绑定。 运行 它作为非根用户。

(如果你不知道你是否运行以root身份登录它,请输入下面的命令,如果returns 0,则表示你是root用户,你必须登录到非根用户:id -u)

(如果你有 运行 sudo su 或类似的东西,这意味着你是 root 并且你必须使用 exit 返回!)

您需要一个 X 服务器才能 运行 像 gedit 这样的图形应用程序。 我在我的 Windows 桌面上使用 VcXsrv or Xming,两者都非常小且易于安装, 但还有其他服务器,如 Cygwin/X.

VcXsrv/Xming的简短说明:

  • 下载并安装 Windows 包
  • 启动 XLaunch 或 Xming
  • 在您的 WSL 终端中导出 DISPLAY 变量并启动 gedit

    export DISPLAY=0:0
    gedit
    

我的问题是 gedit 首选项中的某些复选框不起作用(dconf 错误,我不在乎),但除此之外编辑器可用。

相关:

解决这个问题

第 1 步 - 下载并安装此 Windows X 服务器 https://sourceforge.net/projects/vcxsrv/

第 2 步 - 打开 XLaunch

步骤 3- Select“全屏”选项

第 4 步 - 选择“不启动客户端”选项

第 5 步 - 只需执行下一步并完成

第 6 步 - 打开终端并输入:

export DISPLAY=0:0                                 
gedit filename

如果您的 Linux 机器可以使用主机名 = 'hostname' 并且您想要通过 ssh 进入主机名然后打开 gedit 然后执行以下命令:

  1. 在 ssh 服务器中启用 X11Forwarding
[hostname] $ vim /etc/ssh/sshd_config
             # and set X11Forwarding to yes
             X11Forwarding yes
  1. 在客户端中设置 DISPLAY 环境,然后使用 -X 标志设置 ssl
export DISPLAY=0:0
ssh -X yourusername@hostname
                                 
[hostname] $ gedit filename