giovedì 22 novembre 2007

Sun Ultra5/10 e Solaris 9

Come avevo accennato in passato, ho acquistato su e-bay una Workstation Sun Ultra-5 basata su microprocessore UltraSparc IIi a 360 MHz e con 128 mega di ram.

Il bello di questo genere di stazioni e' che utilizza componenti "normali" [un alimentatore ATX, floppy formato PC e periferiche E-IDE ata33, dimm con parita' reale (ECC)].

Ora, e' possibile installare Linux per Sparc su questo bel giocattolo ma, non per via di una questione di purismo quanto piuttosto di voler utilizzare le cose che sono state fatte su misura, dato che Solaris e' un sistema operativo UNIX molto affidabile e, soprattutto, una stazione di lavoro con Solaris e gli strumenti di Java e' un ambiente di programmazione ideale, voglio fornire qualche spiegazione specifica su come gestire la macchina nella sua prima manutenzione e come installare il sistema operativo Solaris.

Anzitutto la workstation ha una normale uscita VGA con connettore sub-d a 15 poli (va bene un normalissimo monitor che tenga fino a 1024x768 a 75hz) , ma il connettore della tastiera e' sui-generis (ci vuole una tastiera specifica per Sun, chiamasi "Sun Type 5") perche' vengono utilizzati con lo stesso cavo la tastiera ed il mouse integrato. Pero' se non avete la tastiera, niente paura: non e' necessaria!
Infatti all'accensione la macchina controlla se il connettore della tastiera e' inserito, ed in tal caso abilita la console locale, oppure se non e' inserito ed in tal caso abilita la console su porta seriale (prima porta seriale, 9600 8N1, potete usare un normalissimo terminale seriale).

Ma prima di accendere la macchina diamo una breve sguardata all'interno. L'hard disk ed il cdrom sono sulla destra (guardando frontalmente dal pannello anteriore) e al centro c'e' il floppy disk e lo spazio per un altro eventuale hard disk. Sulla sinistra il maxi-dissipatore che copre la CPU ed un "pezzetto" di aletta che raffredda i chip della cache. L'aletta della Ultra5 non ha una ventola di raffreddamento (c'e' una ventolina frontalmente proprio davanti all'aletta: genera un buon ricircolo d'aria ma se progettate di lasciare la workstation accesa 24h come ho fatto io, vi consiglio caldamente di aggiungere (ci entra perfettamente) una ventolina da 3.5" che butta aria dentro l'aletta fissandola sul dissipatore stesso (metodo artigianale perfettamente funzionante: su tre punti con delle viti per tasselli fischer da 6mm: lunghezza, spessore e filettatura perfetti).
Secondo punto: ho aggiunto un hard disk alla mia workstation (quello fornito da 8.3Gb era un po' strettino) ma vi avverto che con hard disk di dimensioni superiori ai 20Gb potreste avere problemi (anche perche' vengono riconosciuti automaticamente dal "bios", e in caso contrario ignoro la procedura per forzarne i parametri...); adesso ho un hard disk primario da 20Gb per il sistema operativo e quello originario da 8.3Gb che ospita la /export/home e terra' su sia lo spazio web che le web-app tomcat.

