(Italiano) Apple PowerBook G4: La rinascita grazie a OpenBSD

Sorry, this entry is only available in Italiano.

Il mio primo portatile Apple con OpenBSD

Il mio primo portatile Apple con OpenBSD

Ogni volta che scendo giù a casa in Sicilia rispolvero cose del mio passato. Questa è stata la volta del mio primo portatile Apple, esattamente il PowerBook G4 basato sul processore RISC (Reduced Instruction Set Computer)  a 32bit PowerPC G4. Ho usato questa macchina sette giorni su sette dal 2005 fino alla metà del 2010 senza nessuna interruzione. Qui sono disponibili tutte le specifiche tecniche Apple PowerBook G4 1.5 12" (modello A1104).

Allo stato attuale questa incredibile macchina è ancora funzionante e con il sistema operativo Mac OS X 10.5.8 (Leopard), ultima versione disponibile per questa piattaforma hardware. Purtroppo non è possibile aggiornare il resto dei software come per esempio il semplice browser per navigare su internet. Con le versioni installate dei browser (Safari, Firefox e Chrome) è negata la navigazione a causa del fatto che i nuovi protocolli TLS (1.2 e 1.3), ormai adottati dalla stragrande maggioranza dei siti web non sono ovviamente supportati; al tempo non esistevano!

Le cose sono due, rimettere nuovamente il portatile in parcheggio o dargli una nuova possibilità di vita. Ho scelto la seconda opzione perchè non ho resistito alla richiesta di mio nipote di sei anni il quale mi ha domandato: zio, potrò usare questo piccolo computer?

Molto bene! In questo breve articolo vi mostrerò quello che ho fatto per dare nuova vita ad una macchina che per me è stata un ottimo strumento di lavoro e su cui mio nipote potrà iniziare a mettere le mani in pasta in questo fantastico mondo e magari iniziando proprio dalla linea di comando 😀

 

1. La scelta del sistema operativo

Non è mia intenzione scrivere un papiro su questo aspetto, per questo motivo vi svelerò immediatamente quale sistema operativo ho scelto e le motivazioni principali. OpenBSD è il sistema operativo che ho selezionato per dare nuova vita al mio PowerBook G4.

OpenBSD è un sistema operativo libero, open-source, multipiattaforma, di tipo unix-like, derivato dalla Berkeley Software Distribution (4.4BSD). Il team di sviluppo di questo sistema operativo concentra gli sforzi per offrire: massima portabilità, standardizzazione, sicurezza pro-attiva e la crittografia integrata. I motivi principali della mia scelta sono:

  1. grande esperienza di sistema operativo BSD. Sono arrivati alla 50° release, distribuita a maggio del 2021;
  2. supporto per le piattaforme hardware PowerPC (anche sulle nuove release di OpenBSD);
  3. supporto (OOTB) per l'hardware del PowerBook G4 (schede di rete LAN, scheda di rete WiFi, touch pad, etc.);
  4. grande disponibilità dei binari delle maggiori applicazioni anche per la piattaforma PowerPC;
  5. documentazione testuale e efficace.

La versione specifica di OpenBSD è la 6.8 abbinata alla release song Hacker People.

Sono sicuro che alcuni di voi si domanderanno qual è stato il motivo per non scegliere l'ultima versione 6.9, semplice, perchè non sono disponibili in formato binario alcuni pacchetti del Desktop Environment XFCE.

2. Introduzione alla procedura d'installazione

Il programma di installazione di OpenBSD utilizza uno speciale kernel ramdisk (bsd.rd) che genera un ambiente live eseguito interamente in memoria. Contiene lo script di installazione e un piccolo numero di utilità necessarie per eseguire un'installazione completa. Queste utilità possono essere utili anche per il ripristino di emergenza.

Il kernel ramdisk può essere avviato da diverse sorgenti ma non tutte le piattaforme supportano queste opzioni di avvio.

Nel caso del PowerBook G4 le strade da preferire sono senza dubbio le prime due, nel mio caso specifico ho scelto la seconda, tramite una chiavetta USB. Ho scartato la prima opzione perchè sprovvisto di CD o DVD vergini su cui masterizzare l'immagine di OpenBSD.

