Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have successfully installed Arch Linux on VirtualBox but the internet is not working in it. There was no issue with the internet connection during the installation but when I boot from the virtual hard drive (using syslinux bootloader) I'm unable to connect to the internet.

When I boot from the installation CD and mount the root partition and then use installed system from # arch-chroot internet works well without doing anything at all and # ip link shows two interfaces lo and eth0

When I try to use # systemctl enable dhcpcd@enp3s0.service command, it gives an error 'Operation failed: No such file or directory however # ip link says there are two interfaces lo and enp3s0.

I want to know why there are two different names for the same ethernet port? and more important how do I solve this problem?

share|improve this question
lo is a loopback interface. – Evan Teitelman Aug 24 '13 at 19:03
up vote 5 down vote accepted

Installing Archlinux as a Guest on Virtualbox March 15, 2013 11:54 pm

Essentially, you can follow this guide, but there are several additional steps to take. https://wiki.archlinux.org/index.php/Beginners%27_guide#Installation

To fix the network:

/usr/sbin/dhcpd enp0s3 to check that you can load the dhcp client.
ln -s '/usr/lib/systemd/system/dhcpd@.service' '/etc/systemd/system/multi-user.target.wants/dhcpd@enp0s3.service'
change the references to eth0 in /etc/ifplugd/ifplugd.conf
create a profile for enp0s3 in /etc/network.d/interfaces by copying the example (this seems to be overwritten by the netcfg-auto-wired).
start and enable the auto service with systemctl

Remember that you can’t get packages from the net without the network :(

Relevant Links

Beginner’s Guide: https://wiki.archlinux.org/index.php/Beginners%27_guide#Installation
Fixing the network: https://bbs.archlinux.org/viewtopic.php?pid=1243601

share|improve this answer
This worked!!! but would you let me know why ethernet port is eth0 when i use arch-chroot and why enp0s3 when i boot from bootloader – Parth Parikh Aug 24 '13 at 19:20
Due to the new udev version, the devices will be renamed by default to names like enp0s3. This is not done by the kernel and no driver issue, just a renaming at boot time done by udev. Source: us.generation-nt.com/answer/… – vfbsilva Aug 25 '13 at 1:20
6/2/14, almost a year later and this works for me. Thank you. – BCqrstoO Jun 2 '14 at 19:30
@vfbsilva If you want the eth0 instead of enp0s3 then you need to add net.ifnames=0 biosdevname=0 to every line that contains /boot/vmlinuz-linux in the file /boot/grub/grub.cfg So all those lines should be similar to linux /boot/vmlinuz-linux root=UUID=8bfcc0b4-e13e-4d56-8eb9-85cd22f950cb rw net.ifnames=0 biosdevname=0 quiet . But please note that the arch community strongly discourages this. see unix.stackexchange.com/questions/81834/… – enthusiasticgeek Dec 5 '14 at 17:48

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.