Virtual Private Server

From ArchWiki
Revision as of 00:05, 28 November 2012 by Thanil (Talk | contribs) (Added section on how to move VPS to netcfg)

Jump to: navigation, search

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary end From Wikipedia:Virtual private server:

Virtual private server (VPS) is a term used by Internet hosting services to refer to a virtual machine. The term is used for emphasizing that the virtual machine, although running in software on the same physical computer as other customers' virtual machines, is in many respects functionally equivalent to a separate physical computer, is dedicated to the individual customer's needs, has the privacy of a separate physical computer, and can be configured to run server software.

Providers that offer Arch Linux

Warning: We cannot vouch for the honesty or quality of any provider. Please conduct due diligence before ordering.
Note: This list is for providers with a convenient Arch Linux image. Using Arch on other providers is probably possible, but would require loading custom ISOs or disk images or installing under chroot.
Provider Arch Release Virtualization Locations Notes
Afterburst 2010.05 i686/x86_64 OpenVZ Nuremburg Formerly FanaticalVPS, Kernel used as off September 6th on Milly Stack is too old to run Arch on.
AlienVPS 2010.05 Xen, KVM Los Angeles, New York 2011.?? Xen Moscow Can pay per hour. Lists an invalid release version of the installer.
Edis 2011.08 i686/x86_64 vServer, KVM Austria, Chile, Germany, France, Hong Kong, Italy, Iceland, Poland, Sweden, Switzerland, Spain, UK, USA
EOReality (?) i686/x86_64 OpenVZ Chicago Need to use special glibc-vps repo for this provider . See OpenVZ troubleshooting for instructions. You will also need to remove heimdal.
DirectVPS 2012.09 x86_64 Xen Amsterdam, Rotterdam
Generation-Host 2012.07 Xen Chicago IL, Clifton NJ and Toronto ON Canada
GigaTux 2011.08 x86_64 Xen Chicago, Frankfurt, Israel, London, San Jose
Host Virtual 2011.08 Xen Amsterdam, Chennai (Madras), Chicago, Dallas, Hong Kong, London, Los Angeles, New York, Paris, Reston, San Jose
Hostigation 2010.05 i686 OpenVZ, KVM Charlotte, Los Angeles You can migrate to x86_64.
IntoVPS 2012.05 i686/x86_64 OpenVZ Amsterdam, Bucharest, Dallas, Fremont, London 2012.07 Xen Atlanta, Dallas, Fremont, London, Newark, Tokyo Uses a custom kernel; do not install the linux package.
Lylix 2007.08  ?  ?
Node Deploy  ? OpenVZ, KVM LA, Germany unmanaged, solusvm server manager
Netcup 2011.10 x86_64 vServer Germany beta, uses custom Kernel (2.6.36) with no direct iptables access 2010.05 i686/x86_64 OpenVZ Canada 2011.10 i686/x86_64 OpenVZ, KVM Germany
Rackspace Cloud 2011.10 Xen Chicago, Dallas, London, Hong Kong Can pay per hour. 2009.10 OpenVZ, KVM Atlanta, England, Germany, Los Angeles
Tilaa 2012.04 i686/x86_64 KVM Amsterdam
TransIP 2011.08 KVM Amsterdam
XenVZ 2009.12 x86_64 OpenVZ, Xen UK?
Virpus 2010.05 x86_64 OpenVZ, Xen Kansas City
Vmline 2012.08.04-dual.iso Xen-HVM Poland - Kraków S-Net reseller. It's probably imposible to install i686 due to lack of xen_netfront and xen_blkfront modules
VPS6.NET 2010.05 i686/x86_64 OpenVZ, 2012.01 x86_64 Xen OpenVZ, Xen Germany, Romania, Turkey, USA 2010.05 i686/x86_64 Xen United Kingdom Appears to use a custom kernel; do not install the linux package.



Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Are there instructions specific to VPSes? (Discuss in Talk:Virtual Private Server#)

See KVM#Preparing an (Arch) Linux guest.


Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Move some of the #Troubleshooting instructions here. (Discuss in Talk:Virtual Private Server#)


Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Are there instructions specific to VPSes? (Discuss in Talk:Virtual Private Server#)

See Xen#Arch as Xen guest (PVHVM mode) and/or Xen#Arch as Xen guest (PV mode).


OpenVZ: kernel too old for glibc

Are you on a virtual private server (VPS) with an old kernel & broke your system? Are you using OpenVZ?

Arch Template Used:

Note: for installs that have not been updated to glibc-2.16, it will save you lots of time and prevent major breakage to do:
pacman -U<arch>/glibc-2.16.0-99-x86_64.pkg.tar.xz is required

where <arch> is replaced by i686 or x86_64 as required. Add a single "-d" if needed. The instructions below assume that this has been done.

Following similar instructions from DeveloperWiki:usrlib.

Try doing the following to fix it:

1) Edit /etc/pacman.conf and add the following repository ABOVE [core]:

for 32-bit:

Server =

for 64-bit:

Server =

2) Then run pacman -Syy followed by pacman -Syu. You will be notified to upgrade pacman first.