3. Preparazione all'installazione

Prima di iniziare con il processo d'installazione vero e proprio, vale la pena considerare in anticipo alcuni aspetti che riporto a seguire, considerando il punto fermo dell'architettura.

  • Il nome da assegnare alla macchina, che nel mio caso sarà amusarra-pbook-g4.
  • Il metodo d'installazione che in questo caso è proprio Install (tra le altre possibili scelte Upgrade, Auto Install e Shell).
  • Il layout del disco desiderato. Nel mio caso ho scelto che su questa macchina sarà installato solo OpenBSD e utilizzerò quindi il layout del disco di default. Per ogni approfondimento sul tema, consiglio la lettura OpenBSD FAQ - Disk Setup.
  • Abilitare il Disk Encryption. Nel mio caso ho scelto di non abilitare questa funzionalità; per il tipo d'uso non è necessario e risparmio anche tempo di CPU prezioso. Per ogni approfondimento sull'argomento, consiglio la lettura OpenBSD Full Disk Encryption.
  • Setup della rete. Su questa macchina abbiamo a disposizione due schede di rete, quella LAN Ethernet (via caso) e quella WiFi. In questo caso, in fase d'installazione andrò ad impostare per la scheda di rete LAN il DHCP. Il setup della scheda WiFi può essere eseguito anche in un secondo momento.

4. Download OpenBSD e preparazione USB Disk

Consolidato il fatto che eseguiremo l'installazione da USB Disk, le operazioni che porteremo a termine nel corso di questo capitolo sono: download e verifica dell'immagine di OpenBSD, per finire con la creazione dell'USB Disk a partire dall'immagine scaricata in precedenza.

OpenBSD mette a disposizione diverse tipologie d'immagini, quella di nostro interesse si chiama installXX.iso (nel nostro caso install68.iso). Si tratta di un'immagine ISO 9660 che può essere utilizzata per creare un CD/DVD e USB Disk di installazione. Include i set di file, questo si traduce nel fatto che non sia necessaria la disponibilità di una connessione alla rete internet durante il processo d'installazione.

L'immagine può quindi essere scaricata dal seguente link https://cdn.openbsd.org/pub/OpenBSD/6.8/macppc/install68.iso. Una volta scaricata l'immagine accertiamoci che sulla stessa non ci siano alterazioni verificando il checksum SHA256. Esistono diverse possibilità per il controllo checksum, dipendenti in genere dal proprio sistema operativo. Nel caso di MacOS è possibile utilizzare il comando shasum -a 256 install68.iso  o anche il comando openssl sha256 install68.iso. Il checksum atteso per il file install68.iso  è da45cd5149e4d28ee20c3d06db9e1f3292760a77a176ad842bfb6a4a518df351. La lista degli hash SHA256 è reperibile al seguente link https://cdn.openbsd.org/pub/OpenBSD/6.8/macppc/SHA256.

Per il controllo del checksum su Windows è possibile utilizzare il comando CertUtil -hashfile install68.iso SHA256 mentre su Linux il comando sha256 install68.iso.

A questo punto non resta altro che trasferire l'immagine ISO install68.iso su una chiavetta USB. Le dimensioni minime per la chiavetta USB sono di 512MByte. Anche per l'esecuzione di quest'operazione esistono diversi metodi sulla base del proprio sistema operativo. Nel caso di sistemi operativi Unix-like (talvolta UN*X o *nix) è possibile utilizzare il comando dd. Per il comando dd potrebbero esserci leggere differenze tra i vari sistemi operativi, consiglio infatti, di far sempre riferimento alla documentazione specifica accessibile tramite il comando man dd.

Utilizzando il comando dd if=install68.iso of=/dev/disk2 bs=1m quello che otterremo è una chiavetta USB da cui saremo in grado di avviare l'installazione di OpenBSD versione 6.8. Il nome del device specificato sul parametro of, può essere diverso in base al proprio sistema, nel mio caso la chiavetta USB è mappata sul device /dev/disk2.

