*BSD su un MacMini 4,1? Neanche per sogno. :-(
Ho passato gli ultimi due giorni a cercare di configurare il Mac Mini in alluminio (rev. 4,1) come NAS server casalingo con storage crittografato, e volevo metterci un sistema BSD. C'è già un OpenBSD embedded sul gateway soekris, e un compagno sarebbe stato carino. :-)
Indovinate un po', non c'è verso:
- FreeBSD 8.1 non completa il processo di boot, a causa di un bug nel chipset SATA, NV MCP89;
- FreeBSD 8.2-RC1 fa il boot ma, a causa dello stesso bug, non riconosce nessun drive SATA né nessun dispositivo USB umass;
- NetBSD 5.1 fa il boot senza problemi, gestisce i dischi SATA tramite il driver generico pciide (niente DMA, quindi piuttosto lento) ma, sfortunatamente, non gestisce il controller ethernet BCM57762. Ho provato con patch veloci e sporche per portare il driver bge al livello di -current, ma niente da fare: il MII link detection funziona, la scheda trasmette ma non riceve. Anche il controller sdmmc funziona con -current ma non con la 5.1-RELEASE. L'ACPI funziona correttamente;
- OpenBSD 4.8 fa il boot, accede ai drive SATA senza DMA, e riconosce la scheda di rete bge, ma mostra lo stesso identico comportamento di NetBSD 5.1 col driver di -current;
- DragonFlyBSD 2.8.2 non entra nemmeno in kernel mode, sospetto a causa di bug ACPI;
- PureDarwin non mi ha ispirato granché, a causa dei tanti problemi bloccanti.
Tutti supportano lo storage crittografato, ho tirato su un disco NetBSD CGD senza problemi su dk wedge; FreeBSD ha gli interessanti strumenti gbde(8) e geli(8) basati su GEOM che non ho potuto testare, mentre OpenBSD supporta la crittografia tramite una personality softraid. Purtroppo, il supporto per l'hardware Apple, ormai esotico, è fuori discussione.
Quindi, senza altra via d'uscita, ho deciso di prendere la strada Linux, usando l'eccellente sysresccd, che eleggo oggi a successore del rescuecd di pld-linux, compagno di infinite recovery di sistema :-). Ad ogni modo, serve il kernel 2.6.36 per farlo partire sul MacMini4,1, a causa del suddetto bug MCP89. Scheda ethernet e lettore SD card funzionano out-of-the-box.
Ora sto giocando con LUKS e, anche se non sono un esperto di crittografia, sembra più evoluto delle controparti *BSD, ed è comunque uno strumento più versatile rispetto a quelli di OpenBSD e NetBSD. Su quest'ultimo, dover configurare GPT e DK Wedge per far funzionare il CGD e sincronizzare MBR e Disklabel per far funzionare il boot loader (bleah!), il tutto accoppiato con rEFIt, è un bel casino™. C'è un loader GPT per NetBSD ma non ho avuto modo di provarlo.
Spero che queste informazioni siano utili a chiunque tenti un'avventura simile, i commenti sono apprezzati :-).