V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
orangie
V2EX  ›  程序员

感觉 JetBrains 不用开发 Fleet 了,大力宣传通过 X11 forwarding 远程使用 IDE 多好啊,这也太好用了吧

  •  
  •   orangie · 2022-12-09 20:58:05 +08:00 · 6700 次点击
    这是一个创建于 697 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天心血来潮想了解一下 X11 forwarding 这项远程桌面技术,类似于 Windows 远程桌面的 Remote App 。 成功连接之后突然意识到可以用 X11 forwarding 远程使用 Linux 服务器上的 PyCharm 。体验几乎与在本地使用一模一样。服务器几百 GB 的内存和超多核心 CPU 让 PyCharm 在索引文件的时候表现出了从未有过的快速,毫不卡顿。

    唯一的不足之处是不能复制粘贴文件和文件夹,但是至少还可以共享剪贴板的文本。

    之前为了远程开发比较了两个方案,感觉 VS Code 的 SSH Remote 方式比 JetBrains 的 SSH 远程做的好,但是 VS Code 的类型检查、自动补全始终和 JetBrains 的不在一个档次上,更别提开箱即用的体验。现在用 X11 forwarding 感觉终于可以放弃 VS Code Remote 了,或许留着 VS Code 用来传输文件吧,比 SFTP 工具方便。

    如果 JetBrains 的 Fleet 能够做到 PyCharm 的体验,同时像 VS Code 一样不用维护一个本地代码库和远程代码库的同步,那是最棒的,但是现在还没有做到。
    39 条回复    2022-12-20 19:20:21 +08:00
    edis0n0
        1
    edis0n0  
       2022-12-09 21:00:07 +08:00
    一大堆 bug ,例如高分屏每隔一段时间就会非常模糊,必须缩小窗口后再放大才能恢复,至今不支持从模板建项目
    edis0n0
        2
    edis0n0  
       2022-12-09 21:00:44 +08:00
    fleet 的 UI 空间利用率太低了,也不太喜欢
    seakingii
        3
    seakingii  
       2022-12-09 21:11:07 +08:00   ❤️ 1
    这根本是两回事好吗?
    你说的是远程开发,Fleet 是为了"轻量级 IDE",用来对标 vscode,抢占 vscode 的用户
    另外 x11 forwarding 是 linux 的技术,你用 WINDOWS 当主机的怎么搞
    程序员不讲讲逻辑的吗?
    opentrade
        4
    opentrade  
       2022-12-09 21:16:13 +08:00   ❤️ 1
    "X11 forwarding"也值得夸?
    sparky
        5
    sparky  
       2022-12-09 21:17:01 +08:00 via Android
    直接装个 Ubuntu 桌面系统使用 linux 版 ide 应该体验更好
    P0P
        6
    P0P  
       2022-12-09 21:17:24 +08:00
    先不提 X11 forwarding 的安全性问题,vscode 是可以配置到跟 clion/pycharm 一样的体验的。
    tinkerer
        7
    tinkerer  
       2022-12-09 21:17:38 +08:00
    还 X11 呢? wayland 已经要上高地了。
    tcfenix
        8
    tcfenix  
       2022-12-09 21:21:37 +08:00
    @P0P 就如果需要通过配置到跟 clion 一样的时候...可能已经落后一步了...
    daveh
        9
    daveh  
       2022-12-09 21:29:37 +08:00 via iPhone
    用 X11 还不如用 Projector ,或者上 xrdp 远程桌面。
    orangie
        10
    orangie  
    OP
       2022-12-09 21:35:18 +08:00
    X11 比较普及呀,我们的服务器上账户权限受限的情况下不需任何配置在 ubuntu2018 的机器上就能 X11 ,原址桌面 RDP 、VNC 不像 X11 只显示窗口,wayland 还没试过,准备试试看我们的服务器上能用不。
    daveh
        11
    daveh  
       2022-12-09 21:38:02 +08:00 via iPhone
    @orangie 可以用 Gateway ,有些 BUG 但应该不影响基本的使用。
    orangie
        12
    orangie  
    OP
       2022-12-09 21:44:00 +08:00
    再补充一点,我们的服务器在防火墙后边,只允许使用经过网关转发的 SSH 协议,没有 VNC 、RDP 端口,普通用户没有 root 权限,也就是一句话:只有 SSH 协议能用。所以就没考虑 VNC 、RDP 这样的,而是用通过 SSH 隧道的 X11 forwarding 。
    zwlinc
        13
    zwlinc  
       2022-12-09 21:45:45 +08:00
    说实话用过一阵子 x11 转发,bug 很多,输入法什么的。用 VS Code Remote 很久了,在我看来几乎和本地开发没什么区别了。
    orangie
        14
    orangie  
    OP
       2022-12-09 22:11:13 +08:00
    @tinkerer 大哥,你搜搜 wayland 远程教程再夸呀,我 Google 搜不到 wayland 的 ssh 转发教程,想试试都没法子,搜到的上来就是各种装软件包,vnc 、xrdp 啥的,还是基于 ubuntu 2022 装的包,没权限啊。而且 V2 上 2021 年的贴在还在说 wayland 处于初期 t/854677 。X11 啥都不用配置,直接在 Windows 电脑上用 Xming 就完事了。


    @daveh 试了一下,确实不错。除了打开项目的操作和被当地不同,其他几乎完美,而且还解决了中文输入法问题,虽然写代码的时候中文写的少。
    tinkerer
        15
    tinkerer  
       2022-12-09 23:16:17 +08:00
    @orangie 我的意思是 X11 的未来不是很明朗, Ubuntu 21.04 后默认使用 wayland
    xuanbg
        16
    xuanbg  
       2022-12-10 07:56:49 +08:00
    服务器上面居然有安装图形界面的嘛???
    debuggerx
        17
    debuggerx  
       2022-12-10 08:30:01 +08:00 via Android
    支持 op 我也很喜欢用 x11 转发 作为成熟的老协议 不只是 linux win 和 mac 上也有对应的实现的 很多人觉得这玩意不好 应该是各种原因导致没配好
    关于 wayland 的看法也是 再怎么酷再怎么现代 广泛性和稳定性还是比不上 x11 的 就算是未来趋势 最少现在没必要强吹 个人乐观估计还得最少 3 年时间
    thedrwu
        18
    thedrwu  
       2022-12-10 09:40:06 +08:00 via Android
    断网 crash ,本地休眠 crash ,本地网卡节能模式 crash ,ssh 闲置超时 crash ,不小心接入全局 VPN 也 crash
    itning
        19
    itning  
       2022-12-10 09:42:20 +08:00
    为啥不用远程开发 gataway client 下个 mini 包就行了
    kongkongyzt
        20
    kongkongyzt  
       2022-12-10 09:43:56 +08:00
    fleet 已经公测了吗
    thedrwu
        21
    thedrwu  
       2022-12-10 09:47:36 +08:00 via Android
    @orangie #12
    VNC 默认传输不加密,所以常规做法是用 ssh 转发,并不需要防火墙额外开端口。。。
    gam2046
        22
    gam2046  
       2022-12-10 10:33:54 +08:00
    不懂就问 x11 协议传输的是什么,是位图呢,还是矢量数据?

    即使是千兆的局域网,x11 依旧无法相对流畅的看视频(ffplay),但是同样是局域网内,Windows 的 RDP 也用 ffplay 播放视频,效果几乎与本机一致。
    GGMM
        23
    GGMM  
       2022-12-10 10:50:14 +08:00
    @kongkongyzt fleet 已经是 preview 版本了吧,目前还是免费的,以后正式发布应该要收费了
    ClericPy
        24
    ClericPy  
       2022-12-10 12:46:44 +08:00
    公司里套了两三层堡垒机各路 VPN 各种安全宣贯... 啥远程开发都不让用唉
    emberzhang
        25
    emberzhang  
       2022-12-10 12:51:13 +08:00
    就喜欢楼主这种无脑吹的,不然给 linux 装桌面的韭菜都快断档了
    systemcall
        26
    systemcall  
       2022-12-10 22:37:30 +08:00
    x11 forwarding 是哪里比 RDP 好了?
    RDP 的主机可以是 Windows ,也可以是 Linux
    可以剪贴板共享,可以复制粘贴文件,可以共享驱动器,甚至可以共享 USB 和智能卡
    可以在电脑上用,可以在平板上用,可以在手机上用,可以在电视上用
    orangie
        27
    orangie  
    OP
       2022-12-11 10:31:12 +08:00
    @systemcall X11 forwarding 相当于 RDP remote app ,而不是 RDP 。RDP 在 linux 上我没找到办法用 remote app 。
    msg7086
        28
    msg7086  
       2022-12-11 10:33:54 +08:00
    @gam2046 可以理解成系统和图形界面之间加了一条网线。
    绘制窗口的绘图指令从本地执行变成了通过互联网远程发送执行。
    gam2046
        29
    gam2046  
       2022-12-11 11:13:44 +08:00
    @msg7086 #26 那就不应该这么卡,既然是显示端的渲染,在内网,我通过 ffplay 播放一个大约 4M 码率的视频,掉帧非常的严重,但是带宽并没有用多少。而同样的操作,如果 x window server/client 是本机的话,却没有显示问题,即使机器没有显卡。
    msg7086
        30
    msg7086  
       2022-12-11 14:55:28 +08:00
    @gam2046 带宽没用多少的话,首先看延迟。
    cyp0633
        31
    cyp0633  
       2022-12-11 19:43:45 +08:00
    Xorg 早该入土了
    mayli
        32
    mayli  
       2022-12-12 04:42:07 +08:00 via Android
    x11 forwarding 就是个玩具…
    不过 Rdp 可能还行。
    Macolor21
        33
    Macolor21  
       2022-12-12 08:35:52 +08:00 via iPhone
    @emberzhang 你是大佬,linus 是韭菜
    Macolor21
        34
    Macolor21  
       2022-12-12 08:37:30 +08:00 via iPhone
    @orangie 玩 Linux 你不知道 Remmina ?
    qwertty01
        35
    qwertty01  
       2022-12-12 15:45:28 +08:00
    @P0P 大佬,怎么配置的,给说说
    qwertty01
        36
    qwertty01  
       2022-12-12 15:48:30 +08:00
    画重点 几百 G 内存 几十个 CPU 核心

    没有这配置的开发者,咋办
    ysc3839
        37
    ysc3839  
       2022-12-12 16:01:00 +08:00
    主要问题是没法 GPU 加速吧?印象中 X11 的 GPU 渲染设计是渲染到显存里的 off-screen surface ,然后把 surface 提交给 x server 合成。如果程序检测到 x server 不支持提交 GPU surface ,就会变成软件渲染,并不能 GPU 渲染后拷回内存再提交 bitmap 。
    以上只是个人印象,如果有误希望各位大佬指正。
    james122333
        38
    james122333  
       2022-12-12 18:43:44 +08:00 via Android
    确实不错 我也爱用 软件渲染也可以 又不是打游戏看视频 看视频可能也可以 需要换快点的加密方法 wayland 最近了解了很失望 倒不是支援度方面的失望
    xiaoxuxu
        39
    xiaoxuxu  
       2022-12-20 19:20:21 +08:00
    网慢或者有延迟还是差点意思。另外 JetBrains 的 remote 开发做的太烂了,代码补全功能都有缺失。主要是 Java 、Scala 开发比 VSCode 强太多,其他语言都用 VSCode 了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3107 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 13:51 · PVG 21:51 · LAX 05:51 · JFK 08:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.