Install Debian-based Proxmox VE 2.3 on Mac Mini Late 2012 (6,2)

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.

 Contents
  1. Prerequisites
  2. Install
  3. Ethernet
  4. Appendix
1. Prerequisites

For a smooth installation you will need the following:

2. Install system

 Prepare boot-device

Burn the Proxmox VE 2.3 image to a cd.

Boot

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:

linux noapic

Proceed with the installation and enter user and system details according to your needs.

 Bootloader

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”
GRUB_CMDLINE_LINUX_DEFAULT="quiet"

… to …

GRUB_CMDLINE_LINUX_DEFAULT="noapic quiet"
  • Afterwards run
update-grub2
  • And you’re done with the base system installation.
3. Ethernet

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”.

Build-tools

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

CD:

mount /media/cdrom

USB-Stick

mount /dev/sdb1 /mnt
  • Change your location to the mounted device
cd /mnt
  • Install all packages of the group “build-essential” (See 4. Appendix > Package list)
    Packages are installed with “dpkg”:
dpkg -i package.deb

Kernel headers

 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
uname -r

Driver

As last step before compiling we will need the actual driver itself.

  • Download the driver sources for “Linux” from
    http://www.broadcom.com/support/ethernet_nic/netxtreme_desktop.php
  • 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:
cd /mnt/tg3-3.124c
  • 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
4. Appendix

Package list

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.

  • libc6-dev
    • libc-dev-bin
      • libc6
    • linux-libc-dev
  • dpkg-dev
    • base-files
    • binutils
      • libstdc++6
        • libunwind7
      • zlib1g
    • libdpkg-perl
      • libtimedate-perl
        • perl
  • gcc
    • cpp
      • cpp-4.4
        • gcc-4.4-base
        • libmpfr4
          • libgmp3c2
    • gcc-4.4
      • libgomp1
      • libunwind7-dev
  • g++
    • g++-4.4
      • libstdc++6-4.4-dev
        • libstdc++6
  • make
  • build-essential

Dependencies of “build-essential” can also be found under:
http://packages.debian.org/squeeze/build-essential

 

 

Es wurden keine Ergebnisse gefunden, die Ihren Suchkriterien entsprechen.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fill out this field
Fill out this field
Bitte geben Sie eine gültige E-Mail-Adresse ein.
You need to agree with the terms to proceed

Support