openstack上内网环境的最小化linux虚拟机安装桌面服务,给qcow2格式的linux虚拟机安装桌面服务、linux系统模式查看和命令模式永久改为桌面模式(1)

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!

  • 切换桌面

  • 正常安装【跟这做】

    • 准备源
  • 安装桌面

    • 安装报错Transaction check error:
  • 安装成功界面

  • 切换桌面

    • 临时进入
  • 永久修改为桌面模式

  • vnc登陆桌面

说明

=================================================================

  • 因为这安装桌面操作是真实环境,之前也没离线安装过,所以我操作前都有在 VMware上安装同样版本的最小化安装操作系统,然后实验没问题了,我才在这操作的,所以如果基础不好的同学,下面操作先在VMware上操作,先熟悉过程,然后在开始搞~

我VMware最小化安装可以直接看下面有外网的安装方法【文章已经有过修改,而且安装桌面的时候,我是把外网源已经全部移除,做成本地源来实验的,有些内容没写进去和修改,是为了不让文章难度提高(公网安装很简单的)】

在这里插入图片描述

  • 但是新的问题来了,VMware上安装最小化的系统,是iso安装的,而云上的虚拟机,虽然也是最小化,但是镜像是qcow2格式的,所以即使在VMware上操作很顺畅,移到云上qcow2镜像上,也可能问题百出,很坑,但要养成好习惯,真实环境上操作前要先本地模拟一遍,要先明白,你在干啥,以及你的操作会带来结果的同时会不会带来啥额外意外,如果出现意外,能不能解决,如果不能,宁可不搞,也不要瞎搞。

有外网的安装方法

=======================================================================

去这篇博客吧:linux命令行安装图形化界面

内网/离线安装方法

========================================================================

需求说明


  • 我们openstack上的虚拟机呢一般都是最小化安装的,并且是qcow2格式的方式创建的最小化虚拟机【一般qcow2的镜像只有1g左右,所以缺少很多依赖包】,也不知道能不能装成功,反正现在先来吧,成功了就发,没成功就算了。

  • 我这呢,用openstack上的centos7.6和centos7.4的系统来做实验【真实的生产环境】【感觉本地7.6的qcow2镜像有问题,但说不出有什么问题,正常安装成功的是centos7.4的,也是qcow2的镜像】【方法都一样】

非正常安装【了解为主】


  • 这里面集成了所有报错,和各类处理方式,本来不想放的,但花了我挺多时间折腾的,感觉你们可以看看内容了解一下也没坏处,但这种方式不建议做。

  • 这台内网呢,实际上是配置了http源的,但是依然没有grouplist源,所以我们得先准备一个本地源,有grouplist的那种。

[root@irms-database ~]# yum repolist

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

repo id repo name status

!http http 4,021

repolist: 4,021

[root@irms-database ~]#

[root@irms-database ~]# yum grouplist

Loaded plugins: fastestmirror

There is no installed groups file.

Maybe run: yum groups mark convert (see man yum)

Loading mirror speeds from cached hostfile

Warning: no environments/groups match:

[root@irms-database ~]#

  • 这个呢,网上有许多解决方法,最后呢,我发现其实也挺简单的

下面命令呢,都是基础命令,不做解释了,有不懂的可以私信或留言问我哈。

准备源

[root@irms-database ~]#

[root@irms-database ~]# cd /etc/yum.repos.d/

[root@irms-database yum.repos.d]# ls

bak http.repo

[root@irms-database yum.repos.d]# cp http.repo centos.repo

[root@irms-database yum.repos.d]# vi centos.repo

[root@irms-database yum.repos.d]# cat centos.repo

[centos]

name=centos

baseurl=file:///centos

gpgcheck=0

enabled=1

[root@irms-database yum.repos.d]# mkdir /centos

[root@irms-database yum.repos.d]# mount /root/CentOS-7.6-x86_64-DVD-1810.iso /centos

mount: /dev/loop0 is write-protected, mounting read-only

[root@irms-database yum.repos.d]#

[root@irms-database yum.repos.d]# yum repolist

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

centos | 3.6 kB 00:00:00

http | 2.9 kB 00:00:00

(1/2): centos/group_gz | 166 kB 00:00:00

(2/2): centos/primary_db | 3.1 MB 00:00:00

repo id repo name status

centos centos 4,021

http http 4,021

repolist: 8,042

[root@irms-database yum.repos.d]#

