我将一个.Xresources文件添加到我的主目录中,当我用xrdb -merge ~/.Xresources从shell提示符加载它时,资源设置就会被识别(对于随后启动的X程序)。
然而,当我登录到我的用户帐户时,我想一直应用这些资源。我认为X11系统在默认情况下会查找~/.Xresources文件,但它不会。
这台机器运行CentOS 6,我从MobaXterm (MS )远程连接到它,它提供了一个X服务器,并显示了MS窗口中每个CentOS应用程序的窗口。
那么,我应该把合并命令放在哪里呢?外壳初始化还是~/.xinitrc?或者其他地方?
发布于 2021-08-23 15:19:16
资源存储在X服务器上。因此,如果在Windows上使用远程X服务器,最好的方法是将.Xresources文件复制到Windows,并在启动X服务器时将其加载到X服务器。
如果这不适用于您,因为您希望在.Xresources机器上使用您的CentOS,那么唯一的方法就是检查每个登录,例如在.profile中。确保还检查DISPLAY,如果设置了xrdb,则所有调用DISPLAY。进行某种检查以确保这只在远程登录时才会被调用,这也是件好事。最后,如果同时有几个连接,您可能希望首先使用xrdb来查看资源是否已经加载,并且只在资源丢失时加载它们。
X客户端使用X资源(应用程序,但可能不是MobaXTerm,即Windows),但它们存储在X服务器上。
因此,当您运行xrdb时,它像所有X客户端一样连接到X服务器,并对存储的值进行更改。
如果使用的X服务器运行在Windows机器上(无论它是由MobaXTerm提供的,还是运行在windows上的其他X服务器,比如VcXsrv),那么资源就在这里。
我快速查看了MobaXTerm文档,但不清楚如何在本地访问内置的X服务器。可能您可以通过“本地终端”来执行,然后使用Cygwin或WSL在Windows机器上执行xrdb。
https://unix.stackexchange.com/questions/665824
复制相似问题