In this blog post I will show you how to install CentOS 7, Release 1810 in Hyper-V on Windows 10.
These days I have started using Hyper V which is a part of Windows 10 Pro and Enterprise editions. This is because it is readily available as a part of Windows 10 OS and integrates well with overall Windows ecosystem. Please note that Hyper-V is not a part of Windows 10 Home Edition. Windows 10 home users will have to stick to VMware Workstation pro, VMware Workstation Player or VirtualBox.
Before you can use Hyper-V, it needs to be enabled in Windows 10. To know how to enable it, please follow my post here
Lets get started.
CentOS Installation media download options:
On the official website home page, to get the installation media, you have to click Get CentOS Now. You have 2 options listed, DVD ISO and Minimal ISO. There is a third option which is currently not listed on the download page, which is Everything ISO. You can download Everything ISO from the official mirror sites.
- DVD ISO– Download size around 4.5 GB. This is the desktop version with GUI and contains the standard linux packages which comes pre configured with any desktop version of the linux OS such as C, pyhon, ruby, php etc. Install this if you wish to work on CentOS for software development in desktop mode or for learning purposes. For additional packages not available by default, you will have to install them yourself using the package manager.
- Everything ISO– Download size around 10 GB. This contains all of CentOS including what is available in DVD ISO. This also has a GUI. If you have bandwidth to download 10 GB, I would recommend using this ISO if you dont have have internet bandwidth issue, else DVD ISO should be good too . Will use this version for this blog.
- Minimal ISO– Download size around 1 GB. This contains the core CentOS with out GUI. That is, you will have to work on command line interface. If you wish to run a server, this is recommended as you can selectively install any package you want such as php, apache etc. This helps to keep the OS small and robust. The interface is the same as in any CentOS VPS servers available in the market. If you wish to learn how to work on cloud servers running CentOS, this is what you should use. Normally you access your cloud server using SSH client such as putty. Once you have the access, it is same as working on CentOS in CLI (Command Line Interface) mode.
When I was downloading the ISO file directly, I faced broken download problem. That is, download stopped in the middle multiple times. I would recommend you to use torrent to download the installation media. You will see the torrent option on the download page.
What is Hyper-V
Hyper V is a virtualization software from Microsoft which allows you to run multiple Operating system on your Windows Machine. Hyper V is exactly like VMware Workstation or Oracle VirtualBox, except that Hyper V is from Microsoft and is available for free for almost all the versions of Windows except Home version.
Which Windows Version Supports Hyper V and how to Enable it
Since Hyper V is a part of Windows OS, separate installation is not required. But Hyper-V is not enabled by default and to use it, it needs to be enabled. To enable Hyper V, the following requirements must be met.
- Windows 10 Enterprise, Professional, or Education
- 64-bit Processor with Second Level Address Translation (SLAT)
- CPU support for VM Monitor Mode Extension (VT-c on Intel CPU’s)
- Minimum of 4 GB memory.
- The Hyper-V role cannot be installed on Windows 10 Home.
For detailed discussion please go through my blog on how to enable Hyper V in Windows.
Enable Virtualization Technology either Intel VT-x or AMD-V
To enable Hyper V, system must have Virtualization Technology Enabled in BIOS. For AMD processors, Virtualization is enabled by default, but in the case of Intel, VT-x may not be enabled by default. So, there are steps to be followed to enabled Intel VT in BIOS or UEFI. Please follow my post on Step by step guide to enable Intel VT-x or AMD-V in BIOS or UEFI in Windows 10 and Windows 8.
Before you start installing CentOS, we will have to create network connection switch first. Please follow the steps below
- Open Hyper-V Manager
- Click Virtual Switch Manager under action on the right pane in Hyper-V Manger screen
- Select External and click on create virtual switch.
- In the Virtual Switch properties dialog box, specify the name of your choice of the virtual switch and under Connection Type -> External Network, select your system Ethernet card and not your WiFi card. Click on OK to complete the process.
Once you have Hyper V setup successfully, Please follow the below steps to Install CentOS.
Step 1 – Open Hyper V Manager
First step is to open Hyper V manager. If you have setup everything correctly, you can search for Hyper-V Manager in Taskbar or you can find the shortcut in Start Menu under Windows Administrative tools.
On the right hand side you will see New-> Virtual Machine. Click on Virtual Machine to launch New Virtual Machine Wizard and click Next.
Step 2 – New Virtual Machine Wizard – Specify Name and Location
In this dialog box, please enter the name of the Virtual Machine. In Our case, we can name our Virtual machine as CentOS. But you can specify anything according to your preference. There is a checkbox to change the location where the Virtual Machine Files will be created. If you leave this unchecked, default location will be used. Else Check the box to change the location. I normally leave it as default. But if you have disk space constraints, it better to specify the location in a different disk drive.
Step 3 – New Virtual Machine Wizard – Specify Generation
These days you can create two versions(Generation) of Virtual Machines. The latest one is Generation 2. Before generation 2 type virtual machines came into existence, there was nothing like generation 1 virtual machines. All virtual machines were the same. But from generation 2 virtual machines, older virtual machines were called generation one virtual machines. Generation one virtual machines supports legacy hardware. Generation 2 Provides the following new functionality on a virtual machine:
- PXE boot by using a standard network adapter
- Boot from a SCSI virtual hard disk
- Boot from a SCSI virtual DVD
- Secure Boot (enabled by default)
- UEFI firmware support
But lets not complicate things for ourselves and choose Generation 1 and click next.
Step 4 – New Virtual Machine Wizard – Assign Memory
In this dialog box you will have to specify the amount of RAM you want to allocate to the virtual machine once the virtual machine is turned on. By default it is 1GB(1024 MB), but I normally prefer 2GB(2048 MB). Also, check Use Dynamic Memory for this Virtual Machine. This will allow Hyper V to adjust RAM according to the requirement of the Virtual machine.
Step 5 – New Virtual Machine Wizard – Configure Network
For virtual machines to be be able to communicate with other virtual machines or internet, it should have a network adapter. In this dialog box you will have to specify the network adapter. Please choose connection(external virtual virtual switch) from the drop down menu and click on next.
Step 6 – New Virtual Machine Wizard – Connect Virtual Hard Disk
Virtual Machines require hard disk space. This is the place where you decide how much disk space you want to allocate to the virtual machine. For CentOS, its recommended to select around 60 GB of disk space. Give Virtual disk a name of your choice. Please note that, not all of the allocated disk space will be used during the installation process. It is dynamically created, that is it will expand as the usage grows with the maximum limit of what you specify as the virtual disk size. Give the name of the virtual hard disk, specify the disk space and click next.
Step 7 – New Virtual Machine Wizard – Installation Option
In this dialog box you will be asked to specify the setup media. Check Install an operating system from bootable CD/DVD-ROM -> Image File. Browse to the downloaded ISO image file and click next.
Step 8 – New Virtual Machine Wizard – Completing the New Virtual Machine Wizard
This dialog box will show you the summary of the options you have selected. Click Finish to create the Virtual Machine. You will see the process for creating new virtual machine will begin. At the end end you will see Hyper-V Manager with the newly created virtual machine under Virtual Machine Box.
Step 9 – Hyper-V Manager- Virtual Machine Settings
After the virtual machine is created, you will see the name of the virtual machine listed under Virtual Machines.
Right click on the name of the virtual manager and click on settings to change Virtual machine Options. You will also see settings option on the right hand side, as shown in the screenshot below.
You can change the following most common virtual machine startup settings such as memory, network, CPU and so on…
Change Allocated Memory
here you can specify the memory with which the Virtual machine will start or boot. I normally choose 2048 MB(2 GB) and always check Enable Dynamic Memory.
Change the number of Virtual processor
Here you can specify the number of Virtual processors. Normally I set it to 2. It depends on the actual CPU your system has. Since I have i7 CPU (Which has 8 cores), I Normally allocate 2 core to the Virtual Machine.
Here you can create virtual Hard drives and DVD drives. By default, one Hard Disk and one DVD drive is created. If you want additional ones, you can create it here.
Here you can specify the network adapter to use for the Virtual machine.
Here you can specify the floppy drive. Floppy drives and things of the the past and almost extinct. You can leave it as default which is none.
Enable RemoteFX 3D Video Adapter
Enabling RemoteFX 3D Video Adapter give you access to rich graphics such as enabling full screen mode. This step is optional, but recommended.
Go to settings and click on Add hardware. You will see RemoveFX 3D Video Adapter. Click on that and click Add.
Make your selection from the drop down boxes and click OK.
Change Virtual machine name
If you wish to change the name of the virtual machine, you can do it here.
Step 10 – Connect to virtual machine
Now lets get started with the installation process. Click on the Virtual machine name you have created and click on start. This will start the CentOS VM. If you don’t see a new window popup, select click on connect. You will see the Virtual Machine window.
Step 11 – Start virtual machine
If you have clicked on Connect, you will see the screen below. You will have to click start to start the VM. If you have clicked start first, VM will start but you will not see the below window. In that case you will have to click on Connect.
Click on Start to start VM.
Start the Virtual Machine by clicking on start.
Step 12- Installation process should begin
You will see the below screen. Press “i” in your keyboard and press enter.
Step 13- Welcome to CentOS setup wizard – select language
Once the installation starts, you should see a dialog box asking you to select your language. Select the language of your choice and click on continue.
Step 14 – CentOS Setup – Installation summary
Now you should see the installation summary. If you see some grayed out area, please wait for a while until you see the below screen.
Click On Software Selection and select Gnome Desktop as shown below and click on Done and then click on begin installation.
Step 15- CentOS setup – setup root password and setup user
The installation process will begin and you will be presented with a screen to configure root password and create user as shown below.
Click on Root Password, you should see a dialog box to enter your root password. Enter your root password and click on done. If you get weak password warning, click on Done Twice.
Once root password is setup, click on User Creation. In the dialog box will enter the name of the user, password, check the box if you want to make the user administrator. If you get weak password warning, click on Done Twice.
It might take a while for the installation to complete. So relax Let the installation complete at you will be asked to restart once done. Please go ahead and click on Reboot.
Step 16- CentOS – Initial Setup
Once the system restarts, you will be see the below initial setup screen.
Click on Licence Agreement. In the dialog box that you see check the licence agreement at the bottom of the screen and click on done button at the top of the screen.
Click on Network setup and Hostname and turn it on. Network should configure automatically if you are connected to the internet.
Step 17- CentOS – Login
After the VM starts, you will see the boot loader. Select the first option and hit enter to boot.
Now you will see the login screen. You will see the user name you created earlier. Click on the user name and enter your password which was setup earlier.
Enter your password in the resulting screen. Now you will see the CentOS desktop. There are some more settings required. You will see a welcome screen
Step 18- CentOS – Welcome Screen – language preference
Once you have logged in for the first time, you will asked to select your default language in the welcome screen. Select the language of your choice and click on next.
Step 19- CentOS – Welcome Screen – Keyboard preference
Now you will be asked to set your keyboard. Select based on the keyboard preference you have.
Click next to continue.
Step 20- CentOS – Welcome screen – privacy
Now you will be asked to set your privacy which is basically, if you want the application to use the location service. Select yes or no using the slider. Click on next to continue.
Now you will be asked if you want to give color access to your location. You can accept or deny. I usually accept.
Step 21- CentOS – Welcome screen – setup online accound
Now you will be asked if you want to setup online account such as gmail etc.. for setting up mail and other services. I generally dont set it up here. If you want to set it, click on the service and you will be redirected to the the service provider authentication system where you will have to enter your user ID and password.
Step 22- CentOS – Welcome screen – All done
That it. Click on start using CentOS.
That it you are done.