VPS2Arch
The fastest way to convert a VPS to Arch Linux!
Author
Description
This script is used to convert a VPS, running another linux distro, to Arch Linux.
It should be only used if your VPS provider doesn't provide you an Arch Linux image.
Disclaimer
I'm not responsible for any damage in your system and/or any violation of the agreement between you and your vps provider.
Use at your own risk!
How To
Download the script on your VPS and execute it with root privileges
WARNING The script will delete any data in your VPS!
wget http://tinyurl.com/vps2arch
chmod +x vps2arch
./vps2arch
Some Debian VPS images don't have the CA certificates installed, so wget
will give you the following errors:
ERROR: The certificate of `gitlab.com' is not trusted.
ERROR: The certificate of `gitlab.com' hasn't got a known issuer.
To fix them just execute apt-get install ca-certificates
and then re-execute the previous commands.
How does it work?
It's Black Magic.
Just kiddin'
In a nutshell, it will download the Arch Linux Bootstrap Image and (see the wiki), extract the image to / and configure the Bootstrap chroot.
Now, about the critical part:
How can you wipe the system without breaking everything?
It's simple: using ld.so
from the Bootstrap chroot to launch the chroot
tool.
Since it will erase all the system directories except from the Bootstrap chroot, /dev
, /proc
, /sys
and the like,
the only way to launch a command inside the Bootstrap chroot is to using ld.so from the Bootstrap chroot itself.
At this point Arch Linux has been installed, but not configured.
The script will provide a SSH-able system automagically configuring grub (or syslinux), network and restoring the root password from the original system (or by using vps2arch
as password if no root password was set).
Once done doing its job, the script will ask you to manually reboot your VPS and voilร , PROFIT!
Does it really work?
Yes, it does!
On the Tested VPS Providers wiki page you can find a list of Tested VPS Providers.
Theoretically it should also work on real computers (running linux), but I think it's not worth it, because you can install it in the canonical way.
Contributing
If you have any useful modification, please use Pull requests.
If you have successfully used this script on a different distro - VPS combination, please contact me so that I can update the above list.
If you are not a developer, but you still want to contribute, you can donate me an account on your VPS provider and I'll do my best to support it.
Or you can just donate me some bucks I'll spend to buy a VPS on your provider in order to support it.
Caveats
IPv6 currently is not supported. If you need to use it, please configure it manually.