[root@irms-database yum.repos.d]#

注意看,下面是报错的,有报错Maybe run: yum groups mark convert (see man yum)

理论上这样是不行的,必须先吧报错处理了才能正常安装【但qcow2的镜像有些报错也能安装成功】

[root@irms-database yum.repos.d]# yum grouplist

Loaded plugins: fastestmirror

There is no installed groups file.

Maybe run: yum groups mark convert (see man yum)

Loading mirror speeds from cached hostfile

Available Environment Groups:

Minimal Install

Compute Node

Infrastructure Server

File and Print Server

Basic Web Server

Virtualization Host

Server with GUI

GNOME Desktop

KDE Plasma Workspaces

Development and Creative Workstation

Available Groups:

Compatibility Libraries

Console Internet Tools

Development Tools

Graphical Administration Tools

Legacy UNIX Compatibility

Scientific Support

Security Tools

Smart Card Support

System Administration Tools

System Management

Done

[root@irms-database yum.repos.d]#

安装桌面

  • 上面报错我没处理成功的,不是我不想处理,而是网上的方法该试的都试了,而且group这个文件也存在,无法了。。。

在这里插入图片描述

  • 不能有其他源,如我配置了http源,先移掉

[root@irms-database yum.repos.d]# ls

bak centos.repo http.repo

[root@irms-database yum.repos.d]# mv http.repo bak

[root@irms-database yum.repos.d]# ls

bak centos.repo

[root@irms-database yum.repos.d]#

[root@irms-database yum.repos.d]# yum repolist

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

repo id repo name status

centos centos 4,021

repolist: 4,021

[root@irms-database yum.repos.d]#

  • 安装

[root@irms-database yum.repos.d]# yum groupinstall -y “GNOME Desktop”

在这里插入图片描述

  • 忽略依赖安装

这样能安装成功,但是呢,只有600多个包被安装,肯定是有问题的,qcow2格式的桌面包正常的有1100个左右。

[root@irms-database yum.repos.d]# yum groupinstall -y GNOME Desktop --skip-broken

。。。忽略大量输出

Verifying : 1:libglvnd-gles-1.0.1-0.8.git5baa1e5.el7.x86_64 598/617

Verifying : libepoxy-1.5.2-1.el7.x86_64 599/617

Verifying : libglade2-2.6.4-11.el7.x86_64 600/617

Verifying : libtdb-1.3.15-1.el7.x86_64 601/617

Verifying : libcanberra-0.30-5.el7.x86_64 602/617

Verifying : dconf-0.28.0-4.el7.x86_64 603/617

Verifying : 1:enchant-1.6.0-8.el7.x86_64 604/617

Verifying : libblockdev-swap-2.18-3.el7.x86_64 605/617

Verifying : jbigkit-libs-2.0-11.el7.x86_64 606/617

Verifying : libproxy-0.4.11-11.el7.x86_64 607/617

Verifying : 1:cups-libs-1.6.3-35.el7.x86_64 608/617

Verifying : perl-Pod-Perldoc-3.20-4.el7.noarch 609/617

Verifying : libarchive-3.1.2-10.el7_2.x86_64 610/617

Verifying : pulseaudio-module-bluetooth-10.0-5.el7.x86_64 611/617

Verifying : libreport-plugin-reportuploader-2.1.11-42.el7.centos.x86_64 612/617

Verifying : xdg-desktop-portal-1.0.2-1.el7.x86_64 613/617

Verifying : ipset-libs-6.38-2.el7.x86_64 614/617

Verifying : rtkit-0.11-10.el7.x86_64 615/617

Verifying : libfontenc-1.1.3-3.el7.x86_64 616/617

Verifying : libnice-0.1.3-4.el7.x86_64 617/617

Installed:

Skipped (dependency problems):

NetworkManager-team.x86_64 1:1.12.0-6.el7 anaconda-core.x86_64 0:21.48.22.147-1.el7.centos

anaconda-gui.x86_64 0:21.48.22.147-1.el7.centos anaconda-tui.x86_64 0:21.48.22.147-1.el7.centos

anaconda-widgets.x86_64 0:21.48.22.147-1.el7.centos boost-iostreams.x86_64 0:1.53.0-27.el7

boost-random.x86_64 0:1.53.0-27.el7 boost-system.x86_64 0:1.53.0-27.el7

boost-thread.x86_64 0:1.53.0-27.el7 bridge-utils.x86_64 0:1.5-9.el7

