在很久很久以前,就特别希望在windows IDE上写c++,然后转到linux上编译。其一,IDE的功能在便利性真不是vim/emacs能比的,其二,很多服务器程序本来就定位到Linux上执行,其三,个别程序如scylla编译耗费大量资源,windows hold不住。于是乎,先在SO上问了个问题[17],有位网友给出了很多方案,我还没来得及一个一个试。然后又听说有网友用NX远程启动qtcreator[8],顿生羡慕,于是花点功夫调查NX使用。官方文档确实也有,但并不深入浅出,文档罗列了一大堆[15],让人不知从何看起。有网友发表文章吐槽文档[5],深得我心。搜索中文文档,找到惟一一个靠谱点的[10],细节不多,NX版本也很老。看在这工具确实不错的面子上,硬着头皮看官方文档,终于有了点成果,附加不少引用,值得参考滴。

环境:NX 版本6.4.6,windows NX Client通过SSH/NX协议连接linux NX server。自行下载安装[19]

windows client连接

我先尝试了一个简单方案,centos上的普通用户cshi,以NX协议连接,基于密码而非密钥,连接后就出现以下问题:

原因很明显,缺少一个桌面环境如gnome,kde

如果公司办公网不允许直接ssh到目标机,这种情况下,中间有层跳板机,还不知道怎样通过ssh协议连接。

最小化安装gnome

关于如何设置session启动时的虚拟桌面环境,以及如何安装各个常见的桌面环境如gnome,kde,xfce,mate,请参考[1]

我不想安装gnome的全部,只想最小化安装[7],以下方法貌似可以做到:

yum groupinstall "X Window System"
yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

配置默认session启动

如果默认etc/node.cfg的配置,则连接仍会出问题,要么是找不到环境,要么是the session negotiation failed。解决办法[18]:修改etc/node.cfg中的DefaultDesktopCommand如下:

其中第一种是默认的,第二种我改了后不行,第三种加上全局路径就可以了,估计是ksh的影响

安装qtcreator

http://download.qt.io/official_releases/qt/5.12/5.12.0/qt-opensource-linux-x64-5.12.0.run

选用组件时,最好勾选Qt 5.12,不要因为只想用IDE,qt库就不安了,否则创建工程时容易出现no valid kits

启动时发生dbus库版本过低的问题,编译安装dbus可以解决[16](运行时设置LD_LIBRARY_PATH)

最终成效

窗口快速滚动时仍有点残影,但应该比VNC好很多了,日后再想办法解决[12]

至少想装什么IDE就随你啰,idea/sublime/vscode,下面是我的laptop远程连接centos7 虚拟机,貌似有些不清晰

References

  • [1] https://www.nomachine.com/AR04K00667
  • [2] 关于分辨率的问题
  • [3] NoMachine NX Client Configuration Guide pdf
  • [4] https://www.nomachine.com/getting-started-with-nomachine
  • [5] https://www.linux.com/news/nomachine-nx-30-improves-remote-access-linux-boxes
  • [6] How to set up key based authentication with NX protocol
  • [7] gnome最小化安装
  • [8] https://forum.qt.io/topic/64895/qtcreator-over-vnc-windows-client-linux-server/7
  • [9] https://www.nomachine.com/AR06N00891
    这里有这个命令/usr/NX/scripts/setup/nxnode --availablesessionsetup,用以刷新etc/node.cfg文件,也许会有用
  • [10] https://www.cnblogs.com/dabaopku/archive/2012/04/07/2435590.html
  • [11] https://www.nomachine.com/DT03O00127
    NX中的各种key和certificate
  • [12] Enabling VirtualGL support on Linux in NoMachine v. 6.2 or later
  • [13] https://www.nomachine.com/AR11O00948
    Use a SSH private key when connecting from NoMachine client
  • [14] linux上检查显卡及驱动
  • [15] https://www.nomachine.com/all-documents
  • [16] https://www.cnblogs.com/kk1230/p/3573819.html
  • [17] https://stackoverflow.com/questions/54327773/efficient-method-of-writing-c-code-in-windows-ide-and-compiling-in-linux-termi/54327868#54327868
  • [18] https://www.nomachine.com/TR07N07021
  • [19] 官方安装配置文章

