linux centos 安装GNOME Desktop 桌面和 vnc远程-虚拟化KVM

简介: 通过 vnc 与centos服务器进行桌面连接
#!/bin/bash
repo="/etc/yum.repos.d/epel-7.repo"
if [ ! -e $repo ]; then                 # -e 判断文件存在;参考:Shell if 条件判断文件或目录
yum install -y wget
cd /etc/yum.repos.d/
mkdir bak
mv * bak
wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.aliyun.com/repo/epel-7.repo
                                        # 移动两个文件到 目录
#wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
#sed -i  's/$releasever/7/g' /etc/yum.repos.d/CentOS-Base.repo
                                        # yum源没有对应版本包匹配;修改yum为centos7
yum clean all                           # 清除原有缓存
yum makecache                           # 生成新的缓存
                                        # make cache [meɪk]  [kaʃ]  制作 缓存{ka xi}
yum  list                               # 校验yum
cd
else 
echo "yum已经切换"
fi

###############  安装 vnc ##############

yum groupinstall -y "GNOME Desktop"     # 安装GNOME Desktop图形桌面服务
yum install -y tigervnc-server          # 安装vnc
systemctl get-default                   # 查看系统运行模式
systemctl set-default graphical.target  # 切换到桌面模式运行
init 5                                  # 启动桌面模式

ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
                                        # 设置桌面运行模式为默认启动模式
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
                                        # 设置vnc用systemctl来管理(第一个用户vncserver@:1.service,第二个用户vncserver@:2.service,其他以此类推)
vncset="/etc/systemd/system/vncserver@:1.service.back"          
if [ ! -e  $vncset ]; then
echo "正在备份文件" ; cp /etc/systemd/system/vncserver@:1.service /etc/systemd/system/vncserver@:1.service.back
else
echo "备份文件存在"
fi
cat /dev/null > /etc/systemd/system/vncserver@:1.service										
cat > /etc/systemd/system/vncserver@:1.service << "EOF"
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[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=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target
EOF
										# 修改vnc用户为root(其他系统用户也可以这样改)
										
										
										
										
systemctl daemon-reload					# 刷新systemctl
echo "设置vnc密码(第二个用户修改密码,vncpasswd user2,其他以此类推)"
vncpasswd


vncset="/etc/sysconfig/vncservers"			
if [ ! -e  $vncset ]; then
echo "正在备份文件" ; cp /etc/sysconfig/vncservers /etc/sysconfig/vncservers.back
else
echo "备份文件存在"
fi
cat /dev/null > /etc/sysconfig/vncservers
cat > /etc/sysconfig/vncservers <<"EOF"
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1024x768 -BlacklistTimeout 0"

EOF
# 修改vnc黑名单限制,否则会出现vnc客户端连接不上的情况(/etc/sysconfig/vncservers)

firewall-cmd --zone=public --add-port=5901/tcp --permanent
                                        # 防火墙放行端口(vnc端口第一个用户5901,创建第二个用户5902,其他以此类推)
firewall-cmd --add-service vnc-server   # 防火墙放行vnc服务    
firewall-cmd --reload                   # 放行好端口和服务,重启防火墙才能生效
firewall-cmd --list-port                # 查看端口是否放行成功
systemctl daemon-reload                 # 刷新
systemctl start vncserver@:1.service    # 启动vnc
#启动,关闭,重启vnc
#systemctl start vncserver@:1.service       #启动
#systemctl stop vncserver@:1.service        #关闭
#systemctl restart vncserver@:1.service     #重启
目录
相关文章
|
3月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
1103 5
|
3月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
591 16
|
4月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
341 10
|
分布式计算 资源调度 Hadoop
|
应用服务中间件 Linux nginx
【Linux环境】centOS 7安装nginx详细步骤及nginx配置
【Linux环境】centOS 7安装nginx详细步骤及nginx配置
3347 0
|
8月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
333 10
|
缓存 Linux 编译器
Linux(CentOS7.5) 安装部署 Python3.6(超详细!包含 Yum 源配置!)
该指南介绍了在Linux系统中配置Yum源和安装Python3的步骤。首先,通过`yum install`和`wget`命令更新和备份Yum源,并从阿里云获取CentOS和EPEL的repo文件。接着,清理和更新Yum缓存。然后,下载Python3源代码包,推荐使用阿里云镜像加速。解压后,安装必要的依赖,如gcc。在配置和编译Python3时,可能需要解决缺少C编译器的问题。完成安装后,创建Python3和pip3的软链接,并更新环境变量。最后,验证Python3安装成功,并可选地升级pip和配置pip源以提高包下载速度。
3760 0
|
Linux 网络安全
Linux(CentOS6.5)开放端口,配置防火墙
Linux(CentOS6.5)开放端口,配置防火墙
502 0
|
XML Java Linux
Linux的CentOS7中安装maven3.6并配置阿里云远程仓库
Linux的CentOS7中安装maven3.6并配置阿里云远程仓库
1738 0
Linux的CentOS7中安装maven3.6并配置阿里云远程仓库
|
Ubuntu Linux 开发工具
Linux(centOS7)虚拟机中配置 vim
Linux(centOS7)虚拟机中配置 vim
367 0