cryptsetup.x86_64 0:2.0.3-3.el7 cryptsetup-python.x86_64 0:2.0.3-3.el7

cyrus-sasl.x86_64 0:2.1.26-23.el7 cyrus-sasl-gssapi.x86_64 0:2.1.26-23.el7

daxctl-libs.x86_64 0:62-1.el7 device-mapper-event.x86_64 7:1.02.149-8.el7

device-mapper-event-libs.x86_64 7:1.02.149-8.el7 device-mapper-persistent-data.x86_64 0:0.7.3-3.el7

dmraid.x86_64 0:1.0.0.rc16-28.el7 dmraid-events.x86_64 0:1.0.0.rc16-28.el7

dnsmasq.x86_64 0:2.76-7.el7 fcoe-utils.x86_64 0:1.0.32-1.el7

glade-libs.x86_64 0:3.22.1-1.el7 glusterfs.x86_64 0:3.12.2-18.el7

glusterfs-api.x86_64 0:3.12.2-18.el7 glusterfs-cli.x86_64 0:3.12.2-18.el7

glusterfs-client-xlators.x86_64 0:3.12.2-18.el7 glusterfs-libs.x86_64 0:3.12.2-18.el7

gnome-boxes.x86_64 0:3.28.5-2.el7 gperftools-libs.x86_64 0:2.6.1-1.el7

initial-setup.x86_64 0:0.3.9.43-1.el7.centos initial-setup-gui.x86_64 0:0.3.9.43-1.el7.centos

ipxe-roms-qemu.noarch 0:20170123-1.git4e85b27.el7_4.1 isomd5sum.x86_64 1:1.0.10-5.el7

keybinder3.x86_64 0:0.3.0-1.el7 langtable.noarch 0:0.0.31-3.el7

langtable-data.noarch 0:0.0.31-3.el7 langtable-python.noarch 0:0.0.31-3.el7

libXfont2.x86_64 0:2.0.3-1.el7 libblockdev-nvdimm.x86_64 0:2.18-3.el7

libconfig.x86_64 0:1.4.9-5.el7 libgovirt.x86_64 0:0.3.4-1.el7

libibverbs.x86_64 0:17.2-3.el7 libiscsi.x86_64 0:1.9.0-7.el7

librados2.x86_64 1:10.2.5-4.el7 librbd1.x86_64 1:10.2.5-4.el7

librdmacm.x86_64 0:17.2-3.el7 libreport-anaconda.x86_64 0:2.1.11-42.el7.centos

libreport-plugin-bugzilla.x86_64 0:2.1.11-42.el7.centos libreport-rhel-anaconda-bugzilla.x86_64 0:2.1.11-42.el7.centos

libtimezonemap.x86_64 0:0.4.4-1.el7 libuser-python.x86_64 0:0.60-9.el7

libvirt-daemon.x86_64 0:4.5.0-10.el7 libvirt-daemon-config-network.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-interface.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-network.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-nodedev.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-nwfilter.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-qemu.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-secret.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-storage.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-storage-core.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-storage-disk.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-storage-gluster.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-storage-iscsi.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-storage-logical.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-storage-mpath.x86_64 0:4.5.0-10.el7 libvirt-daemon-driver-storage-rbd.x86_64 0:4.5.0-10.el7

libvirt-daemon-driver-storage-scsi.x86_64 0:4.5.0-10.el7 libvirt-daemon-kvm.x86_64 0:4.5.0-10.el7

libvirt-gconfig.x86_64 0:1.0.0-1.el7 libvirt-glib.x86_64 0:1.0.0-1.el7

libvirt-gobject.x86_64 0:1.0.0-1.el7 libvirt-libs.x86_64 0:4.5.0-10.el7

lldpad.x86_64 0:1.0.1-3.git036e314.el7 lsof.x86_64 0:4.87-6.el7

lvm2.x86_64 7:2.02.180-8.el7 lvm2-libs.x86_64 7:2.02.180-8.el7

mtools.x86_64 0:4.0.18-5.el7 ndctl.x86_64 0:62-1.el7

ndctl-libs.x86_64 0:62-1.el7 netcf-libs.x86_64 0:0.2.8-4.el7

nmap-ncat.x86_64 2:6.40-16.el7 numad.x86_64 0:0.5-18.20150602git.el7

oddjob.x86_64 0:0.31.5-4.el7 oddjob-mkhomedir.x86_64 0:0.31.5-4.el7

