I have installed CentOS 7.7 Minimal Server Linux on a VirtualBox Virtual Environment as a test bed machine.
The system got installed easily succesfully with the standard CentOS python based graphical installer, however I needed to place various software which was not there
and for that of course I needed to have a network enabled.
To make network working instead of the default Network NAT configuration for the Virtual Machine I needed to use the Network to be Attached to a Bridged Adapter in order to make
my Windows machine to provide network and (internet) access to VirtualMachine.
Then to make networking work after booting into CentOS I had to manually fetch IP via DHCP protocol with command:
[root@centos :~]# dhclient enp0s3
To make the setting permanent I had to also of course modify /etc/sysconfig/network-scripts/ifcfg-enp0s3 file and change
ONBOOT=no
to
ONBOOT=yes
On next reboot CentOS boots normally with networking as expected
As by default CentOS Minimal does not provide any graphical environment however I needed to have it in my VM in order to be able to use VboxLinuxAdditions.run (VirtualBox Guest Additions plugins) that enabled the CentOS Operating System to show in Virtualbox in fullscreen and to enable the Copy / Paste buffers to work from The Hypervisor (Windows in that case) and the Guest VM (the CentOS VM).
In CentOS terminology metapackages (a grouped package under a certain name, alias) are called simply groups) there is a "GNOME Desktop" group that can be used to install the GNOME Graphical Command from that point on with yum, like so:
[root@centos :~]# yum -y groups install "GNOME Desktop"
…
In a while the graphical environment will be in place, the command will install about 1300+ RPM packages, this will take about 5 minutes or so depending on your bandwidth connectivity. Once all is installed and configured succesfully you can use the good old startx command to launch GNOME.
[root@centos :~]# startx
This of course will make Xserver and GNOME to run one time and on next reboot, you will end up in a plain text mode environment, so perhaps you will need to make the autolaunch of GNOME environment automatically on each boot in CentOS just like in most modern Linux distributions that use SYSTEMD to handle runlevels, you will need to configure it by changing the systemd default configured target via systemctl:
[root@centos :~]# systemctl list-units –type target | egrep "eme|res|gra|mul"
graphical.target loaded active active Graphical Interface
multi-user.target loaded active active Multi-User System
[root@centos :~]# systemctl set-default graphical.target
multi-user.target
[root@centos :~]# systemctl set-default
graphical.target
[root@centos :~]# systemctl set-default graphical.target
graphical.target
Next step was to enable the Guest Additions to do so I had to install in advance 2 RPM packages kernel-headers and kernel-devel
[root@centos :~]# yum install -y kernel-headers kernel-devel
…
Then I had to mount and run the VboxLinuxAdditions.run script to enable them, i.e.:
[root@centos :~]# mkdir /mnt/cdrom
[root@centos :~]# mount /dev/cdrom /mnt/cdrom
…
[root@centos :~]# cd /mnt/cdrom/
[root@centos :~]# sh VboxLinuxAdditions.run