3) Upgrade the pacman database by running pacman-db-upgrade as root.

4) Edit /etc/pacman.conf.pacnew (new pacman config file) and add the following repository ABOVE [core]:

Server =$arch

5) Replace /etc/pacman.conf with /etc/pacman.conf.pacnew (run as root):

mv /etc/pacman.conf.pacnew /etc/pacman.conf

6) Upgrade your whole system with new packages again pacman -Syu

If you get the following or similar error:

initscripts: /etc/profile.d/ exists in filesystem

Simply delete that file (e.g., rm -f /etc/profile.d/, then run pacman -Syu again.

If you get the following or similar error:

filesystem: /etc/mtab exists in filesystem

Run pacman -S filesystem --force

If you get the following or similar error:

libusb-compat: /usr/bin/libusb-config exists in filesystem

Run pacman -S libusb and then pacman -S libusb-compat

7) Before rebooting, you need to install the makedev package by running pacman -S makedev.

8) Add MAKEDEV to /etc/rc.local:

/usr/sbin/MAKEDEV tty
/usr/sbin/MAKEDEV pty

9) Edit /etc/inittab, comment out the following lines (otherwise you will see errors in /var/log/errors.log):

#c1:2345:respawn:/sbin/agetty -8 -s 38400 tty1 linux
#c2:2345:respawn:/sbin/agetty -8 -s 38400 tty2 linux
#c3:2345:respawn:/sbin/agetty -8 -s 38400 tty3 linux
#c4:2345:respawn:/sbin/agetty -8 -s 38400 tty4 linux
#c5:2345:respawn:/sbin/agetty -8 -s 38400 tty5 linux
#c6:2345:respawn:/sbin/agetty -8 -s 38400 tty6 linux

10) To enable the use of the hostname command, install the package inetutils from the official repositories.

11) Save and reboot.

Enjoy & thank ioni if you happen to be in #archlinux

Moving your OpenVZ VPS from network configuration in rc.conf to netcfg

1) Install netcfg

pacman -S netcfg

2) Create a netcfg configuration file /etc/network.d/venet

DESCRIPTION='OpenVZ connection'
#IPv4 address
'addr add broadcast dev venet0'
#IPv4 route
'route add default dev venet0'
#IPv6 address
'addr add xxxx:xx:xx::x/128 dev venet0'
#IPv6 route
'-6 route add default dev venet0'
DNS=('' '')

3) Edit your netcfg main conf file /etc/conf.d/netcfg


4) Try your new setup

rc.d stop network && ip addr flush venet0 && netcfg venet

Your VPS should still be connected and have its IP addresses set correctly. (Check with ip a)

DO NOT proceed to next step if this isn't the case.

5) Make your new setup survice reboots

In the DAEMONS array in /etc/rc.conf, replace network with net-profiles.

Remove all networking information that is in /etc/rc.conf.


SSH fails: PTY allocation request failed on channel 0

Some VPSes have an outdated rc.sysinit. You may be able to login via serial console or with

> ssh root@broken.server '/bin/bash -i'

Then run the following:

# mv /etc/rc.sysinit.pacnew /etc/rc.sysinit
# reboot

Once it’s working, you should be able to comment out the udevd_modprobe line in rc.sysinit to save a bit of RAM the next time you reboot.

If the above doesn’t work, take a look at