A questo punto, siamo pronti per operare l'installazione del sistema operativo. Solaris 8 si puo' installare a partire da 64 Mb di RAM, con 128 e' possibile lavorare tranquillamente anche con Solaris 9 (Per Solaris 10 vi consiglio di avere non meno di 256 mega, perche' con 128 ero anche riuscito ad installarcelo, ma swappava come un frantoio a pieno carico...); per prima cosa andate nell'area download del sito di Sun Microsystem, e alla voce "Operating Systems" scegliete "Solaris Operating Systems".
Dalla pagina che si apre potete scegliere Solaris 9 [Oppure se proprio siete masochisti, o avete ram sufficiente, la versione 10 (io comunque in questa guida mi riferisco alla versione 9, che ho installato con successo sulla workstation, per cui sappiatevi regolare)], e dalla pagina trovate il download delle immagini iso dei CD-ROM oppure (per un tantinello di comodita' in piu') dell'immagine del DVD (ci ho collegato al volo un lettore DVD al posto del lettore CD fornito, ed ha funzionato egregiamente, consentendomi di effettuare l'installazione senza fare il disk-jockey...). Dovete registrarvi al sito [e' gratuito, e se chiedete di non inviarvi e-mail pubblicitarie ogni 3x2 sono seri, inoltre vi permette di registrare la vostra workstation ed accedere oltre che al software anche agli aggiornamenti, alla documentazione, ai forum etc. etc.; ah, il sistema operativo e' distribuito gratuitamente (-: ], e quindi vi trovate di fronte al menu' dei vari files da scaricare. Se scegliete l'immagine del DVD, la stessa e' divisa in cinque segmenti. Vi consiglio (come d'altronde anche il sito) di utilizzare il "Sun Download Manager", perche' in caso di problemi vi permette di riprendere il download.
Una volta ricevuti i file, si passa alla masterizzazione dei vari CD (se avete scaricato i segmenti del dvd, gli stessi vanno riuniti in un unico file .iso, sotto Windows aprite un prompt dei comandi, andate nella cartella in cui si trovano i segmenti e date copy /b segmento1+segmento2+segmento3+segmento4+segmento5 sunosdvd.iso, sotto Linux/*NIX in effetti non sono sicuro del comando da seguire...)

A questo punto si passa all'installazione vera e propria. La procedura cambia leggermente a seconda se avete la tastiera Sun (e operate in console) o se siete con un terminale seriale. Sul terminale seriale vi dovete collegare alla prima porta della workstation con i parametri 9600 8N1 e - a seconda del programma e/o terminale seriale che avete a disposizione - identificare in che modo inviare un comando di Break (su {COMMO} di Fred Brucker si da Alt-B, in mancanza d'altro una sfilata di Ctrl-C vanno bene lo stesso).

Collegate i vari cavi, quello elettrico per ultimo e girate l'interruttore dell'alimentatore O/I su I. La macchina fara' un beep di circa un secondo per segnalare che tutto e' a posto.
A questo punto inviate ripetutamente un segnale di break per fermare la procedura di avviamento automatico: sulla tastiera Sun dovrete premere (contemporaneamente) i tasti Stop-A (su alcune tastiere il tasto Stop e' etichettato L1, per cui andate di L1-A) diverse volte per convincerla (dal terminale inviate diversi Break oppure Ctrl-C) prima che qualcosa appaia sullo schermo.
Se la workstation si e' convinta, dopo alcuni secondi sullo schermo apparira' la schermata identificativa di OpenBoot, un resoconto dell'hardware (in particolare CPU, ram e indirizzo MAC della scheda di rete), ed il prompt di OpenBoot che e' un semplice "ok".

Dal prompt "ok" potere fornire il comando power-off per spegnere la workstation (a questo punto la si potra' accedendere dal pulsante di accensione sul case o da quello sulla tastiera), ma a noi interessa un altro comando: inserite il primo CD/DVD nell'unita', chiudete il cassetto e - dopo qualche istante, fornite il comando boot cdrom {PS: accetta se non ci sono hard disk anche il boot da rete, se avete un dhcp o un bootp, in questo caso date il comando boot hme0 [hme0 e' il nome della prima interfaccia di rete della workstation, l'equivalente linuxiano di eth0 (peraltro sulle espansioni PCI e' possibile mettere alcune schede standard: ho provato una ethernet realtek 8139 ed una USB 2.0 aggiuntiva senza grossi problemi, in compenso un mouse usb ha funzionato, una tastiera usb manco a legnate...)]}.
L'installazione parte in modalita' di testo, poi, se avete la console locale, si avvia in modalita' grafica (se no continua in modalita' testuale su console seriale). In modalita' di testo si usano i tasti funzione per inviare i comandi (soprattutto F2 per confermare i dati e passare alla schermata successiva), ma se il terminale non supporta i tasti funzione basta inviare il tasto ESC per gestire al posto dei tasti funzione le sequenze ESC+Numero (es al posto di F2 si preme ESC e poi 2).
Seguite i passi richiesti, nello specifico gestite le partizioni [il partizionamento e' simile a quello BSD: dovete creare una partizione UFS (una per ogni disco se ne avete piu' dischi)] e poi in quelle creare le slice (label). Considerate di creare con 128 mega di ram una slice di swap di almeno 384mb, poi potete dedicare lo spazio restante al sistema.
Se avete piu' di un hard disk vi ricordo che la struttura delle directory e' relativamente simile a quella di altri sistemi UNIX (/etc, /bin, /dev etc.), ma ad esempio le home degli utenti di solito si trovano su /export/home anziche' su /home (poi e' una questione di gusti, con un ln -s si mette dovunque...).
Durante l'installazione vi viene chiesto come gestire l'installazione della rete. Se il vostro server DHCP fornisce *tutto* [e quindi indirizzo, gateway, nome dominio ed assegnazione del nome della macchina (potete segnarvi il MAC address dall'avviamento di open-boot)] potete andare ad occhi chiusi, se no vi consiglio di dare i valori manuali anche perche' per quanto abbia rivoltato stile calzino la Solaris Management console non ho capito come disabilitare definitivamente il dhcp e passare a parametri manuali...
Al termine dell'installazione, vi sara' chiesto un riavvio, ma a questo punto sara' il momento di installare gli add-on, il "software companion" se disponibile il disco (ve lo consiglio, installa una serie di cose utili come apache, netscape etc).
Al termine altro riavvio e la macchina e' installata. (-:
Che abbiate la console locale (tastiera & mouse) o quella seriale, potete comunque utilizzare l'ambiente grafico da remoto attraverso il protocollo X11 Forwarding, ossia usando sudo Xnest -query $IndirizzoWorkstation :2, oppure con un client di accesso remoto per Linux, o ancora con X/CygWin o roba del genere (tipo Xming) per Windows.
Se avete gia' utilizzato in passato Solaris (soprattutto la versione 8) saprete che mentre l'utente generico puo' utilizzare a scelta CDE o altri ambienti grafici (quali Gnome o OpenWin), mentre per l'utente root e' consigliabile l'uso di CDE, perche' ci sono i vari menu' di amministrazione della macchina.
Con Solaris 9 la cosa e' diversa: CDE da i menu di amministrazione ma molti limiti, mentre usando Gnome anche per l'utente root compare sul menu' applicazioni un semplice "Menu CDE" con gli strumenti di amministrazione e - inoltre - quando l'utente root chiude la sessione di gnome - compare sul menu' anche la possibilita' di arrestare la workstation (con CDE chiude la sessione, e in tal caso si deve dare shutdown -y, tornare a OpenBoot e dare un power-off per spegnere...).
Ad ogni modo, indipendentemente dall'utente loggato, se siete in console locale e premete il pulsante Power della tastiera Sun (in alto a destra) appare una finestra che vi fa scegliere se fare l'arresto o mettere in ibernazione la workstation. L'ibernazione e' interessante se state eseguendo qualche applicazione molto lunga (tipo una compilazione) e non volete ne' interromperla ne' aspettare che concluda prima di spegnere. Inoltre questo fattore funziona anche dopo il primo riavvio e durante l'installazione del software companion, che e' un operazione molto lunga: e' possibile mettere la console in standby e continuare l'installazione come se niente fosse alla successiva riaccensione.
Il sistema basato su Solaris con webserver, ssh etc. e' una workstation molto affidabile e - anche se con 128 mega di ram - il sistema funziona piu' che egregiamente; se avete qualche bacchetta di ram in piu' potete tentare l'installazione del 10, ma ho avuto l'impressione che il supporto all'hardware della Ultra5 sia un po' limitato [ad esempio l'ambiente grafico partiva (oddio, l'ho fatto con 128 mega di ram, piu' che altro *arrancava*) in bianco e nero].
Spero di essere stato esaustivo. (-:

4 commenti:

Francesco ha detto...

Beh, come al solito un'ottima guida ;)

Non so se installero' mai Solaris su una Sun ... eventualmente so gia' a chi rivolgermi per problemi vari :)

Grazie Grizzly.

Grizzly ha detto...

Il punto e' che ora che sto mettendo in funzione una serie di cosucce in ufficio, mi sembra il caso di condividere queste informazioni con tutti quanti (-:

Anonimo ha detto...

ciao senti puoi anche metere dischi piu grandi fino a 120gb se usi solaris anche di 160 si usi freebsd o openbsd, non so quale sia il motivo ma solaris ne vede solo 120 non di piu

Grizzly ha detto...

Il limite di cui parlo non e' del sistema operativo: la SUN Ultra5 gia' ha problemi a riconoscere un maxtor 40Gb e con un 80Gb mi ha detto tout-court di non trovare nessun hard disk...