How do I install drivers for the Atheros AR8161 Ethernet controller on 64-bit 12.10 using an Internet-connected 32-bit 12.04 PC and a USB flash drive?

How do I install drivers for the Atheros AR8161 Ethernet controller on 64-bit 12.10 using an Internet-connected 32-bit 12.04 PC and a USB flash drive?

Having bought a new HP Elite desktop PC and installed 64-bit Ubuntu 12.10 I’ve found it unable to connect to network thanks to its Atheros AR8161 Ethernet controller.

There are no PCI slots in the PC to use an old PCI NIC. I have got no USB NICs or smartphones to use for temporary Internet connection.

All I can use is a laptop with working Internet connection running 32-bit XUbuntu 12.04 and a USB flash drive to copy files between the PCs.

As far as I understand I will have to build a 64-bit 3.5.0-17 version of the alx module on a 32-bit 3.2.0-32 system and install it on the target machine, but I hardly have any idea on how to do that 🙁

Here is a closely related question.

Here is Solutions:

We have many solutions to this problem, But we recommend you to use the first solution because it is tested & true solution that will 100% work for you.

Solution 1

No need to compile anything or upgrade via a USB wireless card; you can download an updated kernel plus the required driver from quantal-backports on, copy them to your 12.10 machine with a usb key, install them from the command line (dpkg -i *.deb), then reboot. The files you need are:

  • linux-headers-3.5.0-18_3.5.0-18.29_all.deb
  • linux-image-3.5.0-18-generic_3.5.0-18.29_amd64.deb
  • linux-image-extra-3.5.0-18-generic_3.5.0-18.29_amd64.deb
  • linux-image-generic_3.
  • linux-libc-dev_3.5.0-18.29_amd64.deb
  • linux-backports-modules-cw-3.6-3.5.0-18-generic_3.5.0-18.2_amd64.deb
  • linux-backports-modules-cw-3.6-quantal-generic_3.

Check the actual version numbers available at, as the package names and filenames will change with each new kernel version. The second last package in that list contains the actual kernel modules, in this case for 3.5.0-18. The last one is a meta package, linux-backports-modules-cw-3.6-quantal-generic, that will always depend on the latest version of the compat-wireless linux kernel modules. You’ll need this one installed so that the next time you upgrade your kernel, you’ll also get the new version of the kernel modules you need.

Solution 2

I think, you must install build-essential linux-headers-generic linux-headers-uname -r output your 64-Bit PC wihout internet.
There is no easy way to install them.You can install ubuntu 64-Bit on a virtual machine and run this command:

sudo apt-get install build-essential linux-headers-generic linux-headers-(uname -r(your real 64-Bit PC output)

and then copy the archives folder to your real PC that is in /var/cache/apt/. Then you run this command in that copied folder.

sudo dpkg -i *.deb

After that, download and copy the driver package into your real 64-Bit computer.
Run these commands:

tar -xj compat*.tar.bz2
cd  compat-wireless-2012-11-14
sudo ./scripts/driver-select alx
sudo make
sudo make install

Don’t forget that You must enter the folders which contain packages(with cd command) before run commands.

Solution 3

try download a (it seems to include alx.ko) and install it on 12.10 with dpkg -i foobarbaz.deb

Note: Use and implement solution 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from or, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply