You can manually install an OS from a custom image on a dedicated server. If you do not have specific requirements for the OS, we recommend using standard images — from them you can install the OS via autoinstall or manually.
If the value in the RestartNeeded field in the response in step 3 is True, restart your computer.
3. Install the OS from your own image
To install the OS from a custom image, the qemu-iso script is used. The script downloads the ISO image to the server, starts a VNC server, and initiates the OS installation process.
You can load the OS image onto the server:
using the image URL hosted on a publicly accessible resource. The qemu-iso script will load the OS image into the server RAM;
or manually from your local computer to a disk or the server RAM.
Install with image loading via URL
Install with image upload to the server
Install a VNC client on your local computer. For a list of VNC clients for various OSs, see the Connect via VNC subsection of the Connect to server instructions.
Open CLI. On a local computer running Windows, use PowerShell.
Connect to the server via SSH forwarding the standard port for VNC — 5900:
ssh-L5900:localhost:5900 root@<ip_address>
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click .
Copy the URL of the OS image you intend to install. The image must be hosted on a publicly accessible resource, and its size must be at least 2 GB smaller than the server's RAM.
To make the image download faster, we recommend placing the image in Servercore S3 — for more information, see the Upload object instructions.
Run the qemu-iso script. The script will download the installation files to the server, start a VNC server, and initiate the OS installation process:
qemu-iso <url>
Specify:
<url> — the path to the OS image that you copied in step 4;
optional: -nic_type <virtual_network_adapter> — the type of network device to emulate in the virtual machine. For example, to install VMware ESXi, change the virtual network adapter to vmxnet3. A full list of supported virtual network adapters can be viewed using the command qemu-system-x86_64 -device help.
Wait for the message stating that the OS image has been uploaded to the server and the VNC server is running:
VM has been created!
Open the VNC client on your local computer.
Connect to the server. The connection process depends on the VNC client you choose. Connection parameters:
IP address — localhost:5900;
password — leave the field empty.
Complete all OS installation steps.
In the Rescue console, press Ctrl + C to terminate the qemu-iso process.
Optional: without exiting Rescue mode, configure the network interface. We recommend configuring the network interface right after installing the OS; otherwise, the server may become unreachable over the network.
Upload the image to a disk
Upload the image to RAM
Make sure that your server has an additional drive. The OS image must be placed on a drive on which the OS will not be installed. If there is no additional drive on the server, you can change the dedicated server configuration.
Install a VNC client on your local computer. For a list of VNC clients for various OSs, see the Connect via VNC subsection of the Connect to server instructions.
Open CLI. On a local computer running Windows, use PowerShell.
Connect to the server via SSH forwarding the standard port for VNC — 5900:
ssh-L5900:localhost:5900 root@<ip_address>
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click .
Save the image on your local computer.
Upload the OS image to the server:
6.1. View the name of the disk to which you will upload the OS image by displaying disk information:
lsblk
6.2. Create a partition on the disk:
fdisk /dev/<partition>
Specify <partition> — the disk partition to which the OS image will be downloaded. For example, for a disk named sdX — sdX1.
6.3. Create a file system using the mkfs utility (using the partition format ext4):
mkfs.ext4 /dev/<partition>
Specify <partition> — the partition on the disk that you created in step 6.2.
6.4. Mount the file system:
mount /dev/<partition> /mnt
Specify <partition> — the partition on the disk that you created in step 6.2.
6.5. Upload the OS image from the local computer to the dedicated server using the scp utility:
<iso_image_name> — the filename of the OS image in the format .iso;
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click ;
<partition> — the partition on the disk that you created in step 6.2.
Run the qemu-iso script. The script will start a VNC server and initiate the OS installation process:
qemu-iso <path_to_image>
Specify:
<path_to_image> — the path to the OS image file that you uploaded to the server in step 6.5. For example, /mnt/sdX1/Win_Server_2022.iso;
optional: -nic_type <virtual_network_adapter> — the type of network device to emulate in the virtual machine. For example, to install VMware ESXi, change the virtual network adapter to vmxnet3. A full list of supported virtual network adapters can be viewed using the command qemu-system-x86_64 -device help.
Wait for the message stating that the VNC server is running:
VM has been created!
Open the VNC client on your local computer.
Connect to the server. The connection process depends on the VNC client you choose. Connection parameters:
IP address — localhost:5900;
password — leave the field empty.
In the Rescue console, press Ctrl + C to terminate the qemu-iso process.
Optional: without exiting Rescue mode, configure the network interface. We recommend configuring the network interface right after installing the OS; otherwise, the server may become unreachable over the network.
Install a VNC client on your local computer. For a list of VNC clients for various OSs, see Connect via VNC of the Connect to server instructions.
Open CLI. On a local computer running Windows, use PowerShell.
Connect to the server via SSH forwarding the standard port for VNC — 5900:
ssh-L5900:localhost:5900 root@<ip_address>
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click .
Save the OS image on your local computer. The image size must be at least 2 GB smaller than the server's RAM.
Upload the OS image into the RAM of the dedicated server using the scp utility:
scp ./<iso_image_name> root@<ip_address>:/tmp/
Specify:
<iso_image_name> — the filename of the OS image in the format .iso;
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click .
Run the qemu-iso script. The script will start a VNC server and initiate the OS installation process:
qemu-iso <path_to_image>
Specify:
<path_to_image> — the path to the OS image that you uploaded to the server in step 5. For example, /tmp/Win_Server_2022.iso;
optional: -nic_type <virtual_network_adapter> — the type of network device to emulate in the virtual machine. For example, to install VMware ESXi, change the virtual network adapter to vmxnet3. A full list of supported virtual network adapters can be viewed using the command qemu-system-x86_64 -device help.
Wait for the message stating that the VNC server is running:
VM has been created!
Open the VNC client on your local computer.
Connect to the server. The connection process depends on the VNC client you choose. Connection parameters:
IP address — localhost:5900;
password — leave the field empty.
Complete all OS installation steps.
In the Rescue console, press Ctrl + C to terminate the qemu-iso process.
Optional: without exiting Rescue mode, configure the network interface. We recommend configuring the network interface right after installing the OS; otherwise, the server may become unreachable over the network.
4. Configure the network interface
After manual OS installation, the network configuration file may specify the interface name used in the virtual environment, for example eth0. After rebooting on a physical server, the network interface may receive a different name, for example enp1s0. Because of this mismatch, the server may be unreachable over the network until the network interface name is updated to the actual one. We recommend updating the name right after installing the OS, without exiting Rescue mode.
In the Rescue console, view the network interface name by displaying network interface information:
ip a
In the response, find the interface in the UP state that has a public IP address. Note or copy the network interface name in the altname field. For example:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:00:0f:0:f0 brd ff:ff:ff:ff:ff:ff
altname enp1s0
inet 203.0.113.0/24 brd 203.0.113.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe00::000c:00ff:fe0f:00f0/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
Here enp1s0 is the name of the required network interface.
Connect to the OS installed on the server; to do this, run the qemu-iso script without specifying an image:
qemu-iso
Open the netplan utility configuration file using the vi text editor:
vi /etc/netplan/00-installer-config.yaml
Change the parameter values. You can view the correct values in the Control panel: in the top menu, click Products → Dedicated Servers → server page → Network tab → click the required subnet.
network:
ethernets:
<eth_name>:
addresses:
- <ip_address>/<mask>
gateway4: <gateway>
renderer: networkd
version: 2
Specify:
<eth_name> — the name of the public network interface, the value from the altname field that you obtained in step 1;
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click ;
In the Rescue console, view the network interface name by displaying network interface information:
ip a
In the response, find the interface in the UP state that has a public IP address. Note or copy the network interface name in the altname field. For example:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:00:0f:0:f0 brd ff:ff:ff:ff:ff:ff
altname enp1s0
inet 203.0.113.0/24 brd 203.0.113.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe00::000c:00ff:fe0f:00f0/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
Here enp1s0 is the name of the required network interface.
Connect to the OS installed on the server; to do this, run the qemu-iso script without specifying an image:
qemu-iso
Open the netplan utility configuration file using the vi text editor:
vi /etc/netplan/00-installer-config.yaml
Change the parameter values. You can view the correct values in the Control panel: in the top menu, click Products → Dedicated Servers → server page → Network tab → click the required subnet.
network:
version: 2
renderer: networkd
ethernets:
<eth_name>:
addresses:
- <ip_address>/<mask>
gateway4: <gateway>
Specify:
<eth_name> — the name of the public network interface, the value from the altname field that you obtained in step 1;
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click ;
In the Rescue console, view the network interface name by displaying network interface information:
ip a
In the response, find the interface in the UP state that has a public IP address. Note or copy the network interface name in the altname field. For example:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 203.0.113.0/24 brd 203.0.113.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe00::000c:00ff:fe0f:00f0 /64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
Here enp1s0 is the name of the required network interface.
Connect to the OS installed on the server; to do this, run the qemu-iso script without specifying an image:
qemu-iso
Open the network interface configuration file using the vi text editor:
vi /etc/network/interfaces.d/50-cloud-init
Change the parameter values. You can view the correct values in the Control panel: in the top menu, click Products → Dedicated Servers → server page → Network tab → click the required subnet.
auto <eth_name>
iface <eth_name> inet static
address <ip_address>/<mask>
gateway <gateway>
Specify:
<eth_name> — the name of the public network interface, the value from the altname field that you obtained in step 1;
<ip_address> — the public IP address of the server, for example 203.0.113.0. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click ;
Initialize the network interfaces; to do this, restore the previous server boot template or reboot the server from the OS. When rebooting the server from the OS, the boot template will automatically change to the one that was set before booting the server in Rescue mode.
2.1. In the Control panel, in the top menu, click Products and select Dedicated Servers.
2.2. In the Servers section, open the server page → Operating system tab.
2.3. Click Change boot template.
2.4. In the Boot template field, select Boot to Rescue.
Connect to the server via SSH forwarding the standard port for VNC — 5900.
ssh-L5900:localhost:5900 root@<ip_address>
Specify <ip_address> — the public IP address of the server. You can copy it in the Control panel: in the top menu, click Products → Dedicated Servers → Servers → server page → Operating system tab → in the IP field, click .
View the network adapter name by displaying Ethernet network device information:
lspci |grep Ethernet
The network adapter name will appear in the response. Remember or copy it.
The list will contain network interfaces from address 0000 to 0013.
10.2. Find the interface that has the names of network adapters obtained in step 4 specified in the Driver Desc parameter value. Save the value of the NetCfgInstanceId parameter for the network adapter with the lowest number in the list.
Specify <net_cfg_instance_id> — the value of the NetCfgInstanceId parameter that you saved in step 10.2.
11.2. Change the parameter values. You can view the correct values in the Control panel: in the top menu, click Products → Dedicated Servers → server page → Network tab → click the required subnet.
IPAddress — the public IP address of the server, for example 203.0.113.0;
SubnetMask — subnet mask;
DefaultGateway — default gateway;
EnableDHCP — enter 0 if you do not use DHCP, if you do — 1.