pciutils.x86_64 0:3.5.1-3.el7 pykickstart.noarch 0:1.99.66.19-2.el7

pyparted.x86_64 1:3.9-15.el7 python-blivet.noarch 1:0.61.15.72-1.el7

python-coverage.x86_64 0:3.6-0.5.b3.el7 python-di.noarch 0:0.3-2.el7

python-meh-gui.noarch 0:0.25.2-1.el7 python-nss.x86_64 0:0.16.0-3.el7

python-ntplib.noarch 0:0.3.2-1.el7 python-pwquality.x86_64 0:1.2.3-5.el7

python-pyblock.x86_64 0:0.53-6.el7 python2-blockdev.x86_64 0:2.18-3.el7

python2-subprocess32.x86_64 0:3.2.6-13.el7 pytz.noarch 0:2016.10-2.el7

qemu-img.x86_64 10:1.5.3-160.el7 qemu-kvm.x86_64 10:1.5.3-160.el7

qemu-kvm-common.x86_64 10:1.5.3-160.el7 radvd.x86_64 0:2.17-3.el7

rdma-core.x86_64 0:17.2-3.el7 realmd.x86_64 0:0.16.1-11.el7

seabios-bin.noarch 0:1.11.0-2.el7 seavgabios-bin.noarch 0:1.11.0-2.el7

sgabios-bin.noarch 1:0.20110622svn-4.el7 sgpio.x86_64 0:1.2.0.10-13.el7

spice-server.x86_64 0:0.14.0-6.el7 tigervnc-license.noarch 0:1.8.0-13.el7

tigervnc-server-minimal.x86_64 0:1.8.0-13.el7 usermode.x86_64 0:1.111-5.el7

yajl.x86_64 0:2.0.4-4.el7 yelp.x86_64 2:3.28.1-1.el7

yelp-libs.x86_64 2:3.28.1-1.el7 yelp-xsl.noarch 0:3.28.0-1.el7

Complete!

报错忽然就消失了,离谱

[root@irms-database yum.repos.d]# yum grouplist

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

Available Environment Groups:

Minimal Install

Compute Node

Infrastructure Server

File and Print Server

Basic Web Server

Virtualization Host

Server with GUI

GNOME Desktop

KDE Plasma Workspaces

Development and Creative Workstation

Available Groups:

Compatibility Libraries

Console Internet Tools

Development Tools

Graphical Administration Tools

Legacy UNIX Compatibility

Scientific Support

Security Tools

Smart Card Support

System Administration Tools

System Management

Done

[root@irms-database yum.repos.d]#

切换桌面

  • 顺便提一下,我们这的dashboard是纳入移动云管的,在云管上创建的应用系统要在底层做如下操作才能切换到对应的项目【不进入项目就进不去虚拟机控制台】

在这里插入图片描述

  • -进入虚拟机所属项目-进入控制台

在这里插入图片描述

在这里插入图片描述

  • 登陆以后,输入init 5切换到 桌面模式

在这里插入图片描述

  • 然后。。。就没有然后了,强制安装的,肯定不得行的。。。。

这种情况通过ssh远程登陆以后,输入init 3切换到命令模式,如果不行就重启,然后系统就会重新回到命令行模式了。

在这里插入图片描述

正常安装【跟这做】


准备源

  • 下面呢,是我已经配置好的本地源。

[root@pod-ceshi01 ~]# mount /root/CentOS-7.6-x86_64-DVD-1810.iso /centos/

mount: /dev/loop0 is write-protected, mounting read-only

[root@pod-ceshi01 ~]#

[root@pod-ceshi01 ~]# df -h | tail -n1

/dev/loop0 4.3G 4.3G 0 100% /centos

[root@pod-ceshi01 ~]#

[root@pod-ceshi01 ~]# cd /etc/yum.repos.d/

[root@pod-ceshi01 yum.repos.d]# ls

bak http.repo

[root@pod-ceshi01 yum.repos.d]# cat http.repo

[http]

name=http

baseurl=file:///centos

gpgcheck=0

enabled=1

[root@pod-ceshi01 yum.repos.d]#

[root@pod-ceshi01 yum.repos.d]# yum repolist

Loaded plugins: fastestmirror, langpacks

Loading mirror speeds from cached hostfile

repo id repo name status

http http 4,021

repolist: 4,021

[root@pod-ceshi01 yum.repos.d]#

