Triple Boot auf MacMini Late 2012

Mit den MacMinis von Ende 2012 (Version MacMini 6,1) soll wieder eine Triple-Boot-Laborumgebung geschaffen werden.

Mac OS 10.8 (Mountain Lion) ist vorinstalliert. Mit dem Bootcamp-Assistent wird Windows 8 dazu installiert. Mit einer Ubuntu 12.10-Installation kommt dann noch Linux hinzu.

In Mac OS wird Refind als grafische Bootauswahloberfläche installiert. Darin lässt sich das Default-Betriebssystem einstellen.

Mit dem Bootcamp-Assistenten wird die Mac OS-Partition verkleinert (z. B. auf 80 GB), die Apple-Windowstreiber geladen und auf einen USB-Stick gespeichert, dann die Windows-Installation gestartet. Während der Installation muss die Bootcamp-Partition gelöscht werden, weil der Windows-Installer nicht auf ihr installieren kann. Dabei kann die Bootcamp-Partition gleich in der richtigen Größe (z. B. 100 GB) angelegt werden. Danach läuft die Installation durch. Am Ende sind in Windows noch die Apple-Treiber vom Stick zu installieren.

Ubuntu 12.10-Installation:

Ich verwende den Security-Remix, in dem schon mal Spiele nicht mehr enthalten sind, dafür eine Bootreparatur und ein Betriebssystem-Deinstaller. Da die Distribution keine passenden Netzwerktreiber enthält, stellt ein zum Glück unterstützter USB-Ethernet-Adapter die Netzwerkverbindung her.Die Installation erfolgt mit externem Superdrive-Laufwerk.

Nach dem Booten von DVD ist zunächst die manuelle Partitionierung von Bedeutung:

Ich will btrfs verwenden. Dann ist prinzipiell möglich, mit Snapshots zu arbeiten. Die Installation benötigt

  • die Root-Partition, Größe 40 GB mit btrfs
  • eine kleine biosgrub-Partition (10 MB)
  • eine swap-Partition
  • Bootlader soll nach /dev/sda geschrieben werden

Damit läuft die Installation durch.

Nach dem Reboot geht es in Ubuntu weiter:

  • Amazon-Shopping entfernen: sudo apt-get remove unity-lens-shopping
  • Systemupdates einspielen
  • Laborbenutzer anlegen
  • wireshark, iperf, vim (für Laboraufgaben) installieren
  • Zum Installieren der Netzwerktreiber ist derzeit noch ein Kompilieren nötig, deshalb Linux-Header und build-essential installieren
  • wireshark für non-root zulassen: sudo dpkg-reconfigure wireshark-common
  • Labornutzer in Gruppe wireshark setzen: usermod -aG wireshark kone
  • Ethernet-Treiber: Der Original-Broadcom-Treiber lässt sich nicht übersetzen. Entweder muss man die Source ändern oder eine modifizierte Version laden. Version ist die 3.124c. Hilfreich war der Post http://ubuntuforums.org/showthread.php?t=2078320&page=2. Evtl. kann man den Treiber mit dkms dauerhaft installieren.
  • WLAN-Treiber: Grundsätzlich den b43-Treiber laden und die passende Firmware ergänzen
     sudo apt-get install b43-fwcutter firmware-b43-installer
     export FIRMWARE_INSTALL_DIR="/lib/firmware"
     wget http://www.lwfinger.com/b43-firmware/broadcom-wl-5.100.138.tar.bz2
     tar xjf broadcom-wl-5.100.138.tar.bz2
     sudo b43-fwcutter -w "$FIRMWARE_INSTALL_DIR" broadcom-wl-5.100.138/linux/wl_apsta.o
  • Das Booten von btrfs führt zu einer Fehlermeldung. Sie wird so eliminiert: In der Datei /etc/grub.d/00_header wird die folgende Zeile (mit if…) auskommentiert. Danach  noch ein update-grub.
    [...]
    function recordfail {
      set recordfail=1
      #if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env recordfail; fi; fi
    }
    [...]

Ein Snapshot-Utility „snapper“ für btrfs gibt es bei opensuse. Für Ubuntu 12.10 sind keine Dateien verfügbar, aber für 12.04. Die Files sind zu finden unter http://download.opensuse.org/repositories/filesystems:/snapper/xUbuntu12.04/amd64. Ein Tutorial findet sich unter http://en.opensuse.org/Portal:Snapper.