Nel caso il proprio sistema operativo sia Windows, allora potreste utilizzare l'utility Rufus, balenaEtcher o anche il comando dd nel caso abbiate GitBash (Burning an image on a USB flash drive from a Windows machine using Git Bash). La figura a seguire mostra l'output dell'esecuzione del comando dd per la creazione del disco USB dall'immagine per l'installazione di OpenBSD 6.8.

 

Figura 1 - Creazione del disco USB dell'immagine OpenBSD 6.8 per l'installazione

Figura 1 - Creazione del disco USB dell'immagine OpenBSD 6.8 per l'installazione

5. Boot in modalità Open Firmware

Per poter installare OpenBSD sul nostro Apple PowerBook G4, dobbiamo avviare quest'ultimo in modalità Open Firmware.

Open Firmware è una tecnologia hardware per sviluppare firmware indipendente dal sistema operativo (software caricato all'accensione del computer prima del sistema operativo) sviluppata da Sun Microsystems. È utilizzata nei computer Apple Macintosh dotati di processori PowerPC, nelle workstation SPARC e nei server della Sun Microsystems, nei computer PegasosPPCe in altri sistemi (fonte Wikipedia).

Prima di accendere la macchina ricordate d'inserire il disco USB su una delle due porte USB a disposizione e di connetterla alla vostra rete tramite cavo ethernet (non richiesto ma consigliato). Personalmente ho inserito il disco sulla prima porta, per cui il dispositivo sarà identificato con usb0.

Per accedere a Open Firmware, occorre premere la combinazione dei tasti, Command(⌘) + Option(⌥) + O + F, immediatamente all'avvio. Dopo qualche secondo dovreste vedere a schermo quando mostrato dalla figura a seguire.

Figura 2 - Avvio del PowerBook G4 in modalità Open Firmware

Figura 2 - Avvio del PowerBook G4 in modalità Open Firmware

Open Firmware è accessibile utilizzando un'interfaccia di tipo shell basata sul Forth, un potente linguaggio ad alto livello, descritto nel documento IEEE 1275-1994 - IEEE Standard for Boot (Initialization Configuration) Firmware. Grazie a questa shell possiamo impartire tutti i comandi necessari per avviare l'installazione di OpenBSD.

Se volessimo verificare che il disco USB sia correttamente visto dal sistema, potremmo digitare il comando devalias, dall'output dovremmo essere in grado d'identificare com'è stato mappato il disco USB. Le figura a seguire mostra un esempio del comando.

 

Figura 3 - Uso del comando devalias per identificare la porta USB dove abbiamo collegato la chiavetta USB

Figura 3 - Uso del comando devalias per identificare la porta USB dove abbiamo collegato la chiavetta USB

 

La figura successiva mostra invece l'uso del comando dir usb0/disk@1:\ e dir usb0/disk@1: \6.8\macppc al fine di verificare che il contenuto sia quello desiderato.

 

Figura 4 - Utilizzo del comando dir per verificare il contenuto della chiavetta USB contenente l'immagine install68.iso

Figura 4 - Utilizzo del comando dir per verificare il contenuto della chiavetta USB contenente l'immagine install68.iso

 

Il programma bootstrap di OpenBSD si chiama ofwboot, che avvierà poi il bsd.rd, il ramdisk Kernel. Dalla shell di OpenFirmware occorre eseguire il comando boot usb0/disk@1:,ofwboot /6.8/macppc/bsd.rd per iniziare l'installazione di OpenBSD.

 

Figura 5 - Boot OpenBSD Installer

Figura 5 - Boot OpenBSD Installer

 

Se tutto è andato per il verso giusto, si dovrebbe avviare il boot loader che a sua volta avvierà il ramdisk Kernel dal file bsd.rd. Al termine del caricamento del Kernel, potremo procedere con la fase d'installazione di OpenBSD.

6. Installazione di OpenBSD

A questo punto siamo davvero pronti per proseguire con l'installazione di OpenBSD. Gli step a seguire riguardano:

  1. la scelta del tipo d'installazione, in questo caso optiamo per la voce (I)stall (vedi Figura 6);
  2. la scelta dell'hostname da assegnare alla macchina, che nel mio caso imposterò a amusarra-pbook-g4 (vedi Figura 7);
  3. la scelta della scheda di rete da configurare. Questo step è opzionale (digitando done quando richiesto), le schede possono essere configurate successivamente. Personalmente ho scelto di configurare in questa fase la scheda ethernet (gem0 il su nome) via DHCP (vedi Figura 8);
  4. impostazione della password di root;
  5. scegliere se far partire il servizio SSH di default (si per default), personalmente ho scelto di si;
  6. scegliere se abilitare X Window System (si per default), personalmente ho scelto di si;
  7. scegliere se abilitare il login grafico via xenodm (no per default), personalmente ho scelto no;
  8. la creazione di un nuovo utente. Consiglio sempre di eseguire questo step, personalmente ho scelto di creare l'utente amusarra;
  9. Scegliere se consentire la login all'utente root via SSH (no per default), personalmente ho scelto no, scelta fatta anche in termini di sicurezza;
  10. scegliere il timezone. Nel mio caso Europe/Rome;
  11. scegliere il disco dove installare OpenBSD. Nel mio caso specifico il disco di destinazione sarà wd0. Nella maggior parte dei sistemi BSD, i dispositivi di storage di massa di tipo IDE-like hanno il naming wd;
  12. scegliere se utilizzare tutto il disco o parte di esso. In questo caso, dove abbiamo deciso di avere il solo OpenBSD come sistema operativo, la scelta è di utilizzare tutto il disco, quindi (W)hole disk;
  13. scegliere o modificare il layout del file system. Come scritto in precedenza, a meno di particolari esigenze, consiglio di selezione il layout automatico (A)uto layout (vedi Figura 9);
  14. scegliere la locazione per set di file che in questo caso risiedo all'interno della chiavetta USB che OpenBSD ha mappato sul dispositivo sd0. Alle domande rispondere in ordine: disk, no, sd0 (valore di default), 6.8/macppc (valore di default)
  15. scegliere il set di pacchetti da installare. Personalmente ho scelto d'installare tutti i pacchetti. Dopo la selezione dei pacchetti sarà chiesto se eseguire la verifica di questi, step che si può evitare rispondendo yes alla domanda (vedi Figura 10).

Una volta che il processo d'installazione è terminato, dobbiamo riavviare la macchina nella modalità Open Firmware (e ormai sappiamo come si fa), per impostare OpenBSD in auto-boot (vedi Figura 11). È possibile fare ciò utilizzando i seguenti due comandi: setenv auto-boot? true e setenv boot-device hd:,ofwboot.

Il comando setenv è responsabile di memorizzare le due variabili di configurazione nella memoria non volatile in modo che i loro valori persistano durante i cicli di accensione.

L'ultimo comando da impartire è reset-all  che riavvierà la macchina. Da adesso in poi il nostro PowerBook G4 partirà con OpenBSD 6.8 🙂

La sequenza delle figure a seguire mostra gli step d'installazione più significativi descritti in precedenza.

 

Figura 6 - Step 1 => Selezione del tipo d'installazione

Figura 6 - Step 1 => Selezione del tipo d'installazione

 

Figura 7 - Step 2 => Impostazione del nome host

Figura 7 - Step 2 => Impostazione del nome host

 

Figura 8 - Step 3 => Configurazione Networking

Figura 8 - Step 3 => Configurazione Networking

 

Figura 9 Step 13 => Configurazione dei layout file system per l'installazione di OpenBSD

Figura 9 Step 13 => Configurazione dei layout file system per l'installazione di OpenBSD

 

Figura 10 - Step 14-15 Installazione del set file di OpenBSD

Figura 10 - Step 14-15 Installazione del set file di OpenBSD

 

Figura 11 - Impostazione del boot device di default per far avviare OpenBSD come impostazione predefinita

Figura 11 - Impostazione del boot device di default per far avviare OpenBSD come impostazione predefinita

 

7. Il primo avvio di OpenBSD

Il primo avvio di OpenBSD appena installato, fa un pochino di cose, alcune delle quali: generazione delle chiavi RSA per il servizio SSH ma cosa ancora più importante, l'installazione dei firmware addizionali, in questo caso installerà il bwi-firmware, necessario per far funzionare la scheda di rete WiFi.

L'installazione dei firmware aggiuntivi è eseguita scaricando quest'ultimi dalla rete, è quindi necessario che la macchina sia connessa alla rete. In ogni caso è possibile installarli successivamente utilizzando il comando fw_update.

 

Figura 12 - Primo avvio di OpenBSD

Figura 12 - Primo avvio di OpenBSD

 

Il nostro OpenBSD è praticamente pronto all'uso, consiglio comunque il setup della scheda WiFi per connettervi alla rete internet tramite il vostro Router WiFi. La procedura è veramente semplice e ben descritta all'interno della sezione Wireless Networking della documentazione di OpenBSD.

Gli step di configurazione prevedono i seguenti step:

  1. verifica che la scheda di rete WiFi sia vista correttamente da OpenBSD. Per accertarsi di ciò, basta eseguire il comando if config bwi0 media. Il nome dispositivo assegnato dovrebbe essere quello indicato dal comando; in caso di problemi eseguire il comando ifconfig senza argomenti per verificare il nome esatto del dispositivo. La Figura 13 mostra l'output del comando;
  2. creazione del file /etc/hostname.bwi0 il cui contenuto è mostrato in Figura 14;
  3. riavvio della macchina o restart del servizio di network per applicare le modifiche. Per eseguire il restart del network, lanciare il comando sh /etc/netstart (vedi Figura 15). La Figura 16 mostra lo stato della scheda WiFi dopo la connessione avvenuta con successo al Router WiFi.

 

Figura 13 - Output del comando ifconfig sulla scheda WiFi con lo scopo di verificare che sia correttamente vista da OpenBSD

Figura 13 - Output del comando ifconfig sulla scheda WiFi con lo scopo di verificare che sia correttamente vista da OpenBSD

 

Figura 14 - Creazione del file /etc/hostname.bwi0 per la configurazione di connessione della schede WiFi al Router WiFi

Figura 14 - Creazione del file /etc/hostname.bwi0 per la configurazione di connessione della schede WiFi al Router WiFi

 

Figura 15 - Restart della rete per applicare le modifiche alla configurazione delle scheda WiFi

Figura 15 - Restart della rete per applicare le modifiche alla configurazione delle scheda WiFi

 

Figura 16 - Esecuzione del comando ifconfig dopo l'applicazione della configurazione per la scheda WiFi

Figura 16 - Esecuzione del comando ifconfig dopo l'applicazione della configurazione per la scheda WiFi

8. E adesso tocca a voi

In questo articolo ho voluto mostrare la mia personale esperienza nell'attività di far risuscitare il mio Apple PowerBook G4 da anni e anni di riposo installando OpenBSD. L'operazione in fin dei conti non è stata affatto complicata, forse lo potrà essere per coloro che non sono avvezzi a questo tipo di strumenti a "basso livello"; lo scopo dell'articolo è anche quello di rendere semplice l'installazione anche per i non avvezzi.

Se siete arrivati fino a questo punto della lettura, immagino che vi siate trovati nella stessa situazione o magari vorreste intraprendere quest'attività sulla vostra macchina. Vi lascio i commenti per descrivere la vostra esperienza o se avete domande in merito.

Un buon inizio di avventura con OpenBSD 😉

Benvenuti in OpenBSD 6.8 su Apple PowerBook G4

Benvenuti in OpenBSD 6.8 su Apple PowerBook G4

 

Antonio Musarra

I began my journey into the world of computing from an Olivetti M24 PC (http://it.wikipedia.org/wiki/Olivetti_M24) bought by my father for his work. Day after day, quickly taking control until … Now doing business consulting for projects in the enterprise application development using web-oriented technologies such as J2EE, Web Services, ESB, TIBCO, PHP.

You may also like...