access open 知乎_NX使用——远程IDE利器相关推荐

  1. access open 知乎_必备技能!国际汇款SCI Open Access费用

    场景一:我们兴致勃勃地前往银行办理SCI open access国际汇款业务,进入银行询问后,大堂经理的回复是,"本银行不办理国际汇款业务",不能汇款. 场景二:找到了可以汇款的银 ...

  2. access mysql知乎_如何用access搭建数据库?

    单击"开始"→"所有程序"→"Microsoft Office"→"Microsoft Access 2010",打开M ...

  3. access open 知乎_如何评价开放获取期刊(Open Access)日渐盛行这一现象?

    2020年9月10日,Nature在线发表了一篇报道<More than 100 scientific journals have disappeared from the Internet&g ...

  4. access open 知乎_做目标检测,这6篇就够了:CVPR 2020目标检测论文盘点

    CVPR 2020 会议上,有哪些目标检测论文值得关注? 选自heartbeat,作者:Derrick Mwiti,机器之心编译,参与:陈萍. 目标检测是计算机视觉中的经典问题之一.凭借大量可用数据. ...

  5. Python远程部署利器Fabric详解

    http://www.bjhee.com/fabric.html Fabric是一个Python的库,它提供了丰富的同SSH交互的接口,可以用来在本地或远程机器上自动化.流水化地执行Shell命令.因 ...

  6. Python 远程部署利器 Fabric2 模块

    fabric 官网英文文档:http://www.fabfile.org/ <Python自动化运维技术与最佳实践> 如何用 Fabric 实现无密码输入提示的远程自动部署: fabric ...

  7. Xshell服务器远程连接利器

    今天要介绍的一款软件叫做Xshell,它的主要作用呢就方便快捷的连接远程服务器,以及建立一个同服务器进行文件传输的通道.之所以会用到这个软件是因为在后续的学习中,我们基本上都会通过服务器主机来进行代码 ...

  8. 【原创-远程控制手机】vnc远程手机利器の之doridVNC高光时刻

    VNC远程大家并不陌生,怎么嵌入到手机里,方便大家远程手机,就像电脑用vncviwer控制电脑一样?话不多说,请看详细操作步骤.先来两张效果图. 简介 Vncserver for Android ma ...

  9. office中为何还要保留Access数据库? 【3500人回复】知乎

    作者:贺定圆 链接:https://www.zhihu.com/question/274402304/answer/980536854 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业 ...

最新文章

  1. 大白话带你认识Kafka
  2. 生于拉新,死于留存!如何找到 Aha moment?
  3. java同步关键词解释、synchronized、线程锁(Lock)
  4. java在文件的后面添加_java 在file的尾部添加数据的两种方法总结
  5. 基于JRTPLIB库的RTP数据传输设计文档(1)
  6. android 开发 切图,Android开发,切图网站推荐。
  7. activeMQ 问题
  8. “我想进大厂做AI工程师”“你冷静一下”
  9. 10个python数据可视化库_这10个python数据可视化库,通吃任何领域
  10. linux 常用软件推荐
  11. 如何学习操作系统这门课程?
  12. RK3568 Android12 移除电池图标和设置选项
  13. Struck Structured Output Tracking with Kernels阅读笔记
  14. 互联网行业中最常用的数据库——MySQL 索引、事务与存储引擎
  15. Laragon实现快速创建ThinkPHP项目
  16. 看黑客如何一步步攻破你的服务器
  17. html表格填充空白单元格,Excel表格数据录入:怎么快速填充所有空白单元格?
  18. Excel学习日记:L1-excel入门
  19. SpringMVC 自动注入 Request 和 Response 对象
  20. 使用Gitmoji进行git commit的快速查阅指南

热门文章

  1. 基于TF-IDF编码进行文本聚类分析:文档成对相似性计算、层次聚类(链接矩阵、树形图dendrogram绘制、聚类标签)
  2. 什么是textRNN?有什么用途?结构是什么样子的?
  3. t检验特征筛选详解及实战
  4. TPOT: 自动化的sklearn
  5. C#程序结构 基本语法
  6. E. coli 大肠杆菌 短read ERR022075
  7. tf.ones_like(tensor, dtype=None, name=None, optimize=True)示例
  8. python gevent 协程
  9. 【统计学习方法】感知机对鸢尾花(iris)数据集进行二分类
  10. 模型量化--TBN:Convolutional Neural Network with Ternary Inputs and Binary Weights