Plan 9 (1) è un sistema operativo inteso come il successore di UNIX. Attualmente è distribuito a partire dall'indirizzo http://plan9.bell-labs.com/plan9dist/index.html.
Plan 9 è disponibile inizialmente per l'architetture i386, con una compatibilità limitata a un insieme ristretto di componenti hardware. In generale, un elaboratore i386 relativamente recente, con un bus PCI, tastiera e mouse PS/2, dovrebbe funzionare correttamente.
Questo capitolo descrive brevemente la procedura per l'acquisizione del software e la sua installazione.
In questo capitolo si mostra l'installazione con la predisposizione di un file system Kfs, che è considerato superato. Il motivo di questa preferenza sta nel fatto che inizialmente la documentazione disponibile fa riferimento in modo prevalente al file system Kfs e può risultare troppo difficile, allo stato attuale, la gestione di un tipo più sofisticato. |
Attualmente, la distribuzione di Plan 9 avviene soltanto a partire dal sito citato all'inizio del capitolo. Per iniziare è necessario disporre di un dischetto di avvio, preparato a partire da un file-immagine ottenuto da quel sito; tuttavia, questa immagine non è unica, dal momento che c'è un file di configurazione da predisporre e probabilmente ci può essere la necessità di selezionare un kernel adeguato alle caratteristiche dell'elaboratore. Questo file-immagine viene così confezionato in base alle specifiche indicate, inoltre il dischetto contiene una sorta di numero di serie a cui è associato un tempo di scadenza, dopo il quale, se non è ancora stata completata l'installazione, bisogna prelevare un'altra copia di questo file-immagine con un nuovo numero di serie.
Prima di ottenere il file-immagine del dischetto viene richiesto di approvare la licenza; quindi si passa a un modulo da compilare con le caratteristiche salienti dell'elaboratore nel quale si vuole installare Plan 9.
Una volta ottenuto il file-immagine del dischetto, lo si trasferisce facilmente in un dischetto da 1 440 Kibyte; per esempio così se si dispone di un sistema GNU/Linux:
#
cp 9disk.flp /dev/fd0
[Invio]
Come si può intendere, 9disk.flp
è il file-immagine ottenuto.
Una volta prelevato il file-immagine, viene proposto di scaricare un file compresso corrispondente al file-immagine di un CD-ROM, da usare per installare la distribuzione di Plan 9. In generale conviene prelevare questo file, anche se esisterebbe la possibilità di eseguire l'installazione attraverso la rete. Il file-immagine va espanso e quindi si procede in qualche modo all'incisione del CD-ROM.
$
bunzip2 < plan9.iso.bz2 > plan9.iso
[Invio]
Il comando mostrato viene eseguito idealmente in un sistema Unix; il file plan9.iso.bz2
è il file compresso originale e plan9.iso
è il file-immagine da usare per l'incisione del CD-ROM.
Quando si dispone del CD-ROM e del dischetto di avvio, si è pronti per iniziare l'installazione, ma bisogna mettere in conto la possibilità di qualche piccolo imprevisto. Per esempio, c'è da considerare il fatto che Plan 9 è progettato per essere usato quasi esclusivamente attraverso un'interfaccia grafica e così funziona anche la procedura di installazione. Ma è proprio la grafica che crea i maggiori problemi di compatibilità ed è una delle caratteristiche importanti da stabilire quando ci si accinge a prelevare il file-immagine del dischetto di avvio (e del CD-ROM). Anche se le caratteristiche della grafica sono state scelte con cura, può darsi che il dischetto di avvio mostri una grafica annebbiata o invisibile per qualunque ragione; in questo modo, diventa impossibile procedere all'installazione. Se si incontrano problemi del genere, si può provare a intervenire in un file di configurazione contenuto nel dischetto, ovviamente con l'aiuto di un altro sistema operativo funzionante.
Il dischetto che si ottiene contiene un file system Dos-VFAT; comune e il file da modificare è plan9.ini
:
|
Si osservi che il file in questione utilizza un codice di interruzione di riga pari a <CR><LF> e tale deve rimanere, anche se viene modificato attraverso un sistema Unix.
Nel file si può notare il riferimento al «numero di serie» (che in realtà è una stringa) necessario per procedere all'installazione attraverso la rete, incorporato nello stesso indirizzo HTTP che verrebbe usato per questo.
Per quanto riguarda il problema della grafica, si osservino le direttive seguenti:
|
Come si può intendere, il dischetto è stato richiesto per uno schermo LCD (di un elaboratore portatile), con una risoluzione bassa (800×600). Se l'immagine che si ottiene non è ben visibile, si possono mettere qui valori comuni, facendo qualche tentativo, per esempio indicando un monitor vga puro e semplice; inoltre, alle volte può succedere che anche una profondità di colori troppo bassa sia la causa di una grafica offuscata e inutilizzabile:
|
Alla fine, se si comprende che si può anche aumentare la risoluzione, tanto meglio:
|
La configurazione corretta del dischetto è cruciale, perché è quella che poi viene trasferita durante installazione nel disco fisso.
In situazioni di difficoltà estreme, si può mettere un valore impossibile nella direttiva vgasize, in modo tale che la procedura di installazione non riesca ad avviare la grafica. In questo modo si ha la possibilità di avviare il programma di installazione senza la grafica, ma questo poi si riflette anche nel sistema che viene installato e purtroppo Plan 9 è difficile da manovrare senza la grafica (almeno inizialmente). |
Eventualmente, il file plan9.ini
può contenere anche un menù, secondo una modalità che ricorda quella del file CONFIG.SYS
del Dos. Per il momento viene mostrato un esempio senza spiegazioni, che dovrebbe risultare abbastanza comprensibile a livello intuitivo. Una configurazione del genere (adattando eventualmente ciò che riguarda le interfacce di rete), dovrebbe servire per evitare di perdere troppo tempo nei tentativi che si fanno, per esempio quando magari si è convinti che il mouse sia collegato su una porta seriale e invece si trova sull'altra:
|
Quando si dispone finalmente di un dischetto che funziona correttamente con il tipo di grafica di cui si dispone, assieme al CD-ROM si può procedere all'installazione nel disco fisso. L'installazione richiede in pratica la creazione di una partizione Plan 9, all'interno della quale la procedura definisce automaticamente un gruppo di sottopartizioni, dove poi viene copiata la distribuzione contenuta nel CD-ROM. Si richiede la disponibilità di almeno 2 Gibyte liberi.
Si osservi che il dischetto non deve essere protetto contro la scrittura, perché vengono creati dei file al suo interno. |
Viene mostrato un esempio di questa installazione, su un elaboratore contenente un disco fisso con una partizione Dos-FAT comune e dello spazio libero da usare per creare la partizione Plan 9.
Una volta avviato l'elaboratore attraverso il dischetto, dopo alcuni messaggi diagnostici, se tutto va bene si avvia la grafica, all'interno della quale appare una finestra di terminale, da dove si esegue l'installazione. Inizialmente dovrebbe apparire la presentazione seguente:
Preparing menu... The following unfinished tasks are ready to be done: configfs - choose the type of file system to install stop - save the current installation state, to be resumed later Task to do [configfs]: |
In pratica si tratta di un menù molto semplice, dal quale si intende anche la possibilità di salvare nel dischetto lo stato della procedura di installazione, nel caso si decida di sospenderla.
L'invito del menù suggerisce l'operazione più appropriata (appare tra parentesi quadre) e se corrisponde a ciò che si vuole scegliere, è sufficiente premere [Invio] senza scriverla. Qui comunque si mostra il procedimento completo:
Task to do [configfs]:
configfs
[Invio]
You can install the following types of file systems: fossil an archival (dump) file server kfs the old Plan 9 on-disk file server If you choose to install fossil, you can add Venti later, assuming you leave enough disk space for it. file system (fossil, kfs)[fossil]: |
Viene richiesto così di specificare il tipo di file system da utilizzare; l'invito ha questa volta una forma differente, perché tra parentesi tonde sono elencate le opzioni disponibili. Inizialmente può essere più conveniente l'utilizzo del tipo di file system Kfs, che è il più vecchio ma più documentato:
file system (fossil, kfs)[fossil]:
kfs
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install The following unfinished tasks are ready to be done: partdisk - edit partition table (e.g., to create a plan 9 partition) stop - save the current installation state, to be resumed later Task to do [partdisk]: |
Come si vede, la fase successiva richiede di intervenire nella definizione delle partizioni. Il programma che si ottiene è veramente spartano:
Task to do [partdisk]:
partdisk
[Invio]
The following disk devices were found. sdC0 - IBM-DBCA-204860 * p1 0 261 (261 cylinders, 1.99 GB) FATHUGE empty 261 582 (331 cylinders, 2.53 GB) cdC1 - TEAC CD-224E 1.5A Disk to partition (sdC0, sdC1)[no default]: |
Poco prima di arrivare a questo punto è stato inserito il CD-ROM nel lettore che corrisponde alla seconda unità ATA; pertanto, vengono indicati due dischi, ma quello che conta è il primo, sdC0, in cui appare già una partizione Dos-FAT:
Disk to partition (sdC0, sdC1)[no default]:
sdC0
[Invio]
This is disk/fdisk; use it to create a Plan 9 partition. If there is enough room, a Plan 9 partition will be suggested; you can probably just type 'w' and then 'q'. cylinder = 8225280 bytes * p1 0 261 (261 cylinders, 1.99 GB) FATHUGE ' p2 261 592 (331 cylinders, 2.53 GB) PLAN9 >>> |
Leggendo la descrizione si comprende che lo spazio libero è già stato utilizzato per una nuova partizione di tipo Plan 9 e sarebbe sufficiente salvare le cose così per proseguire. A ogni modo, conviene dare un'occhiata ai comandi disponibili all'interno del programma disk/fdisk
, per scoprire che si tratta di un programma molto simile, operativamente, a fdisk di un sistema GNU/Linux:
>>>
h
[Invio]
. [newdot] - display or set value of dot a name [start [end]] - add partition d name - delete partition h - print help message p - print partition table w - write partition table q - quit A name - set partition active t name [type] - set partition type >>> |
Come accennato, in questo caso basta salvare le modifiche e uscire dal programma:
>>>
w
[Invio]
>>>
q
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) The following unfinished tasks are ready to be done: prepdisk - subdivide plan 9 disk partition stop - save the current installation state, to be resumed later Task to do [prepdisk]: |
Come si può vedere, viene proposto di passare alla suddivisione della partizione in sottopartizioni, per gli scopi di Plan 9:
Task to do [prepdisk]:
prepdisk
[Invio]
The following Plan 9 disk partitions were found. /dev/sdC0/plan9 empty 0 5317515 (5317515 sectors, 2.53 GB) Plan 9 partition to subdivide (/dev/sdC0/plan9)[/dev/sdC0/plan9]: |
Come si vede, viene proposto di suddividere la partizione, che appare indicata attraverso una forma simile a quella dei file di dispositivo dei sistemi Unix:
Plan 9 partition to subdivide
\
\(/dev/sdC0/plan9)[/dev/sdC0/plan9]:
/dev/sdC0/plan9
[Invio]
Ovviamente, se non si sta usando una tastiera con la disposizione dei tasti secondo la mappa USA, la barra obliqua va cercata per tentativi.
This is disk/prep; use it to subdivide the Plan 9 partition. If it is not yet subdivided, a sensible layout will be suggested; you can probably just type 'w' and then 'q'. no plan9 partition table found 9fat 204800 nvram 1 fs 4090171 swap 1022543 ' 9fat 0 204800 (204800 sectors, 100.00 MB) ' nvram 204800 204801 (1 sectors, 512 B) ' fs 204801 4294972 (4090171 sectors, 1.95 GB) ' swap 4294972 5317515 (1022543 sectors, 499.28 MB) >>> |
Come si può comprendere, il programma disk/prep
appena avviato si comporta in modo simile a disk/fdisk
:
>>>
w
[Invio]
>>>
q
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition The following unfinished tasks are ready to be done: mountfs - choose and mount file system partition stop - save the current installation state, to be resumed later |
Task to do [mountfs]:
mountfs
[Invio]
A questo punto si innesta il file system appena creato nella sottopartizione /dev/sdC0/fs
:
The following partitions named fs* were found. Please choose one to use as the installation file system for your Plan 9 installation. --rw-r---- S 0 glenda glenda 2094167552 Aug 11 15:29 /dev/sdC0/fs |
Kfs partition
\
\(/dev/sdC0/fs)[/dev/sdC0/fs]:
/dev/sdC0/fs
[Invio]
A Plan 9 kfs file system already exists on /dev/sdC0/fs. Do you want to wipe it clean? |
Wipe the Plan 9 file system clean (keep, wipe)[keep]:
wipe
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition mountfs - choose and mount file system partition The following unfinished tasks are ready to be done: configdist - choose the source of the distribution archive download - download or continue to download the distribution archive stop - save the current installation state, to be resumed later Task to do [configdist]: |
A questo punto si deve selezionare in che modo prelevare la distribuzione. Dal momento che è stato predisposto un CD-ROM, si sceglie la prima ipotesi. Si ricorda che in questo esempio il CD-ROM si trova inserito in un lettore che corrisponde alla seconda unità ATA:
Task to do [configdist]:
configdist
[Invio]
Are you going to download the distribution from the internet or do you have it on local media? |
Distribution is from (local, net)[local]:
local
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition mountfs - choose and mount file system partition configdist - choose the source of the distribution archive The following unfinished tasks are ready to be done: mountdist - locate and mount the distribution download - download or continue to download the distribution archive stop - save the current installation state, to be resumed later |
Task to do [mountdist]:
mountdist
[Invio]
Please wait... Scanning storage devices... /dev/sdC0/9fat /dev/sdC0/data /dev/sdC0/dos /dev/sdC0/fs /dev/sdC0/nvram /dev/sdC0/swap /dev/sdC1/data The following storage media were detected. Choose the one containing the distribution. /dev/sdC1/data (iso9660 cdrom) |
Distribution disk [no default]:
/dev/sdC1/data
[Invio]
Which directory contains the distribution? Any of the following will suffice (in order of preference): - the root directory of the cd image - the directory containing plan9.iso - the directory containing plan9.iso.bz2 Typing 'browse' will put you in a shell that you can use to look for the directory. Location of archive [browse]: |
La prima volta, questa richiesta potrebbe non apparire chiara: si tratta di indicare dove si trova la copia del contenuto del CD-ROM. Se il CD-ROM è stato ottenuto espandendo il file-immagine relativo e poi incidendo, basta specificare che questo si articola a partire dalla radice, ovvero da /
; diversamente si indica una directory particolare. Si osservi che il CD-ROM, o un disco qualunque che sia accessibile (anche una partizione con un file system Ext2 o Ext3 di un sistema GNU/Linux può andare bene), potrebbe contenere al suo interno soltanto il file-immagine, denominato plan9.iso
; teoricamente andrebbe bene anche il file-immagine compresso, denominato plan9.iso.bz2
, ma in pratica il sistema di installazione potrebbe non riuscire a espanderlo. Anche così si può procedere all'installazione e la directory da indicare si intende essere quella che contiene questo file:
Location of archive [browse]:
/
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution The following unfinished tasks are ready to be done: copydist - copy the distribution into the file system stop - save the current installation state, to be resumed later Task to do [copydist]: |
Ecco che si può così passare alla copia della distribuzione; operazione che richiede un po' di tempo, ma una barra di attesa mostra il progredire dell'operazione.
Task to do [copydist]:
copydist
[Invio]
Passa un po' di tempo...
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system The following unfinished tasks are ready to be done: bootsetup - create a boot floppy or configure hard disk to boot plan 9 stop - save the current installation state, to be resumed later Task to do [bootsetup]: |
A questo punto è il momento di predisporre un sistema di avvio. Per sicurezza conviene realizzare anche un dischetto apposito:
Task to do [bootsetup]:
bootsetup
[Invio]
Initializing Plan 9 FAT configuration partition (9fat) add 9load at clust 2 Initializing FAT file system type hard, 12 tracks, 255 heads, 63 sectors/track, 512 bytes/sec Adding file /n/kfs/386/9load. length 180364 add 9load at clust 2 used 184320 bytes used 0 bytes |
There are myriad ways to boot a Plan 9 system. You can use any of the following. (You can also repeat this task to use more than one). floppy - create a boot floppy plan9 - make the plan 9 disk partition the default for booting win9x - add a plan 9 option to windows 9x boot menu winnt - add a plan 9 option to windows nt/2000/xp boot manager (See the documentation for instructions on booting Plan 9 from LILO.) If you are upgrading an extant third edition installation and booting from something other than a floppy, you needn't run anything here. Just type ctl-d. Enable boot method (floppy, plan9, win9x, winnt)[no default]: |
Viene resa avviabile la partizione:
Enable boot method
\
\(floppy, plan9, win9x, winnt)[no default]:
plan9
[Invio]
Your Plan 9 partition is more than 2GB into your disk, and the master boot record used by Windows 9x/ME cannot access it (and thus cannot boot it). You can install the Plan 9 master boot record, which can load partitions far into the disk. If you use the Windows NT/2000/XP master boot record or a master boot record from a Unix clone (e.g. LILO or FreeBSD bootmgr, it is probably safe to continue using that boot record rather than install the Plan 9 boot record. Install the Plan 9 master boot record (y, n)[no default]: |
In questo caso si preferisce installare il settore di avvio di Plan 9, dato che la partizione Dos-FAT preesistente non contiene nulla e non ci sono altri sistemi operativi da avviare:
Install the Plan 9 master boot record (y, n)[no default]:
y
[Invio]
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system bootsetup - create a boot floppy or configure hard disk to boot plan 9 The following unfinished tasks are ready to be done: finish - finish the installation and reboot stop - save the current installation state, to be resumed later Task to do [finish]: |
Si preferisce creare un dischetto di avvio prima di concludere:
Task to do [finish]:
bootsetup
[Invio]
There are myriad ways to boot a Plan 9 system. You can use any of the following. (You can also repeat this task to use more than one). floppy - create a boot floppy plan9 - make the plan 9 disk partition the default for booting win9x - add a plan 9 option to windows 9x boot menu winnt - add a plan 9 option to windows NT/2000/XP boot manager (See the documentation for instructions on booting Plan 9 from LILO.) If you are upgrading an extant third edition installation and booting from something other than a floppy, you needn't run anything here. Just type ctl-d. |
Enable boot method
\
\(floppy, plan9, win9x, winnt)[no default]:
floppy
[Invio]
Insert a disk other than your installation boot disk into your floppy drive; it will be erased to create the boot floppy. Press enter when ready. |
Viene così estratto il dischetto usato per l'installazione e se ne inserisce un altro, già inizializzato a basso livello.
Press enter when ready.
[Invio]
add 9load at clust 2 add 9pcdisk.gz at clust 163 add plain9ini.bak at clust 6c1 Initializing FAT file system type 3½HD, 80 traks, 2 heads, 18 sectors/track, 512 bytes/sec Adding file /n/kfs/386/9load. length 180364 add 9pcdisk.gz at clust 163 add plain9ini.bak at clust 6c1 used 885760 bytes Done! |
Preparing menu... The following tasks are done: configfs - choose the type of file system to install partdisk - edit partition table (e.g., to create a plan 9 partition) prepdisk - subdivide plan 9 disk partition mountfs - choose and mount file system partition configdist - choose the source of the distribution archive mountdist - locate and mount the distribution copydist - copy the distribution into the file system bootsetup - create a boot floppy or configure hard disk to boot plan 9 The following unfinished tasks are ready to be done: finish - finish the installation and reboot stop - save the current installation state, to be resumed later |
Task to do [finish]:
finish
[Invio]
Al termine conviene rimettere il disco usato per l'installazione:
We need to write the state of the current installation to the install floppy, so that you can pick up from here if, for example, you want to set up more boot methods. |
Please make sure the install floppy is in the floppy drive and press enter.
[Invio]
Your install state has been saved to the install floppy. Congratulations; you've completed the install. Halting file systems... done Remember to take the install disk out of the drive. Feel free to turn off your computer. |
Per verificare si può riavviare con la combinazione di tasti [Ctrl Alt Canc].
Una volta riavviato l'elaboratore, eventualmente con l'aiuto del dischetto di avvio preparato durante l'installazione, si arriva a un punto in cui appare una domanda che può sembrare incomprensibile:
root is from (il, tcp, local)[local!#S/sdC0/fs]: |
Intuitivamente si comprende che si tratta della possibilità di avviare il sistema operativo dal disco locale o attraverso altri mezzi (per esempio la rete). È sufficiente confermare la voce suggerita per procedere all'avvio della copia locale.
root is from (il, tcp, local)[local!#S/sdC0/fs]:
[Invio]
Inizialmente, il sistema prevede l'utente glenda, senza parola d'ordine:
user [none]:
glenda
[Invio]
Si ottiene così l'avvio del sistema grafico, dove, in particolare, appare una finestra di terminale con in evidenza un documento che introduce all'uso di Plan 9.
Dal momento che si utilizza un file system Kfs, si arresta il sistema con il comando seguente:
%
disk/kfscmd halt
[Invio]
kfs file system halted |
Si osservi che se si sta utilizzando un file system diverso da Kfs (come nel caso di Fossil), si ottiene soltanto un messaggio di errore, del tipo: kfscmd: can't open command file. |
Per poter impartire un comando del genere serve una finestra di terminale, che dovrebbe essere già disponibile la prima volta che si avvia il sistema installato.
In mancanza di altro, anche se il file system non è ancora stato fermato con un comando apposito, si può comunque riavviare il sistema con la combinazione di tasti [Ctrl Alt Canc].
Lucent Technologies, Plan 9 from Bell Labs
1) Plan 9 Lucent Public License
«a2» 2013.11.11 --- Copyright © Daniele Giacomini -- appunti2@gmail.com http://informaticalibera.net