CloudAtCost Custom OS
This tutorial attempts to remake the original one present on the original CloudAtCost wiki. The original wiki had become rather overrun with spam, so the owner shut it down.
Supported OS
The following OS's are supported, according to netboot.xyz:
- Antergos
- Arch Linux
- Architect Linux
- CentOS
- CoreOS
- Debian
- Fedora
- FreeBSD
- Gentoo
- Mageia
- Manjaro Linux
- Microsoft Windows
- MirOS
- OpenBSD
- OpenSUSE
- RancherOS
- Scientific
- Tiny Core Linux
- Ubuntu
- Many more (check the site)!
Prerequisites
I would advise doing this on a fresh CloudAtCost server, preferably using the Debian 8 Jessie image. Make sure your console works, as you'll need it throughout the entire installation.
It appears that the console works much more consistently on DC-2 as opposed to DC-3, so I'd give it a shot there for the most successful installation (plus, DC-2 is probably as stable you're gonna get at the moment).
Steps
1. Login into your fresh server, preferably using the console (SSH will work too).
2. Run the following command:
cd /boot && wget -c "https://boot.netboot.xyz/ipxe/netboot.xyz.lkrn"
Note: This is where you'll need the console. If you're not already on it, do so now.
3. Reboot your server using Ctrl+Alt+Del (or clicking the blue square in the corner of the console), or using the "reboot" command.
4. When you see the VMWare splash screen, quickly press the letter "C".
Note: You should now see a "grub>" prompt. If not, you'll need to reboot and try step 4 again.
5. In the grub prompt, type the following command:
linux16 /netboot.xyz.lkrn
Note: Be prepared to quickly press "M" after this next command:
6. Then boot into it using the following command:
boot
7. Quickly press "M" to bring up the menu.
8. Select "manual network setup".
9. Now you'll need to provide the following information in order for the script to download the image. This can all be found on the information icon in the CloudAtCost panel:
IP address (found in panel)
Subnet mask (if you have issues relating to networking, try leaving this blank)
Default gateway (found in panel)
Set DNS to 8.8.8.8
Note: To avoid HTTP/S timeouts when fetching iPXE bootfiles, avoid inputting netmask while performing the previous steps. If iPXE times out HTTP/s connections, reboot and perform the steps above starting from the grub prompt. This is a handshake bug between CloudAtCost VMs and our iPXE host server that we are currently working on addressing.
10. If everything is successful, you should now get a list of OS's which you can choose to your hearts content. Pick the OS you'd like and then follow the instructions. The script will lead you to installing the operating system of your choice.
That's it!
If you have any issues, check the ##CloudAtCost channel on Freenode. Plenty of people there available to help.
Wouldn't advise using these below, try above!
Ubuntu
You will need to obtain an installation image from Ubuntu (Current Minimal/Netinstall ISO as of writing is 16.04 located Here)
Build a VM (Ubuntu/Debian) through the CloudAtCost consumer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://archive.ubuntu.com/ubuntu/dists/xenial/main/installer-amd64/current/images/netboot/mini.iso" When the wget download of the mini.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/mini.iso grub> linux (loop)/linux grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard Ubuntu install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you may continue on with partitioning and setting up your custom Ubuntu installation.
Debian
You will need to obtain an installation image from Debian (Current Minimal/Netinstall ISO as of writing is 8.5.0 located Here)
Build a VM (Ubuntu/Debian) through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://cdimage.debian.org/debian-cd/8.5.0/amd64/iso-cd/debian-8.5.0-amd64-netinst.iso" When the wget download of the debian-8.5.0-amd64-netinst.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/debian-8.5.0-amd64-netinst.iso grub> linux (loop)/linux grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard Debian install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you may continue on with partitioning and setting up your custom Debian installation.
CentOS
You will need to obtain the Netbootcd installation image (Current netbootcd ISO as of writing is 7.2 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://netbootcd.us/downloads/7.2/NetbootCD.CorePlus.iso" When the wget download of the NetbootCD.CorePlus.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/NetbootCD.CorePlus.iso grub> linux (loop)/vmlinuz grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard CentOS install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you will need to run
sudo /usr/bin/nbscript.sh to begin the install. You may continue on with partitioning and setting up your custom CentOS installation.
Fedora
You will need to obtain the Netbootcd installation image (Current netbootcd ISO as of writing is 7.2 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://netbootcd.us/downloads/7.2/NetbootCD.CorePlus.iso" When the wget download of the NetbootCD.CorePlus.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/NetbootCD.CorePlus.iso grub> linux (loop)/vmlinuz grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard Fedora install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you will need to run
sudo /usr/bin/nbscript.sh to begin the install. You may continue on with partitioning and setting up your custom Fedora installation.
Scientific Linux
You will need to obtain the Netbootcd installation image (Current netbootcd ISO as of writing is 7.2 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://netbootcd.us/downloads/7.2/NetbootCD.CorePlus.iso" When the wget download of the NetbootCD.CorePlus.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/NetbootCD.CorePlus.iso grub> linux (loop)/vmlinuz grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard Scientific Linux install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you will need to run
sudo /usr/bin/nbscript.sh to begin the install. You may continue on with partitioning and setting up your custom Scientific Linux installation.
Mageia
You will need to obtain the Netbootcd installation image (Current netbootcd ISO as of writing is 7.2 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://netbootcd.us/downloads/7.2/NetbootCD.CorePlus.iso" When the wget download of the NetbootCD.CorePlus.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/NetbootCD.CorePlus.iso grub> linux (loop)/vmlinuz grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard Mageia install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you will need to run
sudo /usr/bin/nbscript.sh to begin the install. You may continue on with partitioning and setting up your custom Mageia installation.
OpenSUSE
You will need to obtain the Netbootcd installation image (Current netbootcd ISO as of writing is 7.2 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://netbootcd.us/downloads/7.2/NetbootCD.CorePlus.iso" When the wget download of the NetbootCD.CorePlus.iso image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/NetbootCD.CorePlus.iso grub> linux (loop)/vmlinuz grub> initrd (loop)/initrd.gz grub> boot The installation ISO will boot into the standard OpenSUSE install setup. From there, you will need to navigate to network settings and supply the IP and Gateway provided for your VM in the CloudAtCost customer panel. Use 8.8.8.8 (Google DNS) for the requested DNS server. Once this step has been completed, you will need to run
sudo /usr/bin/nbscript.sh to begin the install. You may continue on with partitioning and setting up your custom OpenSUSE installation.
Gentoo
PLEASE UNDER NO CIRCUMSTANCES TRY THIS WITHOUT PRIOR EXPERIENCE OR KNOWLEDGE OF GENTOO AND LINUX/LINUX KERNEL CONFIGURATION
PLEASE FOLLOW THE HANDBOOK, THESE ARE JUST GUIDELINES ON HOW TO MAKE GENTOO RUN QUICKLY, YOU WILL NEED TO SET UP NETWORKING TO USE SSH
HANDBOOK LOCATED AT Handbook:AMD64
Build a DEBIAN VM ONLY through the CloudAtCost customer panel with a disk image size GREATER than 10GB. Log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
mkfs.ext3 /dev/sda3 A new filesystem will be created with the filesize the Debian image for the VM does not use (the image default size is 10GB, so if you build a VM with 20GB, /dev/sda3 will be 10GB). Once that filesystem has been created, next you will need to;
mkdir /mnt/gentoo mount /dev/sda3 /mnt/gentoo cd /mnt/gentoo We have now created the filesystem for the root partition for the Gentoo installation, we will need to fetch a stage4 tarball and portage snapshot (easiest use for CloudAtCost customers);
wget -o http://gentoo.mirrors.tera-byte.com/releases/amd64/autobuilds/current-stage4-amd64-minimal/stage4-amd64-minimal-20160721.tar.bz2 (current stage4 as of writing) wget -o http://gentoo.mirrors.tera-byte.com/snapshots/portage-latest.tar.bz2 Once the stage4 file and portage snapshot have completed downloading, we need to enter the following;
tar xvjpf stage4*.bz2 && tar xvjpf portage-latest-tar.bz2 -C /mnt/gentoo/usr This process may take some time to complete, as it is extracting your entire system. Once it completes, we will need to mount /proc, /dev and /sys to continue with the installation;
mount -t proc proc /mnt/gentoo/proc mount --rbind /dev /mnt/gentoo/dev mount --rbind /sys /mnt/gentoo/sys Then chroot into our gentoo installation;
chroot /mnt/gentoo env-update && source /etc/profile At this point, if you want a quick-and-dirty install, you can simply run
grub2-mkconfig && grub2-install /dev/sda Don't forget to run `passwd` to change the root password, or you will be performing these steps all over again.
From this point you can reboot into your new Gentoo installation, but you will not have networking. Please follow the handbook for instructions on how to properly configure networking. The driver required is e1000 (modprobe e1000) and the network interface will appear as ens32
Alpine Linux
You will need to obtain the Alpine Linux installation image (Current Alpine Linux ISO as of writing is 3.4.3 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd ~ && wget -c "http://dl-cdn.alpinelinux.org/alpine/v3.4/releases/x86_64/alpine-virt-3.4.3-x86_64.iso" When the wget download of the alpine-virt-3.4.3-x86_64.iso image has completed, you will be returned to the bash prompt.
At this point, because Alpine Linux is a syslinux boot based distribution, you will need to extract the image contents into /boot by typing the following into the bash prompt:
mkdir /mnt/alpine mount ~/alpine-virt-3.4.3-x86_64.iso /mnt/alpine cp -av /mnt/alpine/* /boot/ Now we can reboot to a GRUB prompt
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> linux /boot/vmlinuz-virtgrsec alpine_dev=sda1:ext2 modules=squashfs,ext2 BOOT_IMAGE=/boot/vmlinuz-virtgrsec grub> initrd /boot/initramfs-grsec grub> boot The installation ISO will boot into the standard Alpine Linux console, from which you may proceed with your installation.
ArchLinux
Guide to be completed. For the interim, please use vps2arch located at GitHub:drizzt
RancherOS
You will need to obtain the RancherOS installation image (Current RancherOS ISO as of writing is 0.6.0 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "https://releases.rancher.com/os/v0.6.0/rancheros.iso" When the wget download of the rancheros.iso image has completed, you will be returned to the bash prompt.
Now we can reboot to a GRUB prompt
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> loopback loop (hd0,1)/rancheros.iso grub> linux (loop)/boot/vmlinuz rancher.password=password grub> initrd (loop)/boot/initrd.gz grub> boot The installation ISO will boot into the standard RancherOS console, from which you may proceed with your installation.
CoreOS
Guide to be completed
NetBSD
Guide to be completed
OpenBSD
You will need to obtain the OpenBSD image (Current OpenBSD RD image as of writing is 6.0 located Here)
Build a VM through the CloudAtCost customer panel and log into that VM with the supplied login credentials using the Console, if you prefer using SSH please be advised you will need the console window open for the entire process. When you arrive at the bash prompt, type the following;
cd /boot && wget -c "http://ftp.openbsd.org/pub/OpenBSD/6.0/i386/bsd.rd" When the wget download of the OpenBSD image has completed, you will be returned to the bash prompt.
Hit the 'Ctrl-Alt-Delete' button located in the top right hand corner of the console window to trigger a reboot of the VM.
'ctrl-alt-delete' button When the machine reboots, a VMWare splash page will appear, followed by the Grub2 prompt. At this prompt, use the 'c' key to enter grub console. You will be presented with a prompt that will appear as;
grub>
At this prompt, type the following;
grub> kopenbsd /bsd.rd grub> boot The installation ISO will boot into the standard OpenBSD install setup. You can then proceed with the installation of OpenBSD.
DrangonflyBSD
Currently unsupported, as DragonflyBSD is built with disklabel64 as opposed to disklabel32.