On the Mac Mini model from late 2012 (aka 6,2) the default ethernet driver of Proxmox VE 2.3 doesn’t support the new broadcom interface. It’s necessary to build the driver from source.
This is a guide to build the “tg3”-driver from source on a Proxmox VE 2.3 installation.
For a smooth installation you will need the following:
- A working computer with cd-writer and internet connection
- CDs and usb-stick
- External cd/dvd-drive
- Proxmox VE 2.3 Image
- Debian squeeze cd1 image
- tg3 kernel module sources
- Proxmox VE 2.3 kernel headers for kernel 2.6.32-18
2. Install system
Burn the Proxmox VE 2.3 image to a cd.
Proxmox VE 2.3 uses the stable version of the debian linux distribution, aka squeeze. The provided kernel needs additional boot parameters to be able to handle the modern Mac Mini.
Enter the following boot parameters:
Proceed with the installation and enter user and system details according to your needs.
After the installation the bootloader configuration must be changed.
- Edit “/etc/default/grub”
sudo nano /etc/default/grub
- Add to the parameter “GRUB_CMDLINE_LINUX_DEFAULT” “noapic”
… to …
- Afterwards run
- And you’re done with the base system installation.
By default the provided kernel module for the broadcom ethernet device doesn’t support the new interface used in Mac Mini Late 2012.
It’s necessary to download and compile the module “tg3”.
First of all we’re going to need the “build-tools”. This package contains all tools required for compiling a source file.
- Burn the Debian Squeeze CD1 to a cd.
Or copy it to an usb-stick:
dd if=debian.iso of=/dev/sdb
Warning: Be sure that you write the image to the correct device. Otherwise you may severely harm your system or lose data!
Find your usb-stick with one of the following commands:
blkid -o list lsblk
- Boot your proxmox machine
- Insert the Debian Squeeze CD1 or the usb-stick containing this image and mount it
mount /dev/sdb1 /mnt
- Change your location to the mounted device
- Install all packages of the group “build-essential” (See 4. Appendix > Package list)
Packages are installed with “dpkg”:
dpkg -i package.deb
Now we need to install the kernel headers. These are required to build kernel modules for the running kernel.
The Proxmox VE installation comes with a modified kernel 2.6.32-18
- First check your kernel version
- Download the kernel headers according to your kernel verison from
Look for “pve-headers-2.6.32-18-pve_2.6.32-88_amd64.deb”.
- Save this package to your usb-stick or burn it to a cd. Install this package as described in“Build-tools”.
If you use a CD wait with burning until you have downloaded the Driver in the next section.
As last step before compiling we will need the actual driver itself.
- Download the driver sources for “Linux” from
- Extract the downloaded package
tar -xzf tg3-3.124c
- Save this package to your usb-stick or burn it to a cd.
- Mount your media as descriped in “Build-tools”.
- Navigate to your extracted driver. For example:
- Complie the driver
make tg3_flags.h make make install
- Reload the driver
rmmod tg3 modprobe tg3
- Now there should appear an additional interface, usually “eth0”, by issuing:
ip addr show
The following packages must be installed. The list is sorted by dependency, packages which are further indented are dependencies of a package above.
For example “libc-dev-bin” needs “libc6”, therefore “libc6” must be installed before “libc-dev-bin”. “libc6-dev” requires “libc-dev-bin” and “linux-libc-dev” to be previously installed.
Dependencies of “build-essential” can also be found under: