centos桌面使用(centos怎么用)
大家好,今天小编来为大家解答centos桌面使用这个问题,centos怎么用很多人还不知道,现在让我们一起来看看吧!
如何在VPS上安装和访问CentOS 7远程桌面
我们假设你已经创建了CentOS 7的VPS实例(比如,使用DigitalOcean或者 Amazon EC2)。请确保你的VPS实例有至少1GB的内存。不然,CentOS将会在你访问远程桌面的时候会崩溃。
第一步:安装CentOS桌面
如果你现在安装的CentOS版本是没有桌面的最小版本,你需要先在VPS上安装桌面(比如GNOME)。比如,DigitalOcean的镜像就是最小版本,它需要如下安装桌面GUI
# yum groupinstall"GNOME Desktop"
在安装完成之后重启VPS。
第二步:安装和配置VNC服务器
接下来就是安装和配置VNC服务器。我们使用的是TigerVNC,一个开源的VNC服务实现。
# yum install tigervnc-server
现在创建一个用户账户(比如:xmodulo)用来访问远程桌面。
# useradd xmodulo
# passwd xmodulo
当一个用户尝试使用VNC访问远程桌面时,VNC守护进程就会启动来处理这个请求。这意味着你需要为每个用户创建一个独立的VNC配置文件。
CentOS依靠systemd来管理和配置系统服务。所以我们将使用systemd来为用户xmodulo配置VNC服务器。
首先让我们使用下面任意一条命令来检查VNC服务器的状态。
# systemctl status vncserver@:.service
# systemctl is-enabled vncserver@.service
默认的,刚安装的VNC服务并没有激活(禁用)。
现在复制一份通用的VNC服务文件来为用户xmodulo创建一个VNC服务配置。
# cp/lib/systemd/system/vncserver@.service/etc/systemd/system/vncserver@:1.service
用本文编辑器来打开配置文件,用实际的用户名(比如:xmodulo)来替换[Service]下面的。同样。在ExecStart后面追加"-geometry"参数。最后,要修改下面“ExecStart”和“PIDFile”两行。
# vi/etc/systemd/system/vncserver@:1.service
[Service]
Type=forking
# Clean any existing files in/tmp/.X11-unix environment
ExecStartPre=/bin/sh-c'/usr/bin/vncserver-kill%i>/dev/null 2>&1||:'
ExecStart=/sbin/runuser-l xmodulo-c"/usr/bin/vncserver%i-geometry 1024x768"
PIDFile=/home/xmodulo/.vnc/%H%i.pid
ExecStop=/bin/sh-c'/usr/bin/vncserver-kill%i>/dev/null 2>&1||:'
现在为用户xmodulo设置密码(可选)。首先切换到该用户,并运行vncserver命令。
# su- xmodulo
# vncserver
你会被提示输入用户的VNC密码。密码设置完成后,你下次需要用这个密码来访问你的远程桌面。
最后,重新加载服务来使新的VNC配置生效:
# systemctl daemon-reload
在启动时自动启动VNC服务:
# systemctl enable vncserver@:1.service
检查vnc服务正在监听的端口:
# netstat-tulpn| grep vnc
端口5901是VNC默认的客户端连接到VNC服务器使用的端口。
第三步:通过SSH连接到远程桌面
从设计上说,VNC使用的远程帧缓存(RFB)并不是一种安全的协议,那么在VNC客户端上直接连接到VNC服务器上并不是一个好主意。任何敏感信息比如密码都可以在VNC流量中被轻易地泄露。因此,我强烈建议使用SSH隧道来加密你的VNC流量。
在你要运行VNC客户端的本机上,使用下面的命令来创建一个连接到远程VPS的SSH通道。当被要输入SSH密码时,输入用户的密码。
$ ssh xmodulo@<VPS-IP-address>-L 5901:127.0.0.1:5901
用你自己的VNC用户名来替换“xmodulo”,并填上你自己的VPS IP地址。
一旦SSH通道建立之后,远程VNC流量就会通过ssh通道路由并发送到127.0.0.1:5901。
现在启动你最爱的VNC客户端(比如:vinagre),来连接到127.0.0.1:5901。
你将被要求输入VNC密码。当你输入VNC密码时,你就可以安全地连接到CentOS的远程桌面了。
CentOS桌面菜单如何编辑和配置
相关配置文件:
/usr/share/applications目录中的*.desktop文件
相关目录:
$HOME/.config/menus
/etc/xdg/menus
/usr/share/desktop-directories
修改后一般要更新数据库:
updatedb,update-desktop-database
update-desktop-database和update-desktop-*系列程序都位于xdg-utils包中
--------------------------------------------------------------------------------------------------------------------------
qt4-qtconfig位于System-Administration,现在要把它更改到Applications--Programming菜单下面:
更改(vim/usr/share/applications/qt4-qtconfig.desktop)其中的
Categories=Qt;Settings;为 Categories=Qt;Development;
为何不是Categories=Qt;Programming;呢?
切换到/usr/share/desktop-directories目录下面:
[root@localhost desktop-directories]# grep Programming*
Development.directory:Name=Programming
Development.directory:Name[en_CA]=Programming
Development.directory:Name[en_GB]=Programming
Development-More.directory:Name=More Programming Tools
Development-More.directory:Name[en_GB]=More Programming Tools
打开Development.directory文件,开头如下
[Desktop Entry]
Name=Programming
....................
说明Categories=Development在菜单中对应的就是Programming菜单目录。
最后,Categories=Qt;Development;同样可以写成Categories=Development;
如果想在Applications菜单项中添加一个新的菜单目录,可以通过添加/etc/xdg/menus目录中的条目来完成;
其中Menu二级目录中的条目正好和桌面Applications中的条目相等。对于条目内容为空的,在Applications中将不会显示;比如在applications.menu文件中写有Education目录菜单,但是因为在/usr/share/applications目录下面列举的程序没有程序使用
Categories=Education;
所以,在Applications目录菜单中,没有Education子目录菜单。尝试修改任何一个.desktop文件(qt4- qtconfig.desktop),把Categories改成Education,立刻就会在Applications目录菜单中显示出 Applications--Education---qt4 config
(rpm-qi xdg-utils-1.0.2-2.fc8)The following scripts are provided at this time:
* xdg-desktop-menu Install desktop menu items
* xdg-desktop-icon Install icons to the desktop
* xdg-icon-resource Install icon resources
* xdg-mime Query information about file type handling and
install descriptions for new file types
* xdg-open Open a file or URL in the user's preferred application
* xdg-email Send mail using the user's preferred e-mail composer
* xdg-screensaver Control the screensaver
===========================================
[root@localhost menus]# pwd
/etc/xdg/menus
[root@localhost menus]# ll
total 60
-rw-r--r-- 1 root root 12282 Dec 6 16:01 applications.menu
drwxr-xr-x 2 root root 4096 Nov 9 17:16 applications-merged
-rw-r--r-- 1 root root 488 Jul 6 16:58 gnome-screensavers.menu
-rw-r--r-- 1 root root 279 Sep 10 2005 kde-information.menu
-rw-r--r-- 1 root root 288 Sep 10 2005 kde-screensavers.menu
-rw-r--r-- 1 root root 2198 Aug 10 15:03 kde-settings.menu
-rw-r--r-- 1 root root 3020 Oct 19 23:53 preferences.menu
drwxr-xr-x 2 root root 4096 Oct 19 23:53 preferences-merged
drwxr-xr-x 2 root root 4096 Nov 9 17:19 preferences-post-merged
-rw-r--r-- 1 root root 1241 Oct 19 23:53 server-settings.menu
-rw-r--r-- 1 root root 1127 Oct 19 23:53 settings.menu
-rw-r--r-- 1 root root 920 Oct 19 23:53 start-here.menu
-rw-r--r-- 1 root root 3294 Oct 19 23:53 system-settings.menu
applications.menu文件可以设置在菜单项中是否包含某个菜单项,甚至可以exclude.
疑问).desktop文件所执行程序的查询路径是什么?
答:执行程序时路径设置在PATH环境变量中,.desktop文件通过其中的exec来指定要执行的应用程序,并在PATH所定义的路径中查找相应的应用程序。可以通过如下方式查看:
[root@localhost~]# echo$PATH
/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
疑问).desktop文件是如何执行可执行应用程序的?
答:可以先看一个简单的.desktop文件内容:
[root@localhost~]# cat/usr/share/applications/amule.desktop
[Desktop Entry]
Encoding=UTF-8
//编码方式
Name=aMule
//应用程序名称,
Comment=aMule
//鼠标经过上面时的提示名称
Exec=amule
//可执行应用程序的实际名称
Icon=amule.png
//显示在菜单项中的图标,可以为空
Terminal=false
//是否使用终端
Type=Application
//分类
Categories=Application;Network;//分类
.desktop文件通过上述Exec=amule知道了应用程序的名称,并且区分大小写,并在PATH环境变量所默认设定的路径中查找,查找到即可执行,查找不到则报错,除非用户自己在PATH中设定了此应用程序所处的特殊路径。
Centos7更改默认启动桌面模式
centos 7更新后总想偿偿鲜,虽然只是个linux小白,但是还是比较喜欢折腾。之前有在虚拟机装了centos6.7,切换方法是在/etc/inintab中直接修改就行了,但是换到7发现这个方法已经不管用了。
虽然inittab中已经无法修改,但还是可以去下原因。命令行中:vi/etc/inittab
centos仍然只有两种启动模式 multi-user.target:analogoustorunlevel3#命令行模式 graphical.target:analogoustorunlevel5#图形模式
通过systemctl get-default命令获取当前模式:(注意:这里是:systemctl是字母“l”,不是数字1)
由上面结果可知,当前为命令行模式通过systemctl set-default graphical.target命令,修改启动模式前提是:你安装了图形界面
Reboot检验下设置效果
如果想换回命令行模式,参照上面的命令