2550 Garcia AvenueMountain View, CA 94043U.S.A.
Guida avanzata a Solaris
N. parte: 802-3351-10Revisione A, dicembre 1995
A Sun Microsystems, Inc. Business
Cartariciclabile
1995 Sun Microsystems, Inc. 2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.A.
Tutti i diritti riservati. Questo prodotto o documento è protetto da copyright e distribuito sotto licenza con limitazione d’uso,copia, distribuzione e decompilazione. Nessuna parte di questo prodotto o documento può essere riprodotta, in qualunqueforma o con qualunque mezzo, senza la previa autorizzazione scritta di Sun e dei suoi concessori di licenza.
Parti di questo prodotto possono essere derivate dai sistemi UNIX® e Berkeley 4.3 BSD, concessi in licenza rispettivamente daUNIX Systems Laboratories, Inc., una consociata interamente di proprietà di Novell, Inc., e dalla University of California. Ifont software di terze parti utilizzati in questo prodotto sono protetti da copyright e concessi in licenza dai fornitori Sun.
Il prodotto descritto in questo manuale può essere protetto da uno o più brevetti o domande di brevetto statunitensi ointernazionali.
MARCHI REGISTRATISun, Sun Microsystems, il logo Sun, SunSoft, il logo SunSoft, Solaris, SunOS, OpenWindows, DeskSet, ONC, ONC+ e NFSsono marchi o marchi registrati da Sun Microsystems, Inc. negli Stati Uniti, e sono protetti come marchi in alcuni altri paesi.UNIX è un marchio registrato negli Stati Uniti e in altri paesi, concesso in licenza esclusivamente da X/Open Company, Ltd.OPEN LOOK è un marchio registrato di Novell, Inc. PostScript e Display PostScript sono marchi di Adobe Systems, Inc.PowerPC è un marchio di International Business Machines Corporation. Sono fatti salvi i diritti dei legittimi depositari deiprodotti, dei marchi e dei marchi registrati riportati.
Tutti i marchi SPARC, incluso il logo di conformità SCD, sono marchi o marchi registrati di SPARC International, Inc. negliStati Uniti, e sono protetti come marchi in alcuni altri paesi. SPARCcenter, SPARCcluster, SPARCompiler, SPARCdesign,SPARC811, SPARCengine, SPARCprinter, SPARCserver, SPARCstation, SPARCstorage, SPARCworks, microSPARC,microSPARC-II e UltraSPARC sono concessi in licenza esclusiva a Sun Microsystems, Inc. I prodotti che recano i marchi SPARCsono basati su un’architettura sviluppata da Sun Microsystems, Inc.
Le interfacce utente grafiche OPEN LOOK® e Sun™ sono state sviluppate da Sun Microsystems, Inc. per i propri utenti elicenziatari. Sun riconosce gli sforzi innovativi di Xerox nella ricerca e nello sviluppo del concetto di interfaccia grafica o visivaper l’industria informatica. Sun possiede una licenza non esclusiva di Xerox per la Xerox Graphical User Interface; questalicenza copre anche i licenziatari Sun che utilizzano una interfaccia grafica compatibile con OPENLOOK o che rispettano gliaccordi stabiliti nella licenza Sun.
X Window System è un marchio di X Consortium, Inc.
QUESTA PUBBLICAZIONE VIENE FORNITA SENZA GARANZIE DI ALCUN TIPO, NÉ ESPLICITE NÉ IMPLICITE,INCLUSE, MA SENZA LIMITAZIONE, LE GARANZIE IMPLICITE DI COMMERCIABILITÀ, IDONEITÁ PER UNDETERMINATO SCOPO O NON-VIOLAZIONE.
QUESTA PUBBLICAZIONE POTREBBE CONTENERE IMPRECISIONI TECNICHE O ERRORI TIPOGRAFICI. LEINFORMAZIONI QUI CONTENUTE VENGONO PERIODICAMENTE AGGIORNATE, E LE EVENTUALI MODIFICHEVENGONO INCORPORATE NELLE NUOVE EDIZIONI DEL DOCUMENTO. SUN MICROSYSTEMS, INC. SI RISERVA ILDIRITTO DI APPORTARE MODIFICHE E/O VARIAZIONI AI PRODOTTI E/O AI PROGRAMMI DESCRITTI IN QUESTODOCUMENTO SENZA OBBLIGO DI PREAVVISO.
RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by the government is subject to restrictions as set forth insubparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR 52.227-19.
Versione locale realizzata in Irlanda
iii
Indice
Introduzione. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
1. Login in SunOSe avvio di OpenWindows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
La shell di login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Logout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Equivalenti da tastiera. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Considerazioni sull’avvio di OpenWindows . . . . . . . . . . . . . . . 5
La variabile d’ambiente OPENWINHOME . . . . . . . . . . . . . . . . 6
Uso del file di avvio corretto . . . . . . . . . . . . . . . . . . . . . . . . . 7
Avvio dell’ambiente OpenWindows . . . . . . . . . . . . . . . . . . . . . . 9
Visualizzazione di OpenWindows. . . . . . . . . . . . . . . . . . . . . 9
Se OpenWindows non si avvia. . . . . . . . . . . . . . . . . . . . . . . . 11
Uscita dall’ambiente OpenWindows . . . . . . . . . . . . . . . . . . . . . . 12
Opzioni speciali per l’avvio di OpenWindows . . . . . . . . . . . . . 12
Avvio con sicurezza di rete ridotta . . . . . . . . . . . . . . . . . . . . 13
iv Guida avanzata a Solaris — dicembre 1995
Avvio con diversi tipi di monitor. . . . . . . . . . . . . . . . . . . . . . 13
SPARC Avvio con più monitor . . . . . . . . . . . . . . . . . . . . . . . 14
2. Comandi principali di SunOS . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Il prompt di sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Esecuzione dei comandi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Correzione degli errori di battitura . . . . . . . . . . . . . . . . . . . . 18
Esecuzione di comandi multipli o lunghi . . . . . . . . . . . . . . . 19
Ripetizione di comandi precedenti . . . . . . . . . . . . . . . . . . . . 20
Aggiunta di opzioni ai comandi . . . . . . . . . . . . . . . . . . . . . . 21
Redirezione e piping dell’output di un comando . . . . . . . . 21
Esecuzione di comandi in background . . . . . . . . . . . . . . . . . 23
Come ottenere informazioni sui comandi OS. . . . . . . . . . . . . . . 24
Visualizzazione delle pagine di riferimento con il comandoman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Visualizzazione di una breve descrizione dei comandi conwhatis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Ricerca per parole chiave con apropos . . . . . . . . . . . . . . . . 25
3. File e directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Informazioni generali sui file . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Comandi per la gestione dei file . . . . . . . . . . . . . . . . . . . . . . . . . 28
Prima di iniziare. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Creazione di un file di prova . . . . . . . . . . . . . . . . . . . . . . . . . 29
Elencazione dei file (ls ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Copia dei file (cp ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Spostamento e cambiamento di nome ai file (mv) . . . . . . . . 30
Indice v
Cancellazione dei file (rm) . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Visualizzazione del contenuto di un file (more , cat ) . . . . . 31
Identificazione del tipo di file (file ) . . . . . . . . . . . . . . . . . . 32
Directory e gerarchie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Struttura gerarchica delle directory. . . . . . . . . . . . . . . . . . . . 33
Visualizzazione della directory corrente (pwd) . . . . . . . . . . 34
La directory home . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Spostamento in un’altra directory (cd ) . . . . . . . . . . . . . . . . . 34
Creazione di una directory (mkdir ) . . . . . . . . . . . . . . . . . . . 37
Percorso relativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Spostamento e cambiamento di nome alle directory. . . . . . 38
Copia di una directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Cancellazione di una directory (rmdir ) . . . . . . . . . . . . . . . . 39
Visualizzazione delle differenze tra due file (diff) . . . . . . . . . . . 39
Confronto fra tre file (diff3) . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Uso di bdiff su file di grandi dimensioni . . . . . . . . . . . . . . . 41
Ricerca di un file (find) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Sicurezza di file e directory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Visualizzazione delle autorizzazioni e dello stato (ls -l ) . 45
Elencazione dei file “nascosti” (ls -a ) . . . . . . . . . . . . . . . . . 46
Modifica delle autorizzazioni (chmod) . . . . . . . . . . . . . . . . . 47
Impostazione di autorizzazioni assolute . . . . . . . . . . . . . . . 50
4. Operazioni di ricerca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Ricerca di stringhe di caratteri con grep . . . . . . . . . . . . . . . . . . . 55
vi Guida avanzata a Solaris — dicembre 1995
Uso di grep come filtro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Uso di grep con stringhe di più parole . . . . . . . . . . . . . . . . . 58
Ricerca di righe che non contengono una data stringa . . . . 58
Altri usi di grep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Ricerca di metacaratteri. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Uso di virgolette singole e doppie nei comandi. . . . . . . . . . 61
5. Password, processi e spazio sul disco . . . . . . . . . . . . . . . . . . . . 63
Utilizzo di una password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Cambiamento della password . . . . . . . . . . . . . . . . . . . . . . . . 64
Durata della password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Processi e PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Visualizzazione dei comandi in esecuzione (ps) . . . . . . . . . 66
Interruzione dei processi (kill) . . . . . . . . . . . . . . . . . . . . . . . . 67
Gestione dello spazio sul disco . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Visualizzazione dello spazio occupato sul disco (df -k) . . . 68
Visualizzazione dello spazio occupato dalle directory (du) 68
6. L’editor vi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Avvio di vi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Creazione di un file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
La riga di stato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Le due modalità di vi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Modalità inserimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Modalità comando. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
Termine di una sessione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Indice vii
Salvataggio delle modifiche e uscita da vi . . . . . . . . . . . . . . 75
Stampa di un file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Comandi base di vi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Spostamento all’interno di un file . . . . . . . . . . . . . . . . . . . . . 77
Inserimento di un testo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Modifica di un testo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Annullamento delle modifiche. . . . . . . . . . . . . . . . . . . . . . . . 83
Cancellazione di un testo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Copia e spostamento di un testo — yank, delete e put . . . . 84
Uso di contatori per la ripetizione dei comandi . . . . . . . . . 86
Comandi di ex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Abilitazione e disabilitazione dei numeri di riga . . . . . . . . 87
Copia di righe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Spostamento di righe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Cancellazione di righe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Ricerca e sostituzione con vi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Ricerca di una stringa di caratteri . . . . . . . . . . . . . . . . . . . . . 89
Funzioni avanzate di ricerca. . . . . . . . . . . . . . . . . . . . . . . . . . 90
Sostituzione di una stringa di caratteri . . . . . . . . . . . . . . . . . 92
Spostamento a una riga specifica. . . . . . . . . . . . . . . . . . . . . . 93
Inserimento di un file in un altro . . . . . . . . . . . . . . . . . . . . . . . . . 93
Apertura contemporanea di più file . . . . . . . . . . . . . . . . . . . . . . 94
Apertura di più file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Copia di righe tra più file . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
viii Guida avanzata a Solaris — dicembre 1995
Impostazione dei parametri di vi. . . . . . . . . . . . . . . . . . . . . . . . . 95
Recupero di un file dopo un crash del sistema . . . . . . . . . . . . . 96
Sommario dei comandi principali di vi. . . . . . . . . . . . . . . . . . . . 96
7. La posta elettronica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Introduzione a mailx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Avvio di mailx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Invio di un messaggio di prova a se stessi . . . . . . . . . . . . . . 102
Lettura del messaggio di prova . . . . . . . . . . . . . . . . . . . . . . . 104
Uscita da mailx. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Lettura dei messaggi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Cancellazione (e recupero) dei messaggi . . . . . . . . . . . . . . . . . . 108
Stampa dei messaggi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Invio dei messaggi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Errori di invio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Annullamento di un messaggio . . . . . . . . . . . . . . . . . . . . . . . 112
Copie per conoscenza e copie silenti . . . . . . . . . . . . . . . . . . . 112
Inserimento di una copia di un messaggio o di un file . . . . 113
Risposta a un messaggio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Salvataggio e richiamo dei messaggi. . . . . . . . . . . . . . . . . . . . . . 115
Salvataggio e copia dei messaggi in un file . . . . . . . . . . . . . 115
Salvataggio e copia dei messaggi in un raccoglitore . . . . . . 116
Lettura dei messaggi salvati in file e raccoglitori . . . . . . . . 118
Uso di vi con mailx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Alias postali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Indice ix
Impostazione di un alias postale in .mailrc . . . . . . . . . . . . . 120
Impostazione di un alias postale in /etc/aliases . . . . . . . . . 122
Comandi tilde. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Visualizzazione della guida per gli altri comandi di mailx . . . 126
8. Uso delle stampanti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Invio di una richiesta di stampa. . . . . . . . . . . . . . . . . . . . . . . . . . 129
Invio di una richiesta alla stampante di default . . . . . . . . . 130
Invio di una richiesta a una stampante specifica . . . . . . . . . 130
Richiesta di notifica al termine della stampa . . . . . . . . . . . . 131
Stampa di un file in più copie . . . . . . . . . . . . . . . . . . . . . . . . 132
Tabella riassuntiva delle opzioni di lp . . . . . . . . . . . . . . . . . 132
Determinazione dello stato della stampante . . . . . . . . . . . . . . . 133
Controllo dello stato delle richieste di stampa. . . . . . . . . . . 134
Controllo delle stampanti disponibili . . . . . . . . . . . . . . . . . . 134
Visualizzazione di tutte le informazioni di stato . . . . . . . . . 135
Visualizzazione dello stato delle stampanti . . . . . . . . . . . . . 136
Visualizzazione delle caratteristiche della stampante. . . . . 136
Tabella riassuntiva delle opzioni di lpstat . . . . . . . . . . . . . . 137
Annullamento di una richiesta di stampa. . . . . . . . . . . . . . . . . . 139
Annullamento di una richiesta di stampa con indicazionedell’ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Annullamento di una richiesta di stampa con indicazione dellastampante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
9. Operazioni in rete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Concetti generali sulle reti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
x Guida avanzata a Solaris — dicembre 1995
Login remoto (rlogin) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
rlogin senza una directory home . . . . . . . . . . . . . . . . . . . . . . 143
rlogin con un altro nome utente. . . . . . . . . . . . . . . . . . . . . . . 143
rlogin in un sistema sconosciuto . . . . . . . . . . . . . . . . . . . . . . 144
Chiusura di una connessione stabilita con rlogin . . . . . . . . 144
Sospensione di una connessione stabilita con rlogin . . . . . 145
Verifica della posizione corrente (who am i) . . . . . . . . . . . . 146
Copia remota dei file (rcp) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Copia di file da un altro sistema al proprio . . . . . . . . . . . . . 147
Copia di file dal proprio sistema ad un altro . . . . . . . . . . . . 148
Esecuzione remota dei comandi (rsh) . . . . . . . . . . . . . . . . . . . . . 148
Visualizzazione di informazioni sugli utenti (rusers) . . . . . . . . 149
10. Personalizzazionedell’ambiente di lavoro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
File di inizializzazione. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Variabili d’ambiente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Profilo utente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Impostazione della variabile PATH . . . . . . . . . . . . . . . . . . . . 155
Alias (solo C Shell). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Modifica del prompt di sistema . . . . . . . . . . . . . . . . . . . . . . . 157
Altre variabili . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Impostazione delle autorizzazioni di default . . . . . . . . . . . . . . . 159
Personalizzazione dei font in OpenWindows . . . . . . . . . . . . . . 161
Definizione del tipo di font e della dimensione . . . . . . . . . . 161
Indice xi
Visualizzazione dei font disponibili . . . . . . . . . . . . . . . . . . . 164
Calibrazione dei monitor a colori . . . . . . . . . . . . . . . . . . . . . . . . 165
Introduzione alla calibrazione dei monitor . . . . . . . . . . . . . 165
Predisposizione dell’ambiente di visualizzazione. . . . . . . . 167
Collegamento dello strumento di calibrazione . . . . . . . . . . 171
Uso dell’utility Calibratore . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Messaggi di errore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
A. Migrazione a OpenWindows 3.3o a versioni successive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
SPARC Migrazione dall’ambiente SunView . . . . . . . . . . . . . . . 182
SPARC I file .defaults e .Xdefaults . . . . . . . . . . . . . . . . . . . . . 182
Migrazione da versioni di OpenWindows anteriori alla 3.3. . . 182
La variabile d’ambiente OPENWINHOME . . . . . . . . . . . . . . . . 182
Il file .xinitrc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
Uso del file di avvio corretto . . . . . . . . . . . . . . . . . . . . . . . . . 184
Caratteristiche dell’area di lavoro . . . . . . . . . . . . . . . . . . . . . 185
Personalizzazione del menu Area di lavoro. . . . . . . . . . . . . 186
B. Transizione a Solaris 2.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
SPARC Transizione da SunOS 4.x . . . . . . . . . . . . . . . . . . . . . . . . 188
SPARC Differenze per gli utenti di SunOS 4.x . . . . . . . . . . . 188
SPARC Differenze per gli amministratori di sistema di SunOS4.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
SPARC Compatibilità con SunOS 4.x per i sistemi SPARC. 190
x86 Transizione da Solaris 2.1 per x86. . . . . . . . . . . . . . . . . . . . . 192
x86 Differenze per gli utenti . . . . . . . . . . . . . . . . . . . . . . . . . . 192
xii Guida avanzata a Solaris — dicembre 1995
x86 Differenze per gli amministratori di sistema. . . . . . . . . 192
x86 Tool di amministrazione per Solaris 2.5 . . . . . . . . . . . . . 193
C. Personalizzazione della tastiera . . . . . . . . . . . . . . . . . . . . . . . . . 195
Disabilitazione/abilitazione del tasto Compose . . . . . . . . . . . . 195
SPARC Rimappatura della tastiera per utenti mancini . . . . . . . 196
SPARC Uso dello script di rimappatura . . . . . . . . . . . . . . . . 196
SPARC Ripristino della mappatura originale. . . . . . . . . . . . 198
x86 Rimappatura dei tasti funzione e del tasto Control . . . . . . 200
x86 Uso dello script di rimappatura . . . . . . . . . . . . . . . . . . . 200
D. Uso delle applicazioni in rete . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Uso di rlogin per eseguire un’applicazione in rete . . . . . . . . . . 206
Sicurezza della rete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Condizioni per la modifica del sistema di sicurezza . . . . . . 207
Meccanismi di controllo degli accessi . . . . . . . . . . . . . . . . . . 208
Protocolli di autorizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Gestione degli accessi al server . . . . . . . . . . . . . . . . . . . . . . . 211
Esecuzione remota di applicazioni client, o esecuzione localecon un diverso nome utente. . . . . . . . . . . . . . . . . . . . . . . 215
E. InternetworkingSPARC— DECnet (DNI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Configurazione dell’internetworking con DECnet . . . . . . . . . . 218
Visualizzazione di applicazioni client remote su sistemiOpenWindows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Visualizzazione di applicazioni client remote su sistemi VAX. 219
F. Gestione del sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Indice xiii
Avvio di Admintool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Registrazione nel gruppo sysadmin . . . . . . . . . . . . . . . . . . . 226
Uso di Admintool per le operazioni più comuni . . . . . . . . . . . . 227
Gestione degli host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Gestione delle stampanti. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Gestione delle porte seriali . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
G. Uso delle schede PCMCIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Requisiti per il supporto delle schede PCMCIA . . . . . . . . . 230
Altra documentazione di riferimento . . . . . . . . . . . . . . . . . . 230
Uso di una scheda di memoria PCMCIA . . . . . . . . . . . . . . . . . . 231
Metodi per la copia dei file . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Modalità di protezione dalla scrittura. . . . . . . . . . . . . . . . . . 231
Schede di memoria PCMCIA e funzione Resume/Suspend diPower Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Copia dei file con il comando tar . . . . . . . . . . . . . . . . . . . . . . . . 233
Copia dei file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Copia dei file con la gestione dei volumi abilitata . . . . . . . . . . . 238
Copia dei file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Copia dei file con la gestione dei volumi disabilitata . . . . . . . . 245
Copia dei file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Uso di una scheda seriale/modem PCMCIA . . . . . . . . . . . . . . . 249
Nomi di dispositivo per le schede seriali/modem PCMCIA 249
Schede seriali/modem PCMCIA e funzione Resume/Suspenddi Power Management . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
xiv Guida avanzata a Solaris — dicembre 1995
Indice analitico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
xv
Introduzione
A chi è destinato il manualeQuesto manuale si rivolge agli utenti del software di sistema SolarisTM
(versione 2.x), costituito da SunOS™ e da OpenWindows™.
Per gli utenti che effettuano una migrazione da Solaris 1.x a Solaris 2.x, vederel’Appendice B, “Transizione a Solaris 2.5”.
Prima di leggere il manualePrima di affrontare la lettura del manuale è necessario installare il sistema epredisporlo per l’uso. Per informazioni sulle procedure da seguire, vedere ilmanuale di installazione specifico per il proprio sistema.
Altro materiale di riferimentoL’AnswerBook del software di sistema Solaris consente di accedere a una seriedi documenti riguardanti Solaris, raggruppati nel modo seguente:
• Documentazione per amministratori di sistema (Sun Administrator’s Set)Questo gruppo di manuali offre informazioni dettagliate sull’installazione el’amministrazione del sistema con riferimento a numerose configurazioni,tra cui le reti di workstation Sun.
xvi Guida avanzata a Solaris— dicembre 1995
• Documentazione per sviluppatori (Sun Developer’s Set)Questo gruppo di manuali è destinato agli sviluppatori di software; contieneinformazioni relative alla scrittura, al debugging e alla manutenzione deiprogrammi utilizzati sui sistemi.
• Documentazione di riferimento (Sun Reference Manual Set)Questi manuali contengono una descrizione dei singoli comandi di SunOS.Le pagine di riferimento, chiamate anche pagine man, possono essereinstallate come documentazione online.
• Documentazione per l’utente (Sun User’s Set)Questi manuali offrono una descrizione dettagliata di vari aspetti delsoftware di sistema SunOS, tra cui l’uso dei comandi di SunOS, l’uso diOpenWindows, la personalizzazione dell’ambiente di lavoro, la soluzionedei problemi, la creazione di script, l’uso della posta elettronica e il lavoro inrete.
Convenzioni tipograficheIn questo manuale vengono adottate le seguenti convenzioni tipografiche:
• Il corsivo viene utilizzato per gli argomenti dei comandi, le variabili e i titolidei manuali; viene inoltre utilizzato per fornire un’enfasi particolare adeterminati termini. Ad esempio:
Inserire l’argomento nomefile come descritto in man Pages(1): UserCommands.
• Il Courier neretto indica i comandi che devono essere digitati dall’utentedurante una sessione di lavoro. Ad esempio:
• Il Courier viene usato per i listati dei programmi, i nomi dei comandi, inomi dei programmi e i nomi dei sistemi. Ad esempio:
Per diventare superutente, digitare root al prompt di login o digitare ilcomando su al prompt del sistema.
$ date
Introduzione xvii
Viene inoltre utilizzato per il testo che il sistema visualizza sullo schermo. Adesempio:
• I pulsanti del mouse vengono identificati in base alla funzione, non allaposizione, e sono indicati interamente in maiuscolo. Ad esempio si troveràindicato “Premere SELEZIONA”, e non “Premere il pulsante sinistro”.
Figura P-1 Funzioni di default dei pulsanti del mouse
Nel mouse a tre pulsanti, vengono assegnate per default le seguentifunzioni:• SELEZIONA = pulsante sinistro• REGOLA = pulsante centrale• MENU = pulsante destro
Nel mouse a due pulsanti, le funzioni assegnate per default sono:• SELEZIONA = pulsante sinistro• MENU = pulsante destro
Per utilizzare la funzione REGOLA con i mouse a due pulsanti, tenerepremuto il tasto Shift e fare clic con SELEZIONA.
• I nomi dei tasti sono indicati con l’iniziale maiuscola (ad esempio, premereil tasto Shift). Su alcune tastiere il tasto Return è indicato con Enter o Invio.
$ whologos console set 11 15:36
SELEZIONAREGOLA
MENU MENUREGOLA= Shift-SELEZIONA
SELEZIONA
xviii Guida avanzata a Solaris— dicembre 1995
Nota – Solaris supporta sia sistemi SPARC che piattaforme x86 o PowerPC™.Poiché questi tipi di sistema sono dotati di tastiere diverse, alcuni equivalentida tastiera disponibili per i comandi di menu di OpenWindows differiscono aseconda del sistema utilizzato.
Per la maggior parte degli equivalenti da tastiera, Solaris utilizza unacombinazione con il tasto Meta utilizzabile su entrambe le piattaforme.L’elenco dei comandi e dei relativi equivalenti da tastiera è riportato nelCapitolo 1, “Login in SunOS e avvio di OpenWindows”.
• In questo manuale, i comandi di Open Windows eseguiti utilizzandoequivalenti da tastiera (detti anche acceleratori da tastiera) vengonorappresentati con la convenzione seguente: un trattino ( - ) posto tra due opiù tasti indica la pressione simultanea di quei tasti.
Ad esempio, Ctrl-Alt significa che occorre premere contemporaneamente itasti Control e Alt; Ctrl-Alt-c significa che occorre premere i tasti Control eAlt e simultaneamente digitare una c.
• Gli equivalenti da tastiera si ottengono premendo il tasto Meta insieme auno o più caratteri. Sulle tastiere dei sistemi SPARC, Meta corrisponde altasto <>, mentre sulle tastiere dei sistemi x86 o PowerPC™ corrisponde allapressione simultanea dei tasti Ctrl e Alt (Ctrl-Alt). Per maggioriinformazioni sugli equivalenti da tastiera, vedere il Capitolo 1, “Login inSunOS e avvio di OpenWindows”.
• La selezione di un’opzione di menu viene indicata nella forma seguente:selezionare Area di lavoro ➤ Programmi.
• Molti menu contengono un’opzione di default, indicata da un contornoovale detto anello di default. Questa opzione viene selezionata automatica-mente facendo clic con SELEZIONA sul pulsante del relativo menu.
Introduzione xix
Convenzioni specifiche
I simboli seguenti, posti prima del titolo di una sezione o di una procedura,indicano che quanto descritto riguarda solo la piattaforma specificata:
SPARC Procedura o sezione relativa a piattaforme SPARC
x86 Procedura o sezione relativa a piattaforme x86
PowerPC™ Procedura o sezione relativa a piattaforme PowerPC™
Le note riguardanti piattaforme specifiche vengono indicate come segue:
SPARC – Nota relativa alla piattaforma SPARC.
x86 – Nota relativa alla piattaforma x86.
PowerPC™ – Nota relativa alla piattaforma PowerPC™.
I richiami relativi a una piattaforma specifica vengono indicati come segue:
• SPARC: Richiamo relativo alla piattaforma SPARC.
• x86: Richiamo relativo alla piattaforma x86.
• PowerPC™: Richiamo relativo alla piattaforma PowerPC™.
Se un codice, una tabella o una figura si riferiscono a una piattaforma specifica,all’inizio del titolo viene indicata la piattaforma in oggetto. Ad esempio:
Tabella 1-1 SPARC: Titolo relativo alla piattaforma SPARC
Tabella 1-2 x86: Titolo relativo alla piattaforma x86
Tabella 1-3 PowerPC™: Titolo relativo alla piattaforma PowerPC™
xx Guida avanzata a Solaris— dicembre 1995
1
Login in SunOSe avvio di OpenWindows 1
Il software di OpenWindows deve essere installato sul disco rigido o su unserver accessibile dal proprio sistema. Se si è incerti sulla collocazione diOpenWindows, rivolgersi all’amministratore del sistema o consultare ilmanuale di installazione per la piattaforma utilizzata.
In questo capitolo viene spiegato come effettuare il login nel sistema, comeutilizzare un interprete di comandi, come attivare e avviare l’ambienteOpenWindows, come uscire dal sistema a finestre e come effettuare il logout.Vengono inoltre considerati alcuni casi particolari, come la configurazionedell’ambiente OpenWindows per due monitor.
LoginSi definisce sessione di lavoro standard il periodo di utilizzo del sistema tra illogin e il logout. L’ambiente multiutente SunOS richiede che l’utente siidentifichi ogni volta che accede al sistema. Il nome di login (detto anche nomeutente o profilo) serve al sistema come chiave di identificazione dell’utente e peraltre funzioni. La password limita l’uso del profilo alle persone che conoscono lachiave di accesso. Se ancora non si possiedono un nome di login e unapassword, chiedere all’amministratore del sistema di predisporli. Una volta inpossesso di queste informazioni, si è pronti per effettuare il login.
2 Guida avanzata a Solaris — dicembre 1995
1
Prima di effettuare il login nel sistema, verificare che sullo schermo compaia ilseguente prompt:
Inserire il nome di login ricevuto dall’amministratore del sistema e premere iltasto Return. Ad esempio, se il proprio nome di login è stella , digitare:
e premere Return. Il sistema chiederà quindi la password di accesso:
Inserire la propria password al prompt e premere Return. (Se al proprio profilonon è assegnata una password, il sistema consente l’accesso senza chiederla.) Siosservi che il sistema non visualizza la password sullo schermo mentre la siinserisce. Si tratta di un meccanismo di sicurezza per impedire che altri utentipossano scoprire la vostra password.
La shell di loginI capitoli seguenti contengono le istruzioni preliminari per l’utilizzo deicomandi di SunOS. Quando si inserisce un comando, in realtà si fornisconoinformazioni a un programma di interpretazione dei comandi, detto shell. Lashell legge le informazioni ricevute e fa in modo che il sistema esegual’operazione richiesta.
La shell di default di SunOS è la Bourne shell, ma nel sistema operativo sonodisponibili altri due interpreti di comandi: la C shell e la Korn shell. Ognuno diquesti programmi è dotato di proprie caratteristiche.
login:
login: stella
login: stellaPassword:
Login in SunOS e avvio di OpenWindows 3
1
Nota – Per avere informazioni specifiche su un qualsiasi comando SunOS,compresi i vari tipi di shell disponibili, è possibile consultare la pagina manrelativa al comando di interesse. Per maggiori informazioni sulle pagine man,vedere “Visualizzazione delle pagine di riferimento con il comando man” alCapitolo 2, “Comandi principali di SunOS”.
Quando si effettua il login nel sistema (o si apre una nuova Finestra dicomando o una finestra Shell), sullo schermo compare un prompt di sistema; lacomparsa del prompt indica che è stato avviata automaticamente una shell,chiamata shell di login. Se la propria shell di login non è quella di default diSunOS (Bourne shell), significa che il sistema è stato configurato per l’utilizzodi una shell diversa (C shell o Korn shell).
Come già accennato, ogni shell è dotata di proprie caratteristiche. Alcunicomandi o procedure disponibili in una shell potrebbero non essere disponibiliin un’altra. Se non specificato diversamente, i comandi e le procedure descrittiin questo manuale si riferiscono di norma alla shell di default di SunOS(Bourne shell).
LogoutPer uscire dal sistema operativo al termine della sessione di lavoro, digitare ilseguente comando di logout:
Dopo qualche istante, il sistema tornerà a visualizzare il prompt di login:
La comparsa del prompt di login segnala che il logout è stato effettuato consuccesso. A questo punto il sistema è pronto a ricevere un nuovo login.
$ exit
$ exitlogin:
4 Guida avanzata a Solaris — dicembre 1995
1
Nota – Con il sistema operativo SunOS, lo spegnimento della workstation o delterminale non comporta necessariamente il logout dal sistema. Se non si eseguela corretta procedura di logout, è possibile che la connessione instaurata allogin non venga interrotta.
Equivalenti da tastieraAnche se la maggior parte delle operazioni richiedono l’uso dei menu diOpenWindows e del mouse, alcune possono essere eseguite utilizzandospecifiche sequenze di tasti, dette acceleratori da tastiera, e alcuni tasti specialipreconfigurati.
La tabella seguente elenca alcuni comandi e i relativi equivalenti da tastiera persistemi SPARC e x86.
Nota – Sulle tastiere SPARC, il tasto Meta è quello indicato con il simbolo <>,mentre sulle tastiere dei sistemi x86 o PowerPC™ si ottiene premendo Ctrl-Alt.
Per eseguire le operazioni con gli acceleratori da tastiera, tenere premuto ilprimo tasto (Meta o Control-Alt assieme) e digitare il secondo carattererichiesto. Ad esempio, per tagliare un testo selezionato su un sistema SPARC,tenere premuto il tasto Meta e premere x; su un sistema x86 o PowerPC™,tenere premuti i tasti Control e Alt e premere simultaneamente il tasto x.
Tabella 1-1 Acceleratori da tastiera
OperazioneEquivalente datastiera Azione
Ripeti Meta - a Ripete l’operazione precedente
Copia Meta - c Copia la selezione nella clipboard
Taglia Meta - x Taglia la selezione e la posiziona nellaclipboard
Ricerca Meta - f Trova la selezione a destra del punto diinserimento
Guida Help o F1 Visualizza una finestra di guidasensibile al contesto per l’elemento sucui è posizionato il puntatore
Login in SunOS e avvio di OpenWindows 5
1
Considerazioni sull’avvio di OpenWindowsPrima di avviare OpenWindows, può essere utile consultare i documenti e lesezioni elencate qui di seguito. Se le considerazioni indicate non riguardano ilproprio sistema, si passi al paragrafo “Visualizzazione di OpenWindows” inquesto capitolo.
• Se occorre installare un server di OpenWindows in una rete, consultare ilmanuale di installazione per la piattaforma utilizzata.
• Se sul sistema è attualmente installato OpenWindows versione 2, si vedal’Appendice A, “Migrazione a OpenWindows 3.3 o a versioni successive”.
• Se sul sistema è attualmente installato l’ambiente SunView, vederel’Appendice A, “Migrazione a OpenWindows 3.3 o a versioni successive”.
Nuovo Meta - n Carica un nuovo file
Apri (file) Meta - a Apre un file (ad esempio, se si èevidenziata l’icona di un file in FileManager)
Apri/Chiudi(finestra)
Meta - w Apre un’icona o riduce a icona unafinestra
Incolla Meta - v Copia il contenuto della clipboard nelpunto di inserimento
Stampa Meta - p Invia un file selezionato alla stampante(ad esempio, se si è evidenziata l’iconadi un file in File Manager)
Caratteristiche Meta - i Visualizza la finestra Caratteristiche perl’applicazione su cui è posizionato ilpuntatore
Annullacancellazione
Shift-Meta - p Annulla un’operazione diannullamento
Salva Meta - s Salva il file corrente
Stop Stop o Esc Interrompe l’operazione corrente
Annulla Meta - u Annulla l’operazione precedente
Tabella 1-1 Acceleratori da tastiera (Continua)
OperazioneEquivalente datastiera Azione
6 Guida avanzata a Solaris — dicembre 1995
1
• Se sul sistema è attualmente installata una versione di OpenWindowsprecedente alla 3.3, vedere i paragrafi “La variabile d’ambienteOPENWINHOME” e “Uso del file di avvio corretto” in questo capitolo.
x86 – In caso di sostituzione del mouse, della tastiera o della scheda videosuccessivamente all’installazione di Solaris, sarà necessario eseguire ilprogramma devconfig per aggiornare la configurazione del sistema. Perulteriori informazioni, vedere la pagina man relativa a devconfig(1M) .
La variabile d’ambiente OPENWINHOME
Se si utilizza una versione di OpenWindows precedente alla 3.3, è probabileche la configurazione corrente preveda l’uso della variabile d’ambienteOPENWINHOME. Con la nuova versione di OpenWindows questa variabile nondeve più essere impostata, né manualmente né all’interno di un file di avvio.
Il comando openwin imposta automaticamente la variabile d’ambienteOPENWINHOME su /usr/openwin ; questo rende superflua l’impostazione daparte dell’utente.
Se la variabile d’ambiente OPENWINHOME è stata impostata nel file .profile o.cshrc nella directory home, commentare o cancellare la riga che la contieneprima di avviare OpenWindows 3.3 o una versione successiva.
Per eliminare o commentare la variabile d’ambiente OPENWINHOME nel file.profile o .cshrc :
1. Aprire il file .profile o .cshrc con un editor di testo, ad esempio vi .
2. Digitare un cancelletto (#) prima della variabile, come illustrato qui diseguito, o cancellare l’intera riga.Se la variabile è impostata nel file .profile , eseguire la procedura a; se èimpostata nel file .cshrc , eseguire la procedura b.
a. Nel file .profile :
#OPENWINHOME=/usr/openwin
Login in SunOS e avvio di OpenWindows 7
1
b. Nel file .cshrc :
3. Salvare il file e uscire dall’editor.
4. Annullare l’impostazione della variabile d’ambiente OPENWINHOME(oppure effettuare un logout e quindi un login).Se si utilizza una Bourne shell o una Korn shell, eseguire la procedura a. Sesi utilizza una C shell, eseguire la procedura b.
a. In una Bourne shell o in una Korn shell, digitare:
b. In una C shell, digitare:
Una volta annullata l’impostazione della variabile d’ambiente si è pronti peravviare OpenWindows. Vedere le relative istruzioni al paragrafo“Visualizzazione di OpenWindows” in questo capitolo.
Uso del file di avvio corretto
Se attualmente si utilizza una versione di OpenWindows anteriore alla 3.3, èimportante determinare lo stato del file .xinitrc , collocato nella directoryhome. Il file .xinitrc è un file di avvio di OpenWindows che può contenereopzioni definite dall’utente.
Per determinare lo stato del file.xinitrc , digitare i comandi seguenti:
#setenv OPENWINHOME /usr/openwin
$ unset OPENWINHOME
esempio% unsetenv OPENWINHOME
$ cd$ ls -a .xinitrc
8 Guida avanzata a Solaris — dicembre 1995
1
A seconda dell’output di questo comando, procedere in uno dei modi seguenti:
• Se non è presente un file .xinitrc (se cioè l’elenco ottenuto con ilcomando ls -a non contiene il nome del file), non fare nulla. Se la propriadirectory home non contiene il file .xinitrc , OpenWindows utilizza il filedi avvio di default del sistema.
• Se il file .xinitrc è presente (se cioè l’elenco ottenuto con il comandols -a contiene il nome del file) ma non è mai stato modificato, o comunquenon si desidera conservare le modifiche apportate, procedere come descrittoal punto 1 del paragrafo “Operazioni sui file di avvio”.
• Se il file .xinitrc è presente (se cioè l’elenco ottenuto con il comandols -a contiene il nome del file), è stato modificato e si desidera conservarele modifiche apportate, procedere come descritto al punto 2 del paragrafo“Operazioni sui file di avvio”.
Operazioni sui file di avvio
1. Per cancellare il file .xinitrc dalla propria directory home, digitare ilcomando seguente:
2. Per conservare le modifiche al file.xinitrc , procedere come segue:
a. Rinominare .xinitrc in .xinitrc.save :
b. Copiare /usr/openwin/lib/Xinitrc in .xinitrc nella propriadirectory home:
c. Aggiungere le righe di .xinitrc.save che si desidera conservarein.xinitrc .
$ rm .xinitrc
$ mv .xinitrc .xinitrc.save
$ cp /usr/openwin/lib/Xinitrc $HOME/.xinitrc
Login in SunOS e avvio di OpenWindows 9
1
Attenzione – Durante la modifica del file .xinitrc , non aggiungere unaversione secondaria di olwm , non aggiungere svenv e non cancellare la rigache contiene /usr/openwin/lib/openwin-sys .
Avvio dell’ambiente OpenWindowsPer avviare l’ambiente OpenWindows, procedere come segue:
1. Se si utilizza NFS, attivare OpenWindows dal server sul quale è installatousando il comando mount .
Per informazioni su come attivare OpenWindows da un server, vedere ilmanuale OpenWindows Desktop Reference Manual, oppure rivolgersiall’amministratore del sistema.
2. Avviare OpenWindows con il comando openwin , aggiungendoeventualmente le opzioni di avvio desiderate.
Visualizzazione di OpenWindows
Dopo avere attivato OpenWindows da un server e avere eseguito lo script diinstallazione, si è finalmente pronti per avviare OpenWindows.
Per avviare OpenWindows, digitare /usr/openwin/bin/openwin al promptdella shell e premere Return.
Questo comando visualizza la videata iniziale di OpenWindows versione 3.3 einstalla l’ambiente di lavoro.
Visualizzazione rapida di OpenWindows
Dopo avere verificato che OpenWindows si avvia correttamente, è possibileconfigurare il sistema in modo da utilizzare un comando di avvio più breve,per evitare di ripetere ogni volta l’intero percorso di OpenWindows.
$ /usr/openwin/bin/openwin
!
10 Guida avanzata a Solaris — dicembre 1995
1
Se si utilizza una Bourne shell o una Korn shell, è possibile inserire unafunzione shell nel file .profile . Se si utilizza una C shell è possibile inserireun alias nel file .cshrc . Sia il file .profile che il file .cshrc si trovano nelladirectory home.
Una volta inserito il comando abbreviato nel file appropriato per la propriashell, per avviare OpenWindows sarà sufficiente digitare:
Per informazioni su come inserire il comando abbreviato nei file di avvio,vedere i paragrafi seguenti “File .profile” e “File .cshrc”.
File .profile
Per inserire il comando abbreviato per l’avvio di OpenWindows nel file.profile :
1. Aprire il file .profile usando un editor di testo, ad esempio vi .
2. Inserire la funzione shell seguente, scrivendola esattamente nella formaindicata:
3. Salvare il file e uscire dall’editor.
4. Effettuare un logout e quindi un nuovo login per attivare il comando,oppure digitare:
A questo punto, per avviare OpenWindows sarà sufficiente digitare openwin .
$ openwin
openwin () { /usr/openwin/bin/openwin}
$ . .profile
Login in SunOS e avvio di OpenWindows 11
1
File .cshrc
Per inserire il comando abbreviato per l’avvio di OpenWindows nel file.cshrc :
1. Aprire il file .cshrc usando un editor di testo, ad esempio vi .
2. Inserire nel file il seguente comando di alias, scrivendolo esattamentenella forma indicata:
3. Salvare il file e uscire dall’editor.
4. Effettuare un logout e quindi un nuovo login per attivare il comando,oppure digitare:
A questo punto, per avviare OpenWindows sarà sufficiente digitare openwin .
Se OpenWindows non si avvia
OpenWindows viene avviato dalla directory /usr/openwin , dove è installatoper default. Molte applicazioni, ad esempio Calendario, non possono esserecaricate se il software di OpenWindows non è correttamente installato in/usr/openwin.
Se OpenWindows non si avvia dopo avere digitato il comando/usr/openwin/bin/openwin , è possibile che il software di OpenWindowsnon sia installato, o che sia installato in una directory diversa. In questo caso,consultare il manuale OpenWindows Desktop Reference Manual oppure rivolgersiall’amministratore del sistema.
alias openwin /usr/openwin/bin/openwin
esempio% source .cshrc
12 Guida avanzata a Solaris — dicembre 1995
1
Uscita dall’ambiente OpenWindowsQuando si lavora nell’ambiente a finestre OpenWindows, non è possibileeffettuare il logout come si è soliti fare per terminare una sessione standard diSunOS. Occorre prima uscire dall’ambiente a finestre e quindi effettuare il veroe proprio logout.
Digitando logout al prompt di una shell, compare il messaggio:
Per uscire dall’ambiente OpenWindows, procedere come segue:
1. Posizionare il mouse in modo che la freccia (puntatore) si trovi sullosfondo dello schermo (l’area di lavoro).
2. Premere il pulsante del mouse MENU.Compare il menu Area di lavoro con le opzioni disponibili.
3. Trascinare il puntatore lungo il menu fino a evidenziare l’ultima opzione,Esci .
4. Rilasciare il pulsante del mouse.Compare una finestra pop-up che chiede conferma dell’uscita dal sistema afinestre.
5. Posizionare il puntatore su Esci e fare clic con il pulsante del mouseSELEZIONA.Dopo qualche istante, tutte le finestre verranno chiuse e nell’angolo inferioresinistro dello schermo comparirà il prompt di sistema.
Opzioni speciali per l’avvio di OpenWindowsOpenWindows viene in genere avviato con la procedura descritta al paragrafo“Visualizzazione di OpenWindows”. Tuttavia, in alcuni casi può essereopportuno utilizzare opzioni aggiuntive per modificare la procedura di avviostandard.
In questo paragrafo vengono descritti i seguenti casi particolari:
• Avvio di OpenWindows con sicurezza di rete ridotta.
Non è una shell di login.
Login in SunOS e avvio di OpenWindows 13
1
• Avvio di OpenWindows con diversi tipi di monitor e frame buffer.
• Avvio di OpenWindows su più schermi.
Per avviare OpenWindows con una o più opzioni speciali, digitare il comandoopenwin come segue:
Nell’esempio precedente, opzioni indica le opzioni da inserire nella riga dicomando per personalizzare la configurazione di default del server. Neiparagrafi seguenti sono descritte alcune delle opzioni di uso più comune.
Avvio con sicurezza di rete ridotta
Se si sta lavorando in un ambiente di rete aperto e la sicurezza della rete noncostituisce un problema, è possibile utilizzare l’opzione -noauth , che consentead altri utenti di eseguire le applicazioni residenti sul proprio sistema.
Il comando seguente prevale sulla funzione di sicurezza di default, checonsente di specificare gli utenti con diritto di accesso al server:
Avvio con diversi tipi di monitor
Se si dispone di un monitor a scala di grigi (un monitor monocromatico con unframe buffer di 8 o più bit) è possibile avviare OpenWindows con l’opzionegrayvis . Questa opzione non è necessaria, ma permette di migliorare alcuniaspetti della visualizzazione di OpenWindows.
Per utilizzarla, digitare quanto segue al prompt di sistema:
$ openwin [ opzioni ]
$ openwin -noauth
$ cd$ openwin -dev /dev/fb grayvis
14 Guida avanzata a Solaris — dicembre 1995
1
SPARC Avvio con più monitor
SPARC – Questa sezione riguarda soltanto i sistemi basati su processoriSPARC. La procedura descritta richiede una certa esperienza diamministrazione dei sistemi. Se non si è mai eseguita una procedura diconfigurazione, rivolgersi all’amministratore di sistema.
Per avviare OpenWindows su più schermi è necessario comunicare al sistema inomi dei dispositivi aggiuntivi e i tipi di visualizzazione che si desiderautilizzare. È possibile specificare le opzioni relative ai dispositivi, oppureutilizzare i valori di default disponibili per lo script di avvio openwin .
Per avviare OpenWindows su due monitor occorre specificare due opzioniinsieme al comando openwin :
Le doppie parentesi indicano che la combinazione di [ -dev dispositivo ] e[ opzioni_dispositivo ] può essere inserita più volte nella riga di comando (unavolta per ogni dispositivo).
[ -dev dispositivo ]L’opzione dispositivo specifica il frame buffer, o schermo, che il server dovràutilizzare per la visualizzazione.
Se questa opzione non viene specificata, il server utilizza il dispositivo didefault, /dev/fb . Se l’opzione -dev viene specificata più volte nella riga dicomando, essa indica l’uso di più monitor con lo stesso server.
[ opzioni_dispositivo ]Le opzioni_dispositivo sono una serie di modificatori in grado di cambiare ilcomportamento del dispositivo specificato con l’opzione -dev .
Esempi di opzioni per i dispositivi
Questo paragrafo contiene alcuni esempi in cui vengono utilizzati due monitor,in posizione affiancata o l’uno sopra l’altro.
$ openwin [ [ -dev dispositivo ] [ opzioni_dispositivo ] ]
Login in SunOS e avvio di OpenWindows 15
1
Nota – In tutti gli esempi è importante notare l’ordine dei dispositivi. Il primodispositivo specificato deve essere lo schermo disposto fisicamente a sinistra osopra il secondo. Il secondo dispositivo deve essere lo schermo collocatofisicamente a destra o sotto il primo.
[ left ] [ right ]La seguente riga di comando ordina al sistema di avviare OpenWindows sudue schermi. Quello di sinistra è il frame buffer di default, mentre quello didestra è uno schermo monocromatico. Questa configurazione permette dispostare il cursore a sinistra o a destra tra uno schermo e l’altro.
L’esempio che segue è equivalente a quello precedente. Per default, il primodispositivo specificato nella riga di comando si trova a sinistra del secondo.
La riga di comando seguente ordina al sistema di avviare OpenWindows sudue schermi. Quello di destra è il frame buffer di default, mentre quello disinistra è uno schermo monocromatico. Questa configurazione permette dispostare il cursore a sinistra e a destra tra uno schermo e l’altro.
[ top ] [ bottom ]La riga di comando seguente ordina al sistema di avviare OpenWindows sudue schermi. Quello superiore è un CG6, mentre quello inferiore è un monitormonocromatico. Questa configurazione permette di spostare il cursore in alto ein basso tra uno schermo e l’altro.
$ openwin -dev /dev/fb left -dev /dev/fbs/bwtwo0 right
$ openwin -dev /dev/fb -dev /dev/fbs/bwtwo0
$ openwin -dev /dev/fb right -dev /dev/fbs/bwtwo0 left
$ openwin -dev /dev/fbs/cgsix0 top -dev /dev/fbs/bwtwo0 bottom
16 Guida avanzata a Solaris — dicembre 1995
1
L’esempio che segue non è equivalente a quello precedente. Per default, ilprimo dispositivo specificato nella riga di comando si trova a sinistra delsecondo.
La riga di comando seguente ordina al sistema di avviare OpenWindows sudue schermi. Quello inferiore è un CG6, mentre quello superiore è un monitormonocromatico. Questa configurazione permette di spostare il cursore in alto ein basso tra uno schermo e l’altro.
Alcune note aggiuntive
Se si utilizzano più schermi, è opportuno ricordare quanto segue.
• Per default, olwm gestisce tutti gli schermi.• Non è possibile spostare le finestre tra uno schermo e l’altro.
$ openwin -dev /dev/fbs/cgsix0 -dev /dev/fbs/bwtwo0
$ openwin -dev /dev/fbs/cgsix0 bottom -dev /dev/fbs/bwtwo0 top
17
Comandi principali di SunOS 2
Questo capitolo costituisce un’introduzione ai comandi principali del sistemaoperativo SunOS. Vengono descritte le procedure da seguire per digitare icomandi, correggere gli errori di battitura, eseguire comandi lunghi o multiplicon le relative opzioni, ed altre informazioni sui comandi di SunOS.
Per eseguire i comandi, usare una Finestra di comando o una Shell, disponibilidal sottomenu Programmi dal menu Area di lavoro.
Il prompt di sistemaDopo avere effettuato il login, lo schermo o la finestra contengono soltanto unprompt iniziale. Il tipo di prompt dipende dal tipo di shell in uso e dallaconfigurazione impostata dall’amministratore del sistema. Negli esempi diquesto manuale verrà utilizzato il prompt di default di SunOS, il simbolo deldollaro ($).
Per informazioni su come cambiare il prompt, vedere “Modifica del prompt disistema” al Capitolo 10, “Personalizzazione dell’ambiente di lavoro”.
18 Guida avanzata a Solaris — dicembre 1995
2
Esecuzione dei comandiQuando sullo schermo compare il prompt della shell, significa che il sistema èpronto per ricevere un comando dall’utente. Provare a digitare il comandodate , come indicato nell’esempio (digitare date e premere il tasto Return):
Come si può osservare, questo comando visualizza la data e l’ora corrente. Siprovi ora a digitare lo stesso comando con l’iniziale maiuscola:
Come si può osservare, la D maiuscola non viene interpretata dal sistema allostesso modo della d minuscola. Quasi tutti i comandi del sistema operativoSunOS devono essere digitati usando lettere minuscole.
Correzione degli errori di battitura
Se si è iniziato a digitare un comando, ad esempio Date , e ci si accorge diavere commesso un errore, è possibile correggerlo prima di premere il tastoReturn. Il comando, infatti, viene inviato al sistema solo premendo il tastoReturn e prima di allora non ha alcun effetto. Per correggere un errore dibattitura si può procedere in due modi:
• Premere il tasto Canc o Back Space per cancellare il comando fino al puntoda correggere; oppure
• Digitare Ctrl-U per cancellare l’intera riga e ripetere l’intero comando.(Premere il tasto Control e contemporaneamente il tasto “u”.)
Fare una prova con entrambi i metodi per valutarne gli effetti. (Il tastoCanc/Back Space può variare a seconda dei sistemi. La combinazione Ctrl-Ufunziona su quasi tutti i sistemi.)
$ datelunedì, 3 febbraio 1993, 10:12:51 MET$
$ DateDate: Comando non trovato.$
Comandi principali di SunOS 19
2
Esecuzione di comandi multipli o lunghi
Il sistema operativo SunOS permette di eseguire più comandi raggruppandoliin un’unica riga di comando. È sufficiente separare i comandi con un punto evirgola (;), come indicato nell’esempio con i comandi date e logname :
Come si può osservare, il sistema visualizza la data e l’ora corrente (risultatodel comando date ) e il nome di login dell’utente correntemente connesso alsistema (risultato del comando logname ).
Se il comando da digitare è molto lungo, è possibile utilizzare una barrarovesciata (\) per continuare a scrivere sulla riga successiva. Ad esempio:
I comandi date e logname utilizzati nell’esempio, pur non essendo lunghi,dimostrano in modo semplice la possibilità di inserire una serie di comandi supiù righe. Questa caratteristica risulta assai utile con un uso più avanzato delsistema, quando i comandi da inserire sono spesso più lunghi della larghezzadello schermo.
Nota – Se si utilizza una Shell o una Finestra di comando nell’ambienteOpenWindows, per digitare i comandi su più righe non c’è bisogno di ricorrerealla barra rovesciata. Quando si raggiunge la fine di una riga, i comandi inseritipassano automaticamente alla riga successiva; l’intera sequenza viene quindieseguita premendo il tasto Return.
$ date; lognamelunedì, 3 febbraio 1993, 10:12:51 METstella$
$ date; \lognamelunedì, 3 febbraio 1993, 10:12:51 METstella$
20 Guida avanzata a Solaris — dicembre 1995
2
Ripetizione di comandi precedenti
Nota – La funzione di ripetizione dei comandi descritta in questo paragrafo èdisponibile solo se si utilizza una C shell.
Un metodo rapido per ripetere l’ultimo comando consiste nel digitare !! epremere Return. Il sistema tiene in memoria una storia, cioè una registrazionecronologica dei comandi eseguiti ed è in grado di ripeterli. Ad esempio, sel’ultimo comando eseguito è date , digitando !! si otterrà quanto segue:
È anche possibile ripetere un qualsiasi comando già eseguito digitando ! x,dove x è il numero del comando desiderato nella storia registrata dal sistema.Per visualizzare la lista dei comandi memorizzati, digitare history e premereReturn. L’esempio seguente mostra un possibile output di questo comando:
Un altro metodo per ripetere un comando memorizzato consiste nel digitare !seguito da un numero negativo. Ad esempio, per ripetere il penultimocomando eseguito, digitare quanto segue:
esempio% !!datelunedì, 3 febbraio 1993, 10:12:51 METesempio%
esempio% history1 pwd2 clear3 ls -l4 cd /usr/home/worker5 logname6 date7 history
esempio% !-2lognamestellaesempio%
Comandi principali di SunOS 21
2
In base alla registrazione cronologica, il sistema ha ripetuto il comandologname .
Un ulteriore metodo consiste nel digitare ! seguito dal primo carattere di uncomando precedente. Ad esempio, se era stato inserito il comando clear percancellare il contenuto dello schermo, lo stesso comando può essere ripetutodigitando !cl . Con questo metodo, tuttavia, occorre inserire un numerosufficiente di caratteri per rendere il comando identificabile in modo univoco.Se si inserisce una sola lettera dopo ! , il sistema ripete il comando più recenteche inizia con quella lettera.
Aggiunta di opzioni ai comandi
Molti comandi dispongono di opzioni che corrispondono a funzioni speciali. Adesempio, il comando date dispone dell’opzione -u , che esprime l’ora nel fusodi Greenwich (GMT, Greenwich Mean Time) anziché nel fuso orario locale:
La maggior parte delle opzioni vengono espresse con un singolo caratterepreceduto da un trattino (- ). Non tutti i comandi dispongono di opzioni,mentre altri ne possiedono diverse. Per utilizzare più opzioni di uno stessocomando, è possibile digitarle sia separatamente (-a -b ) che insieme (-ab ).
Redirezione e piping dell’output di un comando
Se non specificato diversamente, i risultati (o output) dei comandi vengonovisualizzati sullo schermo. Alcuni simboli speciali permettono tuttavia diredirigere l’output di un comando, ad esempio per salvarlo in un file anzichévisualizzarlo sullo schermo. L’esempio seguente mostra l’uso del simbolo diredirezione (>):
$ date -uLun, feb 3 10:12:51 GMT 1993$
$ date > file_di_prova$
22 Guida avanzata a Solaris — dicembre 1995
2
In questo esempio, l’output del comando date viene rediretto in un nuovo filedi nome file_di_prova . Il contenuto di file_di_prova può a sua voltaessere visualizzato con il comando more :
Come si può osservare, file_di_prova contiene l’output del comando date .(Per informazioni sul comando more , vedere il Capitolo 3, “File e directory”.)
In alcuni casi è possibile redirigere l’output di un comando perché vengautilizzato come input da un altro comando. Una serie di comandi collegati inquesto modo viene detta pipeline. Il simbolo utilizzato per questo tipo diredirezione è una barra verticale (| ) detta pipe.
Ad esempio, anziché salvare l’output di un comando in un file, è possibileutilizzarlo come input per un comando di stampa (lp ) usando il simbolo dipipe (| ). Per inviare l’output del comando date direttamente alla stampante,digitare quanto segue:
L’output del comando date verrà stampato. (Per informazioni sull’uso delcomando di stampa lp , vedere “Invio di una richiesta alla stampante didefault” al Capitolo 8, “Uso delle stampanti”.)
Gli esempi di piping e redirezione illustrati finora sono piuttosto semplici, male potenzialilità di queste funzioni verranno ulteriormente approfondite nelladescrizione di procedure più avanzate.
$ more file_di_provalunedì, 3 febbraio 1993, 10:12:51 MET$
$ date | lp$
Comandi principali di SunOS 23
2
Esecuzione di comandi in background
In molti casi può essere comodo digitare un comando dal prompt di sistema equindi lasciare che l’esecuzione avvenga in background. Se un comando nonviene posto in background, il prompt non ricompare fino al termine della suaesecuzione. Perciò, per evitare i possibili tempi di attesa, si può rendere lafinestra immediatamente disponibile per l’inserimento di altri comandi.
Per eseguire un processo in background, digitare una ‘e commerciale’ (&) dopoil comando, come illustrato nell’esempio seguente. Il numero che compare èl’identificativo (id) del processo:
Il comando bigjob verrà eseguito in background, lasciando la shellimmediatamente disponibile per l’inserimento di altri comandi. Una voltacompletato il processo, inserendo un nuovo comando, ad esempio date , verràvisualizzato un messaggio simile al seguente:
Se si desidera terminare la sessione di lavoro senza attendere il completamentodi un processo in background, usare il comando nohup (no hangup) perconsentirne l’esecuzione completa, come illustrato in questo esempio. In casocontrario, il processo in background verrà terminato al momento del logout:
$ bigjob &[1] 21414$
$ datelunedì, 3 febbraio 1993, 10:12:51 MET[1] + Done bigjob$
$ nohup bigjob &[1] 21414$
24 Guida avanzata a Solaris — dicembre 1995
2
Come ottenere informazioni sui comandi OSIn questa sezione vengono descritte alcune funzioni di guida online. Questefunzioni permettono di ottenere informazioni di riferimento direttamente dallapropria workstation o dal proprio terminale.
Nota – Le funzioni descritte in questo paragrafo si aggiungono alle funzioni diguida di OpenWindows.
Visualizzazione delle pagine di riferimento con il comando man
Se si conosce il nome di un comando ma non si è certi degli effetti che produce,il comando man può essere d’aiuto. Per avere maggiori informazioni su questocomando, digitare:
Questo comando visualizza l’inizio di una pagina di riferimento del manualeonline di SunOS. Premere la barra spaziatrice per passare alla videatasuccessiva, oppure premere il tasto Q per uscire e tornare al prompt di sistema.Il comando man permette di ottenere informazioni su tutte le opzionidisponibili e sulla corretta sintassi dei comandi. Spesso le pagine di riferimentocontengono esempi che illustrano i possibili impieghi dei comandi.
Visualizzazione di una breve descrizione dei comandi con whatis
Per visualizzare una descrizione sintetica del funzionamento di un comando,usare il comando whatis come illustrato in questo esempio:
Si osservi il numero tra parentesi dopo il nome del comando. Questo numeroindica la sezione del manuale di riferimento online alla quale appartiene ilcomando. I comandi sono infatti raggruppati in diverse categorie a secondadella loro funzione. La maggior parte dei comandi utente è contenuta nella
$ man man
$ whatis datedate (1) -display or set the date$
Comandi principali di SunOS 25
2
sezione 1. Per convenzione, il numero della sezione compare tra parentesi dopoil nome del comando. Nel manuale di riferimento stampato, i comandicompaiono in ordine alfabetico all’interno del gruppo di appartenenza.
Ricerca per parole chiave con apropos
Se si vuole eseguire una data operazione ma non si è certi sul comando dautilizzare, il comando apropos può essere di aiuto. Questo comando permettedi individuare uno o più comandi tramite una ricerca per parole chiave. Ilrisultato del comando apropos è un elenco di tutti i comandi le cui descrizionisintetiche contengono la parola chiave specificata. Se la parola chiaveimpostata figura in numerose descrizioni, il risultato potrà essere un lungoelenco di comandi in qualche modo correlati.
Per avere alcuni esempi dell’output del comando apropos, provare ad eseguireuno o più dei comandi seguenti:
• apropos who• apropos execute• apropos apropos
Se la parola chiave inserita genera un elenco eccessivamente lungo, è possibilepremere Ctrl-C per interrompere l’elencazione e tornare al prompt di sistema.(Premere il tasto Control e contemporaneamente il tasto “c”.)
26 Guida avanzata a Solaris — dicembre 1995
2
27
File e directory 3
La riga di comando di SunOS viene usata per eseguire operazioni su file edirectory in maniera “manuale”, digitandone il nome insieme al comandoSunOS appropriato. Si tratta di un approccio diverso da quellodell’applicazione File Manager di OpenWindows, in cui i file vengonovisualizzati in forma di icone e la selezione dei comandi avviene tramite menu.
Questo capitolo introduce i concetti principali e le procedure da seguire peroperare su file e directory dalla riga di comando di SunOS. Le operazionidescritte possono essere effettuate da qualsiasi riga di comando di SunOS, sitratti di shell o finestre di comando dell’ambiente OpenWindows o di terminaliremoti. Per utilizzare efficacemente il sistema operativo SunOS è essenzialecomprendere i concetti presentati in questo capitolo.
Informazioni generali sui fileIl file è l’unità fondamentale del sistema operativo SunOS. Quasi tutti i tipi didati vengono gestiti come file, tra cui:
• Documenti — File di testo, come lettere o relazioni, sorgenti di programmio qualsiasi altro tipo di dati che sia possibile scrivere e salvare.
• Comandi — La maggior parte dei comandi sono file eseguibili, vale a direfile che è possibile eseguire per avviare un determinato programma. Unesempio di un file eseguibile è il comando date esaminato al capitoloprecedente, in quanto esegue un programma che restituisce la data corrente.
28 Guida avanzata a Solaris — dicembre 1995
3
• Dispositivi — Tutti i dispositivi come terminali, stampanti o unità discovengono gestiti come file.
• Directory — Una directory non è altro che un file che contiene altri file.
Il paragrafo seguente descrive i comandi disponibili per creare, elencare,copiare, spostare e cancellare i file. Verrà inoltre spiegato come visualizzare ilcontenuto di un file e come determinarne la natura.
Comandi per la gestione dei filePer ogni comando descritto in questa sezione è fornito un esempio che neillustra l’utilizzo. Può essere utile provare ad eseguire gli esempi sulla propriaworkstation: l’esercitazione pratica sui comandi permetterà di comprenderli ericordarli più facilmente.
Prima di iniziare
Prima di iniziare l’esercitazione sui file, portarsi nella propria directory home. Sitratta della directory che l’amministratore del sistema genera appositamenteper l’utente quando crea il suo profilo. Eseguendo le operazioni descritte nellapropria directory home sarà più difficile creare, copiare, spostare e soprattuttocancellare i file di altri utenti.
Per spostarsi nella propria directory home, digitare il comando cd senza altriargomenti. Questo comando ha come effetto lo spostamento nella directoryhome dell’utente che lo esegue. Digitare quindi il comando pwd pervisualizzare la posizione corrente all’interno del file system, cioè la propriadirectory home:
In questo esempio, la directory home dell’utente è /export/home/ nomeutente,in cui nomeutente è il nome dell’utente proprietario della directory home.
$ cd$ pwd/export/home/ nomeutente
File e directory 29
3
Creazione di un file di prova
Per creare un file si utilizza il comando touch . Se non esiste un file con il nomespecificato, il comando touch ne crea uno nuovo. Se invece esiste già un filecon lo stesso nome, touch aggiorna l’ora dell’ultimo accesso a quel file.
Elencazione dei file (ls )
Eseguire ora il comando ls per verificare la creazione del file:
Inserendo il comando ls da solo, vengono elencati tutti i file contenuti nelladirectory corrente. Digitando ls insieme al nome di un file, viene mostratosolo il file che corrisponde al nome inserito.
Per maggiori informazioni sul comando ls(1) , vedere man Pages(1): UserCommands.
Copia dei file (cp )
Usare il comando cp per copiare filetemp in un file chiamato filecopia :
$ touch filetemp$
$ ls filetempfiletemp
$ cp filetemp filecopia$
30 Guida avanzata a Solaris — dicembre 1995
3
Provare ora a visualizzare entrambi i file. Si noti che entrambi i nomi inizianocon la stringa “file”. Questa condizione permette di utilizzare il carattere specialeasterisco (*), un simbolo che può sostituire qualsiasi carattere o sequenza dicaratteri. Digitando ls file* , il sistema visualizzerà sia filetemp chefilecopia (e qualsiasi altro file della stessa directory che inizi con file ):
Il nome filecopia compare per primo perché i file vengono elencati in ordinealfabetico. (Le lettere maiuscole e i numeri precedono le lettere minuscole.)
Per maggiori informazioni sul comando cp(1) , vedere man Pages(1): UserCommands.
Spostamento e cambiamento di nome ai file (mv)
Il comando mv permette sia di spostare che di rinominare un file. In questoesempio, il comando mv viene utilizzato per rinominare filetemp infilevuoto :
Visualizzare nuovamente i due file per verificare la modifica:
Come si può osservare, filetemp è stato sostituito da filevuoto .
Per maggiori informazioni sul comando mv(1) , vedere man Pages(1): UserCommands.
$ ls file*filecopia filetemp
$ mv filetemp filevuoto$
$ ls file*filecopia filevuoto
File e directory 31
3
Cancellazione dei file (rm)
A questo punto, utilizzare il comando rm per cancellare filecopia ; verificarequindi il risultato dell’operazione con il comando ls :
Attenzione – Un file cancellato non può più essere recuperato, a meno che nonne esista una copia di backup. Fare perciò molta attenzione nell’uso delcomando rm, soprattutto se associato al carattere speciale “*” . I file cancellaticon rm non possono essere in alcun modo recuperati.
Per maggiori informazioni sul comando rm(1) , vedere man Pages(1): UserCommands.
Visualizzazione del contenuto di un file (more , cat )
Il comando more permette di visualizzare il contenuto di un file. Perutilizzarlo, digitare more seguito dal nome del file che si desidera visualizzare.Il contenuto del file scorrerà lungo lo schermo. Se il file è più lungo di unavideata, compare l’indicazione:
dove nn è la percentuale del file visualizzata fino a quel punto.
$ rm filecopia$ ls file*filevuoto
--Continua--( nn%)
!
32 Guida avanzata a Solaris — dicembre 1995
3
Anche il comando cat permette di visualizzare il contenuto di un file, ma inquesto caso l’intero contenuto scorre sullo schermo in un’unica passata, senzapause tra una videata e l’altra. Il comando cat viene usato in genere per uniredue o più file in un unico file più grande, come nell’esempio seguente:
Per maggiori informazioni sui comandi more(1) o cat(1) , vedere manPages(1): User Commands.
Identificazione del tipo di file (file )
Alcuni file, tra cui i file binari e gli eseguibili, non possono essere né stampatiné visualizzati sullo schermo. Il comando file può essere d’aiuto peridentificare la natura di un determinato file.
In questo esempio, il comando file viene utilizzato per determinare la naturadi filecopia :
Directory e gerarchieFinora è stato spiegato come elencare, copiare, rinominare e cancellare i file. Aquesto punto si possono esaminare questioni più ampie. Ad esempio, dovesono situati i file? In questo paragrafo viene descritta la struttura gerarchicadelle directory. Si consiglia di leggere attentamente la parte descrittiva e quindiprovare ad eseguire gli esempi illustrati nei paragrafi successivi.
$ cat file1 file2 file3 > fileunico$ ls file*file1file2file3fileunico$
$ file filecopiafilecopia: testo ascii
File e directory 33
3
Struttura gerarchica delle directory
I file sono raggruppati in directory, che a loro volta sono organizzate in unastruttura gerarchica. Al livello più alto della gerarchia si trova la directory“radice” o “root”, rappresentata da una barra “/ ”.
Come illustrato nella Figura 3-1, ogni directory del file system può contenere asua volta molte directory. Per convenzione, i diversi livelli delle directoryvengono separati con una barra / . Si osservi ad esempio che la directory root(/ ) contiene, tra le altre, le sottodirectory /usr , /bin , /home e /lib . Lasottodirectory /home contiene a sua volta utente1 , utente2 e utente3 .
Per specificare una directory (o un file al suo interno) occorre indicare i nomidelle directory in cui essa è contenuta. Questo tipo di indicazione viene dettapercorso. Ad esempio, il percorso della directory utente3 che compare nellafigura è /home/utente3 .
Figura 3-1 La struttura gerarchica del file system
Tutte le sottodirectory e i file contenuti in una stessa directory devono avere unnome unico, che li identifichi in modo esclusivo. È invece possibile che due opiù file contenuti in directory diverse abbiano lo stesso nome. Ad esempio, ladirectory /usr contiene la sottodirectory /usr/lib . Tra /usr/lib e /libnon vi sono conflitti in quanto i percorsi sono diversi.
I percorsi dei file hanno esattamente la stessa struttura dei percorsi delledirectory. Il percorso di un file descrive la sua collocazione nella gerarchia delfile system. Ad esempio, se la directory /home/utente2 contiene un file di
/(root)
/usr /bin /home /lib
/home/utente1 /home/utente2 /home/utente3
/usr/hosts /usr/lib
34 Guida avanzata a Solaris — dicembre 1995
3
nome relazione5 , il percorso del file sarà /home/utente2/relazione5 .Questo percorso indica che il file relazione5 si trova nella directoryutente2 , la quale è contenuta nella directory home, la quale è contenuta a suavolta nella directory root (/ ).
Le directory possono contenere solo sottodirectory, solo file o entrambi.
Visualizzazione della directory corrente (pwd)
Il comando pwd visualizza la posizione attuale dell’utente nella gerarchia delfile system:
L’esempio precedente ha valore puramente indicativo, in quanto l’output delcomando dipende dalla struttura delle directory del sistema. La posizionecorrente nella gerarchia del file system viene detta directory corrente.
La directory home
Ogni utente dispone di una propria directory home. Aprendo una Finestra dicomando o una Shell nell’ambiente OpenWindows, la posizione iniziale èsempre la directory home. Questa directory viene predispostadall’amministratore del sistema al momento della creazione del profilo utente.
Spostamento in un’altra directory (cd )
Il comando cd permette di spostarsi in un’altra directory della gerarchia delfile system:
$ pwd/home/utente1
$ cd /usr/lib$ pwd/usr/lib
File e directory 35
3
Digitato senza argomenti, il comando cd riporta l’utente alla sua directoryhome. Se ad esempio la directory home è /home/utente1 , il comando hal’effetto seguente:
Nelle C shell, si può utilizzare il carattere tilde (~) come abbreviazione per ladirectory home. Ad esempio, per spostarsi nella sottodirectory musica sotto lapropria directory home si potrà digitare:
Il tilde può essere utilizzato anche per specificare la directory home di un altroutente. Ad esempio, digitando:
dove nomeutente è il nome di login di un altro utente, ci si sposterà nelladirectory home di quell’utente.
Nota – Se si utilizza una Bourne shell, il carattere ~ non ha lo stesso effetto.
Se si utilizza la Bourne shell, è possibile che l’amministratore di sistema abbiaconfigurato la workstation in modo che il comando $home specifichi ladirectory home dell’utente. In questo caso, digitando:
ci si sposterà nella sottodirectory musica della propria directory home.Analogamente, digitando:
$ cd$ pwd/home/utente1
esempio% cd ~/musica
esempio% cd ~ nomeutente
$ $home/musica
$ $homenomeutente
36 Guida avanzata a Solaris — dicembre 1995
3
dove nomeutente rappresenta il nome di login di un altro utente, ci si sposterànella directory home dell’utente specificato.
La directory immediatamente “sopra” una sottodirectory viene detta directorydi livello superiore. Nell’esempio precedente, /home è la directory di livellosuperiore rispetto a /home/utente1 . Il livello superiore viene indicato con ilsimbolo .. (“punto-punto”). Il comando cd .. produce perciò unospostamento nella directory di livello superiore, come illustrato nell’esempioseguente:
Se la directory corrente è /home/utente1 e si desidera operare su un filecontenuto in /home/utente2 , è possibile utilizzare il comando seguente:
Il percorso ../utente2 ordina al sistema di cercare utente2 nella directorydi livello superiore. L’uso di questo comando abbreviato permette di nonscrivere l’intero percorso /home/utente2 .
$ pwd/home/utente1$ cd ..$ pwd/home
$ pwd/home/utente1$ cd ../utente2$ pwd/home/utente2
File e directory 37
3
Creazione di una directory (mkdir )
La creazione di una nuova directory è un’operazione molto semplice. Èsufficiente digitare il comando mkdir seguito dal nome della nuova directory:
Percorso relativo
Il percorso completo di una directory o di un file inizia con una barra (/ ) edescrive l’intera struttura della directory tra il file o la directory specificata e ladirectory radice. In molti casi è tuttavia possibile utilizzare un percorso piùbreve che indichi la posizione relativa del file o della directory rispetto alladirectory di lavoro corrente.
Per spostarsi in una sottodirectory della directory corrente è sufficienteindicare il nome della directory di destinazione senza specificarne il percorso.Nell’esempio precedente, il comando cd fiori utilizza il percorso relativodella directory di destinazione. Il suo percorso completo, supponendo che ladirectory corrente sia /home/utente2 , sarebbe infatti/home/utente2/fiori .
Provare a creare diverse sottodirectory e a spostarsi dall’una all’altra. Usare siai percorsi completi che i percorsi relativi e verificare di volta in volta laposizione corrente con il comando pwd.
$ mkdir fiori$ cd fiori$ mkdir primule$ cd primule$ pwd/home/utente2/fiori/primule
38 Guida avanzata a Solaris — dicembre 1995
3
Spostamento e cambiamento di nome alle directory
Per cambiare nome a una directory, si esegue un comando che “sposta” ladirectory originale in un’altra di nome diverso. Il comando da utilizzare è mv:
Il comando mv permette anche di spostare una directory all’interno di un’altra:
In questo esempio, la directory viole viene spostata da fiori a fiori2utilizzando il comando mv.
Copia di una directory
Il comando cp -r permette di copiare un’intera directory e il suo contenuto:
Questo comando copia tutti i file e le sottodirectory contenute nella directoryfiori in una nuova directory fiori3 . Questa operazione viene detta copiaricorsiva, e viene specificata con l’opzione -r . Se si cerca di copiare unadirectory senza usare questa opzione viene visualizzato un messaggio dierrore.
$ pwd/home/utente2/fiori$ lsprimule$ mv primule viole$ lsviole
$ pwd/home/utente2/fiori$ lsviole$ mv viole ../fiori2$ ls ../fiori2viole
$ cp -r fiori fiori3$
File e directory 39
3
Cancellazione di una directory (rmdir )
Per cancellare una directory vuota, usare il comando rmdir come segue:
Se la directory specificata contiene file o sottodirectory, il comando rmdir nonla cancella.
Per cancellare una directory e tutto il suo contenuto, comprese eventualisottodirectory e i rispettivi file, occorrerà utilizzare rm -r (aggiungendo cioèl’opzione ricorsiva -r ). Digitare quanto segue:
Attenzione – Le directory cancellate con il comando rmdir non possono essererecuperate, né possono essere recuperate le directory cancellate con rm -r .
Visualizzazione delle differenze tra due file (diff )Accade spesso che diverse persone che hanno accesso ad un file ne effettuinouna copia e la modifichino. Il comando diff permette di identificare ledifferenze esistenti tra due versioni di un file ASCII. Il comando:
confronta riga per riga primo_file e secondo_file cercando eventualidifferenze. Quando il programma individua una o più righe diverse, essodetermina se la differenza riscontrata è il risultato di un’aggiunta, di unacancellazione o di una modifica, e individua il numero di righe interessate.L’output del comando indica i numeri delle righe che presentano differenze inciascuno dei file, seguito dalle parti di testo che risultano diverse.
$ rmdir fiori3$
$ rm -r fiori3$
$ diff primo_file secondo_file
!
40 Guida avanzata a Solaris — dicembre 1995
3
Se la differenza è il risultato di un’aggiunta, diff visualizza una riga nellaforma seguente:
p[ ,p] a s[ ,s]
in cui p è il numero di una riga di primo_file e s è il numero di una riga disecondo_file .
Se la differenza è il risultato di una cancellazione, diff utilizza una d al postodella a; se è il risultato di una modifica, diff utilizza una c .
Le righe diverse dei due file seguono immediatamente i numeri di riga. Il testodi primo_file è preceduto da un simbolo di minore (<), mentre il testo disecondo_file è preceduto da un simbolo di maggiore (>).
Questo esempio mostra due file e l’output ottenuto con il comando diff :
$ cat agenda.7.15Settimana del 7/15
Giorno: Ora: Azione: Note:
M 10:00 Team hardware ogni due settimaneM 1:30 Team softwareG 3:00 Team documentazioneV 1:00 Colloquio$ cat agenda.7.22Settimana del 7/22
Giorno: Ora: Azione: Note:
L 8:30 Riunione staff tutto il giornoM 10:00 Team hardware ogni due settimaneM 1:30 Team softwareG 3:00 Team documentazione$ diff agenda.7.15 agenda.7.221c1< Settimana del 7/15---> Settimana del 7/224a5> L 8:30 Riunione staff tutto il giorno8d8< V 1:00 Colloquio
File e directory 41
3
Se i file confrontati sono identici, il comando diff non genera alcun output.
Il comando diff(1) dispone di molte altre opzioni oltre a quelle descritte. Permaggiori informazioni, vedere man Pages(1): User Commands.
Confronto fra tre file (diff3 )
Per individuare le differenze fra tre versioni di un file, usare il comando diff3come segue:
diff3 confronta tre versioni di un file e visualizza le parti di testo differentimarcandole con i seguenti codici:
==== tutti i file sono diversi
====1 file1 è diverso
====2 file2 è diverso
====3 file3 è diverso
Uso di bdiff su file di grandi dimensioni
Se occorre confrontare file di grandi dimensioni, è consigliabile usare ilcomando bdiff anziché diff . La sintassi dei due comandi è la stessa:
Si consiglia di usare bdiff al posto di diff per file più lunghi di 3500 righe.
Ricerca di un file (find )Il comando find ricerca i file che soddisfano le condizioni specificatedall’utente a partire dalla directory indicata. Ad esempio, è possibile cercare ifile il cui nome contenga una determinata stringa o che siano stati modificati inun arco di tempo stabilito.
$ diff3 file1 file2 file3
$ bdiff primo_file secondo_file
42 Guida avanzata a Solaris — dicembre 1995
3
A differenza di molti comandi, le opzioni di find sono formate da piùcaratteri, e il nome della directory di partenza deve precedere le opzioni sullariga di comando:
dove directory è il nome della directory di partenza e opzioni sono le opzioni delcomando find .
Ogni opzione definisce un criterio per la selezione del file. Il programmaseleziona solo i file che soddisfano tutti i criteri specificati. Aumentando ilnumero delle opzioni si restringe perciò il campo dei file corrispondenti.L’opzione -print indica che il risultato della ricerca deve essere visualizzatosullo schermo. (Come verrà descritto più avanti, il comando find può essereusato anche per l’esecuzione di comandi; in questo caso può essere superfluovisualizzare i file selezionati.)
L’opzione -name nomefile ordina a find di selezionare i file che corrispondonoal nomefile specificato. In questo caso nomefile rappresenta l’ultimo componentedel percorso del file. Ad esempio, l’ultimo componente del percorso/usr/lib/calendario è calendario . Questa parte del percorso vienespesso definita nome base del file.
Ad esempio, per ricercare tutti i file della directory corrente e delle relativesottodirectory il cui nome termina in s , digitare quanto segue:
Qui di seguito sono descritte alcune delle opzioni più comuni:
-name nomefile
Seleziona i file il cui ultimo componente corrisponde a nomefile. Per indicareun modello di ricerca anziché il nome esatto del file, inserire nomefile fravirgolette singole.
$ find directory opzioni
$ find . -name '*s' -print./alias./alias/files./alias/files/gks./src/gks$
File e directory 43
3
-user id_utente
Seleziona i file di proprietà di id_utente. id_utente può essere un nome dilogin o il numero dell’ID utente.
-group gruppo
Seleziona i file di proprietà del gruppo.
-m time n
Seleziona i file che sono stati modificati negli ultimi n giorni.
-newer file_di_riferimento
Seleziona i file modificati più recentemente del file_di_riferimento.
È anche possibile specificare un ordine di precedenza, inserendo le opzioni traparentesi precedute dal carattere di escape “\” (ad esempio, \( opzioni\ ) ).All’interno delle parentesi è possibile inserire tra le opzioni il flag -o , perindicare a find di selezionare i file che corrispondono a ogni singolo criteriospecificato anziché solo i file che soddisfano entrambi i criteri:
Si può anche invertire il senso di un’opzione facendola precedere da un puntoesclamativo (a sua volta preceduto da un carattere di escape). In questo modofind seleziona i file che non corrispondono all’opzione specificata:
È inoltre possibile utilizzare find per eseguire sui file selezionati unadeterminata operazione, usando l’opzione
-exec comando '{}' \;
Questa opzione termina con un punto e virgola preceduto dal carattere diescape (\; ). Le parentesi graffe fra virgolette vengono sostituite dai nomi deifile selezionati da find .
$ find . \( -name AAA -o -name BBB \) -print./AAA./BBB
$ find . \!-name BBB -print./AAA
44 Guida avanzata a Solaris — dicembre 1995
3
Ad esempio, si può usare find per cancellare automaticamente i filetemporanei. Se si utilizza un criterio coerente per denominare i file temporanei,si potrà usare find per cercarli e cancellarli ovunque si trovino. Ad esempio,se i file temporanei vengono chiamati prova o esempio , il comando seguentepermetterà di ricercarli e cancellarli automaticamente:
Per maggiori informazioni su find(1) , vedere man Pages(1): User Commands.
Sicurezza di file e directory
Nota – Leggere questo paragrafo con attenzione. Una chiara comprensionedelle autorizzazioni dei file è importante per molte operazioni quotidiane.
Le autorizzazioni dei file sono un metodo per proteggere file e directory dallalettura e dalla scrittura da parte di utenti non autorizzati. In alcuni casi puòessere opportuno autorizzare altri utenti a leggere determinati file ma non amodificarli. In altri casi si possono avere sul proprio sistema file eseguibili(programmi) da condividere. Le autorizzazioni consentono di controllare iltipo di accesso degli altri utenti ai propri file.
I tipi di autorizzazioni disponibili per file e directory sono i seguenti:
• r – autorizzazione di lettura. È necessaria per esaminare e copiare un file oper elencare il contenuto di una directory.
• w – autorizzazione di scrittura. È necessaria per modificare, cancellare orinominare un file, o per aggiungere o eliminare un file da una directory.
• x – autorizzazione di esecuzione. È necessaria per utilizzare un fileeseguibile, ad esempio un programma, o per accedere a una directory.
Le autorizzazioni possono essere impostare per tre categorie di utenti:
• Proprietario – l’utente.
• Gruppo – altri utenti appartenenti allo stesso gruppo dell’utente (adesempio tutti gli utenti di uno stesso reparto). I gruppi vengono creatidall’amministratore del sistema.
• Altri – qualsiasi altro utente.
$ find . \( -name prova -o -name esempio \) -exec rm '{}' \;
File e directory 45
3
Visualizzazione delle autorizzazioni e dello stato (ls -l )
In precedenza è stato descritto l’uso del comando ls per l’elencazione dei file.Abbinando al comando ls l’opzione -l , è possibile ottenere un elenco dei filein formato lungo. I file e le directory vengono elencati in ordine alfabetico. LaFigura 3-2 illustra questo metodo di visualizzazione:
Figura 3-2 Visualizzazione delle autorizzazioni e dello stato di file e directory
Il primo carattere della riga indica il tipo di file. Un trattino (- ) indica un file,una d una directory, mentre altri caratteri possono indicare altri tipi di filespeciali.
I nove caratteri successivi indicano le autorizzazioni del file o della directory.La sequenza è formata da tre gruppi di tre caratteri ciascuno, indicantirispettivamente le autorizzazioni del proprietario, del gruppo e degli altriutenti. Le autorizzazioni di filevuoto , rw-r--r-- , indicano che ilproprietario può leggere e scrivere il file, il gruppo e gli altri utenti lo possonoleggere mentre nessuno lo può eseguire. Le autorizzazioni della directoryfiori2 , rwxr-xr-x , indicano che tutti gli utenti possiedono l’autorizzazionein lettura ed esecuzione sulla directory, mentre solo il proprietario hal’autorizzazione in scrittura.
Oltre alle autorizzazioni dei file, l’elenco visualizzato contiene le seguentiinformazioni:
• Numero dei collegamenti del file o della directory• Nome del proprietario (utente2 in questo caso)• Numero di byte (caratteri) del file• Data e ora dell’ultimo aggiornamento del file o della directory• Nome del file o della directory
$ pwd/home/nomehost/utente2$ ls -ltotale 8drwxr-xr-x 2 utente2 1024 feb 9 14:22 directory1-rw-r--r-- 1 utente2 0 feb 10 10:20 filevuoto-rw-r--r-- 1 utente2 104357 feb 5 08:20 fileunicodrwxr-xr-x 3 utente2 1024 feb 10 11:13 fiori2
Autorizzazioni Collegamenti Proprietario Dimensione Data Ora File o directory
46 Guida avanzata a Solaris — dicembre 1995
3
Spostarsi nella propria directory home con il comando cd e provare adeseguire il comando ls -l . (Il risultato sarà naturalmente diverso da quelloillustrato nell’esempio.)
Provare ora a digitare il comando seguente:
dove nomedir è il nome di una directory effettivamente presente nel file system.Indicando il nome di una directory, il comando ls -l visualizza leinformazioni relative a tutti i file e directory contenuti nella directoryspecificata.
Elencazione dei file “nascosti” (ls -a )
Alcuni tipi di file non vengono elencati utilizzando il semplice comando ls .I nomi di questi file iniziano con il carattere . (“punto”), come ad esempio.cshrc , .login e .profile . Per elencare anche i “file punto”, usare ilcomando ls -a :
Si noti che i file che iniziano con il carattere . sono elencati prima degli altri.L’elenco illustrato contiene due file speciali: il primo è il file . , che rappresentail riferimento alla directory corrente, il secondo è il file .. , che rappresenta ilriferimento alla directory di livello superiore.
In genere, i file che iniziano con il carattere . vengono usati dai programmi diutilità del sistema e non vengono modificati dall’utente (a parte alcuneeccezioni).
$ ls -l nomedir
$ ls -a....cshrc.login.profilefilevuoto
File e directory 47
3
Modifica delle autorizzazioni (chmod)
Il comando chmod permette di cambiare le autorizzazioni di un file o di unadirectory. Questa operazione può essere eseguita solo dal proprietario del file odella directory o da un utente root. La sintassi generale del comando chmod èla seguente:
dove autorizzazioni indica le autorizzazioni da modificare e nome è il nome delfile o della directory su cui si desidera eseguire l’operazione.
Le autorizzazioni possono essere specificate in vari modi. Qui di seguito vieneillustrata una delle forme di indicazione più semplici:
1. Usare una o più lettere per indicare gli utenti interessati:• u (user - il proprietario)• g (group - il gruppo)• o (other - altri utenti)• a (all - tutte le categorie)
2. Indicare se le autorizzazioni devono essere aggiunte (+) o eliminate (- ).
3. Usare una o più lettere per indicare le autorizzazioni di interesse:• r (read - lettura)• w (write - scrittura)• x (execute - esecuzione)
Nell’esempio seguente, viene aggiunta l’autorizzazione di scrittura alladirectory viole per gli utenti appartenenti allo stesso gruppo del proprietario(autorizzazioni diventa perciò g+w e nome viene sostituito con viole ):
chmod autorizzazioni nome
$ ls -l violedrwxr-xr-x 3 utente2 1024 feb 10 11:15 viole$ chmod g+w viole$ ls -l violedrwxrwxr-x 3 utente2 1024 feb 10 11:15 viole$
48 Guida avanzata a Solaris — dicembre 1995
3
Come si può osservare, per effetto del comando il trattino (- ) nella sequenza dicaratteri relativa alle autorizzazioni del gruppo è diventato una w.
Per eliminare dalla stessa directory le autorizzazioni di lettura ed esecuzionedegli utenti esterni al gruppo (autorizzazioni viene sostituito in questo caso dao-rx ), digitare il seguente comando:
In seguito al comando, la r (lettura) e la x (esecuzione) del gruppo di caratterirelativi alle autorizzazioni degli altri utenti sono state sostituite da trattini (- ).
Quando si crea un nuovo file o una nuova directory, il sistema assegnaautomaticamente le autorizzazioni di default.
In generale, le autorizzazioni di default per i nuovi file sono le seguenti:
-rw-r--r--
Per le nuove directory sono invece le seguenti:
drwxr-xr-x
Perciò, per creare un nuovo file petunia che sia eseguibile dal proprietario(utente2 ) occorrerà procedere come segue:
$ ls -l violedrwxrwxr-x 3 utente2 1024 feb 10 11:15 viole$ chmod o-rx viole$ ls -l violedrwxrwx--- 3 utente2 1024 feb 10 11:15 viole$
$ ls -l petunia-rw-r--r-- 3 utente2 1024 feb 10 12:27 petunia$ chmod u+x petunia$ ls -l petunia-rwxr--r-- 3 utente2 1024 feb 10 12:27 petunia$
File e directory 49
3
Per modificare con un solo comando le autorizzazioni di tutte le categorie diutenti, usare l’opzione a. Per creare ad esempio un nuovo file rosa che siaeseguibile da tutti gli utenti, procedere come segue:
In seguito al comando, in tutte le categorie comparirà la lettera x .
È anche possibile cambiare le autorizzazioni di più file e directory utilizzandoil carattere speciale * . Ad esempio, per cambiare le autorizzazioni di tutti i filedella directory corrente fiori in modo che solo il proprietario vi abbia accessodi scrittura, procedere come segue:
Nell’esempio, l’uso del comando pwd permette di verificare che la directory incui viene eseguita l’operazione chmod sia la directory corrente.
$ ls -l rosa-rw-r--r-- 3 utente2 1024 feb 10 11:31 rosa$ chmod a+x rosa$ ls -l rosa-rwxr-xr-x 3 utente2 1024 feb 10 11:31 rosa$
$ pwd/home/utente2/fiori$ ls -l-rwxrwxrwx 3 utente2 21032 feb 12 10:31 giglio-rwxrwxrwx 3 utente2 12675 feb 08 09:31 mughetto-rwxrwxrwx 2 utente2 68 feb 10 11:09 narciso-rwxrwxrwx 1 utente2 1024 feb 14 16:38 rosa$ chmod go-w *$ ls -l-rwxr-xr-x 3 utente2 21032 feb 12 10:31 giglio-rwxr-xr-x 3 utente2 12675 feb 08 09:31 mughetto-rwxr-xr-x 2 utente2 68 feb 10 11:09 narciso-rwxr-xr-x 1 utente2 1024 feb 14 16:38 rosa$
50 Guida avanzata a Solaris — dicembre 1995
3
Impostazione di autorizzazioni assolute
Finora si è parlato del comando chmod per la modifica delle autorizzazioni inmodo relativo rispetto alle impostazioni correnti. Il comando chmod prevedetuttavia un’altra forma di utilizzo, in cui vengono impiegati codici numericiper specificare i diversi tipi di autorizzazioni. Utilizzato in questa forma,chmod permette di impostare le autorizzazioni di un file o di una directory inmodo assoluto.
La sintassi di chmod per l’impostazione di autorizzazioni assolute è laseguente:
chmod codnum nome
dove codnum è il codice numerico e nome è il nome del file o della directory sucui si desidera eseguire l’operazione.
Il codice numerico completo è costituito da tre cifre. Ogni cifra viene utilizzataper una delle tre categorie di utenti: proprietario, gruppo e altri. Ad esempio, ilcomando seguente imposta le autorizzazioni assolute di lettura, scrittura edesecuzione per il proprietario e per il gruppo e la sola autorizzazione diesecuzione per gli altri utenti:
La Tabella 3-1 illustra la correlazione tra le autorizzazioni descritte per il filerosa e il codice numerico 771 .
Ogni colonna della Tabella 3-1 rappresenta una delle categorie di utenti:proprietario, gruppo e altri. Per impostare le autorizzazioni in lettura occorreaggiungere il codice 4 alla colonna appropriata; per impostare le autorizzazioni
$ chmod 771 rosa
Tabella 3-1 Autorizzazioni del file rosa
Autorizzazione Proprietario GruppoAltri
Lettura 4 4 0
Scrittura 2 2 0
Esecuzione 1 1 1
Totale 7 7 1
File e directory 51
3
in scrittura occorre aggiungere un 2, mentre per le autorizzazioni di esecuzioneoccorre aggiungere un 1. Il totale delle tre colonne indicato nell’ultima rigadella tabella rappresenta il codice numerico completo.
Qui di seguito è illustrato un altro esempio dell’uso di questo metodo perimpostare le autorizzazioni assolute, con l’aggiunta del comando ls -l perevidenziare il risultato ottenuto:
Le autorizzazioni del file mughetto sono state impostate in modo che ilproprietario possa leggere, scrivere ed eseguire il file, e in modo che i membridel gruppo e gli altri utenti possano leggerlo ed eseguirlo. La Tabella 3-2illustra nei dettagli la composizione del codice numerico relativo alleautorizzazioni del file mughetto .
Per applicare al file ciclamino le autorizzazioni di lettura, scrittura edesecuzione per tutte le categorie di utenti, il comando da eseguire sarà ilseguente:
$ ls -l mughetto-rw-r--r-- 3 utente2 1024 feb 10 11:46 mughetto$ chmod 755 mughetto$ ls -l mughetto-rwxr-xr-x 3 utente2 1024 feb 10 11:48 mughetto$
Tabella 3-2 Autorizzazioni del file mughetto
Autorizzazione Proprietario GruppoAltri
Lettura 4 4 4
Scrittura 2 0 0
Esecuzione 1 1 1
Totale 7 5 5
$ ls -l ciclamino-rw-r--r-- 3 utente2 1024 feb 10 11:51 ciclamino$ chmod 777 ciclamino$ ls -l ciclamino-rwxrwxrwx 3 utente2 1024 feb 10 11:53 ciclamino$
52 Guida avanzata a Solaris — dicembre 1995
3
La Tabella 3-3 illustra la composizione del codice utilizzato per questoesempio.
Il codice numerico 777 rappresenta il livello massimo di autorizzazioni che èpossibile attribuire a un file o a una directory.
Come per la modifica delle autorizzazioni relative, anche nel caso delleautorizzazioni assolute è possibile usare il carattere speciale * per eseguire ilcomando su tutti i file della directory corrente. Ad esempio, per modificare leautorizzazioni assolute di tutti i file della directory corrente fiori in modoche il proprietario abbia le autorizzazioni di lettura, scrittura ed esecuzione, ilgruppo le autorizzazioni di lettura ed esecuzione e gli altri utenti solol’autorizzazione di esecuzione, inserire il comando seguente:
Tabella 3-3 Autorizzazioni del file ciclamino
Autorizzazione Proprietario GruppoAltri
Lettura 4 4 4
Scrittura 2 2 2
Esecuzione 1 1 1
Totale 7 7 7
$ pwd/home/utente2/fiori$ ls -l-rwxrwxrwx 3 utente2 21032 feb 12 10:31 giglio-rwxrwxrwx 3 utente2 12675 feb 08 09:31 mughetto-rwxrwxrwx 2 utente2 68 feb 10 11:09 narciso-rwxrwxrwx 1 utente2 1024 feb 14 16:38 rosa$ chmod 751 *$ ls -l-rwxr-x--x 3 utente2 21032 feb 12 10:31 giglio-rwxr-x--x 3 utente2 12675 feb 08 09:31 mughetto-rwxr-x--x 2 utente2 68 feb 10 11:09 narciso-rwxr-x--x 1 utente2 1024 feb 14 16:38 rosa$
File e directory 53
3
Nell‘esempio viene utilizzato anche il comando pwd per verificare che ladirectory nella quale si esegue l’operazione sia la directory corrente. Ilcomando ls -l è inserito solo per illustrare il risultato della modifica delleautorizzazioni. Quando si impostano le autorizzazioni assolute non ènecessario conoscere le autorizzazioni correnti.
Per maggiori informazioni sul comando chmod(1) , vedere man Pages(1): UserCommands.
54 Guida avanzata a Solaris — dicembre 1995
3
55
Operazioni di ricerca 4
In questo capitolo viene descritto come ricercare all’interno di file o directorydeterminate stringhe o parole chiave utilizzando il comando grep di SunOS.
Ricerca di stringhe di caratteri con grep
Per ricercare una determinata stringa di caratteri in un file si utilizza ilcomando grep . La sintassi generale di grep è la seguente:
dove stringa è la parola o la frase da ricercare e file è il nome del file nel qualedeve essere eseguita la ricerca.
Nota – Una stringa è una sequenza di uno o più caratteri; può essere perciò unalettera singola, una parola o una frase. Le stringhe possono includere “spazivuoti”, segni di interpunzione e caratteri invisibili (di controllo).
$ grep stringa file
56 Guida avanzata a Solaris — dicembre 1995
4
Per ricercare ad esempio l’interno telefonico di Edgar Allan Poe, occorredigitare grep , il nome da ricercare in forma completa o parziale e il file checontiene l’informazione:
Si noti che grep può individuare più righe corrispondenti al modello di ricercaimpostato:
grep non considera allo stesso modo le lettere maiuscole e le lettere minuscole;l’output del comando rispecchia perciò il modello di ricerca impostato anchenell’uso delle maiuscole:
Con il primo comando dell’esempio, grep non trova alcuna vocecorrispondente al modello di ricerca, in quanto nessuno dei nomi presenti nelfile inizia con una “a” minuscola.
$ grep Poe interniEdgar Allan Poe x72836$
$ grep Allan interniDavid Allan x76438Edgar Allan Poe x72836$ grep Al interniLouisa May Alcott x74236David Allan x76438Edgar Allan Poe x72836$
$ grep allan interni$ grep Allan interniDavid Allan x76438Edgar Allan Poe x72836$
Operazioni di ricerca 57
4
Uso di grep come filtro
grep viene spesso utilizzato come “filtro” insieme ad altri comandi. Permetteinfatti di escludere le informazioni non richieste dall’output dei comandi. Perutilizzare grep come filtro occorre inviare a grep l’output del comandoprecedente utilizzando il simbolo pipe “| ”.
Il comando dell’esempio seguente ordina al sistema di elencare tutti i file cheterminano in “.ps ” creati nel mese di maggio (mag):
La prima parte della riga di comando,
produce un elenco completo dei file:
La seconda parte,
invia l’elenco ottenuto a grep , il quale ricerca il modello mag:
$ ls -l *.ps | grep mag
ls -l *.ps
$ ls -l *.ps-rw-r--r-- 1 elvis 7228 apr 22 15:07 bottoni.ps-rw-r--r-- 1 elvis 2356 mag 22 12:56 calendario.ps-rw-r--r-- 1 elvis 1567 giu 22 12:56 cmdtool.ps-rw-r--r-- 1 elvis 10198 giu 22 15:07 comando.ps-rw-r--r-- 1 elvis 5644 mag 22 15:07 orologio.ps$
| grep mag
$ ls -l *.ps | grep mag-rw-r--r-- 1 elvis 2356 mag 22 12:56 calendario.ps-rw-r--r-- 1 elvis 5644 mag 22 15:07 orologio.ps$
58 Guida avanzata a Solaris — dicembre 1995
4
Uso di grep con stringhe di più parole
Per impostare un modello di ricerca formato da più parole separate, occorreracchiudere la stringa tra virgolette singole o doppie:
grep può ricercare una stringa anche in più file. Se il modello viene trovato inpiù file, grep stampa il nome del file seguito da due punti e dalla riga checontiene la stringa specificata:
Ricerca di righe che non contengono una data stringa
Per ricercare le righe di un file che non contengono una data stringa si utilizzal’opzione -v del comando grep . Nell’esempio seguente, vengono ricercatetutte le righe dei file della directory home dell’utente medici che noncontengono la lettera e:
Altri usi di grep
Il comando grep può anche essere utilizzato con le cosiddette espressioniregolari. Le espressioni regolari sono formate da lettere o numeri abbinati acaratteri speciali che grep interpreta in modo particolare. Questi caratteri
$ grep “Louisa May” interniLouisa May Alcott x74236$
$ grep Al *alaska:l’Alaska è lo stato più grande degli USA.attori:Alberto Sordipoeti:Dante Alighieri.$
$ lsalaska attori hinterland insegnanti poeti$ grep -v e *attori:sabato 14 marzo 1993, 10:00 METpoeti:Guido Gozzano.$
Operazioni di ricerca 59
4
speciali, chiamati anche metacaratteri, hanno un significato particolare ancheper il sistema; è perciò necessario digitarli tra virgolette o farli precedere da uncarattere di escape. Per utilizzare grep con un’espressione regolare al promptdi sistema, inserire l’espressione tra virgolette o utilizzare i metacaratteri (& !. * $ ? e \ ) preceduti da una barra rovesciata (\ ).
• L‘accento circonflesso (^ ) indica l’inizio di una riga. Perciò il comando:
cercherà tutte le righe del file lista che iniziano con “b.”
• Il simbolo del dollaro ($) indica la fine di una riga. Il comando:
visualizzerà tutte le righe del file lista in cui l’ultimo carattere è una “b”.Il comando:
visualizzerà tutte le righe del file lista che contengono solo il carattere “b”.
• All’interno di un’espressione regolare, un punto (. ) sostituisce qualsiasicarattere singolo. Ad esempio, il comando:
estrae dal file lista tutti i gruppi di tre caratteri in cui “de” siano i primidue, ad esempio “dei”, “del”, “scodella” e “code” (anche gli spazi vuotisono considerati caratteri).
• Se un carattere è seguito da un asterisco (* ), grep lo interpreta come“nessuna o più ricorrenze di quel carattere”. Se l’asterisco è posto dopoun’espressione regolare, grep lo interpreta come “nessuna o più ricorrenzedei caratteri corrispondenti al modello di ricerca”.
$ grep '^b' lista
$ grep 'b$' lista
$ grep '^b$' lista
$ grep 'de.' lista
60 Guida avanzata a Solaris — dicembre 1995
4
Il fatto che grep possa individuare anche i casi di “nessuna ricorrenza” diun carattere o di un modello di ricerca rende l’uso dell’asterisco pocointuitivo. Volendo ad esempio ricercare tutte le parole che contengano lelettere “qu”, il comando:
produrrà l’effetto desiderato. Se tuttavia si vogliono ricercare tutte le paroleche contengano la lettera “n”, il comando dovrà avere la forma seguente:
Per ricercare tutte le parole che contengano il modello “nn”, il comando dainserire sarà il seguente:
Per comprendere meglio questa funzione di grep può essere opportunoeffettuare alcune prove ed esaminare l’output dei comandi.
• Per ricercare nessuna o più ricorrenze di un qualsiasi carattere del filelista , digitare:
Ricerca di metacaratteri
Si supponga di voler ricercare in un testo le righe che contengano il simbolodel dollaro ($). In questo caso, nell’espressione regolare il simbolo del dollarodeve essere preceduto da una barra rovesciata (\ ), in modo che grep ignori ilsignificato speciale del carattere. Lo stesso vale anche per gli altri metacaratteri(& ! . * ? e \ ).
Ad esempio, l’espressione
$ grep 'qu*' lista
$ grep 'nn*' lista
$ grep 'nnn*' lista
$ grep .* lista
$ grep ^\.
Operazioni di ricerca 61
4
individua tutte le righe che iniziano con un punto, ed è particolarmente utilenella ricerca di richieste di formattazione nroff o troff (che iniziano con unpunto).
La Tabella 4-1 contiene un elenco degli elementi più usati nei modelli di ricercaimpostati con grep .
Questi parametri di ricerca possono essere usati anche nell’editor di testo vi .
Uso di virgolette singole e doppie nei comandi
Come già accennato in precedenza, le virgolette vengono utilizzate perracchiudere un testo che deve essere interpretato come un’unica stringa. Adesempio, per ricercare con grep in tutti i file della directory correntel’espressione “luna piena”, il comando da utilizzare è il seguente:
Per riunire più parole in una singola unità è anche possibile utilizzare levirgolette singole (' ). Questo tipo di virgolette garantisce inoltre chedeterminati caratteri, ad esempio $, vengano interpretati in modo letterale. Si
Tabella 4-1 Elementi speciali utilizzati nei modelli di ricerca con grep
Carattere Per ricercare
^ L’inizio di una riga di testo
$ La fine di una riga di testo
. Un carattere singolo
[...] Un carattere singolo nell’elenco o nell’intervallospecificato tra parentesi
[^...] Un carattere non compreso nella lista o nell’intervallospecificato
* Nessuna o più ricorrenze del carattere o dell’espressioneregolare precedente
.* Nessuna o più ricorrenze di un singolo carattere
\ Esclude il significato speciale del carattere successivo
$ grep "luna piena" *
62 Guida avanzata a Solaris — dicembre 1995
4
noti tuttavia che il metacarattere ! utilizzato con history viene sempreinterpretato come tale, anche racchiuso tra virgolette, a meno che non siapreceduto da una barra rovesciata. In ogni caso, per utilizzare in modo letteralecaratteri speciali come & ! $ ? . ; e \ , è buona norma farli precedere daun carattere di escape.
Ad esempio, digitando il comando:
verranno visualizzate tutte le righe del file list a. Digitando invece:
verranno visualizzate solo le righe che contengono il carattere “$”.
Per maggiori informazioni sul comando grep(1) , vedere man Pages(1): UserCommands.
$ grep $ lista
$ grep '\$' lista
63
Password, processi e spazio sul disco 5
SunOS dispone di una serie di comandi per l’esecuzione delle operazioni disistema dalla riga di comando. In questo capitolo vengono descritte leprocedure da seguire per impostare una password, elencare i processi eseguitisul sistema, interrompere un processo e visualizzare lo spazio occupato suldisco.
Utilizzo di una passwordPer garantire la sicurezza del sistema, SunOS richiede l’inserimento di unapassword di accesso. Il cambiamento frequente della password rappresentauna misura di sicurezza aggiuntiva per escludere l’accesso al sistema da partedi persone non autorizzate. Se si sospetta che qualcuno abbia usato il proprioprofilo utente senza autorizzazione, è buona norma cambiare immediatamentela password.
Per la scelta della password è consigliabile osservare i seguenti criteri:
• Scegliere una password che si riesca a ricordare a memoria. Una passworddifficile da ricordare è peggio di una password troppo facile da indovinare.
• Scegliere una password formata da almeno sei caratteri e che contengaalmeno un numero.
• Non utilizzare il proprio nome o le proprie iniziali né il nome o le iniziali diamici o parenti.
• Non utilizzare nomi di animali o di oggetti legati ai propri interessi.
64 Guida avanzata a Solaris — dicembre 1995
5
• Non utilizzare solo lettere maiuscole.
• Se si dispone di più profili utente, non utilizzare la stessa password pertutti.
• Benché in linea generale sia ammesso l’utilizzo di qualsiasi carattere, èpreferibile evitare alcuni caratteri o combinazioni come Ctrl-C, Ctrl-Z,Ctrl-U, Ctrl-S, Esc, Tab e, in alcuni casi, # e @, che potrebbero essereinterpretati dal terminale come segnali. In questo caso, l’interpretazioneerrata del carattere impedirebbe di inserire la password correttamente.
Cambiamento della password
Per cambiare la propria password, digitare il comando passwd :
1. Al prompt Old Password: , digitare la password corrente.Se al profilo utente non è ancora assegnata una password, il sistema nonpresenterà questo prompt. Si noti che il sistema non visualizza la passwordsullo schermo mentre la si inserisce. Si tratta di un’ulteriore misura disicurezza per nascondere la propria password ad altri utenti.
2. Al prompt New Password: , inserire la nuova password prescelta.Anche in questo caso, la password inserita non verrà visualizzata sulloschermo.
3. Al prompt finale, Retype new password: , inserire per la seconda volta lanuova password.Questo passaggio permette di verificare di avere inserito esattamente lapassword desiderata.
Se la nuova password non viene inserita esattamente nella stessa forma adentrambe le richieste, il sistema non effettua il cambiamento e risponde conil messaggio Sorry . Se questo accade più volte, richiedere una nuovapassword all’amministratore del sistema.
$ passwdChanging password for hankw on workerOld password:New password:Retype new password:$
Password, processi e spazio sul disco 65
5
Nota – Non sono ammesse password che contengano meno di sei caratteri.Inoltre, ogni nuova password deve contenere almeno tre caratteri diversi daquella vecchia.
Durata della password
Se è stata attivata la funzione di “aging” (durata) della password,implementata con speciali opzioni del comando passwd , è possibile che lapassword abbia una durata massima, oppure una durata massima e una durataminima. La durata della password viene impostata dall’amministratore delsistema.
Al raggiungimento della data di scadenza (o durata massima) della password,il sistema richiede di impostarne una nuova. La richiesta viene presentata allogin con il messaggio seguente:
A questo punto il sistema esegue automaticamente il comando passwd erichiede una nuova password.
Se ad esempio la durata minima della password è stata fissata a due settimanee si cerca di cambiarla prima di tale scadenza, il sistema visualizza ilmessaggio seguente:
Per visualizzare le informazioni relative alla durata della password, usare ilcomando passwd con l’opzione -d :
Vengono visualizzate, nell’ordine, la data di creazione, la durata minima e ladurata massima della password corrente. (Queste informazioni compaiono solose è stata implementata la funzione di aging della password.)
Your password has expired. Choose a new one.
Sorry, less than 2 weeks since the last change.
$ passwd -dnomeutente 2-14-92 14 60
66 Guida avanzata a Solaris — dicembre 1995
5
Per maggiori informazioni su passwd(1) e sulla funzione di aging dellepassword, vedere man Pages(1): User Commands.
Processi e PIDNon appena il sistema interpreta un comando, per la sua esecuzione vienecreato un processo indipendente dotato di un numero di identificazione (PID)esclusivo. Il sistema utilizza il PID per tenere traccia dello stato corrente diogni processo.
Visualizzazione dei comandi in esecuzione (ps )
Il comando ps permette di visualizzare i processi in corso di esecuzione. Oltrea visualizzare il numero di identificazione del processo (PID ) per tutti i processi diproprietà dall’utente (cioè creati in seguito a un comando digitato dall’utente),ps indica anche il terminale dal quale il processo è stato avviato (TTY), il tempodella cpu utilizzato fino a quel momento (TIME) e il comando in corso diesecuzione (COMMAND).
Aggiungendo l’opzione -l al comando ps , il sistema visualizza una serie dialtre informazioni relative ai processi correntemente attivi, tra cui lo stato ditutti i processi (elencati sotto S). I codici utilizzati per l’indicazione degli statisono i seguenti:
• O - Il processo è attivo su un processore.
• S - Sleeping: il processo sta attendendo la conclusione di un evento.
• R - Runnable: il processo è nella coda di esecuzione.
• I - Idle: il processo è in fase di creazione.
• Z - Stato Zombie: il processo è terminato e il processo padre non è in attesa.
• T - Traced: il processo è stato interrotto da un segnale perché il processopadre sta eseguendo un trace su di esso.
• X - Stato SXBRK: il processo attende che si renda disponibile una maggiorequantità di memoria centrale.
Password, processi e spazio sul disco 67
5
È importante ricordare che durante l’esecuzione di ps lo stato dei processi puòcambiare. Poiché il comando ps fornisce solo uno spaccato di ciò che accade inun determinato momento, le informazioni visualizzate valgono solo perl’istante successivo all’invio del comando. Di conseguenza, l’output di pspotrebbe non essere perfettamente aggiornato.
Il comando ps(1) dispone di altre opzioni non trattate in questo paragrafo.Per informazioni più approfondite, vedere man Pages(1): User Commands.
Interruzione dei processi (kill )
Il comando kill permette di interrompere in modo diretto un processo inesecuzione. Questo risulta particolarmente utile quando si avvia per errore uncomando che comporta un certo tempo di esecuzione.
Per interrompere un processo:
1. Digitare ps per visualizzare il PID del processo.
2. Digitare kill seguito dal PID del processo.
L’esempio seguente illustra la procedura da seguire:
Un metodo più rapido per determinare il PID del processo consiste nell’inviarel’output di ps al comando grep utilizzando il simbolo di pipe. Ad esempio:
dove nomecomando è il nome del processo che si desidera interrompere.
$ psPID TTY TIME COMMAND1291 co 0:12 -bin/csh (csh)3250 p0 0:00 ps1286 p1 0:05 -bin/csh (csh)3248 p1 0:05 vi commands$ kill 1291[1} Terminated -bin/csh/ (csh)$
$ ps | grep nomecomando
68 Guida avanzata a Solaris — dicembre 1995
5
Per interrompere forzatamente un processo, usare il comando ps con l’opzione-9 nella forma seguente:
dove nPID è il numero di identificazione del processo che si desiderainterrompere.
Gestione dello spazio sul discoPoiché lo spazio sul disco è una risorsa limitata, è buona norma tenersiaggiornati sullo stato di occupazione del proprio sistema.
Visualizzazione dello spazio occupato sul disco (df -k )
Il comando df -k visualizza lo spazio correntemente occupato in ogni discoaccessibile (attivato) del proprio sistema. Digitando:
vengono visualizzati la capacità di ogni disco attivato sul sistema, lo spaziodisponibile e la percentuale di spazio già occupata.
Se un file system risulta occupato al 90% o oltre è consigliabile cancellare i filenon necessari. È possibile ad esempio spostare i file su un altro disco o su unnastro usando cp per copiarli e quindi rm per cancellarli, oppure cancellarlidirettamente. Naturalmente si raccomanda di eseguire queste operazioni di“manutenzione” solo sui propri file.
Visualizzazione dello spazio occupato dalle directory (du)
Il comando du permette di visualizzare lo spazio occupato da una directory edalle relative sottodirectory in blocchi di 512 byte, vale a dire in unità di 512byte o caratteri.
$ kill -9 nPID
$ df -k
Password, processi e spazio sul disco 69
5
du visualizza lo spazio occupato da ogni sottodirectory. Per ottenere un elencodelle sottodirectory di un file system, spostarsi con cd nella directory superioredel file system e digitare il seguente comando:
Questo comando, che utilizza le opzioni di ordinamento inverso (-r) enumerico (-n) del comando sort , permette di identificare facilmente ledirectory di grandi dimensioni. Con il comando ls -l è quindi possibileesaminare le dimensioni (in byte) e le date di modifica dei file contenuti nellesingole directory. L’eccessiva occupazione dello spazio sul disco è spessodovuta alla presenza di vecchi file o di file di testo che occupano più di 100Kbyte.
$ du | sort -r -n
70 Guida avanzata a Solaris — dicembre 1995
5
71
L’editorvi 6
vi (pronunciato “vi-ai”) è l’editor di testo standard di SunOS. Poiché nonrichiede un’interfaccia a finestre, vi può essere utilizzato su qualsiasi tipo diterminale per creare o modificare vari tipi di file.
vi può essere utilizzato per inserire e modificare un testo, ma non può esseredefinito un vero e proprio word-processor. A differenza dei word-processordisponibili in commercio, infatti, vi non è stato creato per elaborare testiformattati. Per produrre stampe formattate vi si affida a programmi in gradodi emulare un processo di composizione come nroff , troff o ditroff .Questi programmi consentono di formattare il testo di vi inserendo una seriedi codici che vengono successivamente interpretati dall’emulatore.
La lunga serie dei comandi di vi , molti dei quali hanno funzioni simili, puòcreare qualche confusione nei nuovi utenti. In questo capitolo viene fornita unapanoramica dei comandi fondamentali. Si scoprirà con l’uso che vi è un editordi testo estremamente potente, ma anche che per impiegarlo con efficacia èindispensabile una certa pratica.
Esiste anche una versione di vi di sola lettura, di nome view . Aprendo un filecon view si possono usare gli stessi comandi di vi , ma non è possibile salvarele modifiche. Questo programma può essere utilizzato quando occorre leggereun file di vi senza rischiare di modificarlo accidentalmente.
72 Guida avanzata a Solaris — dicembre 1995
6
Avvio di vi
Nei paragrafi seguenti verrà spiegato come avviare vi , inserire un testo in unfile, salvare (scrivere) il file e uscire da vi . Per facilitare la comprensione delleoperazioni descritte, la spiegazione è accompagnata da esempi pratici.
Creazione di un file
Avviare vi aprendo il file prova come mostrato in questo esempio:
Se esiste già un file di nome prova , vi aprirà il file esistente; in caso contrarioverrà creato un nuovo file. Nell’esempio qui descritto, prova è un nuovo file.
Compare la videata di modifica di vi :
Figura 6-1 La videata di modifica di vi
Il cursore appare nell’angolo superiore sinistro dello schermo. Le righe vuotesono indicate da un tilde (~).
vi può essere avviato anche senza specificare il nome di un file, digitandosemplicemente vi . Il file creato potrà essere denominato all’uscita da vi .
$ vi prova
❚
~~~~~~~~~~~"prova" [File nuovo]
Cursore
Righe vuote
Riga di stato
L’editor vi 73
6
La riga di stato
L’ultima riga dello schermo, detta riga di stato, presenta il nome del file e ilnumero di righe e di caratteri che esso contiene. Quando si crea un nuovo file,come nell’esempio precedente, la riga di stato segnala che si tratta di un filenuovo.
Le due modalità di vi
vi dispone di due modalità operative: la modalità inserimento, utilizzata perinserire un testo in un file, e la modalità comando, usata per inserire comandi cheeseguono specifiche funzioni. La modalità di default è la modalità comando.
Poiché vi non indica la modalità corrente, la distinzione tra modalitàinserimento e modalità comando causa spesso una certa confusione tra i nuoviutenti dell’editor. Per evitare di incorrere in uno “stress da vi”, sarà sufficienteavere chiari sin dall’inizio alcuni concetti fondamentali.
Quando si apre un file in vi , l’editor è sempre in modalità comando. Per poterinserire un testo occorre prima digitare uno dei comandi che abilitano lamodalità di inserimento, ad esempio i (“insert”), per inserire il testo nellaposizione corrente del cursore, oppure a (“append”), per inserire il testo dopola posizione corrente del cursore. (Questi ed altri comandi di vi verrannotrattati in modo più approfondito nel resto del capitolo.)
Per tornare alla modalità di comando è sufficiente premere Esc. Se non si è certidella modalità corrente di vi , è possibile premere Esc per entrare in modalitàcomando e avere così un punto di riferimento sicuro. Se si preme Esc quandovi si trova già in modalità comando, il sistema emette un segnale acustico e loschermo lampeggia, ma non si produce alcun danno.
Modalità inserimento
Per inserire un testo nel file prova , digitare il comando di inserimento i .vi esce dalla modalità comando ed entra in modalità inserimento.
Inserire ora alcune righe di testo terminando ogni riga con un Return. Come sipuò osservare, i caratteri digitati appaiono a sinistra del cursore e spingono icaratteri già presenti verso destra. Per il momento, se si commettono errori di
74 Guida avanzata a Solaris — dicembre 1995
6
battitura tornare indietro con il tasto Backspace e digitare nuovamente la rigaprima di premere Return. Più avanti verrà spiegato come modificare il testoinserito.
Dopo avere inserito alcune righe, premere Esc per tornare alla modalitàcomando. Il cursore si sposterà sull’ultimo carattere inserito. A questo punto èpossibile inserire altri comandi di vi .
Se vi sembra rispondere in modo strano, verificare che il tasto “Caps Lock”non sia premuto; l’attivazione di questo tasto fa apparire tutto il testo inseritoin lettere maiuscole. In alcuni sistemi il tasto F1 (di norma posizionato vicino altasto Esc) ha la stessa funzione del tasto Caps Lock. Si faccia attenzione, inquesti casi, a non premere erroneamente questo tasto al posto di Esc.
Nota – Talvolta può essere necessario azzerare o ridisegnare lo schermo, adesempio per eliminare un messaggio del sistema. Per ridisegnare lo schermo,entrare in modalità comando e premere Ctrl-L. L’effetto di questo comando èanalogo a quello dell’opzione “Ridisegna schermo” di OpenWindows.
Modalità comando
Quando si apre un file, vi si trova sempre in modalità comando. In questamodalità è possibile inserire una serie di comandi associati ad altrettantefunzioni. Quasi tutti i comandi di vi consistono in una o due lettere, talvoltaaccompagnate da un numero opzionale. Di norma esistono due versioni dellostesso comando, una a lettere maiuscole e l’altra a lettere minuscole, cheeseguono funzioni diverse ma correlate. Ad esempio, digitando una aminuscola il testo viene inserito a destra del cursore, mentre digitando una Amaiuscola il testo viene inserito alla fine della riga.
In genere vi esegue i comandi direttamente, senza bisogno di premere Return.Un’eccezione è rappresentata dai comandi che iniziano con i due punti (:). Inalcune guide di vi questi comandi vengono classificati come una terzamodalità operativa, detta modalità ultima riga. Digitando due punti in modalitàcomando, infatti, i due punti e i caratteri inseriti successivamente appaionosull’ultima riga dello schermo. Nell’ambito di questa descrizione, tuttavia, tuttii comandi di vi verranno considerati inseriti in modalità comando.
L’editor vi 75
6
I comandi preceduti dai due punti sono in realtà comandi di ex. vi ed ex sonodue interfacce separate dello stesso programma di trattamento testi, ma mentrevi è un’interfaccia “a schermo”, ex è un’interfaccia “a linee”. Tutti i comandidi ex sono disponibili anche in vi . In particolare, premendo il tasto dei duepunti si passa direttamente all’interfaccia “a linee” ex . Questa specialemodalità consente di eseguire molte operazioni sui file senza bisogno di uscireda vi . Per maggiori informazioni, vedere “Comandi di ex” in questo capitolo.
Termine di una sessioneQuando si modifica un file in vi , in un primo momento le modifiche nonvengono apportate direttamente al file, bensì a una copia del file che vi crea inuno spazio di memoria temporaneo detto buffer. La copia permanente del filesul disco viene modificata solo al momento della scrittura (salvataggio) delcontenuto del buffer.
Questa procedura presenta alcuni aspetti positivi e alcuni negativi. Da un latopermette di uscire da un file e abbandonare le modifiche effettuate durante unasessione lasciando intatta la copia sul disco. Dall’altro lato vi è il rischio diperdere il contenuto del buffer (non salvato) in caso di crash del sistema. (Gliutenti collegati a terminali remoti tramite linea telefonica sono particolarmentesoggetti a questo tipo di interruzioni.)
Il metodo migliore consiste nel salvare il lavoro frequentemente, soprattuttoquando vengono effettuate modifiche di una certa consistenza.
Attenzione – vi permette di tenere aperte più copie di uno stesso filesimultaneamente. Si consiglia tuttavia di limitare il più possibile l’uso diquesta funzione, che potrebbe creare confusione tra le modifiche apportate alfile corrente e quelle inserite in una sessione simultanea.
Salvataggio delle modifiche e uscita da vi
vi dispone di diversi comandi per il salvataggio del contenuto del buffer el’uscita dall’editor. Questi comandi offrono la possibilità di salvare il file,salvare e uscire oppure uscire senza salvare.
!
76 Guida avanzata a Solaris — dicembre 1995
6
Salvataggio
Per salvare il contenuto del buffer (cioè scrivere il contenuto del buffer nel filesul disco) digitare:
seguito da Return.
Salvataggio e uscita
Per salvare e uscire dall’editor, digitare:
seguito da Return. Oppure, digitare ZZ.
Si noti che il comando ZZ non è preceduto dai due punti e non deve essereseguito da Return.
Uscita senza salvataggio
Se il file non è stato modificato e si desidera semplicemente uscire, digitare:
seguito da Return. Se il file è stato modificato, vi non permetterà di uscire con:q . Verrà visualizzato il messaggio Le ultime modifiche non sonostate salvate (:quit! per ignorare) .
Se non si desidera salvare le modifiche, digitare:
seguito da Return.
:w
:wq
:q
:q!
L’editor vi 77
6
Stampa di un fileDopo avere chiuso il file da vi , è possibile stamparlo con il comando seguente:
dove nomefile è il nome del file da stampare. Questo comando invia il file allastampante di default. Il file viene stampato senza alcuna formattazione, rigaper riga, esattamente nella forma in cui appare sullo schermo. Per maggioriinformazioni sui comandi di stampa, vedere il Capitolo 8, “Uso dellestampanti”.
Comandi base di vi
I paragrafi seguenti illustrano diverse categorie di comandi di vi , utilizzati tral’altro per le seguenti operazioni:
• Spostamento all’interno di un file• Inserimento di un testo• Modifica e sostituzione di un testo• Annullamento delle modifiche apportate a un testo• Cancellazione di un testo• Copia e spostamento di un testo• Ripetizione di comandi
Spostamento all’interno di un file
Nei paragrafi precedenti è stato spiegato come creare, salvare, stampare echiudere un file di vi . A questo punto, avendo creato un file, è necessariocomprendere i concetti essenziali per gli spostamenti al suo interno. Aprire ilfile di prova ed eseguire i comandi descritti qui di seguito.
Spostamento del cursore
All’avvio di vi , il cursore compare nell’angolo superiore sinistro delloschermo. Operando in modalità comando è possibile spostare il cursore tramiteuna serie di comandi da tastiera, associati caso per caso a determinate lettere,ai tasti freccia, al tasto Return, al tasto Back Space (o Canc) o alla barraspaziatrice.
$ lp nomefile
78 Guida avanzata a Solaris — dicembre 1995
6
Nota – vi interpreta i comandi distinguendo tra maiuscole e minuscole; uno“stesso” comando scritto in lettere maiuscole e in lettere minuscole potrebbeperciò produrre effetti radicalmente diversi.
Spostamenti con i tasti frecciaSe la tastiera dispone dei tasti freccia, si provi ad utilizzarli per spostare ilcursore. Questi tasti permettono di muovere liberamente il cursore in alto, inbasso, a destra e a sinistra. Si noti tuttavia che il cursore può essere spostatosolo all’interno di un testo o di spazi già esistenti.
Se si utilizza vi da un terminale remoto, è possibile che i tasti freccia nonfunzionino correttamente. I problemi di questo tipo dipendono in generedall’emulatore del terminale. Se i tasti freccia non sono utilizzabili, sonodisponibili le seguenti alternative:
• Per lo spostamento a sinistra, premere h.• Per lo spostamento a destra, premere l .• Per lo spostamento in basso, premere j .• Per lo spostamento in alto, premere k .
Spostamento di parola in parolaPremere w (“word”) per spostare il cursore di parola in parola verso destra.
Premere b (“back”) per spostare il cursore di parola in parola verso sinistra.
Premere W o B per spostare il cursore alla parola successiva o precedenteignorando i segni di punteggiatura.
Premere e (“end”) per spostare il cursore sull’ultimo carattere della parolacorrente.
Spostamento all’inizio o alla fine della rigaPremere ^ per spostare il cursore all’inizio della riga corrente.
Premere $ per spostare il cursore alla fine della riga corrente.
Spostamento alla riga successivaPremere il tasto Return per spostare il cursore all’inizio della riga successiva.
L’editor vi 79
6
Spostamento a sinistraPremere il tasto Back Space per spostare il cursore di un carattere versosinistra.
Spostamento a destraPremere la barra spaziatrice per spostare il cursore di un carattere verso destra.
Spostamento a inizio schermoPremere H (“high”) per spostare il cursore all’inizio dello schermo.
Spostamento a metà schermoPremere M (“middle”) per spostare il cursore a metà schermo.
Spostamento a fine schermoPremere L (“low”) per spostare il cursore al fondo dello schermo.
Spostamento di pagina in pagina e scorrimento
Se ci si sposta verso il basso quando il cursore si trova al fondo dello schermo,o verso l’alto quando il cursore si trova all’inizio dello schermo, il testoscorrerà rispettivamente verso l’alto o verso il basso. Questo metodo puòessere utile per lo spostamento all’interno di un file breve, ma può risultarescomodo o lento in un file di grandi dimensioni.
Gli spostamenti all’interno di un file possono essere eseguiti di pagina inpagina, di videata in videata o di mezza videata alla volta. (Per provare questicomandi sul file prova , aggiungere nuove righe per ottenere un testo dilunghezza sufficiente.)
Si noti che esiste una differenza fondamentale tra spostamento di pagina inpagina e scorrimento. Lo scorrimento produce un avanzamento o unarretramento di una riga alla volta, come se il testo venisse visualizzato su unrullo continuo. Lo spostamento di pagina in pagina fa invece avanzare oarretrare il cursore di una videata alla volta. Sui sistemi veloci la differenza puòessere trascurabile. Se viceversa si lavora su un terminale remoto o in altresituazioni in cui il sistema opera in modo più lento del normale, la differenzapuò essere determinante.
80 Guida avanzata a Solaris — dicembre 1995
6
Spostamento di una videata in avantiPer spostarsi di una videata in avanti (verso il basso), premere Ctrl-F. (Premereil tasto Control e contemporaneamente il tasto F.) Il cursore apparirànell’angolo superiore sinistro della nuova videata.
Spostamento di mezza videata in avantiPer spostarsi di mezza videata in avanti, premere Ctrl-D.
Spostamento di una videata all’indietroPer spostarsi di una videata all’indietro (verso l’alto), premere Ctrl-B.
Spostamento di mezza videata all’indietroPer spostarsi di mezza videata all’indietro, premere Ctrl-U.
Inserimento di un testo
Nei paragrafi seguenti verranno descritti i comandi fondamentali di vi perl’inserimento di un testo. Si noti che tutti questi comandi pongono vi inmodalità inserimento e che, per utilizzarli, occorre trovarsi in modalitàcomando. Per verificare di trovarsi in modalità comando, premere Esc.
Aggiunta
Digitando una a (da append, aggiungere), il nuovo testo viene inserito a destradel cursore. Per provare il funzionamento del comando, posizionare il cursoreall’interno di una riga, premere una a minuscola e inserire il nuovo testo. Altermine, premere Esc.
Digitando una A maiuscola, il testo viene aggiunto alla fine della riga. Perprovare il funzionamento di questo comando, posizionare il cursore all’internodi una riga e digitare A. Il cursore si sposterà alla fine della riga. Inserire ilnuovo testo. Al termine, premere Esc.
Inserimento
Digitando una i minuscola in modalità comando, il nuovo testo viene inseritoa sinistra del cursore.
L’editor vi 81
6
Digitando una I maiuscola, il testo viene inserito all’inizio della riga. (Ilcomando fa spostare automaticamente il cursore all’inizio della riga.) Pertornare in modalità comando dopo avere inserito il testo, premere Esc.
Creazione di una riga
vi dispone di comandi per creare nuove righe sopra o sotto la posizionecorrente del cursore.
Digitare una o minuscola per creare una riga sotto la posizione corrente delcursore. Per provare il comando, digitare una o e inserire un testo. Il nuovotesto inserito può occupare anche diverse righe. Al termine, premere Esc.
Digitare una O maiuscola per creare una riga sopra la posizione corrente delcursore.
Modifica di un testo
La modifica di un testo comporta la sostituzione di caratteri esistenti concaratteri nuovi. vi dispone di molti comandi per eseguire questa operazione, aseconda delle esigenze e della portata delle modifiche.
Modifica di una parola
Per sostituire una parola, posizionare il cursore all’inizio della parola dasostituire. Digitare cw seguito dalla nuova parola. Per terminare, premere Esc.
Per modificare una parte di una parola, posizionare il cursore sulla parola, adestra della parte da conservare. Digitare cw, inserire la correzione e premereEsc.
Modifica di una riga
Per modificare una riga, posizionare il cursore in qualsiasi punto della riga edigitare cc . La riga scomparirà lasciando una riga vuota per il nuovo testo (chepotrà avere qualsiasi lunghezza). Per terminare, premere Esc.
82 Guida avanzata a Solaris — dicembre 1995
6
Modifica di parte di una riga
Per sostituire una parte di una riga, posizionare il cursore a destra della parteche si desidera conservare. Digitare C, inserire il nuovo testo e premere Esc. Inquesto modo viene modificata la parte di testo compresa tra la posizionecorrente del cursore e la fine della riga.
Sostituzione di caratteri
Per sostituire il carattere in corrispondenza del cursore con uno o più caratteri,digitare una s seguita dal nuovo testo. Per tornare alla modalità comando,premere Esc.
Sostituzione di un singolo carattere
Questo comando permette di sostituire il carattere evidenziato dal cursore conun altro carattere. Posizionare il cursore sul carattere e digitare una r seguitada un solo carattere sostitutivo. Dopo la sostituzione, vi tornaautomaticamente alla modalità comando (senza bisogno di premere Esc).
Trasposizione di caratteri
vi dispone di un comando molto semplice per correggere i caratteri trasposti,ad esempio un “ter ” digitato al posto di “tre ”. Per eseguire la correzione,posizionare il cursore sulla prima lettera da spostare (in questo caso la e),quindi digitare xp . La e e la r cambieranno di posto e vi torneràautomaticamente alla modalità comando.
Divisione o unione di righe
Per spezzare una riga senza modificarne il testo, portare il cursore su uncarattere di spazio e digitare una r seguita da Return. Si noti che eseguendoquesta operazione con il cursore posizionato su una lettera, la letteraevidenziata sarà sostituita dal carattere di ritorno a capo.
Per unire due righe, posizionare il cursore sulla riga superiore e digitare una Jmaiuscola. (Non è necessario premere Esc per terminare.)
L’editor vi 83
6
Annullamento delle modifiche
Lavorando su un file di testo, capita spesso di effettuare una modifica e diaccorgersi subito dopo di preferire la versione precedente. I comandi diannullamento di vi permettono di annullare gli effetti di un’operazione e diproseguire da quel punto.
Annullamento del comando precedente
Se si commette un errore o si cambia idea dopo avere eseguito una dataoperazione, è possibile annullare l’ultimo comando digitando immediatamenteuna u. (Non è necessario premere Esc per terminare.) Premendo u una secondavolta, vi annullerà il comando di annullamento.
Annullamento delle modifiche a una riga
Per annullare tutte le modifiche apportate a una riga, digitare una U maiuscola.Questo comando ha effetto solo se il cursore non è stato precedentementespostato su un’altra riga. (Non è necessario premere Esc per terminare.)
Cancellazione di un testo
I comandi di vi descritti qui di seguito permettono di cancellare un carattere,una parola o una riga. Al termine di queste operazioni vi resta in modalitàcomando, perciò per inserire nuovo testo occorre prima entrare in modalitàinserimento.
Cancellazione di un carattere
Per cancellare un carattere, posizionare il cursore sul carattere da cancellare edigitare x .
Il comando x cancella anche lo spazio occupato dal carattere — se si cancellauna lettera all’interno di una parola, le altre lettere si avvicinano senza lasciarespazi vuoti. Il comando x permette anche di cancellare spazi vuoti all’internodi una riga.
Per cancellare un carattere posto prima (a sinistra) del cursore, digitare una Xmaiuscola.
84 Guida avanzata a Solaris — dicembre 1995
6
Cancellazione di una parola o di parte di una parola
Per cancellare una parola, posizionare il cursore sul suo carattere iniziale edigitare dw. La parola viene cancellata senza lasciare spazi vuoti.
Per cancellare una parte di una parola, portare il cursore a destra della parteche si desidera conservare, quindi digitare dw per cancellare il resto dellaparola.
Cancellazione di una riga
Per cancellare una riga, posizionare il cursore in qualsiasi punto della riga edigitare dd . La riga viene cancellata senza lasciare spazi vuoti.
Cancellazione di parte di una riga
È anche possibile cancellare solo una parte di una riga.
Per cancellare tutti i caratteri situati a destra del cursore, posizionare il cursorea destra della parte che si desidera conservare e digitare D.
Per cancellare tutti i caratteri situati a sinistra del cursore, posizionare il cursorea destra della parte che si desidera cancellare e digitare d0 (d-zero).
Cancellazione fino alla fine del file
Per cancellare tutto il testo compreso tra la riga corrente e la fine del file,digitare dG. Verrà cancellata anche la riga su cui è posizionato il cursore.
Cancellazione dall’inizio del file
Per cancellare tutto il testo compreso tra l’inizio del file e la riga corrente,digitare d1G. Verrà cancellata anche la riga su cui è posizionato il cursore.
Copia e spostamento di un testo — yank, delete e put
Molti word-processor offrono comandi per “copiare e incollare” e “tagliare eincollare” parti di testo. Anche l’editor vi dispone di queste funzioni. Nel casodi vi , l’operazione “copia e incolla” viene eseguita con i comandi yank e put,mentre l’equivalente di “taglia e incolla” si ottiene con i comandi delete e put.
L’editor vi 85
6
Per copiare o spostare piccoli blocchi di testo sono disponibili variecombinazioni dei comandi yank , delete e put .
Copia di righe
Per copiare una riga sono richiesti due comandi: yy o Y (“yank”) e p (“putbelow”, inserisci sotto) o P (“put above”, inserisci sopra). Si osservi che Yproduce lo stesso effetto di yy .
Per copiare una riga, posizionare il cursore in qualsiasi punto della riga edigitare yy . Portare ora il cursore sulla riga sopra il punto in cui si desiderainserire la riga copiata e digitare p. Una copia della riga copiata verrà inseritaal di sotto del cursore.
Per inserire la riga copiata al di sopra del cursore, digitare P.
Il comando yy può essere utilizzato anche con un numero: per copiare 11 righe,ad esempio, è possibile digitare 11yy . vi copierà undici righe a partire daquella corrente, e visualizzerà al fondo dello schermo il messaggio: 11 righe
memorizzate .
I comandi P o p possono anche essere usati subito dopo uno dei comandi dicancellazione descritti in precedenza. In questo caso, il testo cancellato verràinserito rispettivamente al di sopra o al di sotto del cursore.
Attenzione – Tra i comandi yank , delete e put usare solo comandi dispostamento del cursore. Se prima di inserire con put un testo tagliato ocopiato si cancella o si copia un altro blocco di testo, la porzione tagliata ocopiata in precedenza andrà perduta.
Spostamento di righe
Per lo spostamento di una o più righe di testo sono richiesti due comandi: dd(“delete”) e p oppure P.
Per spostare una riga, posizionare il cursore in qualsiasi punto della riga edigitare dd . Per spostare più righe, far precedere il comando dal numero dirighe su cui si desidera eseguire l’operazione. Per cancellare ad esempio 5righe, digitare 5dd .
!
86 Guida avanzata a Solaris — dicembre 1995
6
Portare quindi il cursore sulla riga al di sopra del punto in cui si desiderareinserire la riga cancellata e digitare p. Il testo viene inserito in una nuova rigaal di sotto del cursore.
Per inserire la riga cancellata al di sopra del cursore, digitare P.
Uso di nomi per i buffer
Per inserire ripetutamente un gruppo di righe in più punti di un documento,può essere comodo copiare le righe di interesse in un buffer e assegnare aquesto buffer un nome. Per eseguire questa operazione, far precedere ilcomando da eseguire da una virgoletta doppia (" ) e dal nome del buffer. Adesempio, per copiare quattro righe in un buffer di nome a, digitare "a4yy . Èpossibile usare diversi buffer per uno stesso documento. Ad esempio, si puòcancellare un testo da una data posizione ed aggiungerlo in diversi altri punti.Per cancellare 12 righe e inserirle in un buffer di nome b, digitare "b12dd .
Per inserire nel documento il testo contenuto nel buffer, far precedere ilcomando p o P da " n, dove n è il nome del buffer. Ad esempio, per inserire neldocumento le righe salvate nel buffer b, digitare "bP .
Il contenuto di un buffer può essere sostituito con nuove righe di testo. I buffercreati durante una sessione restano in memoria fino all’uscita da vi .
L’uso dei buffer denominati permette di cancellare e copiare diversi blocchi ditesto separatamente, senza sovrascrivere ad ogni operazione il contenuto delbuffer principale.
Uso di contatori per la ripetizione dei comandi
Molti comandi di vi possono essere preceduti da un fattore di ripetizione,detto contatore — un numero che precede il comando e indica per quante voltel’operazione deve essere ripetuta.
Molti dei comandi descritti nei paragrafi precedenti possono essere utilizzaticon un contatore. Ad esempio, 3dd indica che il comando di cancellazione diuna riga deve essere ripetuto per tre volte; il risultato sarà quindi lacancellazione di tre righe. Analogamente, 2dw cancellerà due parole, mentre 4xcancellerà quattro caratteri o spazi. I contatori possono essere abbinati anche aicomandi per lo spostamento del cursore, ad esempio 3w e 2Ctrl-F . Tuttequeste funzioni diventeranno più chiare con l’uso pratico dei comandi di vi .
L’editor vi 87
6
Nel paragrafo “Sommario dei comandi principali di vi” alla fine di questocapitolo, i comandi che accettano l’uso di un contatore sono indicati con“[numero]” prima del nome del comando.
Digitando un punto (. ), vi ripete il comando di modifica precedente. Se adesempio è stata cancellata una riga con dd , è possibile portare il cursore suun’altra riga e cancellarla digitando semplicemente un punto.
Comandi di ex
I comandi di ex possono essere più comodi e precisi di yank , delete e putquando le operazioni riguardano blocchi di testo relativamente estesi. Anzichécontare le righe sullo schermo e quindi spostarsi nel nuovo punto diinserimento, si indica a vi un ambito di righe da spostare o da copiare e quindisi specifica la riga che precede il punto di inserimento desiderato.
Abilitazione e disabilitazione dei numeri di riga
Per abilitare i numeri di riga, digitare :set nu e premere Return.
I numeri di riga compaiono sul lato sinistro dello schermo. Non compaionotuttavia quando il file viene stampato.
Per disabilitare i numeri di riga, digitare :set nonu e premere Return.
1 Ascoltami, i poeti laureati2 si muovono soltanto tra le piante3 dai nomi poco usati: bossi ligustri o acanti.45 Io, per me, amo le strade che riescono agli erbosi6 fossi dove in pozzanghere7 mezzo seccate agguantano i ragazzi8 qualche sparuta anguilla:9 le viuzze che seguono i ciglioni,
10 discendono tra i ciuffi delle canne11 e mettono negli orti, tra gli alberi dei limoni.~~~~:set nu
88 Guida avanzata a Solaris — dicembre 1995
6
Copia di righe
La sintassi base del comando di ex per la copia di un testo è la seguente:
I primi due numeri (separati da una virgola) specificano l’ambito di righe dacopiare. Il terzo numero indica la riga prima del punto di inserimento.
Ad esempio, per copiare le righe da 1 a 5 di prova e inserire la copia dopo lariga 12, digitare:
e premere Return.
Per specificare gruppi di righe, usare le seguenti abbreviazioni:
• Un punto (. ) per indicare “dalla riga corrente”.• Il simbolo del dollaro ($) per indicare “fino alla fine del file”.
Per copiare perciò “dalla riga corrente fino alla riga 5” e inserire il bloccocopiato dopo la riga 12, il comando da digitare sarà il seguente:
Per copiare “dalla riga 6 alla fine del file” e inserire il blocco copiato dopo lariga 2, il comando da digitare sarà:
Spostamento di righe
La sintassi base del comando di spostamento di ex è simile a quella delcomando di copia descritto in precedenza:
:numeroriga,numeroriga co numeroriga
:1,5 co 12
:.,5 co 12
:6,$ co 2
:numeroriga,numeroriga m numeroriga
L’editor vi 89
6
Per specificare i gruppi di righe e i punti di inserimento si utilizzano le stesseconvenzioni del comando di copia, compreso l’uso delle abbreviazioni . e $.L’unica differenza consiste nel fatto che il comando di spostamento cancella ilblocco dalla posizione originaria e lo reinserisce nel punto designato.
Ad esempio, per spostare le righe 1-5 alla riga dopo la 12, digitare:
e premere Return.
Cancellazione di righe
Per cancellare un gruppo di righe, la sintassi del comando è la seguente:
Ad esempio, per cancellare le righe 1-5, digitare:
Ricerca e sostituzione con vi
vi offre diversi metodi per ricercare un punto specifico di un file usando unadeterminata stringa di caratteri. Dispone inoltre di una potente funzione disostituzione globale.
Ricerca di una stringa di caratteri
Una stringa di caratteri è una qualsiasi sequenza di uno o più caratteri. Puòcomprendere lettere, numeri, segni di punteggiatura, caratteri speciali, spazi,tabulazioni o ritorni a capo. Una stringa può essere una parola intera o unaparte di una parola.
:1,5 m 12
: numeroriga, numeroriga d
:1,5 d
90 Guida avanzata a Solaris — dicembre 1995
6
Per ricercare una stringa di caratteri, digitare una barra (/ ) seguita dalla stringadesiderata e premere Return. vi posizionerà il cursore sulla ricorrenzasuccessiva della stringa specificata. Ad esempio, per ricercare la stringa“meta”, digitare /meta e quindi Return.
Digitare n per spostarsi alla ricorrenza successiva della stringa, o N per tornarealla ricorrenza precedente.
Per eseguire una ricerca all’indietro si utilizza il carattere ? al posto di / . Glieffetti di n e N per lo spostamento in avanti e all’indietro vengono invertiti.
I comandi di ricerca distinguono di norma tra maiuscole e minuscole: se lastringa impostata è “cina”, nel processo di ricerca non verrà trovata la parola“Cina”. Per fare in modo che vi ignori la differenza tra maiuscole e minuscoledurante la ricerca, digitare :set ic . Per ripristinare l’impostazione di default,digitare :set noic .
Se vi trova la stringa ricercata, il cursore si ferma alla sua prima ricorrenza. Sela stringa non viene trovata, vi visualizza sull’ultima riga dello schermo ilmessaggio Stringa non trovata .
Alcuni caratteri speciali ( / & ! . ^ * $ \ ?) hanno un significatoparticolare per il comando di ricerca, e per essere utilizzati all’interno di unastringa di ricerca devono essere preceduti dal carattere di escape (\ ). Adesempio, per ricercare la stringa “qualcosa?” digitare /qualcosa\? e premereReturn.
Questi caratteri speciali possono essere utilizzati come comandi per la funzionedi ricerca; per essere interpretati in modo letterale nella stringa da ricercaredevono essere preceduti da una barra rovesciata. Per utilizzare in sensoletterale una barra rovesciata, digitare \\ .
Funzioni avanzate di ricerca
Per rendere i processi di ricerca più precisi, è possibile inserire nella stringa daricercare speciali indicatori per le seguenti caratteristiche:
• Inizio della riga• Fine della riga• Inizio della parola• Fine della parola• Caratteri speciali
L’editor vi 91
6
Per ricercare una stringa collocata all’inizio di una riga, far precedere la stringada un accento circonflesso (^ ). Ad esempio, per ricercare la prima riga cheinizia con “Ricerca”, digitare:
Per ricercare una stringa collocata alla fine di una riga, digitare alla fine dellastringa il simbolo del dollaro ($). Ad esempio, per ricercare la prima riga chetermina con la stringa “ricerca.”, digitare:
(Si osservi che il punto è preceduto da una barra rovesciata.)
Per ricercare una stringa posta all’inizio di una parola, digitare \< all’iniziodella stringa; per ricercare una stringa posta alla fine di una parola, digitare \>alla fine della stringa. Per ricercare una parola intera, combinare le opzioni diinizio-parola e fine-parola nel modello di ricerca. Ad esempio, per ricercare laricorrenza successiva della parola “ricerca” anziché della stringa “ricerca”,digitare:
Per ricercare un qualsiasi carattere in una data posizione, digitare un punto (. )nella posizione desiderata della stringa. Ad esempio, per ricercare la ricorrenzasuccessiva di “formato” o “formati”, digitare:
In questo caso, poiché la ricerca si riferisce a una stringa e non a una parola,potranno essere trovati anche termini come “disinformato” o “informatica”.
Per ricercare caratteri alternativi in una stringa, indicare le alternativeracchiuse tra parentesi quadre. Il modello di ricerca /[md] stringa troverà lestringhe che iniziano con m o con d. Specificando invece il modello di ricerca/[d-m] stringa, verranno trovate tutte le stringhe che iniziano con unaqualsiasi lettera dalla d alla m.
/^Ricerca
/ricerca\.$
/\<ricerca\>
/format.
92 Guida avanzata a Solaris — dicembre 1995
6
Per cercare nessuna o più ricorrenze di un carattere, digitare un asterisco (* )dopo il carattere desiderato. Utilizzando in combinazione le parentesi quadre el’asterisco è possibile ricercare specifici modelli alternativi. Ad esempio, perricercare tutte le stringhe che iniziano con una lettera dalla a alla z e finisconocon “formato” e tutte le ricorrenze della stringa “formato”, digitare:
Sostituzione di una stringa di caratteri
La procedura per la sostituzione di una stringa di testo è basata sulleprocedure di ricerca descritte in precedenza. Tutti i caratteri speciali disponibiliper la ricerca possono essere utilizzati anche per le operazioni di ricerca esostituzione.
La sintassi base del comando è la seguente:
seguita da Return.
Per sostituire ad esempio tutte le ricorrenze della stringa “formato” con lastringa “dimensioni” digitare:
e premere Return.
Questo comando può essere modificato in modo che vi fermi la ricerca echieda conferma della sostituzione ad ogni ricorrenza della stringa. Nelcomando dell’esempio seguente, le opzioni gc specificano a vi di fermarsi adogni ricorrenza di “formato” e di chiedere conferma della sostituzione.Rispondere con y per sì o con n per no.
/[a-z]*formato
:g/ stringa-di-ricerca/s// stringa-di-sostituzione/g
:g/formato/s//dimensioni/g
:g/formato/s//dimensioni/gc
L’editor vi 93
6
Nota – Per annullare una procedura di ricerca e sostituzione con richiesta diconferma, premere Ctrl-C.
Spostamento a una riga specifica
Per spostarsi sull’ultima riga del file corrente, digitare G. Per tornare alla primariga, digitare 1G.
Per spostarsi su una qualsiasi altra riga specifica, digitare il numero della rigaseguito da G.
Se ad esempio il file prova viene chiuso quando ci si trova alla riga 51,all’apertura successiva del file è possibile tornare direttamente a quella rigadigitando 51G.
Inserimento di un file in un altrovi permette di inserire un intero file all’interno del file corrente. La sintassigenerale del comando è la seguente:
Se non viene specificato il numero di riga, vi inserisce il file nella posizionecorrente del cursore.
Per inserire ad esempio il file montale alla riga 84 del file prova , il comandoda digitare è il seguente:
Oppure, è possibile posizionare il cursore alla riga 84 e digitare:
: numeroriga r nomefile
:84 r montale
:r montale
94 Guida avanzata a Solaris — dicembre 1995
6
Apertura contemporanea di più filevi permette di tenere aperti più file contemporaneamente. Ad esempio, peraprire e modificare il file montale mentre è già aperto il file prova , procederecome segue:
1. Salvare il lavoro corrente in prova . Digitare :w e premere Return.
2. Aprire montale digitando :n montale , quindi premere Return.
3. Apportare le modifiche desiderate a montale e salvare il file.
4. Dopo avere modificato e salvato il file montale , sono disponibili trealternative:• Uscire da vi . Digitare :q e premere Return.• Tornare a prova . Digitare :n # e premere Return.• Lavorare alternatamente sui due file utilizzando il comando :n # .
Apertura di più file
Per aprire una serie di file, digitare vi seguito dai nomi dei file desiderati alprompt di sistema:
I file vengono aperti nell’ordine in cui sono stati elencati. Nel caso dell’esempioverrà visualizzato per primo il file prova . Al termine del lavoro su prova ,digitare :n per passare al file successivo, montale . Per passare al filesuccessivo senza salvare le modifiche al file corrente, digitare :n! anziché :n .
Se i file da aprire hanno nomi simili (ad esempio, test1 , test2 , test3 ), èpossibile specificarne i nomi utilizzando i caratteri speciali:
I file verranno visualizzati in ordine alfabetico.
$ vi prova montale
$ vi test*
L’editor vi 95
6
Copia di righe tra più file
Per copiare un gruppo di righe da un file in un altro, procedere come segue:
1. Aprire il primo file.
2. Salvare le righe desiderate in un buffer usando il comando yank . Adesempio, per salvare 10 righe nel buffer a, digitare a10Y.
3. Senza uscire da vi , passare al file successivo (montale in questoesempio):
4. Inserire le righe copiate dal primo file con il comando put . Ad esempio,per inserire i contenuto del buffer a al di sotto della posizione correntedel cursore, digitare ap .
Si ricordi che il contenuto dei buffer denominati vengono cancellati all’uscitada vi . È consigliabile perciò terminare le operazioni che comportano l’uso deibuffer prima di digitare il comando di uscita (:q ).
Impostazione dei parametri di vi
vi dispone di molte variabili che agiscono sul funzionamento e sul tipo divisualizzazione dell’editor. Per visualizzare l’elenco delle variabili (con leimpostazioni correnti) durante l’utilizzo di vi , digitare:
seguito da Return.
:n montale
:set all
96 Guida avanzata a Solaris — dicembre 1995
6
Recupero di un file dopo un crash del sistemaUn crash del sistema può causare la perdita del contenuto dei buffer. Spesso,tuttavia, è possibile recuperare la maggior parte del lavoro riavviando vi con ilcomando:
dove nomefile è il file che era aperto al momento del crash. Dopo il riavvio, ilsistema visualizza un messaggio indicante la presenza di un file di recupero.
Sommario dei comandi principali di vi
La tabella seguente riassume i comandi principali di vi .
vi -r nomefile
Tabella 6-1 Comandi principali di vi
Comando Effetto
Avvio di vi
vi nomefile Apre o crea un file
v i Apre un nuovo file senza nome
vi -r nomefile Recupera un file dopo un crash
view nomefile Apre un file in modalità di sola lettura
Spostamento del cursore
h Di un carattere a sinistra
j Alla riga successiva
k Alla riga precedente
l Di un carattere a destra
w Di una parola a destra
W Di una parola a destra (ignorando la punteggiatura)
b Di una parola a sinistra
B Di una parola a sinistra (ignorando la punteggiatura)
e Alla fine della parola corrente
L’editor vi 97
6
Return Alla riga successiva
Back Space Di un carattere a sinistra
Barra spaziatrice Di un carattere a destra
H All’inizio dello schermo
M A metà dello schermo
L Al fondo dello schermo
Ctrl-F Di una videata in avanti
Ctrl-D Di mezza videata in avanti
Ctrl-B Di una videata all’indietro
Ctrl-U Di mezza videata all’indietro
Inserimento di caratteri e righe
a Inserisce caratteri a destra del cursore
A Inserisce caratteri alla fine della riga
i Inserisce caratteri a sinistra del cursore
I Inserisce caratteri all’inizio della riga
o Inserisce una riga sotto il cursore
O Inserisce una riga sopra il cursore
Modifica del testo
cw Cambia la parola (o una sua parte) a destra del cursore
c Cambia l’intera riga
C Cambia dal cursore a fine riga
s Sostituisce i caratteri dal cursore in avanti
r Sostituisce il carattere sotto il cursore
r Return Spezza la riga
J Unisce la riga corrente a quella successiva
xp Inverte il carattere corrente con quello alla sua destra
~ Cambia da maiuscolo a minuscolo (e viceversa)
Tabella 6-1 Comandi principali di vi (Continua)
Comando Effetto
98 Guida avanzata a Solaris — dicembre 1995
6
u Annulla il comando precedente
U Annulla tutte le modifiche alla riga corrente
:u Annulla l’ultimo comando di ex
Cancellazione del testo
x Cancella il carattere sotto il cursore
X Cancella il carattere a sinistra del cursore
dw Cancella la parola (o la sua parte a destra del cursore)
dd Cancella la riga su cui si trova il cursore
D Cancella la parte della riga a destra del cursore
dG Cancella fino alla fine del file
d1G Cancella dall’inizio del file al cursore
:5,10 d Cancella le righe 5-10
Copia e spostamento del testo
yy Copia una riga
Y Copia una riga
p Inserisce la riga copiata o cancellata sotto quella corrente
P Inserisce la riga copiata o cancellata sopra quella corrente
:1,2 co 3 Copia le righe 1-2 e le inserisce dopo la riga 3
:4,5 m 6 Sposta le righe 4-5 dopo la riga 6
Impostazione dei numeri di riga
:set nu Mostra i numeri di riga
:set nonu Nasconde i numeri di riga
Impostazione del riconoscimento di maiuscole e minuscole
:set ic Ignora maiuscole e minuscole nella ricerca
:set noic Distingue tra maiuscole e minuscole nella ricerca
Ricerca di una riga
G Va all’ultima riga del file
Tabella 6-1 Comandi principali di vi (Continua)
Comando Effetto
L’editor vi 99
6
1G Va alla prima riga del file
21G Va alla riga 21
Ricerca e sostituzione
/ stringa Ricerca stringa
?stringa Ricerca stringa all’indietro
n Ricerca la ricorrenza successiva di stringa
N Ricerca la ricorrenza precedente di stringa
:g/stringa-ricerca/s//stringa-sostituzione/g
Ricerca e sostituisce
Controllo dello schermo
Ctrl-L Ridisegna lo schermo
Inserimento di un file in un altro file
:r nomefile Inserisce un file dopo il cursore
:34 r nomefile Inserisce un file dopo la riga 34
Salvataggio e uscita
:w Salva le modifiche (memorizza il contenuto del buffer)
:w nomefile Scrive il contenuto del buffer nel file specificato
:wq Salva le modifiche ed esce da vi
ZZ Salva le modifiche ed esce da vi
:q! Esce senza salvare le modifiche
Tabella 6-1 Comandi principali di vi (Continua)
Comando Effetto
100 Guida avanzata a Solaris — dicembre 1995
6
101
La posta elettronica 7
SunOS comprende un programma di nome mailx per l’invio e il ricevimentodi messaggi di posta elettronica (email). mailx dispone di funzioni per lalettura, la scrittura, l’invio, il ricevimento, il salvataggio e la cancellazione deimessaggi. Poiché non richiede un ambiente a finestre, il programma mailxpuò essere utilizzato su qualsiasi terminale. Può inoltre rappresentare unapratica alternativa, soprattutto per l’invio di messaggi brevi, al programma diposta elettronica a finestre. mailx supporta anche l’uso di alias postali.
Nota – Se si sta lavorando in ambiente OpenWindows, uscire da PostaElettronica prima di eseguire gli esempi descritti in questo capitolo.L’attivazione di due processi di posta elettronica potrebbe infatti generaremessaggi di errore e di avvertimento. L’invio di messaggi da una Finestra dicomando o da una Shell in genere non crea alcun problema, mentre ilsalvataggio e la cancellazione dei messaggi hanno effetto sul “contenitore didefault” di Posta Elettronica, causando confusione nell’applicazione.
Introduzione a mailx
In questo paragrafo sono descritte le funzioni e i comandi essenziali di mailx .Nei paragrafi successivi verranno descritte funzioni più complesse, ideate perun utilizzo più avanzato del programma.
Nel programma mailx , l’indirizzo per l’invio di un messaggio è formato dalnome di login e dal nome del sistema del destinatario. Se il destinatarioutilizza lo stesso sistema del mittente è sufficiente specificare il nome di login.
102 Guida avanzata a Solaris — dicembre 1995
7
Ogni utente ha una propria casella postale per il ricevimento dei messaggi. Lacasella postale si trova di solito nella directory /var/mail/ nomeutente, dovenomeutente è il nome di login dell’utente.
mailx informa l’utente dell’arrivo di nuovi messaggi e li colloca nella casellapostale. Quando i messaggi sono stati letti, mailx li dispone automaticamentein un file d’archivio di nome mbox, situato nella directory home dell’utente.
Avvio di mailx
Per avviare mailx , digitare il seguente comando al prompt di sistema epremere Return:
Se non vi sono nuovi messaggi in attesa, il terminale visualizza il messaggio:
dove nomeutente è il nome di login dell’utente.
Invio di un messaggio di prova a se stessi
Per avere una prima idea del funzionamento di mailx , si provi ad inviare unmessaggio a se stessi. Al prompt di sistema, digitare il comando mailx seguitodal proprio indirizzo (nome di login e nome del sistema). Ad esempio, se ilnome di login fosse lorenzo e il nome del sistema fosse firenze , l’indirizzocompleto dovrebbe essere scritto nella forma lorenzo@firenze . (Il simbolo @viene usato con il significato di “a”.) In una rete locale dovrebbe esseresufficiente il nome di login — consultare per sicurezza l’amministratore delsistema.
$ mailx
Nessun messaggio per nomeutente$
$ mailx lorenzo@firenze
La posta elettronica 103
7
Il programma risponderà con il prompt Subject :
Se si desidera, inserire una breve descrizione del messaggio e premere Return.Digitare ora il testo vero e proprio del messaggio; scrivere alcune righe brevi epremere Return alla fine di ogni riga. (Gli errori di battitura possono esserecorretti tornando indietro con il tasto Back Space e digitando nuovamente iltesto, ma solo prima di premere il tasto Return.)
L’esempio che segue mostra un possibile messaggio di prova (gli spazi tra lerighe si ottengono premendo due volte il tasto Return):
Per inviare il messaggio, premere Return per completare l’ultima riga e quindiCtrl-D. Dopo l’invio del messaggio, sullo schermo ricompare il prompt disistema.
$ mailx lorenzo@firenzeSubject:
$ mailx lorenzo@firenzeSubject: cogli l’attimo
Caro Lorenzo,
Quant’è bella giovinezza,che si fugge tuttavia!Chi vuol esser lieto, sia:di doman non c’è certezza.
A presto,
Il Magnifico
104 Guida avanzata a Solaris — dicembre 1995
7
Lettura del messaggio di prova
Per leggere il messaggio di prova, eseguire nuovamente il comando mailx .Comparirà una videata simile alla seguente:
La prima riga identifica la versione di mail ; la seconda riga indica la casellapostale, di solito collocata in /var/mail/ nomeutente, in cui viene depositata laposta in arrivo. La quarta riga dell’esempio è l’intestazione del messaggio diprova. La “N” all’inizio della riga indica che si tratta di un messaggio “nuovo”.La “U” che precede la terza riga dell’esempio (da “unread”, non letto) indicaun messaggio che non è stato letto in una sessione precedente di mailx . (Leinformazioni di questa videata saranno trattate in maggiore dettaglio nelparagrafo “Lettura dei messaggi” di questo capitolo.)
Ad ogni messaggio ricevuto viene assegnato un numero: il messaggio diLorenzo a se stesso compare nell’esempio con il numero 1.
$ mailxMail version 4.0 Thu Jan 16 12:59:09 PST 1992 Digitare ? perinformazioni.“/var/mail/lorenzo”: 2 messaggi 1 nuovi U 2 max@meteora Fri Feb 14 12:01 14/318 aggiornamenti>N 1 lorenzo@firenze Mon Feb 17 08:12 21/453 cogli l’attimo&
La posta elettronica 105
7
Per leggere un messaggio, digitare il suo numero al prompt di mailx ,rappresentato da una “e commerciale” (&):
Uscita da mailx
Per uscire da mailx sono disponibili due comandi: q o x .
Digitando q al prompt di mailx e premendo Return,
compare un messaggio simile al seguente:
1 messaggio salvato in directory_home/mbox .
dove directory_home è il percorso della directory home dell’utente.
$ mailxMail version 4.0 Thu Jan 16 12:59:09 PST 1992 Digitare ? perinformazioni.“/var/mail/lorenzo”: 1 messaggi 1 nuovi>N 1 lorenzo@firenze Fri Jul 14 12:01 21/453 cogli l’attimo& 1
To: lorenzo@firenzeFrom: lorenzo@firenzeSubject: cogli l’attimo
Caro Lorenzo,
Quant’è bella giovinezza,che si fugge tuttavia!Chi vuol esser lieto, sia:di doman non c’è certezza.
A presto,
Il Magnifico
&
& q
106 Guida avanzata a Solaris — dicembre 1995
7
Se si utilizza il comando di uscita q dopo avere letto i messaggi ricevuti,mailx sposta i messaggi dalla casella postale al file mbox nella directory homedell’utente. mailx salva anche eventuali modifiche o cancellazioni deimessaggi.
Digitando invece il comando di uscita x al prompt di mailx e premendoReturn,
mailx non salva le eventuali modifiche o cancellazioni, né sposta i messaggigià letti nel file mbox.
Lettura dei messaggiSe sono arrivati nuovi messaggi, mailx visualizza ad ogni login il messaggio
You have mail
o
You have new mail
Per leggere i messaggi, digitare mailx al prompt di sistema e premere Return.Se la casella postale è vuota compare il messaggio:
Nessun messaggio per nomeutente
Diversamente, compare una lista simile alla seguente:
& x
$ mailxMail version 4.0 Thu Jan 16 12:59:09 PST 1992 Digitare ? perinformazioni.“/var/mail/lorenzo”: 4 messaggi 1 nuovi 2 non letti 1 lorenzo@firenze Fri Feb 14 12:01 21/453 cogli l’attimo U 2 boccia@biliardo Fri Feb 14 18:31 19/353 strategia U 3 fieno@fattoria Sat Feb 15 10:22 24/557 previsioni per>N 4 hoover@woofer Sun Feb 16 23:59 14/280 attenzione agli&
La posta elettronica 107
7
Il programma mailx visualizza alcune informazioni su se stesso (numero diversione e data) e le istruzioni per la richiesta della guida (Digitare ? perinformazioni ).
Nella riga successiva, mailx specifica la posizione della casella postale, ilnumero dei messaggi ricevuti e il loro stato.
mailx presenta quindi un elenco numerato dei messaggi presenti nella casellapostale. Da sinistra a destra, le colonne di ogni riga indicano le seguentiinformazioni:
• Stato: specifica se il messaggio è nuovo (N), non letto (U) o già letto (nessunsimbolo). Il simbolo “>” all’inizio di una riga indica il messaggio corrente. Imessaggi cancellati sono contrassegnati con un asterisco (*).
• Numero: indica l’ordine di ricevimento del messaggio.
• Mittente: indica il nome dell’utente (di norma nella forma nome@sistema)che ha inviato il messaggio.
• Ora: indica la data e l’ora di spedizione del messaggio.
• Dimensioni: indica il numero di righe/caratteri del messaggio.
• Oggetto: indica l’oggetto del messaggio specificato dal mittente.
Se la casella postale contiene molti messaggi, la lista visualizzata potrebbe nonessere completa. In questo caso, digitare:
• z – per visualizzare la videata di intestazioni successiva.
• h- – per visualizzare la videata di intestazioni precedente.
• h – per rivisualizzare da qualsiasi punto la lista delle intestazioni.
Per visualizzare il messaggio corrente (contrassegnato nella lista con >),premere Return. Premendo nuovamente Return verrà visualizzato il messaggiosuccessivo. Per leggere un determinato messaggio, digitarne il numero epremere Return.
108 Guida avanzata a Solaris — dicembre 1995
7
Cancellazione (e recupero) dei messaggiDopo avere letto un messaggio, si può decidere di cancellarlo anzichémemorizzarlo nel file mbox (il salvataggio viene eseguito per default all’uscitada mailx ).
Per cancellare l’ultimo messaggio letto, digitare d al prompt di mailx . Percancellare un messaggio specifico dalla casella postale, usare il comando:
d numero
Per cancellare ad esempio il secondo messaggio, digitare il comando seguente:
È anche possibile cancellare diversi messaggi con un’unica operazione. Percancellare i messaggi 1 e 3, digitare il comando:
Per cancellare un gruppo di messaggi consecutivi, ad esempio dall’1 al 3,digitare il comando:
Prima di uscire da mail è ancora possibile recuperare i messaggi cancellati dallacasella postale. Digitare il comando:
u numero
seguito da Return. Per recuperare ad esempio il secondo messaggio, digitare ilcomando:
Per annullare l’ultima cancellazione è possibile digitare u al prompt di mailxsubito dopo la cancellazione. Ad esempio, se l’ultimo comando dicancellazione è stato d 2-5 , il comando u recupererà i messaggi 2, 3, 4 e 5.
& d 2
& d 1 3
& d 1-3
& u 2
La posta elettronica 109
7
Si ricordi che le cancellazioni diventano permanenti se si esce da mailx con ilcomando q; in altre parole, dopo l’uscita dal programma con q i messaggi nonpossono più essere recuperati. È però possibile uscire da mailx con il comandox lasciando la casella postale intatta — come accennato in precedenza, uscendocon x i messaggi letti resteranno contrassegnati con una U, i messaggicancellati verranno ripristinati, ecc.
Stampa dei messaggiPer stampare un messaggio è possibile inviarlo a un comando di stampautilizzando il simbolo di pipe, digitando:
|numero lp
al prompt di mailx . (Il simbolo | viene chiamato pipe.) Ad esempio, perstampare una copia del messaggio 2, digitare:
e premere Return. Se non viene specificato il numero del messaggio, mailxinvia alla stampante il messaggio corrente. Per maggiori informazioni sull’usodel simbolo di pipe, vedere “Redirezione e piping dell’output di un comando”al Capitolo 2, “Comandi principali di SunOS”.
Invio dei messaggiPer inviare un messaggio con mailx occorre conoscere il nome di login deldestinatario. Se il destinatario opera su un sistema diverso dal proprio, occorreconoscere anche il nome del suo sistema. Per ottenere queste informazioni èpossibile usare i comandi who, finger o rusers .
& |2 lp
110 Guida avanzata a Solaris — dicembre 1995
7
Il comando who elenca tutti gli utenti correntemente connessi al proprio fileserver. La lista visualizzata indica, per ogni utente, il nome di login, il tipo diterminale e la data e l’ora di login. Ad esempio:
Il comando finger visualizza le stesse informazioni ottenute con who, ma informa più dettagliata. Le informazioni visualizzate dipendono dallaconfigurazione impostata dall’amministratore del sistema. Un esempio dioutput è il seguente:
Il comando rusers visualizza informazioni sugli utenti correntementeconnessi alla rete locale. Per istruzioni sull’uso del comando rusers , vedere ilCapitolo 9, “Operazioni in rete”.
Dopo avere ottenuto le informazioni necessarie sull’utente, procedere comesegue per inviare il messaggio.
1. Digitare il comando mailx seguito dall’indirizzo dell’utente:
dove utente è il nome di login del destinatario e sistema è il nome del suosistema.
$ who bruno tty15 feb 20 10:22 mara tty04 feb 20 10:37 paola tty07 feb 20 11:49 laura tty06 feb 20 12:02
$ finger Login Name TTY Idle When bruno Bruno Rossi tty15 43 Thu 10:22
mara Mara Bianchi tty04 Thu 10:37paola Paola Verdi tty07 12 Thu 11:49
laura Laura Polli tty06 22 Thu 12:02
$ mailx nomeutente@nomesistema
La posta elettronica 111
7
• Se mailx è già stato avviato, è sufficiente digitare una m seguita dal nomedi login e dal nome di sistema del destinatario:
• Per inviare lo stesso messaggio a più destinatari, separare gli indirizzi conspazi o virgole; ad esempio:
oppure
2. Premendo Return, mailx richiede l’oggetto del messaggio. Inserire unabreve descrizione del contenuto del messaggio e premere nuovamenteReturn.
3. Digitare il contenuto del messaggio. Per creare una riga nuova, premereReturn.Si noti che anche se una frase si sviluppa su più righe, il programma laconsidera come un’unica riga finché non viene premuto il tasto Return.
Nota – Ogni riga di testo all’interno del messaggio può contenere fino a 256caratteri. Se questo limite viene superato lo schermo si blocca. In questo caso,premere Ctrl-C per abbandonare il messaggio.
4. Dopo avere scritto il messaggio, premere Return per spostare il cursore suuna nuova riga. Premere quindi Ctrl-D per inviare il messaggio.
Errori di invio
Se l’indirizzo specificato per l’invio del messaggio non è corretto, il sistemarisponde con il messaggio
[email protected] unknown
& m nomeutente@nomesistema
$ mailx boccia@biliardo paola@fattoria lorenzo@firenze
$ mailx boccia@biliardo,paola@fattoria,lorenzo@firenze
112 Guida avanzata a Solaris — dicembre 1995
7
e il messaggio ritorna nella casella postale del mittente. All’avvio successivo dimailx , l’intestazione segnalerà la presenza di un messaggio restituito almittente:
Quando il messaggio non può essere consegnato, il file corrispondente vienecopiato in un file della directory home con il nome dead.letter .
Annullamento di un messaggio
Per cancellare un messaggio prima di inviarlo, premere due volte Ctrl-C.
Copie per conoscenza e copie silenti
Prima di inviare un messaggio, è possibile impostare l’invio di “copie perconoscenza” ad utenti diversi dai destinatari principali. È anche possibileinviare “copie silenti”. Chi riceve il messaggio può conoscere i destinatari dellecopie per conoscenza ma non quelli delle copie silenti.
Può essere buona norma includere anche il proprio indirizzo tra i destinataridelle copie per conoscenza o delle copie silenti, in modo da conservare sempreuna copia dei messaggi spediti.
Sono disponibili tre metodi per inviare copie per conoscenza di un messaggio:
• Aprire il file .mailrc (nella directory home) con un editor di testo einserire la riga seguente:
Con questa impostazione, mailx visualizza il prompt per le copie perconoscenza (Cc: ) dopo il prompt per l’oggetto. Inserire in questo campo gliindirizzi degli utenti desiderati separandoli con spazi vuoti.
• Dopo avere scritto il messaggio, ma prima di premere Ctrl-D, premereReturn per creare una nuova riga e digitare il comando:
~c indirizzo/i
N 1 Mailer-Daemon Fri Jan 3 11:13 8/49 Returned mail: User unknown
set askcc
La posta elettronica 113
7
Se si utilizza questo metodo per inviare copie per conoscenza a piùdestinatari, separare gli indirizzi con spazi vuoti. Ad esempio:
• Per creare una riga Cc: si può anche utilizzare il comando ~h, chevisualizza l’intera intestazione del messaggio. ~h visualizza, una alla volta,le righe di prompt To: , Subject: , Cc: e Bcc: (copia silente). Da qui èpossibile compilare le righe vuote e modificare quelle già compilate. Comeper gli altri comandi tilde, ~h deve essere digitato su una riga nuova.
Nota – I comandi ~c , ~h ed altri comandi tilde sono descritti nel paragrafo“Comandi tilde” in questo capitolo.
Inserimento di una copia di un messaggio o di un file
mailx permette di inserire nel messaggio che si sta scrivendo una copia diqualsiasi messaggio contenuto nella casella postale, oppure una copia di unqualsiasi file di testo.
Inserimento di un messaggio
Il comando per l’inserimento di un messaggio è il seguente:
~mnumero
dove numero è il numero del messaggio da inserire. Ad esempio, per inviare unmessaggio che comprenda una copia del messaggio numero 3 della propriacasella postale, procedere come segue:
1. Su una nuova riga, digitare il comando ~m 3 e premere Return.
2. mailx visualizza il messaggio Inserimento di: 3 (continuare)
3. Il messaggio 3 non compare sullo schermo del mittente, mentre saràvisibile nella copia ricevuta dal destinatario. Dopo (continuare) , èpossibile continuare il messaggio o inviarlo nella forma corrente.
4. Per visualizzare il messaggio in forma completa, compreso il messaggioincorporato, usare il comando ~p.
~c biglia@biliardo paola@fattoria lorenzo@firenze
114 Guida avanzata a Solaris — dicembre 1995
7
Inserimento di un file
È anche possibile inserire in un messaggio una copia di un qualsiasi file ditesto. Usare il comando seguente:
~r nomefile
mentre si scrive il messaggio. Ad esempio, per inserire il file profilo nelmessaggio corrente, digitare:
Risposta a un messaggio
Per rispondere a un messaggio, digitare il comando
r numero
al prompt di mailx . (Se non viene specificato il numero del messaggio, mailxrisponde al messaggio corrente.) Ad esempio, per rispondere al mittente delmessaggio 2, digitare il comando:
mailx inserisce automaticamente l’indirizzo del destinatario e una riga Re:Subject: analoga alla riga Subject: del messaggio originale. Inviare larisposta con la normale procedura di spedizione.
Una variante del comando di risposta è R, che invia il messaggio sia al mittenteche a tutti i destinatari del messaggio originario. Usare questo comando soloquando è assolutamente necessario, per evitare di generare “posta inutile”.
Nota – Anche in una risposta è possibile inserire un altro messaggio usando laprocedura descritta al paragrafo precedente. Per inserire una copia delmessaggio al quale si sta rispondendo, digitare il comando ~m senza specificareil numero del messaggio.
~r profilo
& r 2
La posta elettronica 115
7
Salvataggio e richiamo dei messaggiI messaggi inviati o ricevuti possono anche essere salvati e richiamati perutilizzi successivi. In mailx è possibile salvare i messaggi inserendoli innormali file di testo, oppure inserendoli in file speciali detti raccoglitori.Entrambi i metodi sono descritti nei paragrafi seguenti.
mailx distingue tra il salvataggio e la copia di un messaggio; il salvataggioelimina il messaggio dalla casella postale e lo colloca in un file o in unraccoglitore; la copia lascia il messaggio nella casella postale e ne colloca unacopia in un file o in un raccoglitore.
Salvataggio e copia dei messaggi in un file
Per salvare un messaggio in un file, digitare al prompt di mailx il comando:
s numero nomefile
dove numero è il numero del messaggio da salvare e nomefile è il file in cui sidesidera salvarlo. Ad esempio, per salvare il messaggio 3 in un file di nome~/note/bilancio , digitare:
(Si ricordi che, in un percorso, il simbolo ~ rappresenta la directory home.)
È anche possibile salvare diversi messaggi nello stesso file con un’unicaoperazione. Ad esempio, per salvare i messaggi 3, 5, 6, 7 e 8 in~/note/bilancio , digitare:
Se il file specificato non esiste, mailx ne crea uno nuovo. Se il file esiste,mailx aggiunge il nuovo messaggio alla fine del file.
Il salvataggio cancella il messaggio dalla casella postale; mailx visualizza unasterisco (* ) vicino all’intestazione dei messaggi salvati.
& s 3 ~/note/bilancio
& s 3 5-8 ~/note/bilancio
116 Guida avanzata a Solaris — dicembre 1995
7
Per salvare il messaggio in un file lasciandone una copia nella casella postale,usare il comando copy come segue:
Salvataggio e copia dei messaggi in un raccoglitore
Per evitare di scrivere il percorso completo del file utilizzato perl’archiviazione, è possibile salvare o copiare i messaggi in un cosiddettoraccoglitore. I raccoglitori sono file speciali situati in un’apposita directory.
Utilizzando i raccoglitori, i messaggi salvati o copiati vengono riunitiautomaticamente nella stessa directory, da dove è possibile richiamarlifacilmente senza bisogno di specificare lunghi percorsi.
Creazione della directory dei raccoglitori
Per usare i raccoglitori è necessario creare un’apposita directory. Procederecome segue:
1. Creare la directory con il comando mkdir .Ad esempio, per creare una directory di nome Messaggi , digitare ilcomando:
2. Aprire quindi con un editor il file .mailrc situato nella propria directoryhome (è il file che contiene le opzioni per mailx ) e impostare il percorsodella nuova directory.Modificare la variabile set folder inserendo il percorso completo delladirectory appena creata. Ad esempio:
& c 3 ~/note/bilancio
$ mkdir Messaggi
set folder=/home/corte/lorenzo/Messaggi
La posta elettronica 117
7
In alternativa, se si sta utilizzando una C shell è possibile usare il simbolo ~per specificare la directory home.
A questo punto la directory è impostata per ricevere i messaggi salvati neiraccoglitori. (La modifica al file .mailrc diventa effettiva all’avvio successivodi mailx .)
Designazione dei raccoglitori
Per salvare e copiare un messaggio in un raccoglitore o in un file si utilizzanogli stessi comandi, con la differenza che il nome del raccoglitore è preceduto daun segno (+) anziché da un percorso. Il segno + indica a mailx che ilraccoglitore deve essere archiviato nella directory appositamente impostata(Messaggi ).
Ad esempio, per salvare il messaggio 3 in un raccoglitore di nome progetti ,digitare:
mailx interpreta questo comando come “salva il messaggio 3 in~/Messaggi/progetti ”. (Se il raccoglitore specificato non esiste, mailx locrea al momento del salvataggio.)
Per copiare il messaggio nel raccoglitore, digitare:
Invio di un messaggio a un file o a un raccoglitore
È anche possibile inviare una copia dei messaggi spediti direttamente a uno deipropri file o raccoglitori. Per dirigere una copia in un raccoglitore, digitare ilnome del raccoglitore nel campo Cc: o nel campo Bcc: . Per dirigere una copiadel messaggio in un file, seguire la stessa procedura specificando il percorsocompleto del file.
set folder=~/Messaggi
& s 3 +progetti
& c 3 +progetti
118 Guida avanzata a Solaris — dicembre 1995
7
Lettura dei messaggi salvati in file e raccoglitori
Per leggere un messaggio salvato in un file, usare il comando:
mailx -f nomefile
Ad esempio, per leggere il file ~/memo/spese , digitare:
Per leggere un messaggio salvato in un raccoglitore, seguire la stessaprocedura utilizzando il segno + al posto del percorso. Ad esempio, perleggere i messaggi memorizzati nel raccoglitore progetti , digitare:
Questo comando avvia mailx nel file o nel raccoglitore specificato. Verrannovisualizzate solo le intestazioni dei messaggi presenti nel file o nel raccoglitore.Per selezionare uno dei messaggi, digitarne il numero al prompt di mailx epremere Return.
È anche possibile utilizzare i raccoglitori dopo avere avviato mailx . Pervisualizzare l’elenco dei raccoglitori disponibili, digitare al prompt di mailx ilcomando:
Per passare dalla casella postale a un raccoglitore, digitare il comando:
Per tornare alla casella postale, digitare al prompt:
$ mailx -f ~/memo/spese
$ mailx -f +progetti
& folders
& folder + nome_raccoglitore
& %
La posta elettronica 119
7
Per tornare al raccoglitore precedente, digitare:
Uso di vi con mailx
Per comporre un messaggio in mailx è anche possibile utilizzare l’editor ditesto vi . In questo modo si possono correggere eventuali errori e aggiungere ocancellare parti di testo prima di inviare i messaggi. Per informazioni sull’usodi vi , vedere il Capitolo 6, “L’editor vi”.
In mailx è possibile usare i comandi standard di vi per inserire, cancellare emodificare parti di testo.
Per scrivere un messaggio con vi :
1. Digitare il comando mailx con un indirizzo al prompt di mailx (&) o alprompt di sistema ($).
2. Inserire l’oggetto del messaggio nel campo Subject: e premere Return.
3. Avviare vi digitando da una nuova riga il comando ~v. Appare la videatadi vi contenente un file vuoto nella directory /tmp .
4. Usare i comandi di vi per inserire e modificare il testo del messaggio.
5. Al termine, uscire da vi con il comando :wq o ZZ.
Dopo l’uscita da vi , mailx visualizza il messaggio (continuare): . Aquesto punto è possibile modificare ulteriormente il messaggio (al di fuori divi ) o inviarlo premendo Ctrl-D.
Alias postaliUn alias postale rappresenta un gruppo di utenti riuniti sotto uno stesso nome.
Gli alias postali vengono in genere utilizzati quando si inviano messaggiregolarmente a uno stesso gruppo di persone. Ad esempio, se capita spesso diinviare lo stesso messaggio a paola@fattoria , giorgio@sicilia esandra@dakota , è possibile creare un alias postale di nome amici .Specificando amici come destinatario, il messaggio sarà ricevuto da tutti gliutenti riuniti sotto quell’alias.
& #
120 Guida avanzata a Solaris — dicembre 1995
7
Sono disponibili due file per l’impostazione degli alias postali:
• .mailrc e
• /etc/aliases
Gli alias impostati in .mailrc si comportano diversamente da quelli impostatiin /etc/aliases . Le differenze sono riassunte nella Tabella 7-1 alla fine diquesto paragrafo.
Impostazione di un alias postale in .mailrc
Per impostare un alias in .mailrc occorre ricordare quanto segue:
• Gli alias postali contenuti in .mailrc sono privati, possono cioè essere usatisolo dall’utente proprietario. Ad esempio, se si definisce un alias di nomeamici in .mailrc e un altro utente tenta di inviare un messaggio adamici , il sistema genera il messaggio unknown user (utente sconosciuto).
• Dopo l’invio del messaggio, gli alias contenuti in .mailrc si espandonoautomaticamente mostrando gli utenti raggruppati sotto quel nome. Se adesempio si invia un messaggio ad amici , il messaggio viene ricevuto comese il mittente avesse effettivamente scritto i nomi di tutti i destinatari. Inaltre parole, i destinatari non possono sapere che è stato utilizzato un aliaspostale.
Il file .mailrc si trova nella directory home e contiene una serie di parametriche controllano il comportamento di mailx e di Posta Elettronica.
Per inserire un alias postale in .mailrc , digitare:
Nota – Il file .mailrc può essere aperto con qualsiasi editor di testo.L’esempio precedente illustra il comando da utilizzare per aprire il file con vi .Per informazioni sull’uso di vi , vedere il Capitolo 6, “L’editor vi”.
$ vi ~/.mailrc
La posta elettronica 121
7
Ogni alias postale deve essere contenuto in un’unica riga del file. Questacondizione non riguarda la forma di visualizzazione (l’alias può occupare piùrighe sullo schermo); significa piuttosto che l’alias non può contenere caratteridi ritorno a capo. Ogni alias deve contenere le informazioni seguenti, separateda spazi:
• La parola “alias”
• Il nome dell’alias (una sola parola)
• I destinatari (nome di login e nome del sistema) da includere nell’alias,separati da spazi.
L’esempio seguente mostra due alias postali. Il primo (amici ) include trepersone, il secondo (softball ) ne include otto. Si noti che in softball inomi degli utenti occupano più di una riga sullo schermo, ma non vengonoutilizzati caratteri di ritorno a capo.
Per inviare un messaggio alle persone riunite sotto un alias di .mailrc , èsufficiente utilizzare come destinatario l’alias corrispondente. Non occorreinserire il nome del proprio sistema. Ad esempio, inviando il messaggioseguente:
i destinatari lo vedrebbero nel modo seguente (si osservi la riga To: espansa):
alias amici paola@fattoria giorgio@sicilia sandra@dakotaalias softball ugo@woofer max@twister paola@fattoria gabri@zoolorenzo@firenze jj@walker sandra@dakota stefano@fiesta
$ mail amiciSubject: Proposta mangereccia
Ciao a tutti. Cosa ne dite di pranzare insieme il prossimovenerdì? C’è qualcuno libero?
To: paola@fattoria giorgio@sicilia sandra@dakotaSubject: Proposta mangereccia
Ciao a tutti. Cosa ne dite di pranzare insieme il prossimovenerdì? C’è qualcuno libero?
122 Guida avanzata a Solaris — dicembre 1995
7
Impostazione di un alias postale in /etc/aliases
Per impostare un alias postale in /etc/aliases occorre ricordare quantosegue:
• Gli alias postali contenuti in /etc/aliases sono pubblici. Se ad esempioun utente imposta un alias di nome softball , chiunque potrà utilizzaresoftball@ nomesistema come destinatario di un messaggio.
• Dopo l’invio del messaggio, gli alias di /etc/aliases non vengonoespansi. Se ad esempio si invia un messaggio a softball@ sistema, l’aliascomparirà anche nell’intestazione della copia ricevuta dai destinatari. Questiconosceranno perciò il nome dell’alias utilizzato per l’invio del messaggio,ma non necessariamente i nomi degli altri utenti.
Gli alias creati in /etc/aliases hanno un formato leggermente diverso daquelli di .mailrc . Ogni alias di /etc/aliases deve essere composto comesegue:
• Nome dell’alias seguito da due punti (: ).
• Destinatari (nome di login e nome del sistema) separati da virgole. Si notiche l’alias non deve necessariamente essere scritto in un’unica riga.
Per modificare il file /etc/aliases occorre operare come utente root. Sel’accesso al sistema come utente root è protetto da una password, è necessarioconoscere la password.
Per operare sul sistema come utente root, digitare quanto segue:
Si noti che il prompt di sistema utilizza un simbolo diverso per l’utente root.
$ suPassword:#
La posta elettronica 123
7
L’esempio seguente mostra come aggiungere l’alias softball@sport al filedi default /etc/aliases .
# vi /etc/aliases###Aliases can have any mix of upper and lower case on the left-#hand side,#but the right-hand side should be proper case (usually lower)## >>>>>>>>>>The program “newaliases” will need to be run after# >> NOTE >>this file is updated for any changes to# >>>>>>>>>>show through to sendmail.##@(#)aliases 1.10 89/01/20 SMI### Following alias is required by the mail protocol, RFC 822# Set it to the address of a HUMAN who deals with this system’smail problems.Postmaster: root
# Alias for mailer daemon; returned messages from our MAILER-DAEMON# should be routed to our local Postmaster.MAILER-DAEMON: postmaster
# Aliases to handle mail to programs or files, eg news or vacation# decode: “|/usr/bin/uudecode”nobody: /dev/null
# Sample aliases:# Alias for distribution list, members specified here:#staff:wnj,mosher,sam,ecc,mckusick,sklower,olson,rwh@ernie
# Alias for distribution list, members specified elsewhere:#keyboards: :include:/usr/jfarrell/keyboards.list
# Alias for a person, so they can receive mail by several names:#epa:eric
######################## Local aliases below ########################
124 Guida avanzata a Solaris — dicembre 1995
7
Il file /etc/aliases può essere aperto con qualsiasi editor di testo.L’esempio precedente illustra i comandi utilizzati per aprire il file con vi . Perinformazioni sull’uso di vi , vedere il Capitolo 6, “L’editor vi”.
Si noti che i cancelletti (#) che compaiono nel file /etc/aliases hanno loscopo di commentare il testo e gli alias di esempio. Il simbolo del cancellettoimpedisce al sistema di utilizzare queste informazioni come alias effettivi.
Non inserire un cancelletto davanti agli alias che si desidera aggiungere, ameno che non si voglia intenzionalmente disabilitarli.
Per inviare un messaggio alle persone riunite sotto un alias di /etc/aliases ,indicare come destinatario il nome dell’alias e il nome del proprio sistema. Adesempio, inviando il messaggio seguente:
i destinatari lo riceveranno in questa forma:
Si osservi che la riga To: non viene espansa.
softball@sport: ugo@woofer max@twister paola@fattoria gabri@zoolorenzo@firenze jj@walker sandra@dakota stefano@fiesta:wq ( per uscire da vi e salvare il file /etc/aliases)# exit ( per uscire dal modo root)$
$ mail softball@sportSubject: Allenamento oggi
Appuntamento al campo numero 4 dopo il lavoro. Se tutto va beneriusciamo ad allenarci per la partita di sabato! Cercate diarrivare il più presto possibile.
To: softball@sportSubject: Allenamento oggi
Appuntamento al campo numero 4 dopo il lavoro. Se tutto va beneriusciamo ad allenarci per la partita di sabato! Cercate diarrivare il più presto possibile.
La posta elettronica 125
7
Quando si utilizza un alias postale di questo tipo, occorre sempre specificare ilnome del sistema nel quale l’alias è stato definito. Se ad esempio si imposta unalias di nome piloti sul sistema circuito , i messaggi dovranno essereinviati a piloti@circuito .
La Tabella 7-1 riassume le differenze tra gli alias creati in .mailrc e quellicreati in /etc/aliases .
Per informazioni più dettagliate sugli alias postali, digitare man aliases oman addresses al prompt di sistema.
Comandi tildeDurante la composizione di un messaggio è possibile utilizzare i cosiddetticomandi tilde per una serie di funzioni. I comandi tilde sono formati in genereda un tilde (~) seguito da una lettera. La tabella seguente descrive alcuni deicomandi tilde più comuni, alcuni dei quali sono già stati menzionati nel corsodel capitolo.
Nota – Per inserire un vero carattere di tilde all’interno di un messaggio,digitare due caratteri tilde in sequenza; ne verrà visualizzato uno solo.
Tabella 7-1 Confronto tra gli alias di .mailrc e quelli di /etc/aliases
.mailrc /etc/aliases
Modifica riservata a utente root no sì
Formato destinatario: alias alias@nomesistema
Nomi visibili dai destinatari sì no
Nomi separati da virgole no sì
Nomi su un’unica riga sì no
Alias accessibili ad altri utenti no sì
Tabella 7-2 Comandi tilde (mailx )
Comando Funzione
~!comando Permette l’esecuzione di un comando shell
~. Simula Ctrl-D per marcare la fine del file
~? Visualizza un elenco dei comandi tilde
126 Guida avanzata a Solaris — dicembre 1995
7
Visualizzazione della guida per gli altri comandi di mailx
mailx dispone di due comandi che visualizzano l’elenco dei comandi e dellefunzioni disponibili. Se ci si trova in modalità comando, digitando ? al promptdi mailx (&) compare un elenco dei comandi disponibili per quella modalità.Analogamente, se ci si trova in modalità inserimento (ad esempio durante lacomposizione di un messaggio) è possibile digitare il comando equivalente ~?per visualizzare un elenco dei comandi tilde (detti anche escape tilde”).
~b nomeutente Permette di aggiungere un nome utente ai destinatari delle copiesilenti (Bcc:)
~c nomeutente Permette di aggiungere un nome utente ai destinatari delle copieper conoscenza (Cc:)
~d Inserisce il contenuto del file dead.letter nel messaggiocorrente.
~f numero Invia il messaggio specificato. Disponibile solo quando si invia unmessaggio durante la lettura della posta.
~h Visualizza i prompt per le righe di intestazione: Subject, To, Cc eBcc.
~mnumero Inserisce il testo del messaggio specificato nel messaggio corrente.Disponibile solo quando si invia un messaggio durante la letturadella posta.
~p Stampa il messaggio inserito.
~q Simula un doppio Ctrl-C. Se il messaggio corrente non è vuoto, ilcontenuto viene salvato nel file dead.letter .
~r nomefile Inserisce nel messaggio il testo del file specificato.
~s stringa Cambia la riga Subject: in stringa.
~t nome Aggiunge i nomi specificati nel campo di intestazione To.
~w nomefile Salva il messaggio corrente senza intestazione nel file specificato.
~x Esce da mailx . Simile a ~q, ma il messaggio non viene salvato nelfile dead.letter .
Tabella 7-2 Comandi tilde (mailx )
Comando Funzione
La posta elettronica 127
7
Le pagine del manuale online contengono informazioni approfondite sumailx , espresse in forma più tecnica. Per visualizzare tali informazioni,digitare:
Oppure, consultare la guida man Pages(1): User Commands.
$ man mailx
128 Guida avanzata a Solaris — dicembre 1995
7
129
Uso delle stampanti 8
Il servizio di stampa LP (dal sottosistema line printer) è la parte di SunOS checontiene le utility per la stampa. LP offre un’ampia serie di funzioni, moltedelle quali non saranno trattate in questo manuale. Questo capitolo descrive leprocedure necessarie per eseguire le seguenti operazioni:
• Invio di una richiesta di stampa (invio di un file alla stampante)• Determinazione dello stato di una stampante• Annullamento di una richiesta di stampa
Per una descrizione più completa del servizio di stampa LP, vedere il volumeSystem Administration Guide, Volume II.
Invio di una richiesta di stampaPer stampare un file dal prompt di sistema si utilizza il comando lp , che inviaalla stampante la richiesta di stampare il file specificato. Quando si invia unarichiesta di stampa, il servizio LP la inserisce nella coda della stampante,visualizza l’ID della richiesta e quindi torna a visualizzare il prompt disistema.
130 Guida avanzata a Solaris — dicembre 1995
8
Invio di una richiesta alla stampante di default
Se il servizio di stampa LP è configurato con una stampante di default, lerichieste di stampa possono essere formulate come segue senza specificare ilnome della stampante:
dove nomefile è il nome del file che si desidera stampare.
Il file specificato viene collocato nella coda di stampa della stampante didefault e il sistema visualizza l’id della richiesta.
Ad esempio, per stampare il file /etc/passwd , digitare:
Per informazioni su come specificare una stampante di default, vedere ilmanuale System Administration Guide, Volume II.
Invio di una richiesta a una stampante specifica
Indipendentemente dalla designazione o meno di una stampante di default, lerichieste di stampa possono essere inviate a qualsiasi stampante configurataper il proprio sistema. Per inviare una richiesta di stampa a una stampantespecifica, digitare quanto segue:
dove nomestampante è il nome della stampante da utilizzare e nomefile è il nomedel file da stampare.
Il file specificato viene collocato nella coda di stampa della stampante didestinazione e il sistema visualizza l’id della richiesta.
$ lp nomefile
$ lp /etc/passwdl’id della richiesta è pigna-8 (1 file)$
$ lp -d nomestampante nomefile
Uso delle stampanti 131
8
Ad esempio, per stampare il file /etc/passwd sulla stampante fungo ,digitare:
Se la richiesta di stampa viene inviata a una stampante che non è configurataper il proprio sistema, viene visualizzato il messaggio informativo indicatonell’esempio:
Per informazioni sulla configurazione delle stampanti, vedere il manualeSystem Administration Guide, Volume II. Per informazioni su come visualizzarele stampanti disponibili per il proprio sistema, vedere “Determinazione dellostato della stampante” più avanti in questo capitolo.
Richiesta di notifica al termine della stampa
Quando si invia alla stampante un file molto lungo, può essere utile ricevere daLP una notifica che segnali la fine della stampa. Il servizio di stampa LP puòessere impostato in modo da inviare la notifica in una delle forme seguenti:
• Con un messaggio di posta elettronica• Con un messaggio visualizzato nella finestra della Console
Per richiedere una notifica tramite posta elettronica, usare l’opzione -mall’invio della richiesta di stampa:
$ lp -d fungo /etc/passwdl’id della richiesta è fungo-9 (1 file)$
$ lp -d gnomo /etc/passwdUX:lp: ERRORE: La destinazione "gnomo" è sconosciuta
al servizio di stampa LP.$
$ lp -m nomefile
132 Guida avanzata a Solaris — dicembre 1995
8
Per richiedere la visualizzazione del messaggio nella Console, usare l’opzione-w all’invio della richiesta di stampa:
dove nomefile è il nome del file da stampare.
Stampa di un file in più copie
Un file può essere stampato in una o più copie. Se si desidera stampare più diuna copia, specificare il numero di copie desiderato con l’opzione -n delcomando lp . La richiesta di stampa verrà considerata un unico job, e verràstampata solo una pagina di intestazione.
Per richiedere la stampa di più copie di un file, digitare il comando:
dove numero è il numero di copie desiderato e nomefile è il nome del file dastampare.
Per stampare ad esempio quattro copie del file /etc/passwd , digitare:
Tabella riassuntiva delle opzioni di lp
Le richieste di stampa possono essere personalizzate usando le opzioni delcomando lp : è possibile specificare formati, set di caratteri, filtri, titoli,intestazioni e altri aspetti della stampa. La Tabella 8-1 riassume le opzioni diuso più frequente del comando lp . Queste opzioni possono essere utilizzatesingolarmente o in una qualsiasi combinazione nella riga di comando. Se siutilizzano più opzioni, separarle con uno spazio e ripetere per ognuna iltrattino (- ).
$ lp -w nomefile
$ lp -n numero nomefile
$ lp -n4 /etc/passwdl’id della richiesta è pigna-9 (1 file)$
Uso delle stampanti 133
8
Ad esempio, per specificare una stampante di destinazione, richiedere unanotifica con un messaggio di posta elettronica e stampare sei copie di un file, ilcomando da inserire sarà il seguente:
dove nomestampante è il nome della stampante desiderata e nomefile è il nomedel file da stampare.
Per un elenco completo delle opzioni disponibili, vedere la pagina man lp(1) .
Determinazione dello stato della stampanteIl comando lpstat permette di visualizzare lo stato corrente del servizio distampa LP. Con questo comando è possibile controllare lo stato dei job nellacoda di stampa, identificare le stampanti disponibili o individuare gli id dirichiesta dei job per annullarli.
$ lp -d nomestampante -m -n6 nomefile
Tabella 8-1 Sommario delle opzioni principali di lp
Opzione Descrizione
-d Specifica la stampante di destinazione.
-m Invia al richiedente un messaggio di posta elettronica per segnalareil termine della stampa.
-n Specifica il numero di copie da stampare.
-t Mostra lo stato del servizio di stampa.
-o nobanner Sopprime la stampa della pagina di intestazione per una specificarichiesta.
-h Inserisce un’intestazione su ogni pagina della richiesta di stampa.
-c Copia il file prima della stampa.
-w Visualizza un messaggio nella console per segnalare il termine dellastampa.
134 Guida avanzata a Solaris — dicembre 1995
8
Controllo dello stato delle richieste di stampa
Per visualizzare lo stato delle proprie richieste di stampa, digitare il comando:
Viene visualizzato un elenco dei file in coda per la stampa.
Nell’esempio seguente, riferito al sistema pino , l’output del comando indicache è presente un file nella coda di stampa della stampante pigna :
Il comando lpstat visualizza una riga per ogni job di stampa; vengonoindicati l’id della richiesta, il nome dell’utente che ha inviato la richiesta distampa, la dimensione dell’output in byte e la data e l’ora della richiesta.
Controllo delle stampanti disponibili
Per determinare quali stampanti sono configurate per il proprio sistema,digitare quanto segue:
Il sistema visualizza lo stato dello scheduler, la destinazione di default e unelenco dei sistemi e delle stampanti disponibili.
$ lpstat
$ lpstatpigna-10 paola 1261 mar 12 17:34 su pino$
$ lpstat -s
Uso delle stampanti 135
8
Nell’esempio seguente, riferito al sistema olmo , lo scheduler è attivo, lastampante di default è pigna e sono disponibili due stampanti in rete, pignae fungo :
Visualizzazione di tutte le informazioni di stato
L’opzione -t di lpstat visualizza un breve elenco delle informazioni di statodel servizio di stampa LP.
Per visualizzare un breve elenco di tutte le informazioni di stato, digitare:
Vengono visualizzate tutte le informazioni disponibili sullo stato di LP.
Nell’esempio seguente la coda di stampa è vuota. Quando sono presentirichieste di stampa, il sistema visualizza anche lo stato di tali richieste:
$ lpstat -slo scheduler è attivodestinazione di default del sistema: pignasistema per pigna: pinosistema per fungo: quercia$
$ lpstat -t
$ lpstat -tlo scheduler è attivodestinazione di default del sistema: pignasistema per fungo: querciapigna accetta richieste da giovedì, 3 gennaio 1993, 18:20:10 METfungo accetta richieste da lunedì, 4 marzo 1993, 15:53:47 METstampante pigna: inattiva, abilitata da giovedì 3 gennaio 1993,18:20:22 MET. disponibile.
stampante fungo: inattiva, abilitata da lunedì, 4 marzo 1993,15:53:44 MET. disponibile.$
136 Guida avanzata a Solaris — dicembre 1995
8
Visualizzazione dello stato delle stampanti
Per ottenere informazioni sullo stato di una stampante specifica, è possibileutilizzare l’opzione -p di lpstat . Questa opzione permette di sapere se lastampante è attiva o disattiva, la data e l’ora in cui è stata abilitata odisabilitata e indica se la stampante è disponibile per l’accettazione di richiestedi stampa.
Per visualizzare lo stato di tutte le stampanti di un sistema, digitare:
Nell’esempio seguente, le due stampanti configurate per il sistema sono instato non attivo, abilitato e disponibile. Se una delle stampanti contenesse unoo più job nella coda di stampa, l’output del comando mostrerebbe anche i jobin coda.
Per richiedere lo stato di una stampante specifica, digitare il comando:
dove nomestampante è la stampante su cui si desidera avere informazioni.
Visualizzazione delle caratteristiche della stampante
Per visualizzare tutte le caratteristiche di una stampante, utilizzare le opzioni-p e -l di lpstat . Questo comando è particolarmente utile per identificare iltipo di stampante e il tipo di contenuto.
$ lpstat -p
$ lpstat -pstampante pigna: inattiva, abilitata da giovedì 3 gennaio 1993,18:20:22 MET. disponibile.stampante fungo: inattiva, abilitata da lunedì, 4 marzo 1993,15:53:44 MET. disponibile$
$ lpstat -p nomestampante
Uso delle stampanti 137
8
Per visualizzare le caratteristiche di tutte le stampanti del sistema, digitare ilcomando seguente:
Vengono visualizzate in forma di tabella tutte le informazioni diconfigurazione utilizzate dal servizio di stampa LP per ogni stampante.
Nell’esempio seguente, riferito alla stampante pigna , tutti i campi sono vuotiad eccezione del tipo di contenuto e del tipo di stampante.
Tabella riassuntiva delle opzioni di lpstat
Le varie opzioni del comando lpstat permettono di richiedere diversi tipi diinformazioni relative allo stato di stampa. La Tabella 8-2 riassume le opzioni diuso più frequente del comando lpstat . Queste opzioni possono essere usatesingolarmente o in qualsiasi combinazione nella riga di comando. Se siutilizzano più opzioni, separarle con uno spazio e ripetere per ognuna iltrattino (- ).
$ lpstat -p -l
$ lpstat -p pigna -lstampante pigna: inattiva, abilitata da giovedì 3 gennaio 1993,18:20:22 MET. disponibile. Tipi di contenuto: PS Tipi di stampante: PS Descrizione: Utenti consentiti: (all) Formati consentiti: (none) Intestazione non richiesta Set di caratteri: (nessuno) Interlinea di default: Dimensione pagina di default:$
138 Guida avanzata a Solaris — dicembre 1995
8
Ad esempio, per ottenere una lista completa delle informazioni di stato relativea una stampante specifica, digitare il comando:
dove nomestampante è la stampante di cui si desidera conoscere lo stato.
Per l’elenco completo delle opzioni, vedere la pagina man lpstat(1) .
$ lpstat -p nomestampante -l
Tabella 8-2 Sommario delle opzioni principali di lpstat
Opzione Descrizione
-a Indica se le destinazioni di stampa accettano o meno lerichieste di stampa.
-c Visualizza le classi e i rispettivi membri.
-d Visualizza la destinazione di default.
-f Visualizza i formati.
-o Visualizza lo stato dell’output.
-p [ lista][-D][-l} Visualizza lo stato delle stampanti.
-r Stato dello scheduler delle richieste.
-R Visualizza la posizione del job nella coda di stampa.
-s Visualizza un sommario delle informazioni di stato.
-S Visualizza i set di caratteri.
-u [ nomeutente] Visualizza le richieste inviate dall’utente.
-v Visualizza i dispositivi.
Uso delle stampanti 139
8
Annullamento di una richiesta di stampaIl comando cancel permette di annullare una richiesta di stampa inseritanella coda o già in corso di stampa. È necessario conoscere l’id della richiesta,composto sempre dal nome della stampante, un trattino e il numero dellarichiesta di stampa. L’id della richiesta viene visualizzato all’invio delcomando di stampa. Se non si ricorda l’id della richiesta da annullare, digitarelpstat e premere Return. Le richieste di stampa possono essere annullate solodall’utente che le ha inviate o da un utente connesso come root o lp .
Annullamento di una richiesta di stampa con indicazione dell’ID
Per annullare una richiesta di stampa, digitare il comando:
dove idrichiesta è l’id della richiesta di stampa desiderata.
Il sistema visualizza un messaggio indicante che la richiesta è stata annullata einizia la stampa del job successivo nella coda.
Nell’esempio seguente vengono annullate due richieste di stampa:
Annullamento di una richiesta di stampa con indicazione della stampante
È anche possibile annullare solo il job in corso di stampa, digitando il nomedella stampante anziché l’id della richiesta:
dove nomestampante è la stampante a cui è stata inviata la richiesta.
$ cancel idrichiesta
$ cancel pigna-3 pigna-4richiesta “pigna-3” annullatarichiesta “pigna-4” annullata$
$ cancel nomestampante
140 Guida avanzata a Solaris — dicembre 1995
8
Il sistema visualizza un messaggio indicante che la richiesta è stata annullata einizia la stampa del job successivo nella coda.
Nell’esempio seguente viene annullata la richiesta in corso di stampa:
L’amministratore del sistema può operare come utente root o lp e annullarela richiesta in corso di stampa usando il nome della stampante comeargomento per il comando cancel .
$ cancel pignarichiesta “pigna-3” annullata$
141
Operazioni in rete 9
Si definisce rete un insieme di computer configurati in modo da comunicare traloro. All’interno di una rete è possibile utilizzare le risorse di altri sistemioperando normalmente sul proprio. È cioè possibile, operando sulla propriaworkstation, effettuare il login o eseguire comandi remoti che abbiano effettosu altri sistemi.
Questo capitolo tratta i seguenti argomenti:
• Concetti generali sulle reti
• Login in sistemi remoti
• Copia di file da sistemi remoti
• Esecuzione di comandi su sistemi remoti
• Richiesta di informazioni di stato su sistemi remoti
Se il proprio sistema non è collegato a una rete, le informazioni contenute inquesto capitolo potranno ugualmente essere utili per considerare e valutare ivantaggi del lavoro in rete.
Concetti generali sulle retiUn collegamento in rete permette la trasmissione dei dati da un sistema ad unaltro. Le reti vengono di norma classificate come LAN (local area network o retilocali), operanti su distanze nell’ordine di centinaia di metri; WAN (wide areanetwork), operanti su distanze fino a migliaia di chilometri; o CAN (campus areanetwork), operanti su distanze intermedie.
142 Guida avanzata a Solaris — dicembre 1995
9
A un livello superiore si collocano le cosiddette internetwork, reti formate dagruppi di reti collegate. Ad esempio, una workstation può essere collegata auna rete installata all’interno dell’edificio e allo stesso tempo a unainternetwork che collega la rete locale ad altre LAN simili in altre città. Poichéla differenza tra rete e internetwork non ha effetti rilevanti per l’utente, inquesto manuale il termine “rete” verrà utilizzato per indicareindifferentemente entrambi i tipi di collegamento.
I sistemi collegati in rete comunicano tramite un protocollo di rete, o linguaggiocomune della rete, per garantire che le informazioni vengano trasmesse alledestinazioni appropriate. Per il collegamento tra le reti si utilizzano invece iprotocolli di internetwork, detti anche relay.
Login remoto (rlogin )Il comando rlogin permette di effettuare il login su altri sistemi UNIX dellapropria rete.
Per effettuare il login su un sistema remoto, digitare:
dove nomesistema è il nome del sistema remoto.
Se compare la richiesta di una password, digitare la password per il sistemaremoto e premere Return. Se il nome del proprio sistema è contenuto nel file/etc/hosts.equiv del sistema remoto, quest’ultimo non richiederà lapassword di accesso.
$ rlogin nomesistema
$ rlogin solitarioPassword: ( digitare la password)Last login: Mon Jan 6 09:37:55 from zooSun Microsystems, Inc. SunOS 5.1 October 1992( I comandi seguenti vengono eseguiti su solitario .)$ pwd/home/aquila$ logoutConnection closed.$
Operazioni in rete 143
9
rlogin senza una directory home
Nell’esempio precedente, l’utente aquila ha effettuato il login in solitarionella directory /home/aquila , come indicato dal comando pwd. Se si effettuail login in un sistema in cui non si dispone di una propria directory home,rlogin visualizza un messaggio indicante l’assenza di tale directory home nelsistema remoto; in questo caso, l’utente accede direttamente alla directoryradice (/ ) del sistema remoto:
rlogin con un altro nome utente
In alcuni casi può essere necessario effettuare il login in un sistema remotonelle vesti di un altro utente. Ad esempio, può accadere di lavorare sul sistemadi un altro utente (con il nome di login di questo utente) e di dover accedere alproprio sistema con il proprio nome utente. Questo è possibile con l’opzione-l del comando rlogin . La sintassi del comando è la seguente:
rlogin nomesistema -l nomeutente
$ rlogin fattoriaPassword:No directory! Logging in with home=/Last login: Fri Jan 3 10:21:59 from zooSun Microsystems, Inc. SunOS 5.1 October 1992( I comandi seguenti vengono eseguiti su fattoria .)$ pwd/$ logoutConnection closed.$
144 Guida avanzata a Solaris — dicembre 1995
9
Nell’esempio seguente l’utente aquila, operando dal sistema zoo , effettua illogin nel sistema solitario come utente lupo :
Effettuando il login in un sistema remoto con il nome di un altro utente, siaccede alla directory home di quell’utente.
rlogin in un sistema sconosciuto
Se si cerca di effettuare il login in un sistema remoto il cui nome non è definitonel proprio sistema, rlogin cerca senza successo il nome del sistema neldatabase degli host e visualizza il messaggio seguente:
Chiusura di una connessione stabilita con rlogin
Per terminare una connessione stabilita con rlogin , si utilizza di norma ilcomando logout alla fine della sessione di lavoro. Se per qualche ragione nonfosse possibile terminare la sessione in questo modo, la connessione può essereinterrotta digitando un tilde seguito da un punto (~. ) all’inizio di una riga. Laconnessione con il sistema remoto viene interrotta e l’utente ritorna nel sistemadi partenza.
$ rlogin solitario -l lupoPassword:Last login: Wed Jan 8 07:12:25 from zooSun Microsystems, Inc. SunOS 5.1 October 1992( I comandi seguenti vengono eseguiti su solitario .)$ pwd/home/lupo$ logoutConnection closed.$
$ rlogin stranierostraniero: unknown host$
Operazioni in rete 145
9
Se si effettua il login in una serie di sistemi accedendo ad ognuno attraverso unaltro sistema, e si utilizza quindi ~. per interrompere la connessione con unoqualsiasi di questi sistemi, si ritorna al sistema di partenza:
Se si desidera tornare a una connessione intermedia stabilita con rlogin ,digitare due caratteri tilde seguiti da un punto (~~. ), come illustrato in questoesempio:
Sospensione di una connessione stabilita con rlogin
Per sospendere temporaneamente una connessione stabilita con rlogin ,digitare un tilde (~) e quindi premere Ctrl-Z. La connessione stabilita conrlogin assume lo stato di processo sospeso e l’utente ritorna al sistema dipartenza.
$ rlogin dakotaPassword:Last login: Fri Jan 10 09:14:43 from zooSun Microsystems, Inc. SunOS 5.1 October 1992( I comandi seguenti vengono eseguiti su dakota .)$ ~. ( È possibile che il carattere ~ non appaia sullo schermo.)Connection closed.$
$ rlogin solitarioPassword:Last login: Tue Jan 7 08:12:49 from zooSun Microsystems, Inc. SunOS 5.1 October 1992( I comandi seguenti vengono eseguiti su solitario .)$ rlogin dakotaPassword:Last login: Tue Jan 7 10:17:40 from solitarioSun Microsystems, Inc. SunOS 5.1 October 1992( I comandi seguenti vengono eseguiti su dakota .)$ ~~. ( È possibile che i caratteri ~~ non appaiano sullo schermo.)Connection closed.$
146 Guida avanzata a Solaris — dicembre 1995
9
Per riattivare la connessione, digitare fg . Oppure, digitare il simbolo dipercentuale (%) seguito dal numero del processo sospeso (se non vienespecificato alcun numero di processo, viene considerato per default il numerodell’ultimo processo sospeso).
Analogamente alla chiusura della connessione rlogin con ~~. , digitando duecaratteri tilde e Ctrl-Z la connessione rlogin corrente viene interrotta el’utente torna a un rlogin intermedio.
Verifica della posizione corrente (who am i )
Dopo avere effettuato una serie di login in sistemi remoti e avere utilizzato varinomi di login, può essere utile verificare l’esatta posizione corrente. Il comandowho am i visualizza il nome del sistema corrente e il proprio nome di logincorrente.
Per maggiori informazioni, digitare man rlogin al prompt di sistema oconsultare la guida man Pages(1): User Commands.
$ rlogin solitarioPassword:Last login: Tue Jan 7 08:12:49 from zooSun Microsystems, Inc. SunOS 5.1 October 1992( Il comando seguente viene eseguito su solitario .)
~^Z ( È possibile che ^Z non compaia sullo schermo.)Stopped( Il comando seguente viene eseguito su zoo .)$ pwd/home/aquila$ %rlogin solitario
( Il comando seguente viene eseguito su solitario .)$ logoutConnection closed.$
Operazioni in rete 147
9
Copia remota dei file (rcp )Il comando rcp permette di copiare uno o più file da un sistema a un altro.Esso utilizza i file /etc/hosts.equiv e /etc/passwd del sistema remotoper determinare i privilegi di accesso dell’utente. La sintassi di rcp è analoga aquella del comando cp .
Nota – Per copiare una sottodirectory e il suo contenuto da un sistema a unaltro, usare il comando rcp -r .
Copia di file da un altro sistema al proprio
Per copiare uno o più file da un altro sistema sul proprio, la sintassi delcomando è la seguente:
rcp nomesistema:sorgente destinazione
dove nomesistema è il nome del sistema remoto, sorgente è il nome del file che sidesidera copiare e destinazione è il percorso in cui si desidera copiare il file sulproprio sistema.
Nell’esempio seguente, il file /home/dakota/doc/lettera viene copiatodal sistema remoto dakota alla directory /tmp del sistema locale zoo :
Con il comando rcp è anche possibile utilizzare varie combinazioni diabbreviazioni e sintassi. Ad esempio, per copiare tutti i file che terminano in.doc dalla directory home dell’utente gallo sul sistema remoto fattoriaalla directory corrente del sistema locale zoo , il comando da digitare sarà:
$ rcp dakota:/home/dakota/doc/lettera /tmp$
$ rcp fattoria:~gallo/*.doc .$
148 Guida avanzata a Solaris — dicembre 1995
9
Copia di file dal proprio sistema ad un altro
Per copiare uno o più file dal proprio sistema locale in un sistema remoto, lasintassi del comando viene invertita come segue:
rcp sorgente nomesistema:destinazione
dove sorgente è il file che si desidera copiare, nomesistema è il nome del sistemaremoto e destinazione è il percorso in cui si desidera copiare il file nel sistemaremoto.
Nell’esempio seguente, il file asti viene copiato dalla directory~/italia/piemonte del sistema di partenza nella directory~gallo/province del sistema remoto fattoria (si ricordi che ~ indica ladirectory home dell’utente che esegue il comando e ~gallo è la directoryhome dell’utente gallo ):
Per maggiori informazioni sul comando rcp(1) e sulle relative opzioni,vedere la guida man Pages(1): User Commands.
Esecuzione remota dei comandi (rsh )Il comando rsh (da remote shell) permette di eseguire un comando singolo suun sistema remoto senza bisogno di effettuare il login su quel sistema. Questapossibilità può risultare molto utile quando si desidera effettuare una solaoperazione sul sistema remoto.
Per eseguire un comando sul sistema remoto, digitare:
rsh nomesistema comando
Nell’esempio seguente viene visualizzato il contenuto della directory/home/solitario/chitarre del sistema remoto solitario :
$ rcp ~/italia/piemonte/asti fattoria:~gallo/province$
$ rsh solitario ls /home/solitario/chitarrecollings gibson santacruzfender martin taylor$
Operazioni in rete 149
9
Come i comandi rlogin e rcp , rsh utilizza i file /etc/hosts.equiv e/etc/passwd del sistema remoto per determinare i privilegi di accessodell’utente.
Per maggiori informazioni sul comando rsh(1) e sulle relative opzioni,vedere la guida man Pages(1): User Commands.
Visualizzazione di informazioni sugli utenti (rusers )Il comando rusers (da remote users) visualizza gli utenti connessi ai varisistemi della rete. Digitando il comando rusers da solo vengono visualizzatitutti i sistemi della rete e gli utenti connessi in ciascuno:
Si noti che il sistema firenze ha tre utenti connessi.
Per visualizzare le informazioni relative a uno specifico sistema remoto,digitare il comando rusers seguito dal nome del sistema, come segue:
$ rusersbosco querciadakota sandrafattoria gallofirenze linda paola brunoforesta sequoiapianeti martesolitario lupozoo leone$
$ rusers firenzefirenze linda paola bruno$
150 Guida avanzata a Solaris — dicembre 1995
9
L’opzione -l del comando rusers permette di ottenere informazioni piùdettagliate, tra cui i nomi degli utenti, i nomi dei sistemi e dei terminali, l’oradi connessione di ogni utente, il tempo di inattività di ogni utente (se maggioredi un minuto) e il nome del sistema da cui ogni utente ha effettuato il login:
L’opzione -l può essere utilizzata anche senza specificare il nome di unsistema.
Per maggiori informazioni sul comando rusers(1) e sulle relative opzioni,vedere la guida man Pages(1): User Commands.
$ rusers -l firenzelinda firenze:ttyd8 Feb 10 08:12 5:29paola firenze:console Feb 10 09:16bruno firenze:ttyp0 Feb 10 11:56 36$
151
Personalizzazionedell’ambiente di lavoro 10
Il sistema operativo SunOS permette all’utente di controllare e configuraredirettamente molti aspetti dell’ambiente di lavoro. Questo è possibile con lamodifica delle variabili d’ambiente contenute nei file di inizializzazione delsistema. Quando si effettua il login, il sistema legge i file di inizializzazione eutilizza le variabili d’ambiente per configurare il sistema. Impostando omodificando opportunamente le variabili d’ambiente è perciò possibile“personalizzare” il sistema per adattarlo alle proprie esigenze di lavoro.
Questo capitolo descrive le procedure per:
• Personalizzare il sistema modificando i file di inizializzazione e impostandole variabili d’ambiente più comuni.
• Creare alias per i comandi di SunOS.
• Modificare il prompt di sistema.
• Impostare le autorizzazioni di default per i file.
• Personalizzare i font di OpenWindows.
• Effettuare la calibrazione dei monitor a colori.
152 Guida avanzata a Solaris — dicembre 1995
10
File di inizializzazioneI file di inizializzazione che determinano la configurazione del sistemadipendono dal tipo di shell di default specificata dall’amministratore delsistema al momento dell’installazione. La Bourne shell è la shell di default peri sistemi SunOS, ma è anche possibile utilizzare una C shell o una Korn shell.Ad ognuna di queste sono associati uno o più file di inizializzazione.
Se non si è certi della shell di default impostata per il proprio sistema (dettaanche shell di login), procedere come segue:
1. Digitare echo $SHELL :
2. Osservare l’output del comando. Se è:
• /bin/sh – la shell di login è una Bourne shell• /bin/csh – la shell di login è una C shell• /bin/ksh – la shell di login è una Korn shell
Indipendentemente dalla shell utilizzata, quando l’utente effettua il login ilsistema esegue il file di profilo del sistema, /etc/profile . Questo file è ingenere di proprietà dell’amministratore del sistema ed è accessibile in lettura(ma non in scrittura) da tutti gli utenti.
Dopo il profilo del sistema, il sistema esegue il profilo utente. Il profilo utente èrappresentato da uno o più file di inizializzazione che definiscono l’ambientedi lavoro. Ad esempio, se ci si trova nell’ambiente OpenWindows il sistemacontrolla il file (o i file) di inizializzazione ogni volta che viene avviata unaShell o una Finestra di comando.
A seconda della shell di default utilizzata, i file del profilo utente possonoessere i seguenti:
• .profile (per la Bourne shell e la Korn shell)
• .login e .cshrc (per la C shell)
I file del profilo utente sono contenuti nella directory home e consentono diconfigurare l’ambiente di lavoro in base alle proprie preferenze.
$ echo $SHELL/bin/sh
Personalizzazione dell’ambiente di lavoro 153
10
Variabili d’ambienteIl sistema configura l’ambiente di lavoro in base a una serie di impostazionidefinite nei file di inizializzazione. Per modificare temporaneamentel’ambiente di lavoro, ad esempio per la sessione corrente, è possibile eseguire icomandi appropriati direttamente al prompt di sistema. Se invece si desideraapportare modifiche di carattere permanente, occorre memorizzare variabilid’ambiente “permanenti” nei file .profile , .login o .cshrc .
Per visualizzare le variabili d’ambiente correntemente impostate sul sistema:
1. Digitare il comando env e premere Return:
Nota – È anche possibile usare il comando env per identificare la propria shelldi login, specificata nella variabile d’ambiente SHELL. Nell’esempioprecedente, la shell è impostata come /bin/sh (Bourne shell).
Profilo utente
In questa sezione vengono descritte alcune delle variabili d’ambiente piùutilizzate. Molte di queste potrebbero essere già definite nel proprio profiloutente. Come già accennato, il file del profilo utente (.profile per la Bourneshell e la Korn shell e .cshrc per la C shell) si trova nella directory home.
Nota – I file nascosti (file “punto”) possono essere visualizzati con il comandols -la .
$ envHISTORY=100HOME=/home/italia/logosHZ=100LOGNAME=logosMAIL=/var/mail/logosMANSECTS=\1:1m:1c:1f:1s:1b:2:\3:3c:3i:3n:3m:3k:3g:3e:3x11:3xt:3w:3b:9:4:5:7:8PATH=/usr/binSHELL=/bin/shTERM=sunTZ=EST5EDT
154 Guida avanzata a Solaris — dicembre 1995
10
L’elenco seguente descrive alcune delle variabili d’ambiente che è possibileimpostare nel proprio profilo utente. La sintassi per la definizione dellevariabili d’ambiente dipende dal tipo di shell in uso:
• CDPATH – Specifica le directory in cui il sistema deve cercare quando vienedigitato il nome di una directory senza specificare un percorso completo.
• HISTORY – Definisce il numero dei comandi memorizzati dal comandohistory (solo per la C shell).
• HOME – Definisce il percorso assoluto della directory home dell’utente. Ilsistema utilizza questa informazione per determinare la directory in cuispostarsi quando viene digitato il comando cd senza argomenti.
• LANG – Specifica la lingua locale. Sono ammessi i valori: Japanese, German,French, Swedish e Italian.
• LOGNAME – Definisce il nome di login dell’utente. Il valore di default perquesta variabile è il nome di login specificato nel database passwd comeparte del processo di login. Per informazioni sul database passwd , vedere ilmanuale System Administration Guide, Volume I.
• LPDEST – Definisce la stampante di default.
• MAIL – Specifica il percorso della casella postale dell’utente. Questa è dinorma collocata nella directory /var/mail/ nomeutente, dove nomeutente èil nome di login dell’utente. Per maggiori informazioni su questo file, vedereil Capitolo 7, “La posta elettronica”.
• MANSECTS – Imposta le sezioni disponibili del manuale di riferimentoonline (pagine man).
• PATH – Elenca, nell’ordine, le directory in cui il sistema deve cercare pertrovare il programma da eseguire quando viene inserito un comando. Se ladirectory richiesta non si trova nel percorso di ricerca, occorre inserirla nellavariabile oppure digitare il percorso completo quando si inserisce ilcomando.
L’impostazione di default per questa variabile viene definitaautomaticamente in base a quanto specificato nel file .profile (Bourneshell o Korn shell) o .cshrc (C shell) nel processo di login.
• PS1 – Definisce il prompt di sistema. Il prompt di default per la Bourneshell e la Korn shell è il simbolo del dollaro ($). Il prompt di default per laC shell è il simbolo di percentuale (%). Il prompt di default per l’utente rootin tutte le shell è il simbolo del cancelletto (#).
Personalizzazione dell’ambiente di lavoro 155
10
• SHELL – Definisce il tipo di shell utilizzata da vi ed altri programmi.
• TERMINFO – Specifica il percorso dei terminali non supportati che sono statiaggiunti al database terminfo . L’impostazione di questa variabile non ènecessaria per i terminali di default definiti nel database. Per informazionisul database terminfo , vedere il manuale System Administration Guide,Volume II.
• TERM – Definisce il tipo di terminale correntemente in uso. Quando si avviaun editor, il sistema cerca un file con un nome corrispondente alladefinizione di questa variabile. Il file viene cercato prima nel percorsoeventualmente specificato nella variabile TERMINFO, e quindi nelladirectory di default, /usr/share/lib/terminfo , per determinare lecaratteristiche del terminale. Se il sistema non trova una definizione innessuna delle directory esaminate, il terminale viene identificato comeasincrono.
• TZ – Definisce il fuso orario utilizzato dall’orologio del sistema.
Impostazione della variabile PATH
La variabile d’ambiente PATH viene usata dal sistema per localizzare i comandinella gerarchia di directory di SunOS. Con la definizione di PATH si stabilisceun insieme fisso di directory in cui il sistema va a cercare ogni volta che vieneinserito un comando.
Se la variabile PATH non è impostata e si desidera ad esempio copiare un file,sarà necessario inserire il percorso completo del comando di copia,/usr/bin/cp . Se invece la variabile PATH è stata impostata in modo daincludere la directory /usr/bin , sarà sufficiente digitare cp perché il sistemaesegua il comando. In questo caso, infatti, il sistema cercherà il comando cp intutte le directory incluse nella variabile PATH. L’inserimento nella variabiledelle directory che contengono i comandi più comuni di SunOS è perciòdeterminante per semplificare e velocizzare il lavoro.
Se si utilizza una shell di tipo Bourne o Korn, la variabile PATH deve esserespecificata nel file .profile (nella directory home) con la sintassi seguente:
dove home rappresenta il percorso della directory home dell’utente.
PATH=.:/usr/bin:/ home/bin
156 Guida avanzata a Solaris — dicembre 1995
10
Se si utilizza la C shell, la variabile PATH deve essere specificata nel file.cshrc (nella directory home) con la sintassi seguente:
dove home è il percorso della directory home dell’utente.
Nota – Nelle C shell è anche possibile usare il simbolo ~ per rappresentare ilpercorso della directory home.
Se si modifica la variabile PATH e si utilizza una C shell, il comando sourcepermette di applicare immediatamente le modifiche apportate senza bisogno dieffettuare il logout:
Se si utilizza una shell di tipo Bourne o Korn, lo stesso risultato si può ottenerecon il comando seguente:
Alias (solo C Shell)
Gli alias sono abbreviazioni che sostituiscono comandi di uso frequente. Adesempio, l’impostazione di default per il comando rm non prevede unarichiesta di conferma prima di eseguire la cancellazione. Questa impostazionepuò essere rischiosa, poiché un errore di battitura può causare la cancellazionedel file sbagliato. La C shell consente tuttavia di utilizzare la variabile aliasper modificare l’impostazione di default aggiungendo la riga seguente al file.cshrc :
Con questa istruzione nel file .cshrc , il comando rm viene reso equivalente arm -i , che rappresenta la sua forma interattiva. In questo modo, il sistemachiederà sempre la conferma dell’utente prima di eseguire la cancellazione di
set path=(. /usr/bin home/bin)
esempio% source .cshrc
$ . .profile
alias rm ’rm -i’
Personalizzazione dell’ambiente di lavoro 157
10
un file. (Le virgolette che racchiudono rm -i nell’esempio sono necessarie perincludere lo spazio vuoto tra rm e -i . Senza le virgolette, la C shell nonpotrebbe interpretare correttamente i caratteri dopo lo spazio.)
Per applicare immediatamente le modifiche apportate al file .cshrc , usare ilcomando source . Questo comando fa in modo che il sistema rilegga il file.cshrc ed esegua i relativi comandi:
Modifica del prompt di sistema
La sintassi da utilizzare per cambiare il prompt di sistema dipende dal tipo dishell utilizzata (Bourne, Korn o C shell).
Bourne shell e Korn shellSe si utilizza una shell di tipo Bourne o Korn, il prompt di sistema può essereridefinito con il comando PS1. L’esempio seguente mostra tre possibiliapplicazioni del comando:
• Il primo esempio imposta il prompt come due punti (:) seguiti da unospazio.
• Il secondo esempio crea un prompt formato dal nome del sistema seguito dadue punti e uno spazio.
• Il terzo esempio definisce un prompt formato dal nome del sistema seguitodal nome di login dell’utente fra parentesi graffe {} , due punti e uno spazio.
Si provi a cambiare il proprio prompt di sistema usando uno dei comandiillustrati nell’esempio. Il prompt resterà nella forma impostata fino allamodifica successiva o fino al logout.
Per modificare il prompt in modo permanente, aggiungere una delle righeindicate (o un prompt di propria creazione) al file.profile . In questo modo,il prompt specificato apparirà ad ogni login e in ogni shell.
esempio% source .cshrc
PS1=": "PS1="‘hostname‘: "PS1="‘hostname‘{‘id‘}}: "
158 Guida avanzata a Solaris — dicembre 1995
10
C shellSe si utilizza una C shell, il prompt di sistema può essere personalizzato con ilcomando set prompt . L’esempio seguente mostra tre possibili applicazionidel comando:
• Il primo comando imposta il prompt come un simbolo di percentualeseguito da uno spazio.
• Il secondo comando crea un prompt formato dal nome del proprio sistemaseguito dal numero di storia del comando (hostname1, hostname2,hostname3 e così via).
• Il terzo comando crea un prompt formato dal nome del sistema seguito dalnome di login dell’utente fra parentesi graffe, due punti e uno spazio.
Si provi a cambiare il proprio prompt corrente usando uno dei comandidell’esempio. Il prompt resterà nella forma definita fino alla modificasuccessiva o fino al logout dal sistema.
Per modificare il prompt in modo permanente, aggiungere una delle righeindicate (o un prompt di propria creazione) al file .cshrc . In questo modo, ilprompt specificato apparirà ad ogni login e in ogni shell.
Altre variabili
Oltre a quelle descritte finora, l’utente può impostare molte altre variabili neifile .profile o.cshrc . Per un elenco completo delle variabili, vedere laguida man Pages(1): User Commands. Qui di seguito è fornita una brevedescrizione di alcune delle opzioni più utili.
L’istruzione set noclobber impedisce di sovrascrivere accidentalmente unfile durante una copia con il comando cp . Questa variabile è disponibile solose si utilizza una C shell. Inserire nel file.cshrc la riga seguente:
set prompt="% "set prompt="‘hostname‘\!: "set prompt="‘hostname‘{‘id‘}}: "
set noclobber
Personalizzazione dell’ambiente di lavoro 159
10
L’istruzione set history definisce il numero dei comandi che verrannovisualizzati con il comando history . La lista visualizzata da history puòessere utilizzata anche per ripetere comandi precedenti. Questa variabile èdisponibile solo se si utilizza una C shell. Per impostarla, inserire la rigaseguente nel file .cshrc :
Per ottenere lo stesso risultato utilizzando una shell di tipo Bourne o Korn,inserire la riga seguente nel file .profile :
Impostazione delle autorizzazioni di defaultIl comando umask imposta le autorizzazioni di default per i file e le directorydi nuova creazione. Ad esempio, per mantenere un certo grado di protezione eassegnare ai membri del proprio gruppo e a tutti gli altri utenti solo leautorizzazioni di lettura ed esecuzione (-rwxr-xr-x) per i propri file e directory,impostare umask nei file.cshrc e .profile in modo da proteggere tutti i filee directory di propria creazione con le autorizzazioni desiderate.
Analogamente al comando chmod, umask utilizza un codice numerico perrappresentare le autorizzazioni assolute dei file. Tuttavia, il metodo utilizzatoda umask per calcolare tale codice si differenzia nettamente da quello usato dachmod.
In primo luogo, se umask è impostato su 000 significa che tutti i file creatidall’utente avranno le seguenti autorizzazioni (lettura e scrittura ma nonesecuzione):
rw-rw-rw- (modo 666)
mentre tutte le directory avranno le seguenti autorizzazioni (lettura, scritturaed esecuzione):
rwxrwxrwx (modo 777)
set history=100
HISTORY=100
160 Guida avanzata a Solaris — dicembre 1995
10
Per determinare il valore da utilizzare con umask, occorre sottrarre il valoredelle autorizzazioni desiderate (il valore che occorrerebbe specificare per ilcomando chmod) dalle autorizzazioni di default correntemente assegnate aifile. Il risultato ottenuto sarà il valore da utilizzare per il comando umask.
Ad esempio, si supponga di voler cambiare le autorizzazioni di default per ipropri file da 666 (rw-rw-rw- ) a 644 (rw-r--r-- ). Sottrarre 644 da 666. Ilrisultato, 022, è il valore numerico da utilizzare con umask come segue:
Come nel codice numerico utilizzato per il comando chmod, i tre numeri usaticon umask hanno i seguenti significati:
• La prima cifra controlla le autorizzazioni del proprietario
• La seconda controlla le autorizzazioni del gruppo
• La terza controlla le autorizzazioni di tutti gli altri utenti
La Tabella 10-1 illustra le autorizzazioni dei file per ogni cifra del codicenumerico utilizzato da umask.
Per maggiori informazioni sul comando umask, vedere la guida man Pages(1):User Commands.
umask 022
Tabella 10-1 Codici delle autorizzazioni utilizzate da umask
codice umaskAutorizzazioni
0 rwx
1 rw-
2 r-x
3 r--
4 -wx
5 -w-
6 --x
7 ---(nessuna)
Personalizzazione dell’ambiente di lavoro 161
10
Personalizzazione dei font in OpenWindowsSe si desidera, è possibile personalizzare il tipo e la dimensione dei fontutilizzati dalle applicazioni in OpenWindows. I paragrafi seguenti descrivonole procedure da seguire per la personalizzazione dei font.
Definizione del tipo di font e della dimensione
Il font di default utilizzato nelle finestre è il Lucida Sans a 12 punti (medium);il font di default per le intestazioni delle finestre è il Lucida Sans Bold. Se sipreferisce, è possibile specificare un altro tipo di carattere o un’altradimensione sia per le finestre che per le intestazioni. La modifica può essereeffettuata in forma temporanea, per una singola finestra, oppure in modopermanente per tutte le applicazioni, utilizzando la finestra “Caratteristichearea di lavoro”. I paragrafi seguenti descrivono entrambe le procedure.
Font a spaziatura fissa e proporzionaleI font si suddividono in due categorie generali — a spaziatura fissa e a spaziaturaproporzionale. Nei font a spaziatura fissa ogni carattere occupa lo stesso spazionella riga, mentre nei font a spaziatura proporzionale i caratteri occupano unospazio variabile a seconda della larghezza. In generale, i font a spaziaturaproporzionale risultano esteticamente più gradevoli. Tuttavia, per alcuneapplicazioni (come le Finestre di comando, le Shell e xterm , un diffusoemulatore di terminale) è preferibile l’utilizzo dei font a spaziatura fissa.
Scelta tra font a spaziatura fissa e proporzionaleIl font di default utilizzato nelle Finestre di comando e nelle Shell è un font aspaziatura proporzionale. Nonostante l’aspetto gradevole, nelle finestreutilizzate come terminali i font a spaziatura proporzionale possono causareproblemi di allineamento dei caratteri (ad esempio nelle spaziature e nelletabulazioni). In questo caso è perciò preferibile scegliere un font a spaziaturafissa. Negli esempi seguenti, le finestre utilizzate come terminali impieganofont a spaziatura fissa, mentre le altre finestre e intestazioni adottano font aspaziatura proporzionale.
162 Guida avanzata a Solaris — dicembre 1995
10
Definizione del font per una singola finestra
Questo paragrafo descrive la procedura da seguire per modificare il tipo e ladimensione del font per una singola applicazione. Si noti che le modifiche nonhanno effetto sulle finestre già aperte; per visualizzare il nuovo font occorreavviare una nuova sessione dell’applicazione.
La sintassi base del comando, illustrata nell’esempio seguente, contiene ilnome dell’applicazione, l’opzione -fn (font name) e il tipo e la dimensione delfont. La “e commerciale” (&) fa ricomparire il prompt di sistema dopo l’inviodel comando, rendendo la finestra immediatamente disponibile.
Gli esempi che seguono illustrano l’uso di questo comando per aprireun’applicazione specificando il font da utilizzare e la dimensione dei caratteri.
• L’esempio seguente avvia una Finestra di comando con il font a spaziaturaproporzionale Lucida Sans Typewriter Bold .
La dimensione del carattere non è specificata; viene perciò utilizzata ladimensione di default (12 punti).
• L’esempio seguente avvia una Shell con il font Lucida Sans TypewriterBold e aumenta la dimensione dei caratteri da 12 a 14 punti.
Modificando la dimensione del font cambia anche la dimensione dellafinestra.
• L’esempio seguente avvia una finestra di terminale xterm con il fontterminal-bold a 16 punti:
$ applicazione -fn tipofont-dimensione &
$ cmdtool -fn lucidasans-typewriter-bold &
$ shelltool -fn lucidasans-typewriter-bold-14 &
$ xterm -fn terminal-bold-16 &
Personalizzazione dell’ambiente di lavoro 163
10
• L’esempio seguente avvia una finestra di Editor con il font HelveticaBold a 14 punti:
L’opzione -fn può essere utilizzata con qualsiasi applicazione per specificare ilfont e la dimensione dei caratteri. Proseguendo nel capitolo, il paragrafo“Elenco dei font disponibili” spiegherà come visualizzare tutti i fontdisponibili per le applicazioni di OpenWindows.
Assegnazione permanente dei font
Se si utilizza spesso un font personalizzato, può essere utile aggiungerlo comeopzione al menu Area di lavoro. Questa operazione può essere eseguitautilizzando la categoria “Menu Programmi” della finestra “Caratteristiche areadi lavoro”. In questo modo non sarà più necessario digitare ogni volta leopzioni di personalizzazione dalla riga di comando. Se ad esempio si preferisceutilizzare Editor con un carattere più grande, è possibile aggiungere al menuProgrammi la seguente riga di comando:
È anche possibile aggiungere al menu Programmi varie opzioni relative a unastessa applicazione, in modo da poterla avviare con diversi tipi di font o concaratteri di diverse dimensioni. Per avere ad esempio la possibilità di avviareEditor con caratteri a 12 , 14 o 18 punti, si potranno aggiungere al menuProgrammi i comandi seguenti:
Personalizzando in questo modo il menu Programmi dalla finestra“Caratteristiche area di lavoro”, sarà possibile avviare Editor con il caratteredesiderato selezionando semplicemente l’opzione appropriata dal menu.
$ textedit -fn helvetica-bold-14 &
textedit -fn lucidasans-typewriter-14
textedit -fn lucidasans-typewriter-12textedit -fn lucidasans-typewriter-14textedit -fn lucidasans-typewriter-18
164 Guida avanzata a Solaris — dicembre 1995
10
Nota – Le righe di comando aggiunte al menu Programmi non devono essereseguite da una “e commerciale” (&).
Visualizzazione dei font disponibili
Se si desidera provare ad utilizzare font diversi da quelli illustrati negli esempiprecedenti nelle applicazioni di OpenWindows, può essere utile visualizzarel’elenco dei font disponibili.
Elenco dei font disponibili
Per ottenere l’elenco completo dei font disponibili, digitare il comandoxlsfonts al prompt di sistema da una finestra di emulazione terminale. Èpreferibile utilizzare una Finestra di comando, in quanto la lista potrebbescorrere oltre i margini della finestra e richiedere l’utilizzo di una barra discorrimento.
Nota – L’elenco generato da xlsfonts è molto lungo, in quanto contiene inomi di oltre 400 font. Se l’elenco visualizzato contiene un numero di fontrelativamente ridotto, consultare l’amministratore di sistema. È possibile chesia stato installato soltanto un sottoinsieme dei font disponibili.
Ogni font possiede un nome completo e uno abbreviato. Il nome completo delfont lucidasans-typewriter , ad esempio, è:
I font visualizzati nell’elenco xlsfonts sono presentati con il nome completoseguito dalla rispettiva forma abbreviata. Per le operazioni descritte in questocapitolo sarà sufficiente utilizzare la versione abbreviata.
Dopo avere selezionato un font, seguire le istruzioni del precedente paragrafo“Definizione del tipo di font e della dimensione” per personalizzare i font nellefinestre delle applicazioni.
-b&h-lucida sans typewriter-medium-r-normal-sans-12-120-72-72-m-0-iso8859-1
Personalizzazione dell’ambiente di lavoro 165
10
Calibrazione dei monitor a coloriIl Kodak Color Management System (KCMS) incluso in Solaris 2.5 permette diottenere un’eccellente qualità dei colori durante la scansione, la visualizzazionesul monitor, la stampa, la registrazione su pellicola e in generale lariproduzione delle immagini.
In questa sezione vengono fornite le seguenti informazioni:
• Informazioni generali sulla calibrazione del monitor• Predisposizione dell’ambiente di visualizzazione• Collegamento dello strumento di calibrazione hardware richiesto per l’uso
dell’utility Calibratore• Esecuzione di Calibratore
Nota – L’utilizzo dello strumento hardware per la calibrazione del monitor nonè indispensabile, ma è fortemente consigliato.
Introduzione alla calibrazione dei monitor
Tutti i dispositivi a colori, come gli scanner, i monitor o le stampanti, sonodotati di varie caratteristiche relative alla riproduzione dei colori. Il softwareKCMS utilizza un insieme di dati di caratterizzazione per determinate marche emodelli di dispositivi a colori. La procedura di acquisizione di questi dati,detta caratterizzazione, richiede strumenti altamente specializzati. I suoi risultativengono inseriti in un file, detto profilo nominale, che contiene informazionidettagliate sulla riproduzione dei colori. Il software KCMS comprende unaserie predefinita di profili nominali. Ogni valore nominale è la risposta dicolore media ricavata da una serie di misurazioni su diversi campioni di ognitipo di dispositivo.
Nota – Attualmente, la caratterizzazione può essere eseguita solo sui monitor,non sugli scanner o sulle stampanti.
Il profilo nominale rappresenta la riproduzione dei colori di un dispositivo condeterminate impostazioni e in condizioni note. I profili nominali sonoappropriati per la maggior parte delle workstation, ma le caratteristiche diriproduzione di un dispositivo a colori possono variare in funzione dell’età, deimateriali utilizzati e della temperatura. Per ottenere una riproduzione accurata
166 Guida avanzata a Solaris — dicembre 1995
10
dei colori, perciò, si dovrebbe regolare il profilo nominale in base alle effettivecaratteristiche di riproduzione nell’ambiente reale. Il processo di regolazionedel profilo nominale viene detto calibrazione. Per maggiori informazionisull’ambiente di visualizzazione, vedere “Predisposizione dell’ambiente divisualizzazione” a pagina 167. Per maggiori informazioni sui profili calibrati,vedere “Profili calibrati e visuali” a pagina 166.
La calibrazione dei monitor viene eseguita visualizzando una sequenzaprogrammata di colori di prova e misurando l’output con un appositostrumento. A questo punto, la libreria KCMS calcola i fattori di correzionenecessari per compensare le imprecisioni del monitor. Questo processo vienedetto calibrazione del monitor, e viene eseguito automaticamente dal softwareKCMS. Per le relative istruzioni, vedere “Uso dell’utility Calibratore” apagina 171.
Quando si modificano le impostazioni base del monitor, come luminosità,contrasto, immagine o livello del nero, è necessario ripetere la calibrazione peradeguare la riproduzione dei colori del monitor. Se la corretta riproduzione deicolori riveste grande importanza, si consiglia di ripetere la calibrazione ognivolta che si cambia una delle impostazioni base, o comunque una volta ognidue settimane. La calibrazione deve essere sempre ripetuta quando sisostituisce il monitor o il framebuffer.
I programmi applicativi possono accedere alla libreria KCMS direttamenteattraverso la API KCMS. Se si dispone del Software Developer’s Kit (SDK), sipotrà consultare il manuale KCMS Application Developer’s Guide per ottenereinformazioni dettagliate sulla API KCMS.
Profili calibrati e visuali
Durante la calibrazione del monitor, Calibratore produce un profilo calibrato perogni visuale del frame buffer. Nella visualizzazione delle immagini è peròpossibile che uno stesso colore appaia in modo diverso su due diversidispositivi. Questo può essere dovuto a due condizioni: la deriva del colore el’uso di visuali X.
La calibrazione corregge gli effetti della deriva del colore. La tabella dei valorigamma (LUT) hardware del frame buffer corregge invece le visuali X. Unavisuale è una struttura di dati che descrive il formato di visualizzazionesupportato da un dispositivo, e che specifica le caratteristiche divisualizzazione per ogni pixel della finestra. In altre parole, la visuale di una
Personalizzazione dell’ambiente di lavoro 167
10
finestra istruisce la LUT gamma hardware del dispositivo su come interpretareil valore dei pixel della finestra. Quando la visuale passa attraverso la LUT,essa subisce la sua correzione.
Se il software KCMS esegue la calibrazione di una visuale X corretta, il colorerisultante non appare nello stesso modo su due dispositivi diversi, perché lavisuale riceve due correzioni. Il software KCMS determina perciò se la visualeX è già stata corretta dalla LUT gamma hardware, per assicurare che i coloriappaiano nello stesso modo. Per maggiori informazioni sulle visuali X e sulleLUT gamma hardware, vedere le pagine man xgetvisualinfo(3) exsolarisgetvisualgamma(3) .
Il profilo calibrato che descrive le caratteristiche del monitor viene copiatonella directory /etc/openwin/devdata/profiles . I profili nominali di solalettura si trovano in /usr/openwin/etc/devdata/profiles .
L’utility Calibratore esegue una copia del profilo selezionato (vedere “Comeselezionare un monitor” a pagina 172) per ogni tipo di visuale a colorisupportata dal frame buffer. Le visuali GrayScale o StaticGray non vengonoconsiderate, in quanto non a colori. Se il frame buffer supporta sia la visualePseudoColor che quella TrueColor, Calibratore effettuerà due o più serie dimisurazioni.
Predisposizione dell’ambiente di visualizzazione
Una regolazione appropriata del monitor e una corretta disposizionedell’ambiente di lavoro permettono di creare buone condizioni divisualizzazione, in grado di ridurre l’affaticamento visivo. Prima di procederealla calibrazione del monitor è opportuno scegliere la disposizione idealedell’ambiente di lavoro ed effettuare le opportune regolazioni sul monitor.
Per maggiori informazioni sulle condizioni di visualizzazione ideali, vedere idocumenti disponibili on line in /usr/openwin/demo/kcms/docs :
• Reducing Eyestrain from Computer Monitors• Video Monitor Adjustments: “Black Level” and “Picture”
168 Guida avanzata a Solaris — dicembre 1995
10
Requisiti per l’ambiente di lavoro
Con il monitor spento, disporre l’ambiente di lavoro in modo da:
• Eliminare i riflessi• Regolare la luce ambiente• Creare condizioni ambientali adeguate• Stabilire un’adeguata distanza visiva
Nota – Per eseguire queste regolazioni è sufficiente spegnere il monitor, senzaspegnere l’intero sistema.
Eliminazione dei riflessiLo schermo è dotato di una superficie in vetro che riflette verso l’utente la lucegenerata alle sue spalle. I riflessi possono cambiare la percezione delleimmagini visualizzate. Quanto più piatta è la superficie del monitor, tantominore è la probabilità che essa generi riflessi; una superficie molto curva“raccoglie” i riflessi da un’angolazione più ampia alle spalle dell’utente.
Per determinare se lo schermo produce riflessi indesiderati, sedersi nellanormale posizione di lavoro ed esaminare la superficie di vetro dello schermoa monitor spento. Cercare di disporre il monitor in modo che lo schermo nonsubisca forti riflessi. Se non è possibile modificare la disposizione dei mobili,spostare o schermare la fonte luminosa in modo da eliminare i riflessi sulloschermo.
Alcuni monitor sono dotati di uno speciale rivestimento o vengono prodotticon un trattamento antiriflesso. In genere questi schermi, a monitor spento,hanno un colore particolarmente scuro. È anche possibile applicare unoschermo antiriflesso esterno; alcuni di questi schermi, tuttavia, tendono afiltrare troppo la luminosità e a ridurre eccessivamente l’intensità del bianco.
Regolazione della luce ambienteOltre alle sorgenti luminose, lo schermo può riflettere anche altri oggetti, comela silhouette dell’utente. Per eliminare i riflessi degli oggetti occorre diminuirel’intensità della luce nell’ambiente. In genere questo tipo di riflessi è provocatoda una luce fluorescente proveniente dall’alto, spesso troppo forte. Perrisolvere il problema si può usare una sorgente luminosa diversa (lampade,ecc.).
Personalizzazione dell’ambiente di lavoro 169
10
Condizioni esterne appropriateLe condizioni di visualizzazione non sono ideali quando la luce ambiente haun’intensità superiore a quella delle aree più luminose del monitor. Per definirequesta situazione si ricorre al termine tecnico surround, che indica l’areapercepita dalla visione periferica quando si guarda lo schermo. Oltre adisturbare la visione periferica, un surround molto luminoso aumenta anche illivello della luce ambiente. Per ottenere condizioni ottimali, il surround deveessere più scuro delle aree più luminose dello schermo.
Mentre si lavora al computer è buona norma avere un riferimento visivo sulmondo esterno — ad esempio una finestra. Nella situazione ideale, la finestradovrebbe essere abbastanza lontana dalla postazione di lavoro per non influiresulla visione periferica del’utente, e non dovrebbe trovarsi alle spalledell’utente, per evitare che la luce si rifletta sullo schermo.
Distanza visiva correttaSe guardando lo schermo si riescono a identificare i singoli pixel, è probabileche il monitor sia troppo vicino. Le capacità visive, e in particolare la lettura, sibasano sul riconoscimento delle forme, non dei punti. Guardando la lettera“V”, ad esempio, si dovrebbero percepire due linee rette che si intersecano adangolo, non due elementi verticali gradinati o una serie di punti.
Per ridurre al minimo l’affaticamento visivo, si dovrebbe mantenere unadistanza dal monitor che non consenta di riconoscere i singoli pixel. Di normasi consiglia la distanza di un braccio: allungando le braccia davanti a sé dallanormale posizione di lavoro, la punta delle dita dovrebbe toccare la superficiedello schermo. Questa distanza evita l’affaticamento visivo dovuto alla messa afuoco prolungata di oggetti vicini.
Se, mantenendo una distanza visiva appropriata, non si riescono a distinguerei caratteri sullo schermo, si può provare a utilizzare un font più grande.
Regolazione del monitor
Dopo avere creato le corrette condizioni ambientali, accendere il monitor elasciarlo scaldare per almeno un’ora prima di regolare la luminosità e ilcontrasto.
170 Guida avanzata a Solaris — dicembre 1995
10
Il controllo del contrasto, indicato dal simbolo qui a lato, regola la luminositàche viene riprodotta con un segnale di ingresso completamente bianco. Unavolta impostata correttamente a luminosità, il contrasto permette di ottimizzareil comfort visivo.
Il controllo della luminosità, indicato dal simbolo qui a lato, deve essereregolato in modo tale che le aree nere delle immagini appaiano in coloredecisamente nero. La regolazione inappropriata della luminosità è la causa piùfrequente di scarsa qualità della riproduzione visiva sui monitor e suitelevisori.
La regolazione di un monitor si può considerare corretta quando sonosoddisfatte le seguenti condizioni:
• Un segnale di ingresso nero produce un’immagine decisamente nera; questopermette di ottimizzare il contrasto.
• Un segnale di ingresso bianco produce l’intensità luminosa desiderata.
▼ Come regolare il monitor
Per regolare correttamente il monitor, procedere come segue.
1. Impostare al minimo il controllo del contrasto per ottenere un’immaginenera.L’impostazione del contrasto al valore minimo dovrebbe oscurarecompletamente il contenuto dello schermo. Se questo non accade,visualizzare un’immagine nera (ad esempio un salvaschermo).
2. Regolare correttamente il livello di luminosità.Ruotare il controllo della luminosità fino al punto di equilibrio. Il valore diequilibrio deve essere sufficientemente basso da non illuminare le aree nere,e deve rappresentare l’ultimo livello di regolazione prima che questeappaiano grigie.
3. Regolare il contrasto.Una volta impostato correttamente il livello del nero, è possibile regolare ilcontrasto in modo che un segnale bianco produca un livello di luminositàappropriato. Non esiste una regolazione ottimale del contrasto;l’impostazione ideale dipende dalle preferenze dell’utente.
0
Personalizzazione dell’ambiente di lavoro 171
10
Evitare di impostare una luminosità eccessiva. Una luminosità troppointensa può aumentare la sensibilità agli sfarfallii, ridurre i contrasti delleimmagini e sfuocare il fascio di elettroni del tubo catodico, riducendo ladefinizione delle immagini.
Nota – In genere è necessario intervenire più volte sui controlli del contrasto edella luminosità per ottenere una riproduzione ideale sia del nero che delbianco delle immagini.
Collegamento dello strumento di calibrazione
Dopo avere stabilito le condizioni di visualizzazione ottimali, collegare allaworkstation lo speciale strumento di calibrazione per il monitor.
Nota – L’uso dell’apparecchio per la calibrazione del monitor non èindispensabile, ma è fortemente consigliato. Se non si dispone di questostrumento, passare alla sezione “Uso dell’utility Calibratore”.
▼ Come collegare lo strumento di calibrazione
♦ Collegare lo strumento alla porta seriale A (1) o B (2) della workstation.
x86 – Collegare lo strumento alla porta 1. Se la workstation non riconosce ildispositivo, provare a spegnere e a riaccendere il sistema.
Il sensore dello strumento aderisce allo schermo del monitor tramite unaventosa. Per informazioni su quando utilizzare l’apparecchio di calibrazione,vedere il Punto 4 a pagina 175.
Uso dell’utility Calibratore
Dopo avere creato le condizioni di visualizzazione ottimali, collegato lostrumento e lasciato riscaldare il monitor per almeno un’ora, si è pronti pereseguire l’utility Calibratore.
172 Guida avanzata a Solaris — dicembre 1995
10
Avviare Calibratore digitando kcms_calibrate in una finestra di comando.Il programma kcms_calibrate può essere eseguito con Solaris 2.4 o 2.5 erichiede un frame buffer a colori o un monitor a colori. Calibratore impiegacirca un minuto per calibrare le visuali PseudoColor, e un altro minuto per levisuali TrueColor. Se il framebuffer supporta entrambi i tipi di visuale,occorreranno almeno due minuti.
▼ Come avviare l’utility Calibratore
♦ Digitare kcms_calibrate .Verrà visualizzata la finestra di Configurazione mostrata nella Figura 10-1.
Figura 10-1 La finestra di Configurazione di Calibratore
▼ Come selezionare un monitor
Prima di premere il pulsante Calibrazione... è necessario scegliere un monitor.
Personalizzazione dell’ambiente di lavoro 173
10
1. Fare clic su Monitor.Verrà visualizzato un elenco dei profili di monitor disponibili per l’ambienteutilizzato, come si può vedere nella Figura 10-1.
2. Selezionare un tipo di monitor.Se non si conosce il tipo di monitor collegato al sistema, si possono ottenereinformazioni generali sui dispositivi facendo clic sul pulsante Altro... Leinformazioni vengono visualizzate in una finestra separata. Qui di seguito èfornito un esempio del tipo di informazioni visualizzate selezionando ilprofilo Sony 16” e premendo il pulsante Altro...:
• Colore = RGB• Produttore = Sony• Modello = 16”• Punto bianco = 0.964294 1.000000 0.825104, premere OK per abbandonare
la finestra
Anche la Tabella 10-2 può essere d’aiuto nella scelta del monitor. Il numerodi parte Sun, indicato sull’etichetta che riporta le specifiche del monitor,permetterà di individuare il dispositivo e di ottenere le informazioninecessarie per la scelta dell’opzione corretta.
Tabella 10-2 Informazioni sui profili dei monitor
N. di parte Sun Descrizione Produttore Descrizione del profilo
365-1130-01 P3 16” Color Sony Monitor Sony 13/16/19”
365-1112-01 P3 19” Color Sony Monitor Sony 13/16/19”
365-1159-01 P3 16” Color Sony Monitor Sony 13/16/19”
365-1160-01 P3 19” Color Sony Monitor Sony 13/16/19”
365-1147-01 P3 16” Color SH (SouthernHemisphere)
Sony Monitor Sony 13/16/19”
365-1148-01 P3 19” Color SH Sony Monitor Sony 13/16/19”
365-1288-01 P3 19” Color Logoless Sony Monitor Sony 13/16/19”
365-1289-01 P3 16” Color Logoless Sony Monitor Sony 13, 16 e 19”
365-1153-01 Skol 19” P3 MPR2 Sony N/D
365-1151-02 Rosebud 17” Mid Range (MR)Color
Sony N/D
365-1166-02 Rosebud 17” MR Color Logoless Sony N/D
174 Guida avanzata a Solaris — dicembre 1995
10
▼ Come calibrare un monitor
1. Fare clic su Calibrazione...Verrà aperta una finestra separata che consentirà di scegliere un dispositivo,come mostrato nella Figura 10-2.
Figura 10-2 Finestra dei dispositivi di Calibratore
2. Scegliere un dispositivo.Se si dispone di uno strumento hardware associato a uno dei dispositivielencati, scegliere quel dispositivo.
Se non si dispone dello strumento di calibrazione, scegliereXSolarisVisualGamma. Il profilo calibrato è basato sui valori gammamemorizzati nella LUT per lo specifico frame buffer in uso.
365-1164-02 Rosebud 17” MR SH Color Sony N/D
365-1165-02 Rosebud 17” MPR2 MR Sony N/D
365-1068-01 21” Color Toshiba N/A
365-1286-01 Tulip 15” FS Color Nokia Monitor Sony 15”
365-1167-01 Corona P4 20” Color Sony Monitor Sony 20”
365-1313-01 Corona P4 20” Color Logoless Sony Monitor Sony 20”
365-1317-01 Corona P4 20” Color SH Sony Monitor Sony 20”
365-1316-01 Jasmine 17” N1 Color Sony Monitor Sony 17”
Tabella 10-2 Informazioni sui profili dei monitor (Continua)
N. di parte Sun Descrizione Produttore Descrizione del profilo
Personalizzazione dell’ambiente di lavoro 175
10
3. Fare clic su Carica.Se si utilizza uno strumento di calibrazione, verrà aperta una finestraseparata come quella mostrata nella Figura 10-3. Questa finestra, dal titolo“Calibratore: Profilo”, presenta al centro un cerchio grigio di tonalità media.
Figura 10-3 La finestra Profilo dell’utility Calibratore (KCMS non è completamentetradotto in italiano)
La parte centrale dello schermo è quella che fornisce le letture più precise. Siconsiglia quindi di non spostare la finestra. Inoltre, poiché la calibrazionerichiede alcuni minuti, accertarsi che nessuna finestra estranea (riquadri didialogo pop-up, ecc.) oscuri la finestra di calibrazione fino al termine delprocesso.
Se non si utilizza uno strumento di calibrazione, verrà visualizzata lafinestra Profilo dell’utility Calibratore. In questo caso non occorreràpreoccuparsi di spostare la finestra o i riquadri di dialogo pop-up. Passare alPunto 5.
4. Se si utilizza uno strumento di calibrazione, applicare il sensore al centrodel cerchio.
176 Guida avanzata a Solaris — dicembre 1995
10
5. Fare clic sul pulsante Avvio...Dopo alcuni secondi, il cerchio diventerà azzurro e inizierà il processo dicalibrazione.
Con alcuni frame buffer, il ciclo di misurazione (per rosso, verde e blu) vieneripetuto una seconda volta. Se il frame buffer supporta sia la visualePseudoColor che quella TrueColor, verranno eseguite due serie dimisurazioni. Se il frame buffer implementa solo una di queste due visuali,verrà eseguita una singola serie di misurazioni.
Se al centro del cerchio colorato dovesse comparire una finestra pop-up,sarà necessario riavviare la calibrazione. In questo caso, infatti, i dati dicalibrazione verranno contaminati e produrranno risultati imprecisi. Perinformazioni sull’interruzione della calibrazione, vedere “Comeinterrompere la calibrazione”.
Quando il tool avrà completato la lettura delle misurazioni, i profili delmonitor verranno aggiornati e comparirà un messaggio per informare che lacalibrazione è terminata.
6. Rimuovere il sensore dello strumento di calibrazione dallo schermo.Al termine della calibrazione, rimuovere lo strumento dallo schermo eriporlo in un luogo pulito.
▼ Come interrompere la calibrazione
♦ Fare clic su Stop.Verrà aperta una finestra che consentirà di continuare la calibrazione ouscire dal programma. Se si è verificato qualche problema durante la letturacon lo strumento, uscire e riavviare il processo.
La calibrazione continua fino alla misurazione completa del colore corrente.Ad esempio, facendo clic su Stop mentre l’indicatore di misurazione delrosso si trova su 24, la calibrazione continuerà fino al termine dellamisurazione del rosso (cioè quando l’indicatore si troverà su 255).
▼ Come uscire da Calibratore
♦ Fare clic su Esci.La finestra di calibrazione verrà chiusa e Calibratore verrà terminato.
Personalizzazione dell’ambiente di lavoro 177
10
Messaggi di errore
Qui di seguito sono descritti i messaggi di errore che possono compariredurante l’esecuzione di Calibratore.
Spazio di swap
I messaggi relativi allo spazio di swap indicano un errore nell’allocazione dellamemoria. È possibile che vi siano troppe applicazioni in esecuzione, o che sianecessario uno spazio di swap più grande. Se compaiono i messaggi di erroreseguenti, provare a chiudere alcune applicazioni e a riavviare Calibratore:
• Memoria di swap insufficiente• Impossibile inizializzare la struttura di dati della visuale• Impossibile inizializzare la struttura dei dati di calibrazione
Installazione dei pacchetti
I messaggi relativi all’installazione dei package indicano un errorenell’installazione del software KCMS. Se compaiono i messaggi seguenti,occorrerà reinstallare i package KCMS:
• Impossibile caricare il profilo• Impossibile aggiornare i profili del dispositivo• Impossibile creare i profili della visuale• Impossibile configurare i file dei profili in /etc/openwin
Collegamento dello strumento di calibrazione
I messaggi riguardanti il collegamento dello strumento di calibrazioneindicano un problema di comunicazione tra l’utility Calibratore el’apparecchio. È possibile che lo strumento non sia collegato correttamente allaporta o che sia collegato alla porta sbagliata.
x86 – Lo strumento di calibrazione deve essere collegato alla porta 1.
178 Guida avanzata a Solaris — dicembre 1995
10
Se compaiono i messaggi di errore seguenti, controllare che lo strumento dicalibrazione sia innestato correttamente nella porta seriale A o B dellaworkstation:
• L’utility Calibratore non funziona correttamente• Nessuna risposta dallo strumento di calibrazione• Impossibile leggere il numero di versione dello strumento• Impossibile determinare il valore di sensibilità dello strumento• Impossibile impostare il valore di sensibilità dello strumento• Impossibile determinare il tempo di integrazione dello strumento• Impossibile determinare il valore dei campi di refresh dello strumento• Impossibile impostare il valore medio sullo strumento• Il modulo non è riuscito a misurare correttamente i dati di luminanza
Dati OWconfig
I messaggi di errore relativi a OWconfig indicano che i dati del databaseOWconfig non sono corretti. Controllare il contenuto del file OWconfig .Una volta corretto l’errore, uscire e riavviare l’utility Calibratore.
Gestore del dispositivo
Se un messaggio di errore indica la mancanza di un gestore per il dispositivoselezionato, significa che Calibratore non può caricare il modulo dicalibrazione. Per correggere il problema occorrerà installare il gestore deldispositivo nella directory /usr/openwin/etc/devhandlers , oppureselezionare un altro dispositivo.
Inizializzazione del modulo
Questo messaggio di errore indica che un modulo non è riuscito a completarela procedura di inizializzazione. Sarà necessario uscire dal programma o usareun altro oggetto condiviso.
Personalizzazione dell’ambiente di lavoro 179
10
Misurazione incompleta dei moduli
Il messaggio di errore indica che il programma non ha completatocorrettamente la misurazione della luminanza del monitor. In genere, questoproblema si verifica quando si preme il pulsante Stop durante la misurazione.Se compare questo messaggio, uscire da Calibratore, oppure chiudere ilriquadro di dialogo e riavviare la calibrazione.
Profilo non valido
Il messaggio di errore che segnala un profilo non valido indica che non èpossibile calibrare il profilo selezionato. In questo caso è necessario selezionareun profilo valido.
Allocazione di posizioni riservate della mappa dei colori
Questo messaggio di errore indica che Calibratore non è riuscito ad allocare leinformazioni richieste. Occorre accertarsi che il server di finestre utilizzi unavisuale dinamica disponibile, non sovrapposta ai colori specificati daCalibratore. Sarà necessario uscire da Calibratore o riavviare il processo dicalibrazione.
180 Guida avanzata a Solaris — dicembre 1995
10
181
Migrazione a OpenWindows 3.3o a versioni successive A
In alcuni casi è possibile che l’interfaccia utente installata nel sistema non siaaggiornata per Solaris, che utilizza OpenWindows come interfaccia utente didefault. Ad esempio, è possibile che il sistema utilizzi l’ambiente SunView ouna versione di OpenWindows anteriore alla 3.3. In questi casi può essereopportuno passare a OpenWindows versione 3.3 o successive. Questaappendice descrive le procedure da seguire.
Nota – Il software SunView non è più supportato in OpenWindows versione3.3 o successive. A differenza delle precedenti versioni di OpenWindows,installando la versione 3.3 o quelle successive l’interfaccia utente SunView nonsarà più disponibile.
182 Guida avanzata a Solaris — dicembre 1995
A
SPARC Migrazione dall’ambiente SunViewI paragrafi seguenti contengono informazioni e suggerimenti diretti a facilitarela migrazione a OpenWindows dall’ambiente SunView.
SPARC I file .defaults e .Xdefaults
Per personalizzare l’ambiente OpenWindows con le stesse opzioni utilizzate inSunView, è possibile convertire il file .defaults (usato da SunView) in un file.Xdefaults (usato da OpenWindows). Se la propria directory home contieneil file .defaults , eseguire il programma convert_to_Xdefaults(1) nelladirectory home come segue:
Questo comando crea nella directory home il file .Xdefaults , utilizzato perpersonalizzare l’ambiente OpenWindows all’avvio.
Migrazione da versioni di OpenWindows anteriori alla 3.3Per migrare da una versione di OpenWindows anteriore alla 3.3 alla versione3.3 o a una successiva, leggere attentamente i paragrafi seguenti. In particolare,molte delle informazioni contenute interessano gli utenti di OpenWindowsversione 2.
La variabile d’ambiente OPENWINHOME
Se attualmente si utilizza una versione di OpenWindows anteriore alla 3.3, èpossibile che il sistema sia stato configurato in modo da utilizzare la variabiled’ambiente OPENWINHOME. Con la nuova versione non occorre più impostarequesta variabile d’ambiente, né manualmente né in un file di avvio.
In questa versione, infatti, il comando openwin imposta automaticamente lavariabile d’ambiente OPENWINHOME su /usr/openwin .
Se la variabile d’ambiente OPENWINHOME è impostata nel file .profile o.cshrc nella directory home, commentare la riga o cancellarla completamenteprima di avviare OpenWindows 3.3 o una versione successiva.
$ cd$ /usr/openwin/bin/convert_to_Xdefaults .defaults
Migrazione a OpenWindows 3.3 o a versioni successive 183
A
Per cancellare o commentare la variabile d’ambiente OPENWINHOME nel file.profile o .cshrc , procedere come segue:
1. Aprire il file .profile o .cshrc con un editor di testo, ad esempio vi .
2. Digitare un cancelletto (#) davanti alla variabile, come illustratonell’esempio seguente, o cancellare l’intera riga.Per modificare il file .profile , seguire l’esempio a; per modificare il file.cshrc , seguire l’esempio b .
a. Nel file .profile :
b. Nel file .cshrc :
3. Salvare il file e uscire dall’editor.
Il file .xinitrc
Questo paragrafo contiene alcune considerazioni importanti relative ai file.xinitrc e /usr/openwin/lib/Xinitrc :
1. In OpenWindows versione 2, lo script openwin creava automaticamenteuna copia di /usr/openwin/lib/Xinitrc in un file chiamato .xinitrc ,nella directory home. Questa copia non viene più eseguita nell’ambienteOpenWindows versione 3.3. Questa differenza è importante in quanto:
a. Lo script di avvio openwin utilizza il file di avvio di default,/usr/openwin/lib/Xinitrc , a meno che non trovi un file di nome.xinitrc nella directory home; in questo caso il file .xinitrc prevalesu quello di default.
b. È necessario utilizzare il file di default /usr/openwin/lib/Xinitrcfornito insieme a OpenWindows 3.3 o alle versioni successive. (Se sidesidera conservare speciali modifiche apportate al file .xinitrc dellaversione 2, seguire le istruzioni fornite in questo capitolo.)
2. Se si utilizzano più schermi, non è necessario eseguire più processi olwm .
#OPENWINHOME=/usr/openwin
#setenv OPENWINHOME /usr/openwin
184 Guida avanzata a Solaris — dicembre 1995
A
Uso del file di avvio corretto
Se attualmente si utilizza una versione di OpenWindows anteriore alla 3.3, èimportante determinare lo stato del file .xinitrc , collocato nella directoryhome. Il file .xinitrc è un file di avvio di OpenWindows che può contenereopzioni definite dall’utente.
Per determinare lo stato del file .xinitrc , digitare i comandi seguenti:
A seconda dell’output di questo comando, procedere in uno dei modi seguenti:
• Se non è presente un file .xinitrc (se cioè l’elenco ottenuto con ilcomando ls -a non contiene il nome di questo file) non fare nulla. Se lapropria directory home non contiene il file .xinitrc , OpenWindowsutilizza il file di avvio di default del sistema.
• Se il file .xinitrc è presente (se cioè l’elenco ottenuto con il comandols -a contiene il nome del file) ma non è mai stato modificato, o comunquenon si desidera conservare le modifiche apportate, procedere come descrittoal punto 1 in “Operazioni sui file di avvio”.
• Se il file .xinitrc è presente (se cioè l’elenco ottenuto con il comandols -a contiene il nome del file), è stato modificato e si desidera conservarele modifiche apportate, procedere come descritto al punto 2 in “Operazionisui file di avvio”.
Operazioni sui file di avvio
1. Per cancellare il file .xinitrc dalla propria directory home, digitare ilcomando seguente:
$ cd$ ls -a .xinitrc
$ rm .xinitrc
Migrazione a OpenWindows 3.3 o a versioni successive 185
A
2. Per conservare le modifiche apportate a.xinitrc , procedere come segue:
a. Rinominare .xinitrc in .xinitrc.save :
b. Copiare /usr/openwin/lib/Xinitrc in .xinitrc nella propriadirectory home:
c. Aggiungere le righe di .xinitrc.save che si desidera conservarein.xinitrc .
Attenzione – Durante la modifica del file .xinitrc , non aggiungere unaversione secondaria di olwm , non aggiungere svenv e non cancellare la rigache contiene /usr/openwin/lib/openwin-sys .
Caratteristiche dell’area di lavoro
Nelle precedenti versioni di OpenWindows (anteriori alla 3.3), le modificheapportate dalla finestra “Caratteristiche area di lavoro” venivano salvate nelfile .Xdefaults , collocato nella directory home. Nella versione 3.3 esuccessive, le modifiche apportate dalla finestra “Caratteristiche area dilavoro” vengono memorizzate nel file .OWdefaults , anch’esso collocato nelladirectory home dell’utente. Il file .Xdefaults può ancora essere presente, maviene data la precedenza alle opzioni personalizzate impostate in.OWdefaults .
Il file .Xdefaults dovrebbe essere utilizzato solo per personalizzare gli aspettiche non possono essere modificati dalla finestra “Caratteristiche area dilavoro”. Ad esempio, si potrà aprire il file .Xdefaults con un editor, adesempio vi , per personalizzare le applicazioni non-OpenWindows o peraggiungere le macro del preprocessore C. Le opzioni selezionate dalla finestra“Caratteristiche area di lavoro” non influiranno su queste impostazionipersonalizzate.
$ mv .xinitrc .xinitrc.save
$ cp /usr/openwin/lib/Xinitrc $HOME/.xinitrc
!
186 Guida avanzata a Solaris — dicembre 1995
A
Se la directory home contiene un file .Xdefaults e non si desidera modificarele impostazioni correnti, non è necessario cancellarlo. Prevarranno in ogni casole impostazioni definite nel file .OWdefaults .
Personalizzazione del menu Area di lavoro
In OpenWindows 3.3 e nelle versioni successive, l’utente ha la possibilità dipersonalizzare il sottomenu Programmi del menu “Area di lavoro” usando lafinestra “Caratteristiche area di lavoro”. Nelle versioni precedenti diOpenWindows, questa personalizzazione richiedeva la modifica del file.openwin-menu nella directory home.
Nota – Se la directory home non contiene un file .openwin-menu non ènecessario eseguire la procedura qui descritta. È possibile personalizzaredirettamente il menu “Area di lavoro” usando la finestra “Caratteristiche areadi lavoro”.
Se la directory home contiene il file .openwin-menu , per personalizzare ilmenu “Area di lavoro” dalla finestra “Caratteristiche area di lavoro” ènecessario eseguire la procedura seguente.
Se il file .openwin-menu contiene la riga seguente:
cancellarla e sostituirla con la riga seguente:
Se il file .openwin-menu non contiene questa riga, aggiungere semplicementela riga sostitutiva indicata.
La nuova riga inserita aggiunge il menu Programmi di default al menu “Areadi lavoro”. In questo modo il menu Programmi potrà essere personalizzatoutilizzando la finestra “Caratteristiche area di lavoro”.
Se il menu “Area di lavoro” dovesse contenere voci ridondanti, sarà sufficientecancellare le righe ridondanti dal file .openwin-menu .
“Programmi”MENU /usr/openwin/lib/openwin-menu-programs
“Programmi”INCLUDE openwin-menu-programs
187
Transizione a Solaris 2.5 B
Questa appendice contiene una breve introduzione ai cambiamenti checomportano, per gli utenti e gli amministratori di sistema, la transizione daSunOS 4.x per sistemi SPARC e quella da Solaris 2.1 per sistemi x86.
SPARC – L’opzione di aggiornamento a Solaris 2.5 è disponibile se almeno undisco del sistema possiede un file system root con Solaris 2.1 o una versionesuccessiva. L’opzione di aggiornamento non è disponibile per i sistemi cheutilizzano SunOS 4.1.
x86 – L’opzione di aggiornamento non è disponibile da Solaris 2.1 a Solaris 2.5.
Per informazioni più dettagliate sulla transizione da SunOS 4.x a Solaris 2.5 esulle differenze tra i due ambienti software, vedere i manuali Solaris 1.x toSolaris 2.x Transition Guide e Source Compatibility Guide.
Per informazioni generali sulle differenze tra Solaris 2.5 e la versioneprecedente, vedere il manuale Solaris 1.x to Solaris 2.x Transition Guide.
188 Guida avanzata a Solaris — dicembre 1995
B
SPARC Transizione da SunOS 4.xL’ambiente Solaris 2.5 include il software di sistema SunOS 5.x. Le sezioniseguenti presentano una breve descrizione delle differenze tra SunOS 4.x eSunOS 5.x per gli utenti e gli amministratori di sistema.
SPARC Differenze per gli utenti di SunOS 4.x
Alcune delle differenze più evidenti tra SunOS 4.x e SunOS 5.x sono leseguenti:
• Molti comandi UNIX sono cambiati. Per informazioni dettagliate, vedere ilmanuale Solaris 1.x to Solaris 2.x Transition Guide.
• Il sottosistema di stampa è stato modificato. Ad esempio:• lp(1) sostituisce lpr .• lpstat(1) sostituisce lpq .• cancel(1) sostituisce lprm .• troff(1) richiede il nome di una stampante.
• I programmi di posta elettronica sono stati modificati. Le caselle postali e iraccoglitori di SunOS 4.x sono pienamente compatibili con i tre programmidi mail di Solaris 2.3:• mailtool , la Posta Elettronica Multimediale dell’ambiente DeskSet• mail(1) , un’utility dalla riga di comando• mailx(1) , un’utility dalla riga di comando
• È cambiata la posizione o il nome di alcuni file di sistema. Ad esempio:• /etc/fstab è stato sostituito da /etc/vfstab .• /var/spool/mail è stato sostituito da /var/mail .• /vmunix è stato sostituito da /platform/*/kernel/unix .
Per maggiori informazioni su questi argomenti, vedere il manuale Solaris 1.x toSolaris 2.x Transition Guide.
Transizione a Solaris 2.5 189
B
SPARC Differenze per gli amministratori di sistema di SunOS 4.x
Qui di seguito sono descritte alcune delle differenze dell’ambiente SunOS 5.xrispetto a SunOS 4.x:
• Solaris 2.5 può essere installato su sistemi SPARC solo da un CD-ROMlocale o remoto o da una rete.
• Il software di Solaris 2.5 viene distribuito in gruppi software, formati dapackage e cluster, per facilitare l’installazione. Per ottenere le informazionipiù aggiornate sui package di Solaris 2.5, usare pkginfo(1) o swmtool .
• Sono cambiate le convenzioni per la denominazione dei dispositivi; i dischi,ad esempio, vengono denominati nella forma seguente:
Figura B-1 Convenzioni per la denominazione dei dispositivi
Si noti che alcuni dischi (xy , xd ) non comprendono un componente target; inquesti casi, il nome del dispositivo avrà la forma c0d0s0 .
• È stata modificata la struttura delle directory dei file system. Ad esempio:• Il kernel, chiamato unix , e i relativi moduli sono memorizzati nella
directory /kernel .• È stata aggiunta la directory /opt . Viene creata durante l’installazione per
la memorizzazione o l’attivazione di applicazioni software opzionali.• La directory /devices è una gerarchia di file di dispositivi, con
collegamenti simbolici nella directory /dev per assicurare la compatibilitàcon le convenzioni di denominazione dei dispositivi di SunOS 4.x.
• La directory /usr è stata riorganizzata.• Il database /etc/termcap è stato sostituito da terminfo .• Il file /etc/fstab è stato sostituito da /etc/vfstab .• La directory /var/spool/mail è stata sostituita da /var/mail .• La directory /etc/printcap è stata sostituita da /etc/lp .• Il package software opzionale del servizio Remote File Sharing (RFS) è
stato abbandonato a partire da Solaris 2.2.
controller
c0t0d0s0
target disco slice
190 Guida avanzata a Solaris — dicembre 1995
B
• Il kernel di SunOS 5.x è dinamico; questo significa che l’utente non deve piùricreare o modificare il file di configurazione del kernel.
• Il kernel può caricare automaticamente i driver necessari per i nuovidispositivi aggiunti al sistema.
• Le procedure di avvio e shutdown di Solaris 2.5 sono state modificate:• Il comando init(1M) utilizza script differenti per ogni livello di
esecuzione.• Il comando shutdown non supporta nessuna delle opzioni disponibili nei
sistemi SunOS 4.1.• I comandi fastboot(1B) e fasthalt(1b) sono disponibili solo
utilizzando il SunOS/BSD Source Compatibility Package.
• Molti comandi sono cambiati, e spesso anche gli output associati a questicomandi. Questo potrà rendere necessario riscrivere alcuni script. Permaggiori informazioni, vedere il manuale Solaris 1.x to Solaris 2.x TransitionGuide.
• Il servizio di denominazione NIS (Network Information Service) è statosostituito da NIS+; tuttavia, il servizio NIS+ utilizza i dati del NIS, rendendopiù agevole la transizione.
• Administration Tool (admintool ), l’applicazione Motif perl’amministrazione del sistema locale, offre funzioni per la gestione deglihost, dei database del sistema, delle stampanti, delle porte seriali, dei profiliutente e del software.
• I comandi per la gestione della stampa sono cambiati. Per informazionidettagliate, vedere il manuale Solaris 1.x to Solaris 2.x Transition Guide.
• Terminali e modem vengono controllati dalle funzionalità Service AccessFacility (SAF) e System Access Controller (SAC); Il file /etc/ttytab è statoabbandonato.
SPARC Compatibilità con SunOS 4.x per i sistemi SPARC
L’ambiente Solaris 2.5 comprende due package per facilitare la transizione e lamigrazione al software di sistema SunOS 5.x per sistemi SPARC:
• SunOS/BSD Source Compatibility Package• SunOS Binary Compatibility Package
Transizione a Solaris 2.5 191
B
Questi package vengono forniti come aiuto temporaneo alla transizione per iseguenti tipi di utenti:
• Sviluppatori che vogliano compilare il codice sorgente di applicazioniSunOS 4.x per eseguirle nell’ambiente Solaris 2.5.
• Utenti che vogliano eseguire applicazioni SunOS 4.x di cui non sia statoeffettuato il porting per ambienti SVID come Solaris 2.5.
SPARC Il package di compatibilità dei sorgenti SunOS/BSD
L’installazione di questo package software permette il supporto di alcunicomandi SunOS/BSD che non sono inclusi, o che sono stati modificati, nelsoftware di sistema SunOS 5.x. Usando il SunOS/BSD Source CompatibilityPackage, sarà possibile compilare ed eseguire nell’ambiente Solaris 2.5 il codicesorgente di applicazioni basate su SunOS 4.x.
Per informazioni specifiche, vedere i manuali Binary Compatibility Guide eSource Installation and Media Preparation Guide.
SPARC Il package di compatibilità binaria SunOS
Con il SunOS Binary Compatibility Package e l’OpenWindows BinaryCompatibility Package, l’ambiente Solaris 2.5 supporta OpenWindows ed altreapplicazioni eseguibili che siano collegate dinamicamente o staticamente escritte sotto SunOS 4.1.x1.
Per utilizzare questi package, le applicazioni scritte sotto SunOS 4.x nondevono:
• Eseguire trap direttamente nel kernel• Scrivere direttamente nei file di sistema• Usare le routine /dev/kmem o libkvm• Usare interfacce SunOS non pubblicate• Basarsi su driver non-SunOS
Per poter usare il SunOS Binary Compatibility Package, è necessario installareil SunOS/BSD Source Compatibility Package.
1. I riferimenti alla release o all’ambiente “SunOS 4.1.x” includono la release SunOS 4.1 e tutte le releasesuccessive: 4.1.1, 4.1.1 RevB, 4.1.2, 4.1.3 e 4.1.3c.
192 Guida avanzata a Solaris — dicembre 1995
B
x86 Transizione da Solaris 2.1 per x86La transizione da Solaris 2.1 all’ambiente Solaris 2.5 comporta alcunedifferenze sia per gli utenti che per gli amministratori di sistema. Ad esempio,le procedure di installazione seguono un ordine diverso, sono cambiati imetodi di formattazione dei dischi e i comandi di stampa.
x86 Differenze per gli utenti
La mappatura per le tastiere dei sistemi x86 è stata modificata. Per una mappacompleta dei tasti, vedere la Guida avanzata a Solaris.
x86 Differenze per gli amministratori di sistema
Vi sono alcune differenze nell’installazione di Solaris 2.5 su sistemi x86 in rete:
• kdmconfig viene chiamato da sysidconfig e sostituisce devconfigdurante l’installazione.
• Quando viene interrogato il server del database bootparams , se la mappaethernet e quella degli host sono impostate correttamente, l’installazioneprocede senza problemi. Se vi sono discrepanze, o se il sistema è stand-alone, comparirà una serie di videate in cui occorrerà definire la tastiera, ilmouse e l’unità video del sistema. Vedere anche kdmconfig(1M) .
Vi sono differenze nella formattazione dei dischi SCSI e IDE per sistemi x86.
• È ora disponibile l’utility format(1M) , con cui è possibile formattare,etichettare, analizzare e riparare i dischi SCSI. Questa utility è inclusainsieme ai comandi addbadsec(1M) , diskscan(1M) , fdisk(1M) efmthard(1M) disponibili in Solaris 2.1 per x86. Per formattare un disco IDEsi potrà usare l’utility DOS “format”, mentre per etichettare, analizzare eriparare un disco IDE su un sistema x86 si potrà usare l’utility format(1M)di Solaris.
È stato modificato il supporto delle stampanti PostScriptTM parallele su sistemix86:
• Il driver lp è stato modificato, perciò la configurazione di una stampantePostScript parallela per un sistema x86 è ora identica a quella di unastampante seriale. L’unica differenza riguarda il nome di dispositivo dellaporta.
Transizione a Solaris 2.5 193
B
• I seguenti file non fanno più parte di Solaris 2.5:• /etc/lp/fd/ppostio.fd• /etc/lp/fd/ppostior.fd• /usr/share/lib/terminfo/P/PPS• /usr/share/lib/terminfo/P/PPSR
• Al driver lp per x86 è stato aggiunto ioctls in postio .
x86 Tool di amministrazione per Solaris 2.5
In Solaris 2.5, l’amministrazione dei sistemi risulta più semplice grazie almiglioramento del software di sistema Solaris, dei protocolli di rete ONC e deitool di amministrazione. Le sezioni seguenti descrivono questi miglioramenti.
x86 Miglioramenti rispetto a Solaris 2.3
Rispetto a Solaris 2.3 sono state migliorate le seguenti funzioni diamministrazione:
• Le configurazioni della tastiera, del mouse e dell’unità video vengonoaggiornate con kdmconfig.
• Bootparams assegna i nomi alla tastiera, all’unità video e al mouse.• La sequenza di boot è diversa sui sistemi x86.
x86 Miglioramenti rispetto a Solaris 2.1
Rispetto a Solaris 2.1 sono state migliorate le seguenti funzioni diamministrazione:
• Administration Tool è stato migliorato per semplificare la configurazionedei terminali e dei modem.
• Automated Security Enhancement Tool (ASET) permette agli amministratoridi aumentare facilmente la sicurezza del sistema.
• Il kernel dinamico e i moduli caricabili semplificano:• La gestione del kernel per sistemi eterogenei• L’aggiunta on-line di nuovi dispositivi ai sistemi• L’aggiunta di driver di dispositivo senza bisogno di ricreare il kernel
• Il servizio di denominazione NIS+ crea sottodomini ed assegnacaratteristiche di sicurezza alle risorse di rete.
194 Guida avanzata a Solaris — dicembre 1995
B
195
Personalizzazione della tastiera C
Questa appendice contiene le istruzioni per rimappare la tastiera. Vengonodescritte le opzioni necessarie per rimappare alcuni tasti speciali e la proceduraper abilitare e disabilitare il tasto Compose.
Per informazioni su come rimappare i pulsanti del mouse (ad esempio perutenti mancini), consultare il Manuale utente di Solaris.
Disabilitazione/abilitazione del tasto Compose
x86 – Sui sistemi x86, la funzione del tasto Compose si ottiene premendoCtrl-Shift-F1.
Se il tasto Compose non viene utilizzato, è possibile disabilitarlo in modo darenderlo inattivo. Per prima cosa, identificare il codice del tasto per Multi_key:
Il sistema visualizza una riga simile alla seguente:
nn 0xff20 (Multi_key)
$ xmodmap -pk | grep Multi_key
196 Guida avanzata a Solaris — dicembre 1995
C
L’informazione importante è il codice a due cifre all’inizio della riga, quirappresentato con nn. Usando questo numero, creare la riga seguente nel file.xinitrc :
Per riabilitare il tasto Compose, commentare la riga precedente nel file.xinitrc e riavviare OpenWindows.
SPARC Rimappatura della tastiera per utenti manciniLo script di rimappatura descritto in questo paragrafo (riferito a tastiere Tipo 4e Tipo 5) rimappa la maggior parte dei tasti speciali posti a sinistra e a destradel corpo centrale della tastiera.
SPARC – Si noti che i paragrafi seguenti relativi alla rimappatura della tastieraper utenti mancini riguardano solo i sistemi SPARC.
SPARC Uso dello script di rimappatura
Per creare e utilizzare lo script di rimappatura, procedere come segue:
1. Creare un file di nome lefty.data usando un editor di testo.Il file può essere creato in qualsiasi directory. Tuttavia, il punto 4 deve essereeseguito nella stessa directory in cui è stato creato questo file.
2. Inserire lo script come illustrato nella Tabella C-1, “Lo script lefty.data”.Le righe che iniziano con un punto esclamativo sono commentate, perciònon eseguono alcuna operazione.
3. Salvare le modifiche e uscire dall’editor.
4. Al prompt, digitare:
Questa operazione deve essere eseguita nella directory che contiene il filedello script.
xmodmap -e ’keycode nn = NoSymbol’
$ xmodmap lefty.data
Personalizzazione della tastiera 197
C
5. Fare clic con il mouse nell’area di lavoro per avviare lo script.Al termine di questa procedura, i tasti saranno mappati per gli utentimancini.
Digitare lo script seguente nel file lefty.data , come descritto al Punto 1.
Tabella C-1 Lo script lefty.data
!! lefty.data!! Dati per xmodmap per la configurazione dei tasti funzione di sinistra e di destra per! utenti mancini su tastiere Sun type-4. Per usare questi dati, digitare il comando! seguente sostituendo <nomefile> con il nome del file (lefty-data).!! xmodmap <nomefile>!! Le righe seguenti si riferiscono alle assegnazioni dei codici riportate! successivamente.!! L2 (Ancora) viene scambiato con R1 (Pausa)! L3 (Proprietà) viene scambiato con R6 (KP_Multiply)! L4 (Annulla) viene scambiato con R4 (KP_Equal)! L5 (Davanti) viene scambiato con R9 (KP_9)! L6 (Copia) viene scambiato con R7 (KP_7)! L7 (Apri) viene scambiato con R12 (KP_6)! L8 (Incolla) viene scambiato con R10 (Sinistra)! L9 (Trova) viene scambiato con R15 (KP_3)! L10 (Taglia) viene scambiato con R13 (KP_1)!! R3 (Break) diventa L1 (Stop)! R2 (Print) diventa R10 (Sinistra)! R5 (KP_Divide) diventa R12 (Destra)!! Linefeed diventa Control-R!keycode 10 = R1 R1 Pausekeycode 28 = L2 L2 SunAgainkeycode 32 = R6 R6 KP_Multiplykeycode 54 = L3 L3 SunPropskeycode 33 = R4 R4 KP_Equalkeycode 52 = L4 L4 SunUndokeycode 56 = R9 R9 KP_9 Priorkeycode 77 = L5 L5 SunFrontkeycode 58 = R7 R7 KP_7 Home
198 Guida avanzata a Solaris — dicembre 1995
C
SPARC Ripristino della mappatura originale
Per riportare i tasti alle impostazioni originarie è possibile procedere in duemodi. Un primo metodo consiste nell’uscire da OpenWindows e riavviarlo. Ilsecondo metodo, certamente preferibile se le funzioni dei tasti devono esserecommutate periodicamente, consiste nel creare un secondo script da eseguireogni volta che si desidera tornare alla mappatura originaria.
Per creare questo secondo script, procedere come segue:
1. Creare un file di nome nolefty.data usando un editor di testo.Il file deve trovarsi nella stessa directory che contiene lo scriptlefty.data .
2. Inserire lo script come illustrato nella Tabella C-2, “Lo script nolefty.data”.Le righe precedute da un punto esclamativo sono commentate, perciò noneseguono alcuna operazione.
3. Salvare le modifiche e uscire dall’editor.
4. Al prompt, digitare:
keycode 75 = L6 L6 SunCopykeycode 79 = Right R12 KP_6keycode 100 = L7 L7 SunOpenkeycode 80 = Left R10 KP_4keycode 98 = L8 L8 SunPastekeycode 102 = R15 R15 KP_3 Nextkeycode 121 = L9 L9 SunFindkeycode 104 = R13 R13 KP_1 Endkeycode 119 = L10 L10 SunCutkeycode 30 = L1 L1 SunStopkeycode 29 = Left R10 KP_4keycode 53 = Right R12 KP_6keycode 118 = Control_Radd control = Control_R
$ xmodmap nolefty.data
Tabella C-1 Lo script lefty.data (Continua)
Personalizzazione della tastiera 199
C
Per attivare nolefty.data , digitare il comando precedente nella directoryche contiene lo script.
Tabella C-2 Lo script nolefty.data
!! nolefty.data!! Dati per xmodmap per ripristinare i tasti funzione di sinistra e di destra dopo la! rimappatura per utenti mancini di una tastiera Sun Tipo 4. Per usare questi dati,! digitare il comando seguente sostituendo <nomefile> con il nome di questo file.!! xmodmap <nomefile>!! Riassegna i valori standard ai tasti funzione di sinistra.!keycode 10 = L2 L2 SunAgainkeycode 32 = L3 L3 SunPropskeycode 33 = L4 L4 SunUndokeycode 56 = L5 L5 SunFrontkeycode 58 = L6 L6 SunCopykeycode 79 = L7 L7 SunOpenkeycode 80 = L8 L8 SunPastekeycode 102 = L9 L9 SunFindkeycode 104 = L10 L10 Sun Cut!! Riassegna i valori standard ai tasti funzione di destra.!keycode 28 = R1 R1 Pausekeycode 29 = R2 R2 Printkeycode 30 = R3 R3 Scroll_Lock Breakkeycode 52 = R4 R4 KP_Equalkeycode 53 = R5 R5 KP_Dividekeycode 54 = R6 R6 KP_Multiplykeycode 75 = R7 R7 KP_7 Homekeycode 77 = R9 R9 KP_9 Priorkeycode 98 = Left R10 KP_4keycode 100 = Right R12 KP_6keycode 119 = R13 R13 KP_1 Endkeycode 121 = R15 R15 KP_3 Next!! Riassegna la funzione originaria al tasto Linefeed e lo rimuove dalla mappa di controllo.!remove control = Control_R5keycode 118 = Linefeed
200 Guida avanzata a Solaris — dicembre 1995
C
x86 Rimappatura dei tasti funzione e del tasto ControlI tasti funzione dei sistemi x86 possono essere rimappati in modo da operarecome i tasti Aiuto, Taglia, Copia, Incolla, Annulla e Davanti di una tastieraSPARC. È anche possibile rimappare il tasto Control di destra come tasto Meta.
x86 – Le sezioni riguardanti la rimappatura dei tasti funzione si riferisconosolo ai sistemi x86.
Dopo avere rimappato i tasti, non sarà possibile usare kdmconfig percambiare la configurazione o le informazioni sul monitor. Per eseguire questeoperazioni sarà necessario tornare alla mappatura originale.
x86 Uso dello script di rimappatura
Per creare e utilizzare uno script di rimappatura, procedere come segue:
1. Creare un file di nome fkeys nella directory home usando un editor ditesto.
2. Inserire nel nuovo file lo script descritto nella Tabella C-3.
3. Salvare le modifiche e uscire dall’editor.
4. Al prompt, digitare:
È necessario trovarsi nella stessa directory dello script.
5. Per applicare lo script, fare clic con un pulsante del mouse nell’area dilavoro.Al termine di questa procedura, i tasti funzione potranno essere usati comei tasti Aiuto, Taglia, Copia, Incolla, Annulla e Davanti di un sistema SPARC.
Digitare il seguente script nel file fkeys , come descritto al Punto 1.
$ xmodmap fkeys
Tabella C-3 Lo script fkeys
keysym F2 = L10keysym F3 = L6keysym F4 = L8
Personalizzazione della tastiera 201
C
x86 Ripristino della mappatura originale della tastiera
Esistono due metodi per ripristinare la mappatura originale dei tasti. Il primo èquello di uscire da OpenWindows e riavviarlo. Il secondo metodo, preferibile,è quello di creare un secondo script che permetta di tornare facilmente, inqualsiasi momento, alla mappatura originale della tastiera.
Per creare questo secondo script, procedere come segue:
1. Usando un editor di testo, creare un nuovo file di nome normal .Il file dovrà trovarsi nella stessa directory che contiene lo script fkeys .
2. Inserire nel nuovo file lo script descritto nella Tabella C-4.
3. Salvare le modifiche e uscire dall’editor.
4. Al prompt, digitare:
Questo comando deve essere eseguito dalla stessa directory in cui si trova loscript.
Digitare il seguente script nel file normal , come descritto al Punto 1.
keysym F5 = L9
keysym F8 = L4keysym F9 = L5
remove control = Control_Rkeycode 0x47 = Meta_Radd mod1 = Meta_R
$ xmodmap normal
Tabella C-4 Lo script normal
keycode 8 = grave asciitildekeycode 9 = 1 exclamkeycode 10 = 2 atkeycode 11 = 3 numbersignkeycode 12 = 4 dollar
Tabella C-3 Lo script fkeys (Continua)
202 Guida avanzata a Solaris — dicembre 1995
C
keycode 13 = 5 percentkeycode 14 = 6 asciicircumkeycode 15 = 7 ampersandkeycode 16 = 8 asteriskkeycode 17 = 9 parenleftkeycode 18 = 0 parenright
keycode 19 = minus underscorekeycode 20 = equal pluskeycode 21 =keycode 22 = BackSpacekeycode 23 = Tabkeycode 24 = Qkeycode 25 = Wkeycode 26 = Ekeycode 27 = Rkeycode 28 = Tkeycode 29 = Ykeycode 30 = Ukeycode 31 = Ikeycode 32 = Okeycode 33 = Pkeycode 34 = bracketleft braceleftkeycode 35 = bracketright bracerightkeycode 36 = backslash bar brokenbarkeycode 37 = Caps_Lockkeycode 38 = Akeycode 39 = Skeycode 40 = Dkeycode 41 = Fkeycode 42 = Gkeycode 43 = Hkeycode 44 = Jkeycode 45 = Kkeycode 46 = Lkeycode 47 = semicolon colonkeycode 48 = apostrophe quotedblkeycode 49 =keycode 50 = Returnkeycode 51 = Shift_Lkeycode 52 =keycode 53 = Zkeycode 54 = X
Tabella C-4 Lo script normal (Continua)
Personalizzazione della tastiera 203
C
keycode 55 = Ckeycode 56 = Vkeycode 57 = Bkeycode 58 = Nkeycode 59 = Mkeycode 60 = comma lesskeycode 61 = period greaterkeycode 62 = slash questionkeycode 63 =keycode 64 = Shift_Rkeycode 65 = Control_Lkeycode 66 =keycode 67 = Alt_Lkeycode 68 = spacekeycode 69 = Alt_Rkeycode 70 =keycode 71 = Control_Rkeycode 72 =keycode 73 =keycode 74 =keycode 75 =keycode 76 =keycode 77 =keycode 78 =keycode 79 =keycode 80 =keycode 81 =keycode 82 = Insertkeycode 83 = Deletekeycode 84 =keycode 85 =keycode 86 = Leftkeycode 87 = Homekeycode 88 = Endkeycode 89 =keycode 90 = Upkeycode 91 = Downkeycode 92 = Priorkeycode 93 = Nextkeycode 94 =keycode 95 =keycode 96 = Rightkeycode 97 = Num_Lock
Tabella C-4 Lo script normal (Continua)
204 Guida avanzata a Solaris — dicembre 1995
C
keycode 98 = Home KP_7 KP_7keycode 99 = Left KP_4 KP_4keycode 100 = End KP_1 KP_1keycode 101 =keycode 102 = KP_Dividekeycode 103 = Up KP_8 KP_8keycode 104 = KP_5 KP_5 KP_5keycode 105 = Down KP_2 KP_2keycode 106 = KP_Insert KP_0 KP_0keycode 107 = KP_Multiplykeycode 108 = Prior KP_9 KP_9keycode 109 = Right KP_6 KP_6keycode 110 = Next KP_3 KP_3keycode 111 = Delete KP_Decimal KP_Decimalkeycode 112 = KP_Subtractkeycode 113 = KP_Addkeycode 114 =keycode 115 = KP_Enterkeycode 116 =keycode 117 = Escapekeycode 118 =keycode 119 = F1keycode 120 = F2keycode 121 = F3keycode 122 = F4keycode 123 = F5keycode 124 = F6keycode 125 = F7keycode 126 = F8keycode 127 = F9keycode 128 = F10keycode 129 = SunF36keycode 130 = SunF37keycode 131 = Print SunSys_Reqkeycode 132 = Scroll_Lockkeycode 133 = Pause Breakkeycode 134 =keycode 135 = Multi_keykeycode 136 = Mode_switch
Tabella C-4 Lo script normal (Continua)
205
Uso delle applicazioni in rete D
Questa appendice descrive una funzione avanzata dell’ambienteOpenWindows che consente di eseguire applicazioni residenti in un’altraworkstation della rete.
Nota – Le informazioni contenute in questa appendice non sono strettamentenecessarie per l’uso di OpenWindows. Per avere maggiori informazioni sullecaratteristiche delle applicazioni in rete e sulle risorse disponibili, rivolgersiall’amministratore del sistema.
In generale, nell’ambiente OpenWindows le applicazioni che compaiono sulloschermo (come Posta Elettronica e Calendario) sono programmi eseguiti sullaworkstation locale. Se tuttavia la workstation fa parte di una rete, è possibileeseguire le applicazioni da un altro sistema e visualizzarle sul sistema locale.Questo permette di ridurre i cicli di calcolo sul sistema locale e di accedere atutte le applicazioni disponibili nella rete.
Questa appendice descrive le procedure più semplici da seguire per eseguireun’applicazione su un sistema remoto e visualizzarla sul proprio schermo.Poiché l’ambiente operativo può variare da un sistema all’altro, si consiglia diseguire queste istruzioni con una certa flessibilità. Per informazioni sullemodalità d’uso più complesse delle applicazioni in rete, vedere il paragrafo“Sicurezza della rete”.
206 Guida avanzata a Solaris — dicembre 1995
D
Per eseguire un’applicazione remota nel modo descritto sono necessari iseguenti requisiti:
• È necessario avere diritto d’accesso alla macchina remota.
• La propria directory home deve poter essere attivata tramite NFS sulsistema remoto.
• L’applicazione e le librerie richieste devono essere installate sul sistemaremoto, cioè sul sistema host.
Per informazioni più precise sulle condizioni richieste, rivolgersiall’amministratore del sistema.
Uso di rlogin per eseguire un’applicazione in retePer eseguire un’applicazione in rete da un sistema remoto è essenziale che levariabili d’ambiente siano impostate correttamente:
• La variabile d’ambiente HOME nella propria shell sul sistema remoto deveessere impostata sulla propria directory home.
• La variabile d’ambiente DISPLAY nella propria shell sul sistema remotodeve essere impostata sul proprio schermo locale.
• Se le librerie di OpenWindows non sono state installate nelle directorystandard per le librerie condivise, vale a dire /usr/lib o /usr/local ,occorre impostare la variabile d’ambiente LD_LIBRARY_PATH sulladirectory appropriata (/usr/openwin/lib ).
L’esempio seguente spiega come avviare una Finestra di comando da unsistema remoto usando rlogin . In questo esempio, la directory homedell’utente è attivata sul sistema remoto in /home/directory_utente ,mentre il software di OpenWindows si trova in /usr/openwin sul sistemaremoto. Le variabili directoryutente e sistemautente devono essere impostate nelmodo appropriato per la propria configurazione. Inoltre, cmdtool deve esseresostituito con il nome dell’applicazione che si desidera eseguire.
Uso delle applicazioni in rete 207
D
Dopo aver inserito l’ultima riga, sul proprio schermo compare una Finestra dicomando. Questa finestra può essere utilizzata in modo interattivo comequalsiasi altra applicazione aperta nell’area di lavoro, ma viene eseguita inrealtà sul sistema remoto.
L’uso di una Finestra di comando in questo modo non presenta particolarivantaggi (l’applicazione è già disponibile sul sistema locale e non richiede unagrande quantità di memoria); la procedura descritta può essere comunqueutilizzata per qualsiasi applicazione remota.
Sicurezza della reteQuesto paragrafo descrive alcuni principi fondamentali riguardanti lasicurezza della rete, tra cui:
• Meccanismi di controllo degli accessi riferiti all’utente e all’host.• I protocolli di autorizzazione MIT-MAGIC-COOKIE-1 e SUN-DES-1.• Come e quando modificare il controllo degli accessi al server.• Come eseguire le applicazioni in modalità remota o locale con un diverso
identificativo utente.
Condizioni per la modifica del sistema di sicurezza
La configurazione di sicurezza di default di OpenWindows 3.3 e delle versionisuccessive deve essere modificata solo nei seguenti casi:
• Se si esegue un’applicazione collegata con versioni di Xlib o libcpsanteriori a OpenWindows versione 2 o a X11R4.
$ rlogin sistemaremoto . .( I comandi seguenti vengono eseguiti sul sistema remoto.) . .$ HOME=/home/ directoryutente$ DISPLAY= sistemautente :0$ LD_LIBRARY_PATH=/usr/openwin/lib$ /usr/openwin/bin/cmdtool &
208 Guida avanzata a Solaris — dicembre 1995
D
• Se si esegue un’applicazione collegata in modo statico con librerie diOpenWindows versione 2 e si desidera utilizzare il protocollo diautorizzazione SUN-DES-1.
• Se si esegue un’applicazione su un server remoto.
Meccanismi di controllo degli accessi
I meccanismi di controllo degli accessi permettono di stabilire quali client oapplicazioni possono avere accesso al server X11. Solo i client provvisti delleautorizzazioni corrette possono accedere al server; a tutti gli altri l’accessoviene negato, e il processo viene terminato con il seguente messaggio di errore.
Il tentativo di connessione viene registrato nel log della console del servercome segue:
I meccanismi di controllo degli accessi si dividono in due tipi: riferiti all’utentee riferiti all’host. Nel primo caso l’accesso al server viene concesso a unospecifico profilo utente, nel secondo caso a un determinato host o sistema. Dinorma sono attivi entrambi i meccanismi di controllo, salvo i casi in cui ilcomando openwin viene eseguito con l’opzione -noauth . Per maggioriinformazioni, vedere “Gestione degli accessi al server” in questo capitolo.
Accesso riferito all’utente
Con i meccanismi riferiti all’utente, l’accesso al server viene concesso a undeterminato utente indipendentemente dall’host utilizzato. Il client dell’utentecomunica i dati di autorizzazione al server, e se questi corrispondono a quelliimpostati sul server, l’utente ottiene il diritto di accesso.
Xlib: connection to nomehost refused by serverXlib: Client is not authorized to connect to server
AUDIT: < Data Ora Anno>: X: client 6 rejected from IP 129.144.152.193 port 3485Auth name: MIT-MAGIC-COOKIE-1
Uso delle applicazioni in rete 209
D
Accesso riferito all’host
I meccanismi riferiti all’host operano con criteri più generali. In questo casol’accesso al server viene concesso a un determinato host, e di conseguenza atutti gli utenti che operano su tale host. Si tratta di una forma di controllo piùdebole: se l’host ha accesso al server, l’autorizzazione viene estesaautomaticamente a tutti gli utenti che lo utilizzano.
I meccanismi di controllo riferiti all’host vengono usati generalmente pergarantire la compatibilità all’indietro. Le applicazioni collegate con versioni diXlib o libcps anteriori a OpenWindows versione 2 o a X11R4 nonriconoscono i nuovi meccanismi di controllo riferiti all’utente. Per ottenerel’accesso al server con queste applicazioni, perciò, l’utente deve attivare ilmeccanismo riferito all’host oppure rieffettuare il collegamento con unaversione più recente di Xlib e libcps .
Nota – Se possibile, i client collegati con una vecchia versione di Xlib olibcps dovrebbero essere ricollegati con versioni più aggiornate delle librerie,in modo da consentire la loro connessione al server con il nuovo meccanismodi controllo riferito all’utente.
Protocolli di autorizzazione
Questa versione di OpenWindows supporta due protocolli di autorizzazione:MIT-MAGIC-COOKIE-1 e SUN-DES-1. Questi due protocolli utilizzano unmeccanismo di controllo simile ma un tipo diverso di dati di autorizzazione.Il server può utilizzare un solo protocollo alla volta. Il protocollo di default diOpenWindows è MIT-MAGIC-COOKIE-1 con meccanismo di protezioneriferito all’utente.
MIT-MAGIC-COOKIE-1
Il protocollo di autorizzazione MIT-MAGIC-COOKIE-1 è un prodottosviluppato dal Massachusetts Institute of Technology. All’avvio del serverviene creato un magic cookie per il server e per l’utente che ha avviato ilsistema. Ad ogni richiesta di connessione, il client dell’utente invia il magiccookie al server come parte del pacchetto di connessione. Il magic cookie
210 Guida avanzata a Solaris — dicembre 1995
D
inviato viene confrontato con quello del server. Se i due magic cookiecorrispondono, l’utente ottiene il diritto di accesso; in caso contrario l’accessoviene negato.
SUN-DES-1
Il protocollo di autorizzazione SUN-DES-1, sviluppato da Sun Microsystems, èbasato su Secure RPC (Remote Procedure Call) e richiede un supporto DES(Data Encryption Software). L’informazione chiave per l’autorizzazione è ilnome di rete dell’utente. Questo nome viene codificato e inviato al server comeparte del pacchetto di connessione. Il server decodifica l’informazione e quindi,se riconosce il nome di rete, abilita la connessione.
Questo protocollo offre un livello di protezione superiore a quello del MIT-MAGIC-COOKIE-1. Il nome di rete del proprio sistema non può essere in alcunmodo utilizzato da altri utenti per accedere al server, mentre è possibile che unaltro utente utilizzi il proprio magic cookie.
Questo protocollo è disponibile solo nelle librerie di OpenWindows Versione 3e successive. Non può essere utilizzato da applicazioni create con libreriestatiche, in particolare Xlib, in ambienti precedenti a OpenWindows Versione 3.
Il paragrafo “Abilitazione dell’accesso con SUN-DES-1”, in questo capitolo,spiega come autorizzare un altro utente ad accedere al proprio serveraggiungendo il suo nome di rete alla lista degli accessi abilitati.
Modifica del protocollo di autorizzazione di default
Il protocollo di autorizzazione di default, MIT-MAGIC-COOKIE-1 , può esseremodificato per utilizzare SUN_DES-1, l’altro protocollo supportato, o per nonutilizzare alcun meccanismo di controllo riferito all’utente. L’impostazione didefault può essere modificata utilizzando le opzioni appropriate insieme alcomando openwin . Ad esempio, per cambiare l’impostazione di default daMIT-MAGIC-COOKIE-1 a SUN-DES-1, avviare OpenWindows come segue:
esempio% openwin -auth sun-des
Uso delle applicazioni in rete 211
D
Per avviare OpenWindows senza il meccanismo di accesso riferito all’utente,digitare la riga di comando con l’opzione -noauth :
Attenzione – L’uso dell’opzione -noauth riduce la sicurezza del sistema.OpenWindows viene eseguito con il solo meccanismo di controllo riferitoall’host, in quanto il server disattiva il meccanismo riferito all’utente. In questomodo, chiunque abbia accesso alle applicazioni di un dato sistema locale avràaccesso anche al relativo server.
Gestione degli accessi al server
Se OpenWindows non viene avviato con l’opzione -noauth (vedere “Modificadel protocollo di autorizzazione di default”), sono attivi sia il meccanismo dicontrollo riferito all’utente sia quello riferito all’host. Il server utilizza perprimo il meccanismo riferito all’utente, e successivamente quello riferitoall’host. Il protocollo riferito all’utente impostato nella configurazione didefault è MIT-MAGIC-COOKIE-1, mentre al meccanismo riferito all’host èassociata una lista vuota. Ciò significa che è effettivamente attivo solo ilmeccanismo orientato all’utente. L’opzione -noauth ordina al server didisabilitare il meccanismo di controllo orientato all’utente e inizializza la listadegli host aggiungendovi l’host locale.
Per cambiare il meccanismo di controllo degli accessi al server sono disponibilidue programmi: xhost e xauth . Per maggiori informazioni, vedere le relativepagine man. Questi programmi accedono a due file binari creati dal protocollodi autorizzazione, i quali contengono dati relativi ad ogni sessione. Uno dei fileè riservato al server per uso interno, mentre l’altro si trova nella directory$HOME dell’utente:
• .Xauthority File di autorizzazioni del client
Il programma xhost permette di modificare la lista degli host con diritto diaccesso al server. La lista può essere modificata con l’aggiunta o lacancellazione di altri host. Avviando il sistema con la configurazione di default— con la lista di accesso degli host vuota — e utilizzando xhost peraggiungere il nome di un sistema, di fatto si riduce il livello di sicurezza delsistema. Il server consentirà infatti l’accesso sia all’host inserito che a tutti gli
esempio% openwin -noauth
!
212 Guida avanzata a Solaris — dicembre 1995
D
utenti che specifichino il protocollo di autorizzazione di default. Per maggioriinformazioni sul livello di protezione del meccanismo riferito all’host, vedere“Accesso riferito all’host”.
Il programma xauth accede ai dati del protocollo di autorizzazione contenutinel file .Xauthority del client. Per consentire ad altri utenti di accedere alserver, perciò, si potranno estrarre questi dati dal file .Xauthority in modoche tali utenti li possano inserire nel loro file .Xauthority .
Il paragrafo “Abilitazione dell’accesso con MIT-MAGIC-COOKIE-1” contienealcuni esempi relativi all’uso di xhost e xauth .
File di autorizzazioni dei client
Il file che contiene le autorizzazioni dei client è .Xauthority . I dati sonocontenuti nella forma seguente:
Per default, .Xauthority contiene MIT-MAGIC-COOKIE-1 comeprotcl_autorizzazione e istruzioni relative alla sola visualizzazione locale comeprotcl_connessione e dati_autorizzazione. Ad esempio, il file .Xauthoritydell’host generico host potrebbe contenere le righe seguenti:
All’avvio dell’applicazione client, il sistema legge una riga corrispondente alprotcl_connessione dal file .Xauthority e invia al server il protcl_autorizzazionee i dati_autorizzazione come parte del pacchetto di connessione. Nellaconfigurazione di default, xhos t restituisce liste di accesso vuote per gli host edichiara abilitata l’autorizzazione di accesso.
protcl_connessione protcl_autorizzazione dati_autorizzazione
host:0 MIT-MAGIC-COOKIE-1 82744f2c4850b03fce7ae47176e75hostlocale:0 MIT-MAGIC-COOKIE-1 82744f2c4850b03fce7ae47176e75host/unix:0 MIT-MAGIC-COOKIE-1 82744f2c4850b03fce7ae47176e75
Uso delle applicazioni in rete 213
D
Se il protocollo di autorizzazione di default è stato sostituito con SUN-DES-1, ilfile .Xauthority contiene SUN-DES-1 come protcl_autorizzazione e il nome direte dell’utente come dati_autorizzazione. Il nome di rete si presenta come segue:
Ad esempio, il file .Xauthority dell’host generico host può contenere le righeindicate nell’esempio seguente, dove [email protected] è il nomedi rete dell’utente indipendente dal sistema:
Nota – Se non si conosce il proprio nome di rete o il nome di rete indipendentedal sistema, richiederlo all’amministratore di sistema.
Abilitazione dell’accesso con MIT-MAGIC-COOKIE-1
Se si utilizza il protocollo di autorizzazione MIT-MAGIC-COOKIE-1, peraggiungere un nuovo utente alla lista di accesso del server procedere comesegue:
1. Sul sistema che esegue l’applicazione server, eseguire xauth per estrarrein un file una riga corrispondente a nomehost:0.In questo esempio, nomehost è host e il file è xauth.info:
2. Inviare il file contenente questa riga all’utente che ha richiesto l’accesso(usando Posta Elettronica, rcp o un altro metodo di trasferimento).
Nota – L’invio del file contenente le informazioni di autorizzazione tramiteposta elettronica è un metodo più sicuro rispetto all’uso di rcp . Se tuttavia sisceglie di utilizzare rcp , non collocare il file in una directory che sia facilmenteaccessibile ad altri utenti.
unix .idutente @dominioNIS
host:0 SUN-DES-1 ” unix [email protected]”hostlocale:0 SUN-DES-1 ”[email protected]”host/unix:0 SUN-DES-1 ” unix [email protected]”
host% /usr/openwin/bin/xauth nextract - host:0 > $HOME/ xauth.info
214 Guida avanzata a Solaris — dicembre 1995
D
3. L’utente ricevente dovrà inserire la riga nel proprio file .Xauthority .In questo esempio, l’utente inserisce xauth.info nel file .Xauthoritydell’altro utente:
Nota – I dati_autorizzazione si riferiscono a una sessione specifica; ciò significache sono validi solo per la sessione corrente del server.
Abilitazione dell’accesso con SUN-DES-1
Se si utilizza il protocollo di autorizzazione SUN-DES-1, per abilitare un nuovoutente ad accedere al server procedere come segue:
1. Sul sistema che esegue il programma server, eseguire xhost perpermettere al server di riconoscere il nuovo utente.In questo esempio, nuovo_utente viene abilitato ad accedere al sistema host:
2. Il nuovo utente deve eseguire xauth per aggiungere la nuova istruzioneal proprio file .Xauthority .In questo esempio, il nome di rete del nuovo utente indipendente dalsistema è [email protected]. Si noti che questo comando deveessere scritto in un’unica riga, senza ritorni a capo. Dopo il simbolo di pipe,digitare uno spazio seguito dal resto del comando.
hostutente% /usr/openwin/bin/xauth nmerge - < xauth.info
host% xhost + nuovo_utente@
hostutente% echo ’add host:0 SUN-DES-1 “unix. [email protected]”’ | $OPENWINHOME/bin/xauth
Uso delle applicazioni in rete 215
D
Esecuzione remota di applicazioni client, o esecuzione locale con un diversonome utente
Le applicazioni client X utilizzano il valore della variabile d’ambienteDISPLAY per ricavare il nome del server al quale si devono collegare.
Per eseguire applicazioni client in modo remoto, o a livello locale con undiverso nome utente, procedere come segue:
1. Sul sistema che esegue l’applicazione server, abilitare un nuovo utente.A seconda del protocollo di autorizzazione utilizzato, seguire la proceduradescritta in “Abilitazione dell’accesso con MIT-MAGIC-COOKIE-1” o in“Abilitazione dell’accesso con SUN-DES-1”.
2. Impostare la variabile d’ambiente DISPLAY sul nome dell’host che esegueil server.In questo esempio, l’host è hostremoto:
3. Eseguire il programma client come indicato nell’esempio.
Il client verrà visualizzato sul sistema remoto hostremoto.
host% setenv DISPLAY hostremoto:0
host% programma_client&
216 Guida avanzata a Solaris — dicembre 1995
D
217
InternetworkingSPARC— DECnet (DNI) E
Questa appendice descrive come collegare tra loro due reti che utilizzano gliambienti OpenWindows e DECwindows™ attraverso il protocollo di trasportoNSP DECnet.
SPARC – Si noti che questo capitolo riguarda solo i sistemi SPARC.L’internetworking con DECnet è disponibile solo con DNI 8.x.
Per utilizzare DNI (DECnet Internetworking) si può procedere in due modi:
• Avviare un’applicazione client X11 su un sistema VAX (sotto il sistemaoperativo VMS®) e visualizzarla su un sistema OpenWindows.
• Avviare un’applicazione client X11 su un sistema OpenWindows evisualizzarla su un sistema VAX.
Questo capitolo descrive entrambe le possibilità, precedute da un’introduzionesui requisiti di configurazione DNI per i due sistemi.
218 Guida avanzata a Solaris — dicembre 1995
E
Configurazione dell’internetworking con DECnetPer predisporre l’internetworking con DECnet, procedere come segue:
1. Abilitare una connessione tramite DNI.Le librerie dei server e dei client OpenWindows utilizzano una versionedinamica della libreria di trasporto DNI libdni . Per fare in modo che lelibrerie dei server e dei client carichino libdni , occorre impostare lavariabile d’ambiente DNI_X_ENABLE sulla directory in cui è installata lalibreria libdni.so .
Nell’esempio seguente si suppone che DNI sia stato caricato con pkgadd nellaposizione di default:
2. Avviare il server di OpenWindows.Per default, il server di OpenWindows supporta il sistema di protezione“MIT-MAGIC-COOKIE”. Questo meccanismo è riferito all’utente anzichéall’host: si può cioè stabilire quali utenti (anziché quali sistemi) si possonoconnettere al server. Nel modo di default, al comando xhost il sistemarisponde con un elenco vuoto, e segnala soltanto che la protezione è attivata.Per disabilitare la protezione (e tornare al sistema di protezione delleprecedenti versioni del server di OpenWindows) usare il comando openwincon l’opzione -noauth .
3. Chiedere al proprietario del sistema su cui viene eseguito OpenWindowsdi eseguire il comando xhost per autorizzare il sistema DEC® VAX® astabilire una connessione X11 con il server di OpenWindows.Perché i client X11 si possano collegare al server di OpenWindows tramiteDNI, gli indirizzi dei nodi DECnet devono essere mappati con i rispettivinomi DECnet. Questo si ottiene creando ed inizializzando il database NCP.La stessa operazione deve essere eseguita anche sul sistema DEC VAX.
$ DNI_X_ENABLE=/opt/SUNWconn/dni/lib
$ openwin -noauth
$ xhost decvax::
Internetworking SPARC— DECnet (DNI) 219
E
I due punti doppi specificano il trasporto DECNet.
Visualizzazione di applicazioni client remote su sistemi OpenWindowsPer eseguire un’applicazione client X11 da VMS si può effettuare il login nelsistema VAX usando il comando dnilogin di SunLink DNI. Per prima cosa,impostare la variabile d’ambiente DISPLAY in modo che il sistema locale opericome server X11 per il sistema remoto. Quindi avviare un’applicazione clientX11 inserendo il nome del programma, rappresentato in questo esempio daclient_x11. Per maggiori informazioni sull’uso di VMS, vedere il manuale VMSDECwindows User’s Guide, Running Applications Across the Network.
Ad esempio:
Visualizzazione di applicazioni client remote su sistemi VAXPer eseguire un’applicazione client X11 su un sistema OpenWindows evisualizzarla su un server DECwindows, impostare la variabile DISPLAY sulsistema VAX remoto.
Prima di avviare l’applicazione client X11 occorre compilare ed installare i fontdi OpenWindows sul server DECwindows. Questi font sono disponibili nellaversione X11R5 o nel pacchetto di font opzionali fornito insieme aOpenWindows. Per installare i font appropriati sul server DECwindows,procedere come segue:
1. Installare i sorgenti dei font opzionali di OpenWindows (o i sorgenti deifont della versione X11R5) sul sistema OpenWindows.
2. Seguire le istruzioni per l’installazione dei font riportate nel manualeSolaris X Window System Developer’s Guide.
$ dnilogin decvax . . .$ define DECW$DISPLAY OW_machine::0$ spawn/nowait run client_x11
220 Guida avanzata a Solaris — dicembre 1995
E
3. Copiare i sorgenti dei font in una directory del sistema VAX.
4. Compilare i font per il cursore sul sistema VAX.Verrà creata una serie di file: olcursor.decw$font;1olglyph10.decw$font;1 ...
5. Copiare i font nella directory sysfont :
Nota – Per copiare i font nella directory sysfont , occorre accedere al sistemaDECVAX come utente “system”.
6. Ripetere le operazioni 2-4 anche per gli altri font del cursore e per i fontLucida collocati in /usr/openwin/share/src/fonts/75dpi e/usr/openwin/share/src/fonts/100dpi .
Nota – I font Lucida devono essere installati insys$sysroot:[sysfont.decw.user_75dpi] esys$sysroot:[sysfont.decw.user_100dpi] .
L’elenco seguente contiene il set minimo dei font richiesti per eseguire leapplicazioni DeskSet di OpenWindows. Se per le applicazioni si utilizzano ifont di default, non sarà necessario installarne altri. È tuttavia possibileinstallare un numero di font superiore a quello richiesto.
• olcursor.bdf• olglyph10.bdf• olglyph12.bdf
$ cd /usr/openwin/share/src/fonts/misc$ dnicp *.bdf ‘decvax::[vaxdir]’
$ font olcursor.bdf$ font olglyph10.bdf...
$ set def sys$sysroot:[sysfont.decw.user_cursor16]$ copy [dirvax]olcursor.decw$font;1 *
Internetworking SPARC— DECnet (DNI) 221
E
• olglyph14.bdf• olglyph19.bdf• luBS08.bdf• luBS10.bdf• luBS12.bdf• luBS14.bdf• luRS08.bdf• luRS10.bdf• luFS12.bdf• lutBs12.bdf• lutRS10.bdf• lutRS12.bdf
7. Riavviare il server di DECwindows.
8. Per verificare che i font siano stati installati, richiedere l’elenco dei fontdisponibili nel server di DECwindows:
9. Verificare di avere abilitato il nodo OpenWindows per la visualizzazionesul server di DECwindows usando il menu Security del DECwindowsSession Manager.
10. Avviare un’applicazione X11 (ad esempio, un’applicazione DeskSet diOpenWindows).
Nota – DNI_X_ENABLE deve essere impostato sulla directory della libreria ditrasporto DNI libdni . Vedere a questo riguardo il punto 1 del paragrafo“Configurazione dell’internetworking con DECnet” in questo capitolo.
Se si riceve un messaggio di errore come quello illustrato nell’esempioseguente, per avviare l’applicazione è necessario installare il font specificatonel server di DECwindows.
$ DISPLAY=decvax::0$ xlsfonts | grep Sun (font cursore)$ xlsfonts | grep Lucida
$ DISPLAY=decvax::0$ mailtool
222 Guida avanzata a Solaris — dicembre 1995
E
XView warning: Cannot load font ‘-b&h-lucida-medium-r-*-*-*-80-*-*-*-*-*-*’ (Font package)
Questo messaggio di errore segnala che occorre installare il font luRS10.bdf .
Per maggiori informazioni sui font, vedere il manuale Solaris X Window SystemDeveloper’s Guide.
223
Gestione del sistema F
Solaris 2.5 include una nuova versione di Admintool, un’interfaccia utentegrafica per l’esecuzione di diverse funzioni di amministrazione. ConAdmintool è possibile eseguire le seguenti operazioni:
• Gestione dei profili utente — Admintool può essere usato per aggiungere,cancellare o modificare i profili utente. L’utility inserisce automaticamente lemodifiche appropriate al file /etc/passwd del sistema.
• Gestione dei gruppi — Admintool può essere usato per aggiungere,cancellare o modificare i gruppi. L’utility inserisce automaticamente lemodifiche appropriate al file /etc/group del sistema.
• Gestione degli host — Admintool può essere usato per aggiungere,cancellare o modificare gli host. L’utility inserisce automaticamente lemodifiche appropriate al file /etc/inet/hosts del sistema.
• Gestione delle stampanti — Admintool permette di aggiungere o cancellarel’accesso a una stampante, o di modificarne la configurazione. L’utilityinserisce automaticamente le modifiche appropriate nella directory/etc/lp .
• Gestione dei servizi delle porte seriali — Admintool permette di abilitare edisabilitare i servizi delle porte seriali. Admintool comprende modellipredefiniti per le configurazioni più comuni di terminali e modem,permettendo di configurare i servizi software necessari per l’uso di unmodem o di un terminale collegato a una porta seriale del sistema.
224 Guida avanzata a Solaris — dicembre 1995
F
• Gestione del software — Admintool può essere usato per installare nuoviprodotti software o per cancellare quelli installati. L’installazione può essereeffettuata da un CD o da un disco rigido. Sia l’installazione che lacancellazione di software possono essere eseguite su sistemi già operativi.
Nota – Admintool modifica solo i file del sistema locale — cioè quelli delsistema su cui viene eseguito. Esso non modifica né aggiorna i database globalidella rete, come NIS o NIS+.
Avvio di AdmintoolQuesta sezione contiene informazioni generali sull’avvio di Admintool, einformazioni specifiche sull’uso di Admintool per la gestione degli host, dellestampanti e delle porte seriali.
La prima operazione da eseguire con Admintool è quella di aggiungere ilproprio profilo utente al gruppo UNIX sysadmin (detto anche gruppo 14,poiché per convenzione l’ID di questo gruppo è il numero 14). Come membridel gruppo sysadmin, è possibile effettuare il login con il proprio consuetoprofilo utente — anziché come superutente — ed eseguire operazioni digestione del sistema locale con Admintool.
Per aggiungersi al gruppo sysadmin, seguire le istruzioni a pagina 226.
Per avviare Admintool, procedere come segue.
1. Eseguire il login nel sistema.
2. Diventare superutente.Se non si è membri dello speciale gruppo UNIX sysadmin (GID 14), perusare Admintool è necessario diventare utente root, o superutente. Ilsuperutente dispone di autorizzazioni speciali per la modifica dei file disistema.
Gestione del sistema 225
F
Per diventare superutente, usare il comando su :
Se il profilo dell’utente root è protetto da una password, occorrerà digitarlaalla richiesta. Se non è prevista una password, sarà sufficiente premereReturn. Se non si conosce la password necessaria per diventare superutente,chiedere assistenza all’amministratore di sistema.
3. Avviare Admintool.
4. Se non si è membri del gruppo sysadmin, vedere “Registrazione nelgruppo sysadmin” a pagina 226.
5. Usare il menu Visualizza per selezionare il tipo di operazione da eseguirecon Admintool. Sono disponibili le opzioni Utenti, Gruppi, Host,Stampanti, Porte seriali e Software, come illustrato nella figura qui sotto.
$ suPassword: (inserire la password del superutente)#
# admintool &
226 Guida avanzata a Solaris — dicembre 1995
F
Registrazione nel gruppo sysadmin
Per registrarsi come membri del gruppo sysadmin, procedere come segue:
1. Eseguire il login nel sistema e diventare superutente.
2. Avviare Admintool.
3. Selezionare Gruppi dal menu Visualizza.
4. Fare clic su sysadmin nella finestra Admintool: Gruppi.
5. Selezionare Configura dal menu Modifica.
6. Aggiungere il proprio nome utente all’elenco dei membri.
Nota – Nell’inserire i nomi dei membri, separarli con una virgola senza lasciarespazi vuoti, ad esempio: franco,maria,giorgio.
7. Fare clic su OK.
Il proprio nome utente verrà registrato nel gruppo sysadmin. A questo punto,sarà possibile avviare Admintool ed eseguire le operazioni di gestione delsistema senza bisogno di effettuare il login come root.
Gestione del sistema 227
F
Uso di Admintool per le operazioni più comuniAdmintool permette di eseguire la maggior parte delle operazioni diamministrazione del sistema locale. L’utility comprende un sistema di aiutoon-line con le informazioni principali sull’esecuzione delle diverse procedure.Alcune operazioni, tuttavia, richiedono speciali condizioni o la configurazionedi periferiche hardware. Questa sezione descrive le operazioni che richiedonoconoscenze o procedure particolari.
Gestione degli host
Admintool può essere usato per definire un sistema remoto a cui si desideraaccedere. L’aggiunta di un host permette di eseguire un login remoto su unaltro sistema usando il suo nome. (Senza la definizione dell’host nel file/etc/hosts , per accedere a quel sistema occorrerebbe eseguire un loginremoto usando l’indirizzo IP.)
Attenzione – Se si utilizza Admintool per aggiungere un host al sistema localee il sito utilizza un servizio di denominazione come NIS o NIS+, è possibile chele operazioni sugli host non producano l’effetto desiderato. Questo accadeperché le informazioni del servizio di denominazione della rete hanno laprecedenza su quelle del file /etc/hosts locale, che è il punto in cuiAdmintool aggiorna le informazioni. Se si desidera che le operazioni diAdmintool abbiano la precedenza su quelle del database del servizio didenominazione, rivolgersi all’amministratore di sistema.
Gestione delle stampanti
Admintool può essere usato per abilitare l’accesso a una stampante, che puòessere collegata localmente o disponibile in rete. La stampante può esserecollegata e accesa prima o dopo l’abilitazione dell’accesso con Admintool. Ilcollegamento di una stampante al sistema richiede generalmente le seguentioperazioni:
• Collegare fisicamente la stampante al sistema.
• Impostare gli switch richiesti e configurare la velocità di trasmissione, laporta ed altri parametri richiesti per la stampante. (Per informazionisull’impostazione degli switch e sui collegamenti da eseguire, vedere il
!
228 Guida avanzata a Solaris — dicembre 1995
F
manuale della stampante e il manuale di installazione del sistema.) Ingenere, i cavi della stampante vengono collegati a una porta seriale; alcunestampanti, tuttavia, richiedono il collegamento a una porta parallela.
• Collegare la stampante a una presa di corrente.
• Eseguire il login nel sistema e diventare superutente.
• Avviare Admintool e selezionare Stampanti dal menu Visualizza peraggiornare i file del sistema locale necessari per l’uso della stampante.
Per informazioni dettagliate sull’installazione e la gestione delle stampanti,vedere il manuale System Administration Guide, Volume 2, incluso nel Solaris 2.5System Administrator AnswerBook.
Gestione delle porte seriali
Un modem è un dispositivo che abilita il sistema a trasmettere e a ricevereinformazioni attraverso una linea telefonica. Poiché i modem vengonogeneralmente collegati a una porta seriale, per utilizzarli è necessarioconfigurare la porta seriale del sistema con Admintool. Il collegamento el’accensione del modem possono essere effettuati prima o dopo l’uso diAdmintool per l’abilitazione dell’accesso a quel modem. Il collegamento di unmodem al sistema richiede generalmente le seguenti operazioni:
• Collegare fisicamente il dispositivo al sistema, oppure installare la schedamodem.
• Impostare gli switch richiesti e configurare la velocità di trasmissione, laporta ed altri parametri richiesti per il modem. (Per informazioni specifiche,vedere il manuale del modem e il manuale di installazione del sistema.)
• Collegare il modem o il suo adattatore a una presa di corrente.
• Eseguire il login nel sistema.
• Avviare Admintool e selezionare Porte seriali dal menu Visualizza peraggiornare i file del sistema locale per l’uso del modem.
Per maggiori informazioni sull’installazione e la configurazione dei modem,vedere il manuale System Administration Guide, Volume 2, incluso nel Solaris 2.5System Administrator AnswerBook.
229
Uso delle schede PCMCIA G
IntroduzioneLe schede PCMCIA (Personal Computer Memory Card InternationalAssociation) sono dispositivi di piccole dimensioni, grandi all’incirca come unacarta di credito, ma molto resistenti e facilmente installabili dall’utente.
Le schede di memoria PCMCIA possono essere usate come dischetti, ma hannouna capacità notevolmente superiore.
Le schede seriali e modem PCMCIA permettono di aggiungere moltofacilmente un’interfaccia RS-232 o una funzionalità fax/modem a unaSPARCstation.
In commercio sono disponibili schede PCMCIA di diversi produttori. Persapere se un determinato dispositivo è compatibile con la SPARCstationutilizzata, contattare il centro SunServiceSM più vicino o il produttore dellascheda PCMCIA.
Questa appendice contiene le seguenti sezioni:
• “Uso di una scheda di memoria PCMCIA”• “Copia dei file con il comando tar”• “Copia dei file con la gestione dei volumi abilitata”• “Copia dei file con la gestione dei volumi disabilitata”• “Uso di una scheda seriale/modem PCMCIA”
230 Guida avanzata a Solaris — dicembre 1995
G
Requisiti per il supporto delle schede PCMCIA
Le schede di memoria PCMCIA e le schede seriali/modem PCMCIA devonoessere conformi alla specifica PCMCIA release 2.1 o superiore per esseresupportate sulle seguenti piattaforme:
• Sistemi SPARCstation™ Voyager™
• Sistemi SPARCstation dotati di una scheda di interfaccia/SBus PCMCIA
Questa release di Solaris supporta schede di memoria PCMCIA di tipo SRAM(Non-Volatile Static Random Acess Memory), DRAM (Dynamic RandomAccess Memory) e MROM (Memory Read-Only Memory).
Nota – Questa release non supporta schede PROM PCMCIA di tipo FLASH,EEPROM e OTP (One-Time Programmable).
In particolare, questa release di Solaris supporta schede di memoria PCMCIAcon le seguenti caratteristiche:
• Architettura CIS (Card Information Structure)• Densità comprese tra 512 Kbyte e 64 Mbyte• Un file system MS-DOS® e un file system UNIX
Altra documentazione di riferimento
Per determinare se esistono speciali istruzioni per l’installazione deldispositivo PCMCIA che si desidera utilizzare sul proprio sistema, vedere laHardware Platform Guide e gli altri documenti forniti insieme a Solaris.
Uso delle schede PCMCIA 231
G
Uso di una scheda di memoria PCMCIAQuesta sezione descrive l’uso generale delle schede di memoria PCMCIA,incluse le procedure di protezione dei dati contro la cancellazione accidentale,come descritto in “Abilitazione della modalità di protezione dalla scrittura” apagina 232.
Metodi per la copia dei file
Le tre sezioni seguenti descrivono le procedure per formattare e copiare i fileda una scheda di memoria PCMCIA ad un disco rigido o viceversa con i tremetodi disponibili:
• Comandi tar , cpio o dump/restore .
Per informazioni sull’uso del comando tar per la copia dei file, vedere“Copia dei file con il comando tar” a pagina 233. (Per maggiori informazionisull’uso dei comandi cpio o dump/restore , vedere le relative pagineman.)
• Gestione dei volumi (vold) abilitata.
Per informazioni sulla copia dei file con la gestione dei volumi abilitata,vedere “Copia dei file con la gestione dei volumi abilitata” a pagina 238.
• Gestione dei volumi (vold) disabilitata.
Per informazioni sulla copia dei file senza la gestione dei volumi, vedere“Copia dei file con la gestione dei volumi disabilitata” a pagina 245.
Modalità di protezione dalla scrittura
I dati contenuti in una scheda di memoria PCMCIA possono essere protetticontro la cancellazione accidentale abilitando la modalità di protezione dallascrittura. Con questa modalità abilitata, la scheda di memoria PCMCIA nonpuò essere usata per la copia dei dati.
232 Guida avanzata a Solaris — dicembre 1995
G
▼ Abilitazione della modalità di protezione dalla scrittura
♦ Usando un utensile appuntito (ad esempio un cacciavite), far scorrerel’interruttore di protezione dalla scrittura verso il bordo della scheda dimemoria PCMCIA, come mostrato nella Figura G-1.
Figura G-1 Abilitazione della modalità di protezione dalla scrittura
▼ Disabilitazione della protezione dalla scrittura
♦ Usando un utensile appuntito (ad esempio un cacciavite), far scorrerel’interruttore di protezione dalla scrittura verso l’interno della scheda dimemoria PCMCIA.
Schede di memoria PCMCIA e funzione Resume/Suspend di PowerManagement
Questa sezione contiene informazioni specifiche per i sistemi dotati di schedePCMCIA e in cui è installato il software Power Management. Per maggioriinformazioni su Power Management, vedere il manuale Using PowerManagement.
Uso delle schede PCMCIA 233
G
Attenzione – Non inserire o rimuovere una scheda PCMCIA duranteun’operazione di sospensione o di ripresa operativa del sistema. In questi casi,infatti, la scheda PCMCIA non verrà riconosciuta.
Se una scheda di memoria PCMCIA è gestita dalla gestione dei volumi e ilsistema viene sospeso, essa verrà disattivata automaticamente. Alla ripresaoperativa del sistema, tutte le schede di memoria PCMCIA con un file systemvalido per la gestione dei volumi verranno automaticamente riattivate.
Se la gestione dei volumi è disabilitata e la scheda PCMCIA viene attivatamanualmente mentre il sistema è in modalità di sospensione, la scheda verràautomaticamente disattivata. Alla ripresa operativa del sistema, la schedaPCMCIA non verrà riattivata automaticamente. La procedura di attivazionedovrà essere rieseguita manualmente.
Copia dei file con il comando tar
Questa è la prima delle tre sezioni che descrivono le procedure per formattareuna scheda di memoria PCMCIA e per copiare i file dalla scheda a un discorigido e viceversa.
Nota – Per maggiori informazioni sull’uso dei comandi cpio odump/restore , vedere le relative pagine man.
Questa sezione descrive le seguenti operazioni:
• Formattazione di una scheda di memoria PCMCIA• Visualizzazione dei nomi dei file• Copia dei file
▼ Formattazione di una scheda di memoria PCMCIA
Prima di usare una scheda di memoria PCMCIA, può essere necessarioformattarla. L’utility fdformat permette di formattare sia dischetti che schededi memoria PCMCIA.
Attenzione – La formattazione cancella tutti i dati preesistenti su una scheda dimemoria PCMCIA.
!
!
234 Guida avanzata a Solaris — dicembre 1995
G
Per formattare una scheda di memoria PCMCIA:
♦ Digitare:
Nota – L’utility format non può essere usata con le schede di memoriaPCMCIA. È possibile usare solo l’utility fdformat .
La Tabella G-1 elenca le opzioni disponibili per l’utility fdformat .
Nota – L’utility fdformat non dispone di opzioni per l’installazione di un filesystem NEC-DOS su una scheda di memoria PCMCIA.
Per formattare una scheda di memoria PCMCIA è necessario specificare unnome di dispositivo per la scheda. Diversamente, l’utility fdformat utilizzeràautomaticamente l’unità a dischetti, che è il dispositivo di default.
% fdformat opzione nome_dispositivo
Tabella G-1Opzioni dell’utility fdformat
Opzione Descrizione
-U Disattiva la scheda di memoria PCMCIA
-d Installa un file system MS-DOS (l’opzione di default è unfile system UNIX)
-f Non richiede conferma prima di iniziare laformattazione
-q Disabilita la visualizzazione dei messaggi di stato
-x Installa un’etichetta Solaris o un file system MS-DOS;non formatta la scheda di memoria PCMCIA
-b etichetta Specifica un’etichetta UNIX o MS-DOS su una scheda dimemoria PCMCIA
-t dos Installa un file system MS-DOS (l’opzione di default è unfile system UNIX)
-B nomefile Installa uno speciale caricatore di boot
Uso delle schede PCMCIA 235
G
Il nome di dispositivo per le schede di memoria PCMCIA deve esserespecificato nel formato
/dev/rdsk/c nt ndnsn
o
/dev/dsk/c nt ndnsn.
Ad esempio, il nome di dispositivo /dev/dsk/c1t6d0s2 rappresenta unascheda di memoria SRAM PCMCIA con un controller del socket logiconumero 1, una tecnologia numero 6 e una slice numero 2.
La Tabella G-2 elenca i nomi di dispositivo utilizzabili con l’utility fdformat .
▼ Visualizzazione dei nomi dei file con il comando tar
Per visualizzare i nomi dei file residenti su una scheda di memoria PCMCIA,procedere come segue.
♦ Digitare:
Tabella G-2Nomi di dispositivo disponibili per l’utility fdformat
Nome didispositivo
Descrizione
n Rappresenta un numero decimale
cn Rappresenta il controller n
t n Rappresenta la tecnologia n0x1 ROM, 0x2 OTPROM, 0x3 EPROM,0x4 EEPROM, 0x5 FLASH, 0x6 SRAM, 0x7 DRAM
dn Rappresenta il tipo di tecnologia nel tipo n
sn Rappresenta la slice n(Questa release supporta una sola partizione nella scheda dimemoria PCMCIA. Di conseguenza, il numero di partizione sn peril nome di dispositivo deve essere s2.)
% tar tvf nome_dispositivo
236 Guida avanzata a Solaris — dicembre 1995
G
Copia dei file
Per copiare un file o una directory da una scheda di memoria PCMCIA su undisco rigido o viceversa, la scheda di memoria deve essere prima formattata(vedere “Formattazione di una scheda di memoria PCMCIA” a pagina 233).Inoltre, è necessario possedere l’autorizzazione di scrittura per la directory didestinazione sul disco rigido.
La procedura di copia descritta qui di seguito permette di preservare ilproprietario, le autorizzazioni, il gruppo e la data/ora di modifica del file odella directory.
Nota – Se si utilizza il comando tar per copiare i file su una scheda dimemoria PCMCIA, per estrarre o copiare i file dalla scheda sarà necessariousare nuovamente il comando tar .
▼ Copia da un disco rigido su una scheda di memoria PCMCIA
1. Digitare:
dove directory è il nome della directory in cui si trovano i file da copiare.
Ad esempio, per copiare il file /home/esempi/progetto, digitare:
Tabella G-3Opzioni del comando tar per la visualizzazione dei nomi dei file
Opzione Descrizione
t Visualizza l’elenco dei file residenti sulla scheda di memoria PCMCIA
v Visualizza i nomi dei file in dettaglio
f Specifica il nome del dispositivo di input
% cd directory
% cd /home/esempi
Uso delle schede PCMCIA 237
G
2. Digitare:
Ad esempio, per copiare il file ./progetto dal disco rigido su una schedadi memoria PCMCIA con nome di dispositivo /dev/rdsk/c1t6d0s2 ,digitare:
▼ Copia da una scheda di memoria PCMCIA su un disco rigido
1. Digitare:
dove directory è il nome della directory in cui si trovano i file da copiare. Inquesto caso, la directory si trova sulla scheda di memoria PCMCIA.
Ad esempio, per copiare il file /home/esempi/progetto, digitare:
2. Digitare:
% tar cvf nome_dispositivo nomefile
Tabella G-4Opzioni del comando tar per la copia di file su una scheda di memoriaPCMCIA
Opzione Descrizione
c Crea un archivio
v Visualizza i nomi dei file durante la copia
f Specifica il nome di un dispositivo di input
% tar cvf /dev/rdsk/c1t6d0s2 ./progetto
% cd directory
% cd /home/esempi
% tar xvfp nome_dispositivo nomefile
238 Guida avanzata a Solaris — dicembre 1995
G
Attenzione – Se la directory di destinazione contiene già un file o unadirectory con lo stesso nome di quello da copiare, il file o la directory esistenteverranno automaticamente sovrascritti.
Ad esempio, per copiare il file ./progetto da una scheda di memoriaPCMCIA con indirizzo /dev/rdsk/c1t6d0s2 nella directory corrente deldisco rigido, digitare:
Copia dei file con la gestione dei volumi abilitataQuesta è la seconde delle tre sezioni che descrivono i diversi metodi performattare una scheda di memoria PCMCIA e per copiare i file dalla scheda aun disco rigido o viceversa. In particolare, questa sezione descrive il metodoper eseguire queste operazioni se la gestione dei volumi è abilitata sul sistema.
Nota – La scheda di memoria PCMCIA viene gestita automaticamente dallagestione dei volumi. Per copiare un file dal sistema alla scheda di memoriaPCMCIA non è necessario diventare superutente.
Tabella G-5Opzioni del comando tar per la copia dei file da una scheda di memoriaPCMCIA
Opzione Descrizione
x Estrae da un archivio
v Visualizza i nomi dei file durante la copia
f Specifica il nome di un dispositivo di input
p Preserva le caratteristiche originali del file
% tar xvfp /dev/rdsk/c1t6d0s2 ./progetto
!
Uso delle schede PCMCIA 239
G
Attenzione – Quando si rimuove una scheda di memoria PCMCIA da unsocket, attendere almeno due o tre secondi prima di inserirla in un altro.Diversamente, è possibile che la gestione dei volumi non riesca ad attivare lascheda correttamente. Se la gestione dei volumi non dovesse riuscire adattivare correttamente la scheda di memoria PCMCIA, riavviare il daemonvold o, se necessario, riavviare il sistema.
Se si inserisce una scheda di memoria PCMCIA in un socket e la si rimuoveimmediatamente, Volume Management potrebbe non riconoscere più quelsocket. Questo problema può essere risolto nello stesso modo del precedente —riavviando il daemon vold o effettuando un nuovo boot del sistema.
Si ricordi quanto segue:
• La gestione dei volumi supporta una sola scheda di memoria PCMCIA.
• Il comando volcheck (1) supporta le schede di memoria PCMCIA.
• L’hardware PCMCIA utilizza un meccanismo manuale. Il comandoeject (1) permette di espellere manualmente le schede di memoriaPCMCIA per consentire alla gestione dei volumi di disattivare il file system.
• filemgr (1) non dispone di un menu pop-up da visualizzare all’inserimentodi una scheda di memoria PCMCIA. Tuttavia, File Manager permette divisualizzare i nomi delle directory e di eseguire operazioni sui file nelladirectory /pcmem/pcmemn (dove n rappresenta il numero del socketPCMCIA).
Questa sezione descrive le seguenti operazioni:
• Formattazione di una scheda di memoria PCMCIA senza etichetta• Riformattazione di una scheda di memoria PCMCIA• Attivazione di una scheda di memoria PCMCIA• Copia di file• Espulsione di una scheda di memoria PCMCIA
!
240 Guida avanzata a Solaris — dicembre 1995
G
▼ Formattazione di una scheda di memoria PCMCIA senza etichetta
• Se la scheda di memoria PCMCIA è già formattata, ignorare questa sezione.
• Se si desidera riformattare una scheda di memoria PCMCIA già formattata,passare a “Riformattazione di una scheda di memoria PCMCIA” a pagina241.
Nota – L’utility format non può essere utilizzata con le schede di memoriaPCMCIA. È possibile usare solo l’utility fdformat .
1. Inserire la scheda di memoria PCMCIA in un socket PCMCIA.
2. Inserire il comando appropriato per formattare la scheda di memoria conil tipo di file system desiderato (UNIX o MS-DOS).Per formattare la scheda di memoria con un file system UNIX, digitare icomandi seguenti:
Ad esempio, per formattare una scheda di memoria PCMCIA nel socketPCMCIA numero 0 con un file system UNIX, digitare i comandi seguenti:
Oppure, per formattare la scheda di memoria con un file system MS-DOS,digitare uno dei comandi seguenti:
o
% fdformat nome_dispositivo% newfs /vol/dev/aliases/ nome_dispositivo
% fdformat pcmem0% newfs /vol/dev/aliases/pcmem0
% fdformat -t dos nome_dispositivo
% fdformat -d nome_dispositivo
Uso delle schede PCMCIA 241
G
Ad esempio, per formattare una scheda di memoria PCMCIA nel socketPCMCIA numero 0 con un file system MS-DOS, digitare uno dei seguenticomandi:
o
3. Rimuovere e inserire la scheda di memoria PCMCIA.Questa operazione è necessaria per permettere alla gestione dei volumi diriattivare la directory di attivazione /pcmem/pcmem0 .
In alternativa, si possono eseguire i comandi seguenti senza rimuovere lascheda di memoria PCMCIA. Digitare:
La gestione dei volumi riattiverà automaticamente la scheda di memoriaPCMCIA.
▼ Riformattazione di una scheda di memoria PCMCIA
Se la scheda di memoria PCMCIA è già formattata, ignorare questa sezione.
1. Inserire la scheda di memoria PCMCIA nel socket PCMCIA.
% fdformat -d pcmem0
% fdformat -t dos pcmem0
% eject pcmem0% volcheck
242 Guida avanzata a Solaris — dicembre 1995
G
2. Digitare il comando appropriato per riformattare la scheda di memoriacon il tipo di file system desiderato (UNIX o MS-DOS).Per riformattare una scheda di memoria con un file system UNIX, digitare icomandi seguenti:
Ad esempio, per formattare una scheda di memoria PCMCIA nel socketPCMCIA numero 1 con un file system UNIX, digitare i comandi seguenti:
Oppure, per riformattare una scheda di memoria con un file systemMS-DOS, digitare uno dei comandi seguenti:
o
Ad esempio, per riformattare una scheda di memoria PCMCIA nel socketPCMCIA numero 1 con un file system MS-DOS, digitare uno dei comandiseguenti:
o
% fdformat -U nome_dispositivo% newfs /vol/dev/aliases/ nome_dispositivo
% fdformat pcmem1% newfs /vol/dev/aliases/pcmem1
% fdformat -U -t dos nome_dispositivo
% fdformat -Ud nome_dispositivo
% fdformat -d pcmem1
% fdformat -t dos pcmem1
Uso delle schede PCMCIA 243
G
3. Rimuovere e inserire la scheda di memoria PCMCIA.Questa operazione è necessaria perché la gestione dei volumi possariattivare la directory /pcmem/pcmem0 .
In alternativa, procedere come segue senza rimuovere la scheda PCMCIA.Digitare:
La gestione dei volumi riattiverà automaticamente la scheda di memoriaPCMCIA.
La tabella seguente contiene le opzioni per l’utility fdformat .
Copia dei file
Si possono utilizzare vari comandi, come cp , rm, diff e ls , per copiare,cancellare, confrontare ed elencare le directory disponibili su una scheda dimemoria PCMCIA.
▼ Copia da un disco rigido a una scheda di memoria PCMCIA
♦ Digitare:
% eject pcmem0% volcheck
Tabella G-6Opzioni dell’utility fdformat
Opzione Descrizione
-U Disattiva la scheda di memoria PCMCIA
-d Installa un file system MS-DOS (l’opzione di default è ilfile system UNIX)
-t dos Installa un file system MS-DOS (l’opzione di default è ilfile system UNIX)
esempio% cp nomefile /pcmem/pcmem0/ nomefile
244 Guida avanzata a Solaris — dicembre 1995
G
▼ Copia da una scheda di memoria PCMCIA su un disco rigido
♦ Digitare:
▼ Espulsione di una scheda di memoria PCMCIA con il comandoeject (1)
Se si desidera rimuovere una scheda di memoria PCMCIA mentre è attivato ilfile system corrispondente, è necessario usare il comando eject (1).
Avvertenza – La rimozione di una scheda di memoria PCMCIA attivataproduce un errore del sistema.
1. Digitare:
oppure:
Viene visualizzata una finestra pop-up del Removable Media Manager.
2. Fare clic sul pulsante OK.
3. Rimuovere la scheda di memoria PCMCIA.
Nota – Se si desidera continuare ad usare la scheda di memoria PCMCIA,lasciarla nel socket PCMCIA e usare il comando volcheck (1), in modo che lagestione dei volumi possa riattivare la scheda. Per eseguire questo comando,digitare volcheck .
esempio% cp /pcmem/pcmem0/ nomefile /percorso/nomefile
% eject nome_dispositivo
% eject pcmem0
!
Uso delle schede PCMCIA 245
G
Copia dei file con la gestione dei volumi disabilitataQuesta è la terza delle tre sezioni che descrivono i metodi disponibili performattare una scheda di memoria PCMCIA e per copiare i file tra la scheda eun disco rigido. In particolare, questa sezione descrive il metodo per eseguirequeste operazioni quando la gestione dei volumi è disabilitata.
Questa sezione descrive le seguenti operazioni:
• Disabilitazione della gestione dei volumi• Formattazione di una scheda di memoria PCMCIA• Attivazione di una scheda di memoria PCMCIA• Copia di file• Abilitazione della gestione dei volumi
▼ Disabilitazione della gestione dei volumi
1. Scegliere Programmi ➤ Finestra di comando dal menu Area di lavoro.
2. Diventare superutente digitando:
3. Disabilitare la gestione dei volumi digitando:
▼ Formattazione di una scheda di memoria PCMCIA
Se la scheda di memoria PCMCIA è già formattata, ignorare questa sezione.
1. Inserire la scheda di memoria PCMCIA nel socket PCMCIA.
2. Inserire il comando appropriato per formattare la scheda di memoria conil tipo di file system desiderato (UNIX o MS-DOS).
esempio% suPassword: password_di_superutenteesempio#
# /etc/init.d/volmgt stop
246 Guida avanzata a Solaris — dicembre 1995
G
Nota – L’utility format non può essere utilizzata con le schede di memoriaPCMCIA. Si può utilizzare solo l’utility fdformat .
Per formattare una scheda di memoria con un file system UNIX, digitare icomandi seguenti:
Ad esempio, per formattare una scheda di memoria PCMCIA in un’unitàdisco con il nome di dispositivo /dev/dsk/c1t6d0s2 , digitare:
Per formattare una scheda di memoria con un file system MS-DOS, digitareuno dei comandi seguenti:
o
Ad esempio, per formattare una scheda di memoria PCMCIA in un’unitàdisco con il nome di dispositivo /dev/dsk/c1t6d0s2 , digitare:
o
% fdformat nome_dispositivo% newfs nome_dispositivo
% fdformat /dev/dsk/c1t6d0s2% newfs /dev/dsk/c1t6d0s2
% fdformat -d nome_dispositivo
% fdformat -t dos nome_dispositivo
% fdformat -d /dev/dsk/c1t6d0s2
% fdformat -t dos /dev/dsk/c1t6d0s2
Uso delle schede PCMCIA 247
G
Avvertenza – La rimozione di una scheda di memoria PCMCIA attivataproduce un errore del sistema.
▼ Attivazione di una scheda di memoria PCMCIA
♦ Per attivare una scheda di memoria PCMCIA con un file system UNIX,digitare:
Se non esiste una directory /mnt , digitare:
Ad esempio, per attivare un file system UNIX nella directory /mnt diun’unità disco con indirizzo c1t6d0s2 , digitare:
♦ Per attivare una scheda di memoria PCMCIA con un file system MS-DOS,digitare:
Se non esiste una directory /pcfs , digitare:
Ad esempio, per attivare un file system MS-DOS nella directory /pcfs diun’unità disco con indirizzo c1t6d0s2 , digitare:
# mount nome_dispositivo directory_di_attivazione
esempio# mkdir /mnt
esempio# mount /dev/dsk/c1t6d0s2 /mnt
# mount -F pcfs nome_dispositivo directory_di_attivazione
esempio# mkdir /pcfs
esempio# mount -F pcfs /dev/dsk/c1t6d0s2 /pcfs
!
248 Guida avanzata a Solaris — dicembre 1995
G
Copia dei file
Si possono usare diversi comandi, come cp, rm, diff e ls , per copiare,cancellare, confrontare ed elencare le directory disponibili su una scheda dimemoria PCMCIA.
▼ Copia da un disco rigido a una scheda di memoria PCMCIA
♦ Digitare:
▼ Copia da una scheda di memoria PCMCIA a un disco rigido
♦ Digitare:
Se per errore si rimuove la scheda di memoria PCMCIA mentre è ancoraattivata, disattivare la directory di attivazione.
♦ Inserire la scheda di memoria nel socket PCMCIA e disattivare ladirectory di attivazione digitando:
Ad esempio:
▼ Abilitazione della gestione dei volumi
♦ Per abilitare la gestione dei volumi, digitare:
esempio# cp nomefile /pcfs/ nomefile
esempio# cp /pcfs/ nomefile /percorso/nomefile
# umount directory_di_attivazione
esempio# umount /pcfs
# /etc/init.d/volmgt start
Uso delle schede PCMCIA 249
G
Uso di una scheda seriale/modem PCMCIAPer informazioni sull’uso della scheda modem o seriale PCMCIA, vedere ilmanuale del prodotto.
Nomi di dispositivo per le schede seriali/modem PCMCIA
I nomi di dispositivo per le schede seriali PCMCIA vengono creati nelledirectory /dev/term e /dev/cua .
Questi nomi di dispositivo hanno la forma pc N
dove N è il numero di un socket PCMCIA.
Nella directory /etc/remote vengono creati otto elementi, corrispondenti aiprimi otto socket PCMCIA.
Schede seriali/modem PCMCIA e funzione Resume/Suspend di PowerManagement
Questa sezione contiene informazioni specifiche per i sistemi dotati di schedePCMCIA e in cui è installato il software Power Management. Per maggioriinformazioni su Power Management, vedere il manuale Power ManagementGuide.
Attenzione – Non inserire o rimuovere una scheda PCMCIA duranteun’operazione di sospensione o di ripresa operativa del sistema. In questi casi,infatti, la scheda PCMCIA non verrà riconosciuta.
Se un’applicazione accede a una scheda seriale/modem PCMCIA durante unasospensione del sistema, si può verificare una condizione di HANGUP checausi il termine dell’applicazione.
Ad esempio, se si utilizza il comando tip per accedere a una schedaseriale/modem PCMCIA mentre si cerca di sospendere il sistema, il comandotip verrà interrotto automaticamente alla ripresa del sistema. Altreapplicazioni, come UUCP o PPP, potrebbero cercare di accedereautomaticamente alla scheda seriale o modem PCMCIA.
!
250 Guida avanzata a Solaris — dicembre 1995
G
251
Indice analitico
Simboli, 208-211-, uso per le opzioni dei comandi, 21!, Vedere punto esclamativo (!)#, Vedere cancelletto (#)$, Vedere simbolo del dollaro ($)%, Vedere simbolo di percentuale (%)&, Vedere e commerciale (&)*, Vedere asterisco (*)+, indicatore di raccoglitori in mailx , 117., Vedere punto (.).., directory di livello superiore, 36, 46/, Vedere barra (/):, Vedere due punti (:);, Vedere punto e virgola (;)>, simbolo di redirezione, 21?, Vedere punto interrogativo (?)@, Vedere chiocciola (@)\, Vedere barra rovesciata (\)\<, comando di ricerca di vi , 91\>, comando di ricerca di vi , 91^, Vedere apice (^)|, simbolo di pipe, 22~, Vedere tilde (~ ); comandi tilde (mailx )
Numeri-9 , opzione (comando kill ), 68
A-a , opzione
comando lpstat , 138comando ls , 46
A, comando (vi ), 80a, comando (vi ), 80abilitazione
del tasto Compose, 195-196di servizi delle porte seriali, 223
acceleratori, Vedere equivalenti da tastieraAdministration Tool, Vedere admintool
admintool , 223-228gruppi, 223host, 223, 227introduzione, 190, 223-224porte seriali, 223, 228software, 224stampanti, 223, 228uso, 224-225utenti, 223
affaticamento visivo, riduzione, 167Vedere anche calibrazione
aggiornamentosistemi SPARC, 187
252 Guida avanzata a Solaris — dicembre 1995
sistemi x86, 187aggiunta
di funzionalità fax/modem, 229di gruppi, 223di host, 223, 227di profili utente, 223di servizi delle porte seriali, 223, 228di software, 224di stampanti, 223, 227di un testo (vi ), 80di un’interfaccia RS-232, 229
aging delle password, 65aiuto on-line, Vedere guida on-linealias (C shell), 156alias (di posta elettronica), 119-125
configurazionenel file .mailrc , 120-121nel file /etc/aliases , 122-125
confronto tra il file .mailrc e il file/etc/aliases , 125
definizione, 119privati, 120pubblici, 122uso di maiuscole e minuscole, 123uso per l’invio dei messaggi
alias di .mailrc , 121alias di /etc/aliases , 124-125
alias , variabile d’ambiente, 156aliases , file, Vedere /etc/aliases , filealtri, categoria di utenti, 44ambiente di visualizzazione,
modifica, 167-169amministratore di sistema, funzioni, 1, 3anello di default dei menu, xviiiAnnulla cancellazione, equivalente da
tastiera, 5Annulla, equivalente da tastiera, 5annullamento
della cancellazione dei messaggi, 108delle modifiche (vi ), 83di un annullamento (vi ), 83di una connessione remota, 144di una ricerca e sostituzione, 93di una richiesta di stampa, 139-140
di una visualizzazione, 25antiriflesso, trattamento, 168apertura di un file
con ex , 94con vi , 72equivalente da tastiera, 5
apice (^)comando di inizio riga (vi ), 78, 91ricerca, 60uso come operatore di grep , 59, 61
applicazioni, interruzione anomala, 249Apri (file), equivalente da tastiera, 5Apri (finestra), equivalente da tastiera, 5apropos , comando, 25asterisco (*)
indicatore di messaggi salvati inmailx , 115
ricerca, 60uso come carattere speciale
in grep , 59-60per la cancellazione dei file, 31per la copia dei file, 30per la modifica delle
autorizzazioni, 49, 52per la ricerca in vi , 92
uso come metacarattere, 58uso come operatore di grep , 59-60,
61-auth , opzione (comando openwin ), 210Automated Security Enhancement Tool
(ASET), 193autorizzazioni, 44-53
Vedere anche protocolli diautorizzazione
assolute, 50-53descrizione, 44di default
descrizione, 48impostazione, 159-160
di esecuzioneassolute, 50, 51-53relative, 44, 47, 48-49
di letturaassolute, 50, 51-53
Indice analitico 253
relative, 44, 47, 48di scrittura
assolute, 50, 51-53relative, 44, 47
modifica, 47-53, 159-160uso del carattere speciale (*), 49, 52visualizzazione, 45-46
avviodi admintool , 224di mailx , 102di OpenWindows, Vedere
OpenWindows, proceduradi avvio
di una Finestra di comando, 17di una Shell, 17di vi , 72-73
azzeramento dello schermo (vi ), 74
B~b, comando (mailx ), 126-B , opzione (utility fdformat ), 234-b , opzione (utility fdformat ), 234B, comando (vi ), 78b, comando (vi ), 78“back”, comando (vi ), 78Back Space, uso in vi , 79background, esecuzione dei comandi
in, 23barra (/)
comando di ricerca di vi , 90indicatore della directory root, 33
barra rovesciata (\)comandi di ricerca \< e \> (vi ), 91ricerca, 60uso come carattere di escape, 58, 61-
62, 90uso come metacarattere, 58uso per la continuazione della riga di
comando, 19barra spaziatrice, uso in vi , 79barra verticale (|), uso per la
redirezione, 22Bcc: , prompt di mailx , 112, 126
bdiff , comando, 41/bin , directory, 33/bin/csh , comando, 152
Vedere anche C shell/bin/ksh , comando, 152
Vedere anche Korn shell/bin/sh , comando, 152
Vedere anche Bourne shellBootparams , comando, 193bottom , modificatore, 15Bourne shell
avvio rapido di OpenWindows, 10comando di avvio, 152uso come default, 2guida on-line, 3indicazione della directory home, 35profilo utente, Vedere .profile , fileprompt di sistema, 154, 157variabili d’ambiente, Vedere
.profile , filebuffer (vi ), 75
denominati, 86
C~c , comando (mailx ), 112, 126-c , opzione
comando lp , 133comando lpstat , 138
C shellavvio rapido di OpenWindows, 10comando di avvio, 152guida on-line, 3indicazione della directory home, 35profili utente, Vedere .cshrc , file;
.login , fileprompt di sistema, 154, 158ripetizione dei comandi, 20variabili d’ambiente, Vedere .cshrc ,
filec , comando (mailx ), 116C, comando (vi ), 82c , opzione (comando tar ), 237Calibratore, 166
254 Guida avanzata a Solaris — dicembre 1995
avvio, 172messaggi di errore, 177-179problemi di allocazione, 179uscita, 176uso, 171-176
calibrazionedi monitor a colori, 165-179interruzione, 176introduzione, 165-167strumento
collegamento, 171errori, 177-178uso, 166
Vedere anche monitorcambiamento
del prompt di sistema, 157-158del protocollo di autorizzazione, 210della password, 64-65di maiuscole e minuscole (vi ), 97di modalità in vi , 73di nome
a un file, 30a una directory, 38
CAN (campus area network)definizione, 141Vedere anche reti
cancel , comando, 139-140, 188cancellazione
del file .xinitrc , 8, 184della variabile d’ambiente
OPENWINHOME, 6-7, 182-183di directory, 39di errori di battitura, 18, 19di file, 31
temporanei, 44di gruppi, 223di host, 223di messaggi di mailx , 108-109
per blocco del programma, 111prima dell’invio, 112, 126
di profili utente, 223di servizi delle porte seriali, 223, 228di software, 224di stampanti, 223, 228di un testo
con ex , 89con vi , 83-84
nella riga di comando, 18ricorsiva, 39
cancellazione, annullamento, equivalenteda tastiera, 5
cancelletto (#)indicatore di righe commentate nel
file /etc/aliases , 124prompt dell’utente root, 122, 154uso nelle password, 64uso per la commentazione, 6, 183
Caps Lock, uso in vi , 74carattere di escape (\), 58, 61-62, 90caratteri
cancellazione (vi ), 83sostituzione (vi ), 82trasposizione (vi ), 82
caratteri specialiasterisco (*)
uso con grep , 59-60uso per la cancellazione dei
file, 31uso per la copia dei file, 30uso per la modifica delle
autorizzazioni, 49, 52uso per la ricerca in vi , 92
punto (.), uso per la ricerca in vi , 91Caratteristiche area di lavoro
file .Xdefaults, 185menu Programmi
personalizzazione, 186personalizzazione dei font, 163
Caratteristiche, equivalente da tastiera, 5caratterizzazione, dati di, 165casella postale, 102, 154, 188
Vedere anche mailx
cat , comando, 31cc , comando (vi ), 81Cc: , prompt (mailx ), 112, 126cd , comando, 34-36, 154CDPATH, variabile d’ambiente, 154chiocciola (@)
Indice analitico 255
negli indirizzi di postaelettronica, 102
uso nelle password, 64chiusura, Vedere uscitachmod, comando
autorizzazioni assolute, 50-53autorizzazioni relative, 47-49e comando umask, 159-160
client_program , programma, 215:co , comando (ex ), 88colori, visualizzazione ottimale, 165comandi, 17-25
Vedere anche comandi tilde (mailx )alias (solo C shell), 156e variabile d’ambiente PATH, 154, 155esecuzione in background, 23esecuzione remota, 148-149file eseguibili, 27guida on-line, 3, 24-25inserimento, 17, 18-23
comandi lunghi, 19concetti base, 18correzione degli errori di
battitura, 18, 19opzioni, 21ripetizione dei comandi in vi , 86ripetizione di comandi
precedenti, 20-21su un sistema remoto, 148-149
lunghi, 19opzioni, 21piping dell’output, 22redirezione dell’output, 21-22ricerca per parole chiave, 25ripetizione, 20-21
in vi , 86sintassi, 24stato, 66uso di maiuscole e minuscole, 18
comandi tilde (mailx )~?, 125~. , 125~b, 126~c , 112, 126~d, 126
~f , 126~h, 113, 126~m, 113, 126~p, 113, 126~q, 126~r , 114, 126~s , 126~t , 126~v , 119~w, 126~x , 126concetti base, 125elencazione, 126inserimento letterale di un tilde, 125sommario, 125
commentazionedella variabile d’ambiente
OPENWINHOME, 6-7di righe del file /etc/aliases , 124
Compose, tasto,abilitazione/disabilitazione, 195-196
concatenazione di file, 31confronto tra file, 39-41contatori, per la ripetizione dei comandi
(vi ), 86(continuare): , messaggio
(mailx ), 119contrasto, regolazione sui monitor, 170Control, tasto, rimappatura (solo
x86), 200-204controllo degli accessi
riferito all’host, 209, 211-212riferito all’utente, 208, 211-212
convert_to_Xdefaults ,programma, 182
copiadalla clipboard, equivalente da
tastiera, 5di comandi precedenti, 20-21di directory, 38
remota, 147di file, 29-30
prima della stampa, 133
256 Guida avanzata a Solaris — dicembre 1995
remota, 147-148di messaggi
in un file, 115-116in un raccoglitore, 116-117
di righein ex , 88in vi , 84-85tra file (vi ), 95
equivalente da tastiera, 4nella clipboard, equivalente da
tastiera, 4ricorsiva, 38
copia per conoscenza (mailx ), 112, 126copia silente (mailx ), 112, 126Copia, equivalente da tastiera, 4copie, numero per la stampa, 132, 133correzione di errori di battitura
Vedere anche modifica, testoin un messaggio di posta
elettronica, 103in vi , 73nella riga di comando, 18, 19
cp , comando, 29-30, 38cpio , comando, 231cpu, tempo, 66crash, ripristino (vi ), 96creazione
di un filecon il comando touch , 29con vi , 72equivalente da tastiera, 5
di una directory, 37di una riga (vi ), 81
csh , comando, 152Vedere anche C shell
.cshrc , fileavvio rapido di OpenWindows, 10, 11descrizione, 152posizione, 152variabili d’ambiente, 153-159
alias , 156comando set history , 158comando set noclobber , 158comando set prompt , 158
OPENWINHOME, 6-7, 182, 183PATH, 155umask, 159-160variabili più comuni, 153-155
visualizzazione, 46Ctrl, uso nelle password, 64Ctrl-B, comando (vi ), 80Ctrl-C, comando, 25
mailx , 112, 126Ctrl-D, comando
mailx , 103, 125vi , 80
Ctrl-F, comando (vi ), 80Ctrl-L, comando (vi ), 74Ctrl-U, comando (vi ), 80~Ctrl-Z, comando, sospensione di una
connessione remota, 145~~Ctrl-Z, comando, sospensione di una
connessione remota, 146cursore, Vedere spostamento nei file (vi )cw, comando (vi ), 81
D:d , comando (ex ), 89~d, comando (mailx ), 126-d , opzione
comando lp , 130-131, 133comando lpstat , 138comando passwd , 65utility fdformat , 234, 243
d, comando (mailx ), 108-109D, comando (vi ), 84d0 , comando (vi ), 84d1G, comando (vi ), 84date , comando, 18dati, protezione sulle schede
PCMCIA, 231-232dd , comando (vi ), 84, 85dead.letter , file, 112, 126DECnet internetworking (DNI), 217-222
configurazione, 218introduzione, 218
Indice analitico 257
visualizzazione di client remoti susistemi OpenWindows, 219
visualizzazione di client remoti susistemi VAX, 219-222
DECwindows, internetworking conOpenWindows, Vedere DECnetinternetworking (DNI)
defaultautorizzazioni, 48, 159-160directory, 28font, 161modalità di vi , 73prompt di sistema, 17, 154protocollo di autorizzazione, 210pulsanti del mouse, xvii, xviiishell, 2, 152stampante, 154
.defaults , file (SunView), conversionein .Xdefaults(OpenWindows), 182
deriva del colore, sui monitor, 166destinatari dei messaggi di posta
elettronica, 111, 113destra
aggiunta di un testo a destra delcursore (vi ), 80
cancellazione di una riga a destra delcursore (vi ), 84
spostamento verso destra (vi ), 78, 79-dev , opzione (comando openwin ), 14-16/dev/cua , directory, 249/dev/term , directory, 249devconfig , sistemi x86, 6/devices , directory, 189df , comando, 68dG, comando (vi ), 84diff , comando, 39-41diff3 , comando, 41dimensioni dei file, visualizzazione, 45directory, 32-39
autorizzazioni, 44-53assolute, 50-53descrizione, 44
impostazioni di default, 48, 159-160
modifica, 47-53, 159-160visualizzazione, 45-46
cambiamento di nome, 38cancellazione, 39concetti generali, 27copia, 38copia remota, 147corrente
determinazione, 34corrente (.), 46creazione, 37definizione, 28di default, 28di lavoro, 34-36
spostamento, 34-36visualizzazione, 34
di livello superiore (..), 36, 46elencazione, 68home
definizione, 28, 154nella struttura gerarchica, 33spostamento nella, 28, 35-36uso per il login remoto, 143, 206
modifica delle autorizzazioni, 47-53,159-160
percorsi, 33, 37variabili d’ambiente, 154, 155
raccoglitori, 116-117radice, 33ricerca, Vedere ricerca, file e directoryroot (/), 33sottodirectory, 33-34spostamento, 34-36, 38, 154stato, visualizzazione, 45-46struttura gerarchica, 33-34variabili d’ambiente, 154, 155variazioni nella struttura, 189visualizzazione della directory di
lavoro, 34visualizzazione delle
autorizzazioni, 45-46visualizzazione dello spazio
occupato, 68visualizzazione dello stato, 45-46
258 Guida avanzata a Solaris — dicembre 1995
visualizzazione remota, 148disabilitazione
del tasto Compose, 195-196della gestione dei volumi, 245di servizi delle porte seriali, 223, 228
dischetti, e schede PCMCIA, 229dischi
convenzioni di denominazione, 189gestione dello spazio, 68
dischi rigidi, copia di file su schedePCMCIA, 243
DISPLAY, variabile d’ambiente, 206, 215,219
dispositivi, 28, 189, 190ditroff , programma, 71divisione delle righe (vi ), 82DNI, Vedere DECnet internetworking
(DNI)DNI_X_ENABLE, variabile
d’ambiente, 218, 221dnilogin , comando, 219documenti, definizione, 27driver, caricamento nel kernel, 190du , comando, 68due punti (:)
uso negli alias di postaelettronica, 122
uso nei comandi di vi , 74dump/restore , comando, 231duplicazione, Vedere copiadw, comando (vi ), 84
Ee commerciale (&)
metacarattere, 58prompt di mailx , 105ricerca, 60uso come carattere di escape, 62uso per il ritorno del prompt di
sistema, 162, 164uso per l’esecuzione in
background, 23
e, comando (vi ), 78editazione, Vedere modificaeditor di testo
personalizzazione dei font, 161-164Vedere anche vi , xv
eject , comando, 244elencazione
Vedere anche visualizzazionedei comandi di mailx , 126dei comandi tilde (mailx ), 126dei file, 29, 45-46dei file nascosti, 46dei font disponibili
(OpenWindows), 164dei messaggi, 106dei raccoglitori (mailx ), 118delle directory, 68
eliminazione, Vedere cancellazionee-mail, Vedere posta elettronica“end”, comando (vi ), 78env , comando, 153equivalenti da tastiera (acceleratori)
(OpenWindows), xviii, 4-5errore di sistema, 244errori
del gestore del dispositivo inCalibratore, 178
di inizializzazione del modulo inCalibratore, 178
di installazione dei packageKCMS, 177
messaggio “Il modulo non è riuscito amisurare correttamente i datidi luminanza”, 178
messaggio “Impossibile aggiornare iprofili del dispositivo”, 177
messaggio “Impossibile caricare ilprofilo”, 177
messaggio “Impossibile configurare ifile dei profili in/etc/openwin ”, 177
messaggio “Impossibile creare iprofili della visuale”, 177
messaggio “Impossibile determinare
Indice analitico 259
il tempo di integrazionedello strumento”, 178
messaggio “Impossibile determinareil valore dei campi di refreshdello strumento”, 178
messaggio “Impossibile determinareil valore di sensibilità dellostrumento”, 178
messaggio “Impossibile impostare ilvalore di sensibilità dellostrumento”, 178
messaggio “Impossibile impostare ilvalore medio sullostrumento”, 178
messaggio “Impossibile inizializzarela struttura dei dati dicalibrazione”, 177
messaggio “Impossibile inizializzarela struttura di dati dellavisuale”, 177
messaggio “Impossibile leggere ilnumero di versione dellostrumento”, 178
messaggio “L’utility Calibratore nonfunzionacorrettamente”, 178
messaggio “Memoria di swapinsufficiente”, 177
messaggio “Nessuna risposta dallostrumento dicalibrazione”, 178
misurazione incompleta dei moduliin Calibratore, 179
profilo non valido in Calibratore, 179errori di battitura, Vedere correzione di
errori di battituraEsc, uso per cambiare modalità in vi , 73,
74escape
a un comando della shell(mailx ), 125
dei caratteri di escape, 62, 90Esci , comando (OpenWindows), 12esecuzione remota dei comandi, 148-149eseguibili, definizione, 27
espressioni regolari, 58-60/etc/aliases , file, 122-125
confronto con il file .mailrc , 125uso per l’invio dei messaggi, 124-125configurazione degli alias, 122-125
/etc/fstab , directory, 189/etc/fstab , file, 188/etc/group , file, 223/etc/hosts , file, 223, 227/etc/hosts.equiv , file, 142, 147, 149/etc/lp , directory, 189, 223/etc/openwin/devdata/profiles ,
directory, 167/etc/passwd , file, 142, 147, 149, 223/etc/printcap , directory, 189/etc/profile , file, 152/etc/remote , directory, 249/etc/termcap , directory, 189/etc/ttytab , file, 190/etc/vfstab , file, 188, 189ex , comandi, 75, 87-89
apertura dei file (:n ), 94cancellazione di righe (:d ), 89copia di righe (:co ), 88descrizione, 75, 87impostazione dei parametri (:set
all ), 95inserimento di file (:r ), 93numerazione delle righe (:set nu ,
:set nonu ), 87ricerca e sostituzione (:g ), 92-93salvataggio delle modifiche
e uscita (:wq ), 76senza uscire (:w ), 76
spostamento di righe (:m), 88uscita
e salvataggio (:wq ), 76senza salvare (:q , :q! ), 76
uso di maiuscole e minuscole (:setic , :set noic ), 90
-exec , opzione (comando find ), 43exit , comando (SunOS), 3
260 Guida avanzata a Solaris — dicembre 1995
F~f , comando (mailx ), 126-f , opzione
comando lpstat , 138programma mailx , 118utility fdformat , 234
f , opzione (comando tar ), 237, 238fastboot , comando, 190fasthalt , comando, 190fax/modem, funzionalità, 229fg , comando, riattivazione di una
connessione remota, 146file, 27-32, 39-53
Vedere anche directory, xvapertura
con ex , 94con vi , 72equivalente da tastiera, 5
autorizzazioni, 44-53assolute, 50-53descrizione, 44impostazioni di default, 48, 159-
160modifica, 47-53, 159-160visualizzazione, 45-46
cambiamento di nome, 30cancellazione, 31
dall’inizio del file (vi ), 84dei file temporanei, 44fino alla fine del file (vi ), 84
concatenazione, 31concetti generali, 27-28confronto, 39-41
tra file lunghi, 41copia, 29-30
di messaggi in un file, 115-116di righe tra file, 95fino alla fine del file (ex ), 88prima della stampa, 133remota, 147-148su schede PCMCIA, 243
creazionecon il comando touch , 29con vi , 72
equivalente da tastiera, 5definizione, 27-28di avvio di OpenWindows, 7-9di inizializzazione, 151-152
Vedere anche .cshrc , file;.login , file; .profile ,file
di sistema, posizione in SunOS5.x, 188
dimensioni, visualizzazione, 45elencazione, 29, 45-46
dei file nascosti, 46eseguibili, 27inserimento
in un altro file, 93in un messaggio di posta
elettronica, 113, 126invio di un messaggio direttamente
ad un file, 117lettura dei messaggi salvati in un
file, 118lunghezza, visualizzazione, 45marcatura di fine file in mailx , 103,
125modifica delle autorizzazioni, 47-53,
159-160modifica, Vedere vinascosti, 46
visualizzazione, 46nomi
cambiamento, 30nome base, 42unicità, 33
percorsi, 33, 37protezione dalla scrittura (solo C
shell), 158punto, 46ricerca, 41-44
Vedere anche ricerca, file edirectory
salvataggio di messaggi in unfile, 115-116
salvataggio, equivalente da tastiera, 5spostamento, 30stampa, Vedere stampastato, visualizzazione, 45-46
Indice analitico 261
temporanei, cancellazione, 44uso dei caratteri speciali, 30, 31visualizzazione del contenuto, 31visualizzazione del tipo, 32visualizzazione delle
autorizzazioni, 45-46visualizzazione dello stato, 45-46
file di autorizzazioni dei client, 212-213File Manager (OpenWindows), 27file system
gestione dello spazio sul disco, 68struttura gerarchica, 33variazioni, 189
file , comando, 32filtro, uso di grep come, 57, 67find , comando, 41-44finestra caratteristiche, visualizzazione,
equivalente da tastiera, 5Finestra di comando
uso per l’inserimento di comandi, 17,19
uso su un sistema remoto, 206-207finestre
Vedere anche OpenWindowsapertura da un’icona, equivalente da
tastiera, 5chiusura ad icona, equivalente da
tastiera, 5personalizzazione dei font, 161-164spostamento tra due schermi, 16
finger , comando, 110fkeys , file, 200-201-fn , opzione, 162-164font (OpenWindows)
a spaziatura proporzionale, 161elencazione dei font disponibili, 164installazione su un server
DECwindows, 219-222personalizzazione, 161-164
formattazione di schede PCMCIA, 233-235, 240-243, 245-247
fuso orario, impostazione, 155
G:g , comando (ex ), 92-93G, comando (vi ), 93gestione dei sistemi, Vedere admintool
gestione dei volumi, disabilitazione, 245GrayScale, visuali, 167grayvis , opzione (comando
openwin ), 13grep , comando, 55-62
caratteri di escape, 58, 61-62espressioni regolari, 58-60, 61metacaratteri
ricerca, 60uso come operatori, 58-61
operatore not, 58ricerche con più parole, 58ricerche generali, 55-56uso come filtro, 57, 67uso di maiuscole e minuscole, 56virgolette singole e doppie, 58, 61-62
-group , opzione (comando find ), 43group , file, 223gruppi
gestione, 223modifica delle autorizzazioni, 49uso per l’invio dei messaggi, 119-125
gruppi di file, modifica (vi ), 94-95gruppo, categoria di utenti, 44guida on-line
ai comandi, 3, 24-25al programma mailx , 107, 126-127equivalente da tastiera, 4
H~h, comando (mailx ), 113, 126-h , opzione (comando lp ), 133h, comando
mailx , 107vi , 78
h- , comando (mailx ), 107H, comando (vi ), 79“high”, comando (vi ), 79
262 Guida avanzata a Solaris — dicembre 1995
history , comando, 20, 154HISTORY, variabile d’ambiente, 154, 159$home, comando, 35, 36/home , directory, 33home, directory
definizione, 28, 154nella struttura gerarchica, 33spostamento nella, 28, 35-36uso per il login remoto, 143, 206
HOME, variabile d’ambiente, 154, 206host, gestione, 223, 227/hosts , directory, 33hosts , file, 223, 227hosts.equiv , file, 142, 147, 149
II , comando (vi ), 81i , comando (vi ), 73-74, 80icone, equivalenti da tastiera, 5ID, uso per annullare una richiesta di
stampa, 139idle, stato dei processi, 66impostazione dei parametri (vi ), 95Incolla, equivalente da tastiera, 5init , comando, 190inoltro dei messaggi di posta
elettronica, 126inserimento
di comandi, Vedere comandi,inserimento
di filemailx , 113, 126vi , 93
di messaggi (mailx) , 113, 126di schede PCMCIA, 233di un file in un altro (vi ), 93di un testo (vi ), 73-74, 80-81
ripetutamente, 86Vedere anche copia; spostamento
installazione di Solaris 2.5, 189interfaccia RS-232, aggiunta a una
SPARCstation, 229
internetworkdefinizione, 142Vedere anche reti
internetworking tra OpenWindows eDECwindows, 217-222
configurazione con DECnet, 218introduzione, 217visualizzazione di client remoti su
sistemi OpenWindows, 219visualizzazione di client remoti su
sistemi VAX, 219-222interruzione
di una calibrazione, 176di una visualizzazione, 25Vedere anche annullamento
intestazionistampa, 133Vedere mailx , intestazioni
invio di messaggi, Vedere mailx , invio dimessaggi
JJ , comando (vi ), 82j , comando (vi ), 78
K-k , opzione (comando df ), 68k , comando (vi ), 78KCMS, installazione non corretta dei
package, 177Vedere anche Kodak Color
Management Systemkcms_calibrate , programma, 172kdmconfig , comando, 193/kernel , directory, 189kernel, driver caricati, 190kill , comando, 67Kodak Color Management System
(KCMS), scopo, 165Korn shell
avvio rapido di OpenWindows, 10comando di avvio, 152
Indice analitico 263
guida on-line, 3profilo utente, Vedere .profile , fileprompt di sistema, 154, 157variabili d’ambiente, Vedere
.profile , fileksh , comando, 152
Vedere anche Korn shell
L-l , opzione
comando lpstat , 136-137comando ls , 45comando ps , 66comando rlogin , 143comando rusers , 150
L, comando (vi ), 79l , comando (vi ), 78, 79LAN (local area network)
Vedere anche retiLAN (local area network),
definizione, 141LANG, variabile d’ambiente, 154LD_LIBRARY_PATH, variabile
d’ambiente, 206left , modificatore, 15lefty.data , file, 196-198lettura dei messaggi, Vedere mailx , lettura
dei messaggi/lib , directory, 33libcps , libreria, versioni precedenti, 207,
209libdni , libreria, 218, 221line printer, sottosistema, Vedere stampalingua locale, 154lingua, impostazione con la variabile
d’ambiente, 154login
con un altro nome utente, 143da una shell remota, 148-149identificazione della shell di
login, 152, 153nome di login, definizione, 154
procedura base, 1-2profili utente per le shell di login, 152remoto, 142-146, 206-207shell di default, 2, 152
.login , filedescrizione, 152posizione, 152variabili d’ambiente, 153-159visualizzazione, 46
LOGNAME, variabile d’ambiente, 154logout, 3, 12logout , comando, 144“low”, comando (vi ), 79/lp , directory, 223lp , comando, 77, 129-133, 188
sommario delle opzioni, 132-133LP, servizio di stampa, Vedere stampaLPDEST, variabile d’ambiente, 154lpq , comando, 188lpr , comando, 188lprm , comando, 188lpstat , comando, 133-138, 188
sommario delle opzioni, 137-138ls , comando, 29, 45-46luce ambiente, e monitor, 168luminosità, regolazione sui monitor, 170lunghezza dei file, visualizzazione, 45
M:m , comando (ex ), 88~m, comando (mailx ), 113, 126-m, opzione (comando lp ), 131, 133-m time , opzione (comando find ), 43M, comando (vi ), 79magic cookie, protocollo di
autorizzazione, Vedere MIT-MAGIC-COOKIE-1, protocollo diautorizzazione
MAIL, variabile d’ambiente, 154.mailrc , file
configurazione degli alias, 120-121
264 Guida avanzata a Solaris — dicembre 1995
confronto con il file/etc/aliases , 125
variabile set askcc , 112variabile set folder , 116
mailtool , programma, 188mailx , 101-127, 188
alias, Vedere aliasavvio, 102cancellazione dei messaggi
dal file mbox
e salvataggio altrove, 115-
117
senza salvare, 108-109per blocco del programma, 111prima dell’invio, 112, 126
casella postale, 102, 154comandi base, 101-119comandi tilde, Vedere comandi tilde
(mailx )copia dei messaggi
in un file, 115-116in un raccoglitore, 116-117
copie per conoscenza, 112, 126copie silenti, 112, 126correzione degli errori di
battitura, 103destinatari
di copie per conoscenza, 113invio dei messaggi a più
destinatari, 111elencazione dei comandi, 126elencazione dei messaggi, 106file dead.letter , 112, 126file mbox, 102, 106guida on-line, 107, 126-127inoltro dei messaggi, 126inserimento di file nel messaggio
corrente, 113, 126inserimento di messaggi salvati nel
messaggio corrente, 113, 126intestazioni
descrizione, 106-107, 115prompt, 103, 112, 126visualizzazione, 106-107
introduzione, 101-106invio dei messaggi, 102-103, 109-114
a gruppi di utenti, 119-125a più destinatari, 111a un alias di .mailrc , 121a un alias di
/etc/aliases , 124-125cancellazione dei messaggi non
inviati, 112copie per conoscenza, 112, 126copie silenti, 126direttamente ad un file o a un
raccoglitore, 117inserimento di file nel messaggio
corrente, 113, 126inserimento di messaggi salvati
nel messaggiocorrente, 113
messaggi non recapitati, 111procedura base, 102-103, 109-111
lettura dei messaggida file o raccoglitori, 118-119procedura base, 104-105, 106-107
lunghezza massima delle righe, 111messaggi non recapitati, 111messaggio (continuare): , 119nome di login, 102prompt To: , 113, 126raccoglitori, 116-119
elencazione, 118invio di un messaggio
direttamente a unraccoglitore, 117
lettura dei messaggi, 118-119raccoglitore precedente, 119salvataggio e copia dei
messaggi, 116-117spostamenti tra i raccoglitori e la
casella postale, 118-119recupero dei messaggi cancellati, 108risposta ai messaggi, 114, 126salvataggio dei messaggi
dal file mbox in un altro file, 115-116
dal file mbox in unraccoglitore, 116-117
Indice analitico 265
messaggio corrente, 126nel file mbox, 102, 106
stampa dei messaggi, 109, 126uscita, 105-106, 109, 126uso con vi , 119versione, 104, 107visualizzazione degli indirizzi, 109-
110maiuscole
cambiamento (vi ), 97uso negli alias (file
/etc/aliases ), 123uso nei comandi, 18
di vi , 74, 78uso per la ricerca di file, 56uso per la ricerca in vi , 90
man, comando, 3man, comando, 24MANSECTS, variabile d’ambiente, 154manuale di riferimento online, 3mappa dei colori, errore di
allocazione, 179mbox, file
Vedere anche mailxdescrizione, 102, 106
meccanismi di controllo degliaccessi, 208-209
Vedere anche autorizzazioni ; sicurezzamemoria, schede, Vedere schede PCMCIAmenu
Vedere anche Programmi, menu(caratteristiche area dilavoro)
anello di default, xviiivisualizzazione completa, xviii
MENU, pulsante del mouse, xviimessaggi di errore
“Il modulo non è riuscito a misurarecorrettamente i dati diluminanza”, 178
“Impossibile aggiornare i profili deldispositivo”, 177
“Impossibile caricare il profilo”, 177“Impossibile configurare i file dei
profili in/etc/openwin ”, 177
“Impossibile creare i profili dellavisuale”, 177
“Impossibile determinare il tempo diintegrazione dellostrumento”, 178
“Impossibile determinare il valore deicampi di refresh dellostrumento”, 178
“Impossibile determinare il valore disensibilità dellostrumento”, 178
“Impossibile impostare il valore disensibilità dellostrumento”, 178
“Impossibile impostare il valoremedio sullo strumento”, 178
“Impossibile inizializzare la strutturadei dati di calibrazione”, 177
“Impossibile inizializzare la strutturadi dati della visuale”, 177
“Impossibile leggere il numero diversione dellostrumento”, 178
“L’utility Calibratore non funzionacorrettamente”, 178
“Le ultime modifiche non sono statesalvate”, 76
“Memoria di swap insufficiente”, 177“Nessuna risposta dallo strumento di
calibrazione”, 178“Spiacente”, 64, 65“straniero: unknown host”, 144
Meta, tasto, 4, 200metacaratteri, uso con grep , 58“middle”, comando (vi ), 79migrazione
da Sunview a OpenWindowsversione 3.3 osuccessiva, 181-182
da versioni di OpenWindowsprecedenti alla 3.3 allaversione 3.3 osuccessive, 182-186
266 Guida avanzata a Solaris — dicembre 1995
minuscolecambiamento (vi ), 97uso negli alias (file
/etc/aliases ), 123uso nei comandi, 18
di vi , 74, 78uso per la ricerca di file, 56uso per la ricerca in vi , 90
MIT-MAGIC-COOKIE-1 , protocollo diautorizzazione
uso come default, 210, 212e file .Xauthorithy , 212descrizione, 209uso per l’abilitazione degli
accessi, 213mkdir , comando, 37modalità (vi ), 73-75
comando, 74inserimento, 73-74testo, 73-74ultima riga, 74
modem, gestione, 190, 223, 228modem, scheda, Vedere schede PCMCIAmodifica
degli host, 223dei gruppi, 223dei profili utente, 223dei servizi delle porte seriali, 223, 228del file .xinitrc , 8, 185dell’accesso al server, 211-214dell’ambiente di
visualizzazione, 167-169della configurazione delle
stampanti, 223, 227della tastiera, 195-204delle autorizzazioni, 47-53, 159-160di un testo
da vi , 73, 81-83dalla riga di comando, 18, 19in un messaggio di posta
elettronica, 103moduli, errori di misurazione, 179monitor
avvio di OpenWindows su più
schermi, 14-16calibrazione dei colori, 165-179deriva del colore, 166distanza visiva corretta, 169e avvio di OpenWindows, 13-16, 183file di descrizione, 167informazioni sui profili, 173-174luce ambiente, 168problemi di luminosità eccessiva, 171problemi di riflesso, 168regolazione, 169-171selezione per Calibratore, 172-174trattamento antiriflesso, 168
more , comando, 31mouse
funzioni di default dei pulsanti, xviirimappatura dei pulsanti, 195sistemi x86, 6
mv, comando, 30, 38
N-n , opzione (comando lp ), 133:n , comando (ex ), 94-n , opzione (comando lp ), 132N, comando (vi ), 90n, comando (vi ), 90-name , opzione (comando find ), 42navigazione, Vedere spostamento nei file-newer , opzione (comando find ), 43NIS+, 190
admintool e host, 227NIS, admintool e host, 227-noauth , opzione (comando
openwin ), 13, 208, 211nohup , comando, 23nolefty.data , file, 198-199nome di login
definizione, 1ricerca dei nomi di login di altri
utenti, 109-110nome utente, definizione, 1nomi
Indice analitico 267
dei filecambiamento, 30nome base, 42unicità, 33
delle directory, cambiamento, 38nome base, 42password, 63-64, 65Vedere anche maiuscole e minuscole
normal , file, 201-204not, operatore (!), 43nroff , programma, 71numerazione delle righe (vi ), 87Nuovo, equivalente da tastiera, 5
O-o , flag (comando find ), 43-o nobanner , opzione (comando
lp ), 133-o , opzione (comando lpstat ), 138O, comando (vi ), 81o, comando (vi ), 81olwm, 16, 183, 185openwin , comando, 9-16
opzione -auth , 210opzione -dev , 14-16opzione grayvis , 13opzione -noauth , 13, 208, 211opzioni speciali, 12-16
OpenWindowsVedere anche Administration Tool;
Finestra di comandoapplicazioni di rete, Vedere retie la variabile d’ambiente
OPENWINHOME, 6-7equivalenti da tastiera
(acceleratori), xviii, 4-5File Manager, 27font
elencazione, 164personalizzazione, 161-164
internetworking conDECwindows, 217-222
logout, 12
migrazione da SunView alla versione3.3 o successiva, 181-182
migrazione da versioni precedentialla 3.3 alla versione 3.3 osuccessiva, 182-186
modifiche alla tastiera, 195-199Posta Elettronica, 101, 120procedura di avvio, 5-11
avvio dell’ambiente utente, 9-11avvio su più schermi, 14-16, 183compatibilità con SunView, 181-
182compatibilità con versioni
precedenti alla 3.3, 182-186
con la variabile d’ambienteOPENWINHOME, 6-7, 182-183
con sicurezza di rete ridotta, 13file .xinitrc , 7-9, 183-185opzioni speciali, 12-16preparazione, 5-9procedura abbreviata, 9-11scelta del tipo di monitor, 13versioni precedenti alla 3.3, 5, 6-7
profili utente, 10sicurezza, Vedere sicurezzauscita, 12uso dei file di inizializzazione, 152uso dei profili utente, 152variabile d’ambiente
OPENWINHOME, 182-183OPENWINHOME, variabile d’ambiente, 6-7,
182-183.openwin-menu , file, 186operatore not (comando grep ), 58operazioni di blocco, Vedere copia;
cancellazione; spostamento/opt , directory, 189opzioni dei comandi, 21orologio di sistema, 155OWconfig , messaggi di errore, 178.OWdefaults , file, 185
268 Guida avanzata a Solaris — dicembre 1995
P~p, comando (mailx ), 113, 126-p , opzione (comando lpstat ), 136-137,
138P, comando (vi ), 85p, comando (vi ), 85, 95p, opzione (comando tar ), 238package, errori di installazione, 177pagina di intestazione, soppressione
(lp ), 133pagine man
descrizione, 3impostazione delle sezioni
disponibili, 154visualizzazione, 24
parolecancellazione (vi ), 84modifica (vi ), 81ricerca dell’inizio di una parola
(vi ), 91spostamento a fine parola (vi ), 78spostamento a inizio parola (vi ), 78spostamento alla parola successiva o
precedente (vi ), 78parole chiave, uso nella guida ai
comandi, 25passwd , comando, 64-66passwd , file, 142, 147, 149, 150, 223password, 63-66
messaggio di errore “Spiacente”, 64,65
aging, 65cambiamento, 64-66concetti base, 63-64definizione, 1inserimento, 2login remoto, 142quando cambiarla, 63scelta, 63-64, 65
PATH, variabile d’ambiente, 154, 155-156PCMCIA, Vedere schede PCMCIApercorsi, 33, 37
relativi, 37
variabili d’ambiente, 154, 155-159personalizzazione, 151-164
autorizzazioni dei file, 159-160file di inizializzazione, 151-152font (OpenWindows), 161-164introduzione, 151variabili d’ambiente, 153-159
PID (numero di identificazione deiprocessi), 66-68
pipingdei messaggi al comando lp , 109dell’output dei comandi, 22
con grep , 57, 67dell’output di du con sort , 69dell’output di ps con grep , 67
pixel, caratteristiche, 166pkginfo(1) , 189/platform/*/kernel/unix , file, 188porte seriali, gestione dei servizi, 223, 228posta elettronica
Vedere mailxvisualizzazione dei messaggi, 107
Posta Elettronica (OpenWindows), 101,120
Power Management, software, 232-print , opzione (comando find ), 42problemi
di avvio di OpenWindows, 11in vi , 74
procedura di avvio, 190procedura di shutdown, 190procedure abbreviate
avvio di OpenWindows, 9-11spostamento nella directory
home, 35-36processi
definizione, 66interruzione, 67numero di identificazione (PID), 66-
68stato, 66
.profile , fileavvio rapido di OpenWindows, 10
Indice analitico 269
descrizione, 152posizione, 152variabili d’ambiente, 153-159
HISTORY, 159OPENWINHOME, 6-7, 182-183PATH, 155, 156PS1 (prompt di sistema), 157umask (autorizzazioni dei
file), 159-160variabili più comuni, 153-155
visualizzazione, 46profili utente
gestione, 223profilo calibrato, monitor a colori, 166, 167profilo del sistema, file, 152profilo nominale
contenuto del file, 165regolazione, 165
profilo utenteVedere anche .cshrc , file; .login ,
file; .profile , filedefinizione, 1, 152gestione, 223posizione dei file, 152variabili d’ambiente, 153-159
Programmi, menu (Caratteristiche area dilavoro)
personalizzazione, 186personalizzazione dei font, 163
prompt di sistemacambiamento, 157-158descrizione, 17di default, 17, 154variabile d’ambiente per la
definizione, 154proporzionale, spaziatura
Vedere anche font (OpenWindows)proprietario, categoria di utenti, 44protezione dei dati sulle schede
PCMCIA, 232protocolli
di autorizzazione, 209-211MIT-MAGIC-COOKIE-1 , 209,
210-212, 213
SUN-DES-1, 210-211, 213, 214di rete, definizione, 142internetwork, definizione, 142
ps , comando, 66PS1, variabile d’ambiente, 154, 157-158PseudoColor, visuali, 167pulsanti del mouse, funzioni di
default, xviiipunto (.)
carattere speciale di ricerca (vi ), 91comando ~. (mailx ), 125indicatore della directory corrente, 46indicatore della riga corrente (ex ), 88ricerca, 60uso come carattere di escape, 62uso come metacarattere, 58uso come operatore di grep , 59, 61uso come prefisso dei file, 46visualizzazione dei file nascosti, 46
punto e virgola (;), uso come carattere diescape, 62
punto esclamativo (!)comando ~! (mailx ), 125operatore not, 43ricerca, 60uso come carattere di escape, 62uso come metacarattere, 58uso per la ripetizione dei
comandi, 20-21punto interrogativo (?)
comando ~? (mailx ), 125comando di ricerca di vi , 90ricerca, 60uso come carattere di escape, 62uso come metacarattere, 58uso per la guida on-line in
mailx , 107, 126punto-punto (..), directory di livello
superiore, 36, 46put, comando (vi ), 85, 95pwd, comando, 34
270 Guida avanzata a Solaris — dicembre 1995
Q:q! , comando (ex ), 76:q , comando (ex ), 76~q, comando (mailx ), 126-q , opzione (utility fdformat ), 234q, comando (mailx ), 105-106, 109
R:r , comando (ex ), 93~r , comando (mailx ), 114, 126-R , opzione (comando lpstat ), 138-r , opzione
comando cp , 38comando lpstat , 138comando rcp , 147comando rm, 39comando vi , 96
r , comandomailx , 114vi , 82
R, comando (mailx ), 114raccoglitori (mailx ), 116-119
elencazione, 118invio di un messaggio direttamente a
un raccoglitore, 117lettura dei messaggi salvati, 118-119raccoglitore precedente, 119salvataggio e copia dei
messaggi, 116-117spostamento tra i raccoglitori e la
casella postale, 118-119rcp , comando, 147-148, 213redirezione dell’output dei comandi, 21-
22registrazione cronologica dei
comandi, 20, 154, 159REGOLA, pulsante del mouse, xviiregolazione del profilo nominale, 165relay, definizione, 142Remote File Sharing (RFS), package, 189remoto, login, 142-146, 206-207, 227reti, 141-150
chiusura di una connessioneremota, 144
concetti generali, 141-142copia remota dei file, 147-148definizione, 141esecuzione di applicazioni in
rete, 142-146, 205-207esecuzione remota dei comandi, 148-
149internetworking tra OpenWindows e
DECwindows, 217-222configurazione con DECnet, 218introduzione, 217visualizzazione di client remoti
su sistemiOpenWindows, 219
visualizzazione di client remotisu sistemi VAX, 219-222
login remoto, 142-144con un altro nome utente, 143in un sistema sconosciuto, 144procedura base, 142senza directory home, 143
protocolli, definizione, 142sicurezza, 207, 207-215
avvio di OpenWindows consicurezza ridotta, 13
esecuzione di client remoti olocali con un altro nomeutente, 215
gestione dell’accesso alserver, 211-214
meccanismi di controllo degliaccessi, 208-209
precauzioni, 211protocollo di autorizzazione
MIT-MAGIC-COOKIE-1, 209, 210-212, 213
protocollo di autorizzazioneSUN-DES-1, 210-211, 213,214
sospensione di una connessioneremota, 145
verifica della posizione corrente, 146visualizzazione di informazioni sugli
utenti, 149-150
Indice analitico 271
Return, uso in vi , 78ricerca
all’indietro (vi ), 90di comandi, con parole chiave, 25di file, 41-44di file e directory, 55-62
caratteri di escape, 58, 61-62comandi generali, 55-56con virgolette singole e
doppie, 58, 61-62espressioni regolari, 58-61filtri, 57maiuscole e minuscole, 56operatore not, 58ricerche con più parole, 58uso dei metacaratteri, 58
di indirizzi di posta elettronica, 109-110
di metacaratteri, 60di ricorrenze precedenti (vi ), 90di ricorrenze successive (vi ), 90e sostituzione (vi ), 61, 89-93vi , 61, 89-93
Ricerca, equivalente da tastiera, 4ridisegno dello schermo (vi ), 74riflesso, riduzione sui monitor, 168riga di stato (vi ), 72, 73righe
aggiunta di un testo a fine riga(vi ), 80
annullamento delle modifiche(vi ), 83
cancellazionecon ex , 89con vi , 84
cancellazione della riga dicomando, 18
copiacon ex , 88con vi , 85tra file (vi ), 95
creazione (vi ), 81divisione (vi ), 82inserimento di un testo a inizio riga
(vi ), 81
modifica (vi ), 81ricerca dell’inizio delle righe (vi ), 91ricerca della fine delle righe (vi), 91spostamento
a fine riga (vi ), 78a inizio riga (vi ), 78a una riga specifica (vi ), 93alla riga inferiore (vi ), 78con ex , 88con vi , 85
unione (vi ), 82righe di comando, ritorno a capo, 19right , modificatore, 15rimappatura
dei pulsanti del mouse, 195per utenti mancini, 195
della tastiera, 195-204per utenti mancini (solo
SPARC), 196-198rimozione di schede PCMCIA, 233Ripeti, equivalente da tastiera, 4ripetizione
di comandi, 20-21in vi , 86
di operazioni, equivalente datastiera, 4
ripristino della mappatura originale dellatastiera
SPARC, 198-199x86, 201-204
risposta ai messaggi (mailx ), 114, 126ritorno a capo automatico, nelle righe di
comando, 19rlogin , comando, 142-146, 206-207
chiusura di una connessione, 144con un altro nome utente, 143e applicazioni in rete, 206-207in un sistema sconosciuto, 144procedura base, 142senza directory home, 143sospensione di una connessione, 145
rm, comando, 31-39rmdir , comando, 39root, directory (/), 33
272 Guida avanzata a Solaris — dicembre 1995
root, prompt, 122, 154RS-232, interfaccia, aggiunta a una
SPARCstation, 229rsh , comando, 148-149runnable, stato dei processi, 66rusers , comando, 110, 149-150
S~s , comando (mailx ), 126-S , opzione (comando lpstat ), 138-s , opzione (comando lpstat ), 134, 138s , comando (mailx ), 115-116s , comando (vi ), 82SAC. Vedere System Access ControllerSAF. Vedere Service Access FacilitySalva, equivalente da tastiera, 5salvataggio
dei messaggidal file mbox in un altro file, 115-
116dal file mbox in un
raccoglitore, 116-117messaggio corrente, 126nel file mbox, 102, 106
delle modifiche al file .xinitrc , 8delle modifiche in vi
e uscita, 76senza uscire, 76
equivalente da tastiera, 5schede di memoria, Vedere schede
PCMCIAschede PCMCIA
attivazione con la gestione deivolumi, 233
copia dei file, 233-238, 243-248metodi, 231
disponibilità, 229e dischetti, 229e software Power Management, 232elencazione dei file, 235-236espulsione, 244formattazione, 233-235, 240-243inserimento, 233
interruzione delle applicazioni, 249protezione dei dati, 231-232requisiti per il supporto, 230rimozione, 233schede di memoria, 231-233schede seriali/modem, 249
nomi di dispositivo, 249uso, 231-233
schede video, sistemi x86, 6schermo
avvio di OpenWindows su piùschermi, 14-16, 183
ridisegno (vi ), 74spostamento
a fine schermo (vi ), 79a inizio schermo (vi ), 79a metà schermo (vi ), 79allo schermo precedente (vi ), 79,
80allo schermo successivo, 80
scorrimento (vi ), 79-80sicurezza
file .Xauthority , 211-214segno più (+), indicatore di raccoglitori in
mailx , 117SELEZIONA, pulsante del mouse, xvii,
xviiiseriale, scheda, Vedere schede PCMCIAserver X11
internetworking tra OpenWindows eDECwindows, 217-222
sicurezza, 208-215Service Access Facility, 190servizi di denominazione, admintool e
host, 227sessioni di lavoro standard, definizione, 1sessioni simultanee in vi , 75:set all , comando (ex ), 95set askcc , variabile (file .mailrc ), 112set folder , variabile (file
.mailrc ), 116set history , comando (solo C
shell), 159
Indice analitico 273
:set ic , comando (ex ), 90set noclobber , comando (solo C
shell), 158:set noic , comando (ex ), 90:set nonu , comando (vi ), 87:set nu , comando (vi ), 87set prompt , comando, 158sh , comando, 152
Vedere anche Bourne shellshell, 2-3
Vedere anche Bourne shell; C shell;Korn shell
comando di shell remota, 148-149di default, 2, 152di login, 2-3
Vedere anche Bourne shell; C shell;Korn shell
identificazione, 152, 153uso dei profili utente, 152
Shell, uso per l’inserimento dicomandi, 17, 19
SHELL, variabile d’ambiente, 155shutdown , comando, 190sicurezza, 207, 207-215
avvio di OpenWindows con sicurezzadi rete ridotta, 13
esecuzione di client remoti o localicon un altro nomeutente, 215
gestione dell’accesso al server, 211-214
meccanismi di controllo degliaccessi, 208-209
precauzioni, 211programma xauth , 211, 213, 214protocollo di autorizzazione MIT-
MAGIC-COOKIE-1, 209, 210-212, 213
protocollo di autorizzazione SUN-DES-1, 210-211, 213, 214
Vedere anche password; autorizzazionisimbolo del dollaro ($)
comando di fine riga (vi ), 78, 91indicatore di fine file (ex ), 88
prompt di sistema, 17, 154uso come carattere di escape, 62uso come metacarattere, 58uso come operatore di grep , 59, 61
simbolo di maggiore (>), uso per laredirezione, 21
simbolo di percentuale (%)prompt di sistema, 154riattivazione di una connessione
remota, 146sinistra
cancellazione di un carattere a sinistradel cursore (vi ), 83
cancellazione di una riga a sinistra delcursore (vi ), 84
inserimento di un testo a sinistra delcursore (vi ), 80
spostamento verso sinistra (vi ), 78sintassi dei comandi, 24sistemi remoti, Vedere retisistemi SPARC
acceleratori per OpenWindows, xviii,4-5
avvio di OpenWindows su piùmonitor, 14-16
internetworking tra OpenWindows eDECwindows, 217-222
migrazione da SunView aOpenWindows versione 3.3o successiva, 181-182
opzione di aggiornamento, 187tastiera
rimappatura per utentimancini, 196-198
ripristino della mappaturaoriginale, 198-199
transizione a SunOS 5.x, 190, 191sistemi x86
abilitazione/disabilitazione del tastoCompose, 195-196
acceleratori per OpenWindows, xviii,4-5
avvio di OpenWindows, 6opzione di aggiornamento, 187tastiera
274 Guida avanzata a Solaris — dicembre 1995
rimappatura dei tastifunzione, 200-204
ripristino della mappaturaoriginale, 201-204
transizione a Solaris 2.5, 192-193sleeping, stato dei processi, 66software, aggiunta e cancellazione, 224Solaris 2.5, transizione a, 187-193sort , comando, 69sospensione di una connessione
remota, 145sostituzione
di caratteri (vi ), 82ricerca e (vi ), 61, 92-93
sottodirectorydescrizione, 33-34Vedere anche directory
source , comando, 156spazio sul disco, gestione, 68spostamento
della directory di lavoro, 34-36di directory, 38di file, 30di righe
con ex , 88con vi , 85
in un’altra directory, 34-36, 154tra file (vi ), 94tra i raccoglitori e la casella postale
(mailx ), 118-119spostamento nei file (vi ), 77-80
a destra di un carattere, 78, 79a destra di una parola, 78a metà dello schermo, 79a sinistra di una parola, 78a una riga specifica, 93all’inizio dello schermo, 79all’inizio di una parola, 78all’inizio di una riga, 78alla fine dello schermo, 79alla fine di una parola, 78alla fine di una riga, 78di pagina in pagina, 79-80di un carattere a sinistra, 78
illustrazione del cursore, 72in basso di una riga, 78introduzione, 77scorrimento, 79-80uso dei tasti freccia, 78
stampa, 129-140annullamento, 139-140con la stampante di default, 130con una stampante specifica, 130-131copia del file prima della stampa, 133dell’output dei comandi, 22determinazione dello stato, 133-138
caratteristiche dellastampante, 136-137
informazioni complete, 135introduzione, 133richieste di stampa, 134sommario delle opzioni, 137-138stampanti disponibili, 134stato della stampante, 136
di file, 77di vi , 77
di messaggi di posta elettronica, 109,126
equivalente da tastiera, 5in più copie, 132intestazioni, 133invio di una richiesta di stampa, 129-
131notifica di fine stampa, 131, 133sommario delle opzioni, 132-133soppressione della pagina di
intestazione, 133titolazione delle stampe, 133variabile d’ambiente per la stampante
di default, 154variazioni nel sottosistema, 188
Stampa, equivalente da tastiera, 5stampanti
gestione, 223, 227visualizzazione delle
caratteristiche, 136-137StaticGray, visuali, 167stato
di un file, 45-46
Indice analitico 275
di un processo, 66di una stampante, 133-138
Stop, equivalente da tastiera, 5storia dei comandi, 154, 159stringhe, definizione, 89strumento di calibrazione, Vedere
calibrazione, strumentoSubject: , prompt (mailx ), 103, 113, 126SUN-DES-1, protocollo di autorizzazione
e file .Xauthority , 213abilitazione degli accessi, 214descrizione, 210-211
SunLink, Vedere DECnet internetworking(DNI)
SunOS 4.xdifferenze, 188-190transizione da, 187-191
SunOS 5.xposizione dei file di sistema, 188software di sistema, 188
SunOS Binary Compatibility Package, 191SunOS, comandi, 17-25SunOS/BSD Source Compatibility
Package, 191SunView, migrazione a OpenWindows
versione 3.3 o successiva, 181-182
superutente, come diventare, 122surround, definizione, 169svenv , 185swap, errori, 177swmtool , 189SXBRK, stato dei processi, 66System Access Controller, 190
T~t , comando (mailx ), 126-t dos , opzione (utility fdformat ), 234,
243-t , opzione
comando lp , 133comando lpstat , 135
tabella dei valori gamma (LUT), 166taglia e incolla, Vedere spostamentoTaglia, equivalente da tastiera, 4tar , comando, 231, 233-238tasti freccia, uso per gli spostamenti
(vi ), 78tasti funzione, rimappatura (solo
x86), 200-204tastiera, 195-204
abilitazione/disabilitazione del tastoCompose, 195-196
rimappatura del tasto Control (solox86), 200-204
rimappatura per utenti mancini (soloSPARC), 196-198
ripristino della mappatura originaleSPARC, 198-199x86, 201-204
sistemi x86, 6TERM, variabile d’ambiente, 155terminali, 190
asincroni, 155comandi di avvio, 66variabili d’ambiente, 155
/terminfo , database, 189TERMINFO, variabile d’ambiente, 155tilde (~)
chiusura di una connessioneremota, 144
indicatore della directory home, 35nei messaggi di posta elettronica, 125nella videata di vi , 72per l’uso di maiuscole e minuscole in
vi , 97sospensione di una connessione
remota, 145tipi di utente, per le autorizzazioni, 44titolazione delle stampe (lp ), 133To: , prompt (mailx ), 113, 126top , modificatore, 15touch , comando, 29traced, stato dei processi, 66transizione
276 Guida avanzata a Solaris — dicembre 1995
a Solaris 2.5, 187-193da SunOS 4.x, 187-191
trasposizione di caratteri (vi ), 82trattamento antiriflesso, sui monitor, 168trattino (-)
indicatore del tipo di file, 45uso per le opzioni dei comandi, 21
troff , programma, 71, 188TrueColor, visuali, 167TZ, variabile d’ambiente, 155
U-u , opzione (comando lpstat ), 138-U , opzione (utility fdformat ), 234, 243u, comando
mailx , 108vi , 83
U, comando (vi ), 83umask, comando, 159-160unione delle righe (vi ), 82uscita
da mailx , 105-106, 109, 126da OpenWindows, 12da SunOS, 3da vi , 75-76processi, 67
-user , opzione (comando find ), 43/usr , directory, 33, 189/usr/hosts , directory, 33/usr/lib , directory, 33/usr/openwin , directory, 6, 11, 182/usr/openwin/bin/openwin , Vedere
openwin
/usr/openwin/bin/xauth ,programma, 211, 213, 214
/usr/openwin/etc/devdata/profiles , directory, 167
/usr/openwin/etc/devhandlers ,directory, 178
/usr/openwin/lib/Xinitrc , file, 183utente root, come diventare, 122
V~v, comando (mailx ), 119-v , opzione
comando grep , 58comando lpstat , 138
v, opzione (comando tar ), 237, 238/var/mail , directory, 102, 189/var/mail , file, 188/var/spool/mail , directory, 189/var/spool/mail , file, 188variabili d’ambiente, 153-159
alias (solo C shell), 156CDPATH, 154definizione, 151, 153DISPLAY, 206, 215, 219DNI_X_ENABLE, 218, 221e applicazioni in rete, 206HISTORY, 154, 159HOME, 154, 206LANG, 154LD_LIBRARY_PATH, 206LOGNAME, 154LPDEST, 154MAIL, 154MANSECTS, 154nel profilo utente, 153-159noclobber (solo C shell), 158OPENWINHOME, 6-7, 182-183PATH, 154, 155-156PS1, 154, 157-158SHELL, 155TERM, 155TERMINFO, 155TZ, 155umask, 159-160visualizzazione, 153
VAX, internetworking tra OpenWindowse DECwindows, 217-222
versioneVedere anche migrazioneavvio di versioni di OpenWindows
precedenti alla 3.3, 5, 6-7programma mailx , 104, 107
vi , 71-99
Indice analitico 277
aggiunta di un testo, 80annullamento delle modifiche, 83annullamento di un
annullamento, 83apertura di più file, 94apertura di un file, 94avvio, 72-73buffer, 75, 86
denominati, 86cancellazione di un testo
comandi di ex , 89comandi di vi , 83-84
comandidiex , Vedere comandi exinserimento, 74ripetizione, 86sommario, 96-99uso di maiuscole e minuscole, 74,
78comando put, 84, 85, 95comando yank, 85, 95comportamenti anomali, 74copia di righe
comandi di ex , 88comandi di vi , 85tra file, 95
creazione di un file, 72creazione di una riga, 81descrizione, 71divisione delle righe, 82impostazione dei parametri, 95inserimento di file, 93inserimento di un testo, 73-74, 80-81
ripetutamente, 86-87introduzione, 71messaggio “Le ultime modifiche non
sono state salvate”, 76modalità, 73-75
comando, 74inserimento, 73-74ultima riga, 74
modifica di più file, 94-95modifica di un testo, 73, 81-83numerazione delle righe, 87personalizzazione dei font, 161-164ricerca e sostituzione, 61, 89-93
ridisegno dello schermo, 74riga di stato, 72, 73ripetizione dei comandi, 86ripristino dopo un crash, 96salvataggio delle modifiche
e uscita, 76senza uscire, 76
scorrimento, 79-80per pagine, 79
sessioni simultanee, 75sostituzione di caratteri, 82spostamento del cursore, Vedere
spostamento nei filespostamento di righe
comandi di ex , 88comandi di vi , 85
spostamento nei file, Vederespostamento nei file
stampa dei file, 77trasposizione di caratteri, 82unione delle righe, 82uscita
e salvataggio delle modifiche, 76senza salvare le modifiche, 76
uso del tasto Caps Lock, 74uso del tasto Esc, 74uso di maiuscole e minuscole, 97
nei comandi, 74, 78nella ricerca, 90
uso in mailx , 119variabile d’ambiente per la shell, 155versione di sola lettura, 71videata di modifica, 72-73
view , comando, 71virgolette
doppieuso con grep , 58, 61-62uso nei buffer denominati
(vi ), 86singole, uso con grep , 58, 61-62
visione periferica, ed esposizione allaluce, 169
visuali, 167visuali X, definizione, 166visualizzazione
278 Guida avanzata a Solaris — dicembre 1995
Vedere anche elencazionedegli utenti del file server, 110dei comandi precedenti, 20dei file su schede PCMCIA, 235-236dei parametri di vi , 95dei risultati di una ricerca, 42del contenuto della casella
postale, 107del contenuto di un file, 31del tipo di file, 32della directory di lavoro, 34della finestra caratteristiche,
equivalente da tastiera, 5della posizione nel login remoto, 146delle autorizzazioni, 45-46
di un file, 45-46di una directory, 45-46
delle intestazioni dei messaggi, 106-107
delle pagine man, 24delle variabili d’ambiente, 153dello spazio occupato dalle
directory, 68dello spazio occupato sul disco, 68dello stato della stampante, 135-138dello stato di un file, 45-46dello stato di una directory, 45-46di directory remote, 148di informazioni su utenti remoti, 149-
150di informazioni sugli utenti della
rete, 149-150interruzione, 25menu, xviiipassword, 2, 64
/vmunix , file, 188volcheck , comando, 244
W:w , comando (ex , 76~w, comando (mailx ), 126-w, opzione (comando lp ), 133, 132W, comando (vi ), 78w, comando (vi ), 78
WAN (wide area network)definizione, 141Vedere anche reti
whatis , comando, 24-25who am i , comando, login remoto, 146who, comando, 110“word”, comando (vi ), 78:wq , comando (ex ), 76
X~x , comando (mailx ), 126-x , opzione (utility fdformat ), 234x , comando
mailx , 105, 106vi , 83
X, comando (vi ), 83x , opzione (comando tar ), 238X, visuali, 166xauth , programma, 211, 213, 214.Xauthority , file, 211-214.Xdefaults , file (OpenWindows)
conversione dal file .defaults(SunView), 182
versioni precedenti alla 3.3, 185xhost , programma, 211, 212, 214.xinitrc , file
migrazione da versioni diOpenWindows precedentialla 3.3 alla versione 3.3 osuccessiva, 183-185
procedure di avvio, 7-9, 183-185Xinitrc , file, 183Xlib , libreria, versioni precedenti, 207,
209xlsfonts , comando, 164xmodmap, comando, 195-198xp , comando (vi ), 82
YY, comando (vi ), 85, 95yank, comando (vi ), 85, 95
Indice analitico 279
yy , comando (vi ), 85
Zz , comando (mailx ), 107zombie, stato dei processi, 66ZZ, comando (vi ), 76
280 Guida avanzata a Solaris — dicembre 1995