可以看到,现在依然报错,我们先不管他

[root@pod-ceshi01 yum.repos.d]# yum grouplist

Loaded plugins: fastestmirror

There is no installed groups file.

Maybe run: yum groups mark convert (see man yum)

Loading mirror speeds from cached hostfile

Available Environment Groups:

Minimal Install

Compute Node

Infrastructure Server

File and Print Server

Basic Web Server

Virtualization Host

Server with GUI

GNOME Desktop

KDE Plasma Workspaces

Development and Creative Workstation

Available Groups:

Compatibility Libraries

Console Internet Tools

Development Tools

Graphical Administration Tools

Legacy UNIX Compatibility

Scientific Support

Security Tools

Smart Card Support

System Administration Tools

System Management

Done

[root@pod-ceshi01 yum.repos.d]#

安装桌面

  • 切记,不能有其他源,仅留一个本地源即可

[root@pod-ceshi01 yum.repos.d]# ls

bak http.repo

[root@pod-ceshi01 yum.repos.d]#

  • 安装命令

此外还需要安装常见的其他图形界面包,比如图形管理工具,系统管理工具等软件组,后面按需安装即可,我这只需要图形化,所以只安装GNOME Desktop即可

[root@pod-ceshi01 yum.repos.d]# yum groupinstall -y “GNOME Desktop”

安装报错Transaction check error:
  • 报错内容如下图

在这里插入图片描述

  • 是因为缺少2个依赖,安装即可

下面安装grub2-efi

这个本地源有,可以直接安装

[root@pod-ceshi01 yum.repos.d]# yum install -y grub2-efi

。。.大量输出

Installed:

grub2.x86_64 1:2.02-0.76.el7.centos grub2-efi-x64.x86_64 1:2.02-0.76.el7.centos grub2-tools.x86_64 1:2.02-0.76.el7.centos grub2-tools-extra.x86_64 1:2.02-0.76.el7.centos grub2-tools-minimal.x86_64 1:2.02-0.76.el7.centos

Dependency Updated:

grub2-common.noarch 1:2.02-0.76.el7.centos grub2-pc.x86_64 1:2.02-0.76.el7.centos grub2-pc-modules.noarch 1:2.02-0.76.el7.centos

Replaced:

grub2.x86_64 1:2.02-0.64.el7.centos grub2-tools.x86_64 1:2.02-0.64.el7.centos

Complete!

[root@pod-ceshi01 yum.repos.d]#

  • 另一个是fwupdate

这个本地源没有,得下载源安装,源可以自己搞,也可以用我上传的

fwupdate安装包及依赖.rar

如何快速更新自己的技术积累?

  • 在现有的项目里,深挖技术,比如用到netty可以把相关底层代码和要点都看起来。
  • 如果不知道目前的努力方向,就看自己的领导或公司里技术强的人在学什么。
  • 知道努力方向后不知道该怎么学,就到处去找相关资料然后练习。
  • 学习以后不知道有没有学成,则可以通过面试去检验。

我个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事。所以,劝各位不要因为面试失败而灰心、丧失斗志。也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油!

以上面试专题的答小编案整理成面试文档了,文档里有答案详解,以及其他一些大厂面试题目

八年CRUD,疫情备战三个月,三面头条、四面阿里拿offer面经分享

八年CRUD,疫情备战三个月,三面头条、四面阿里拿offer面经分享

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!
grub2-tools.x86_64 1:2.02-0.64.el7.centos

Complete!

[root@pod-ceshi01 yum.repos.d]#

  • 另一个是fwupdate

这个本地源没有,得下载源安装,源可以自己搞,也可以用我上传的

fwupdate安装包及依赖.rar

如何快速更新自己的技术积累?

  • 在现有的项目里,深挖技术,比如用到netty可以把相关底层代码和要点都看起来。
  • 如果不知道目前的努力方向,就看自己的领导或公司里技术强的人在学什么。
  • 知道努力方向后不知道该怎么学,就到处去找相关资料然后练习。
  • 学习以后不知道有没有学成,则可以通过面试去检验。

我个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事。所以,劝各位不要因为面试失败而灰心、丧失斗志。也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油!

以上面试专题的答小编案整理成面试文档了,文档里有答案详解,以及其他一些大厂面试题目

[外链图片转存中…(img-jd23ftNX-1714736919324)]

[外链图片转存中…(img-iQpfW03F-1714736919324)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值