SCO UnixWare 2.1.1 Note di release e installazione (C) Copyright 1996 The Santa Cruz Operation, Inc. Tutti i diritti riservati. Nessuna parte della presente pubblicazione può essere riprodotta, trasmessa, memorizzata su appositi supporti o tradotta o trasformata in linguaggi informatici, in nessuna forma o tramite nessun mezzo, elettronico, meccanico, magnetico, ottico, chimico, manuale o altro, senza il consenso espresso scritto del titolare del diritto d'autore, The Santa Cruz Operation, Inc., 400 Encinal Street, Santa Cruz, California, 95060, USA. La violazione dei diritti d'autore costituisce una grave infrazione secondo le leggi sui diritti d'autore degli Stati Uniti e di altri paesi. Le informazioni contentute nel presente documento possono essere soggette a modifiche senza preavviso e non rappresentano un obbligo da parte di The Santa Cruz Operation, Inc. SCO, il logo SCO, The Santa Cruz Operation e UnixWare sono marchi di fabbrica o marchi registrati di The Santa Cruz Operation, Inc. negli Stati Uniti e in altri paesi. UNIX è un marchio registrato negli USA e in altri paesi, autorizzato esclusivamente da X/Open Company Limited. Tutti gli altri marchi e nomi di prodotto sono o possono essere marchi di fabbrica dei rispettivi proprietari e sono usati per identificarne prodotti o servizi. SCO UnixWare è un software commerciale e, insieme alla documentazione relativa, è soggetto negli Stati Uniti alle limitazioni di uso governativo definite di seguito. Se questo prodotto è inteso per l'uso da parte di un'agenzia DOD, entra in vigore quanto disposto nella seguente legenda sulle limitazioni dei diritti DFAR: LEGENDA SULLE LIMITAZIONI DEI DIRITTI: L'uso, la riproduzione e la rivelazione da parte del Governo sono soggetti ai limiti definiti nei paragrafi (c)(1)(ii) di Rights in Technical Data and Computer Software Clause nei DFARS 252.227-7013. Il fornitore/produttore è The Santa Cruz Operation, Inc., 400 Encinal Street, Santa Cruz, CA 95060. Se questo prodotto è inteso per l'uso da parte di un'agenzia governativa civile, entra in vigore quanto disposto nella seguente legenda sulle limitazioni dei diritti FAR: LEGENDA SULLE LIMITAZIONI DEI DIRITTI: Il presente software viene fornito con diritti limitati secondo il contratto governativo n. _________ (e contratto secondario n. ________, se appropriato). Non può essere usato, riprodotto o rivelato dal Governo tranne secondo quanto stabilito nel paragrafo (g)(3)(i) della clausola FAR 52.227-14 alt III o come altrimenti specificato espressamente nel contratto. Il fornitore/produttore è The Santa Cruz Operation, Inc., 400 Encinal Street, Santa Cruz, CA 95060. Se questa pubblicazione è allegata a un software protetto dai diritti d'autore, la licenza del detto software autorizza all'uso solamente l'utente finale, secondo l'accordo di licenza dell'utente finale. Tale accordo deve essere letto attentamente prima di utilizzare il software. Versione documento: 2.1.1 Settembre 1996 Sommario 1. Introduzione 1.1. Miglioramenti e soluzione dei problemi 1.2. Single UNIX Specification 2. Preparazione all'installazione 2.1. Versione UnixWare 2.2. Pacchetti integrativi 2.2.1. Encryption Utilities 2.3. Backup di file prescelti 2.4. Come scaricare da un server FTP 2.5. Contenuto del CD-ROM di aggiornamento 3. Istruzioni per l'installazione 3.1. Installazione dell'update211 3.2. Installazione dei driver hba211 3.3. Installazione dei driver nic211 3.3.1. Creazione di un dischetto IHV 3.3.2. Uso di niccfg 4. Dopo l'installazione 4.1. Rimozione dei pacchetti di aggiornamento 4.2. Installazione dei pacchetti integrativi 4.3. Rimozione dei pacchetti integrativi 5. Appendice A: Miglioramenti e soluzioni dei problemi 5.1. Informazioni importanti sui PTF 5.2. Miglioramenti nel pacchetto update211 5.2.1. Compilatori C e C++ 5.2.2. Prestazioni 5.2.3. Kernel 5.2.4. Comandi 5.2.5. SMTP e posta 5.2.6. Gestione di rete 5.2.7. Desktop 5.2.8. Motif (X) 5.2.9. Driver video 5.2.10. Supporto hardware 5.2.11. Sistemi con multiprocessore 5.3. Miglioramenti dei pacchetti hba211 5.4. Miglioramenti dell'immagine nic211 6. Appendice B: Compatibilità 6.1. Compatibilità del codice sorgente 6.2. Comandi e utility 6.3. Socket 6.4. ksh-93 e ksh-88 a confronto 7. Appendice C: Single UNIX Specification 7.1. Specification 7.2. La shell POSIX-2 (ksh-93) 7.3. Ambiente di compilazione conforme 7.4. X/Open Curses 7.5. Pagine di manuale Single UNIX Specification 7.6. Attivazione di Single UNIX Specification durante l'installazione 7.7. Attivazione di Single UNIX Specification dopo l'installazione 7.7.1. Impostazione di RSTCHOWN 7.7.2. Impostazione della shell di default 7.7.3. Impostazione della shell di login 7.8. Disattivazione della funzione Single UNIX Specification 7.8.1. Reimpostazione di RSTCHOWN 7.8.2. Reimpostazione della shell di default 7.8.3. Reimpostazione della shell di login 8. Appendice D: Assistenza tecnica 8.1. Informazioni sui servizi in linea SCO 8.2. World Wide Web (WWW) 8.3. SCO's Online Support (SOS) 8.4. SCOFORUM su CompuServe 8.5. FTP anonimo 8.6. UUCP anonimo 8.7. Ftpmail 8.8. InfoFax 1. Introduzione Le presenti note descrivono il pacchetto di aggiornamento per SCO UnixWare(R) 2.1.1 Update (update211). Forniscono inoltre informazioni relative ai pacchetti dei driver per UnixWare 2.1.1 Host Bus Adapter (hba211) e all'immagine UnixWare 2.1.1 Network Interface Card Support (nic211). Il pacchetto di aggiornamento update211 fornisce dei miglioramenti e la soluzione a vari problemi per UnixWare 2.1, nonché pacchetti integrativi UnixWare, installabili facoltativamente. Il pacchetto presenta inoltre una nuova funzione facoltativa: la compatibilità con Single UNIX Specification. I pacchetti dei driver hba211 forniscono un nuovo driver nonché miglioramenti e la soluzione dei problemi per i driver esistenti. L'immagine nic211 fornisce miglioramenti e la soluzione dei problemi per i driver di rete. La release UnixWare 2.1.1 è disponibile su CD-ROM o da un server FTP. Le procedure dettagliate relative all'installazione sono riportate più avanti nelle presenti note. Prima di procedere all'installazione di qualsiasi immagine o pacchetto di aggiornamento, si consiglia di leggere attentamente le note, in particolar modo "Appendice B: Compatibilità", nella quale sono messe in evidenza importanti differenze rispetto a UnixWare 2.1. 1.1 Miglioramenti e soluzione dei problemi UnixWare 2.1.1 comprende numerosi miglioramenti e soluzioni di problemi derivanti da Richieste di modifica (Modification Requests, MR) e Correzioni temporanee del programma (Program Temporary Fixes, PTF). Per l'elenco dei PTF e la descrizione generale dei MR e PTF inclusi nella release, consultare "Appendice A: Miglioramenti e soluzione dei problemi". Nell'Appendice A è inoltre riportato l'elenco dei driver nuovi e di quelli aggiornati. 1.2 Single UNIX Specification UnixWare 2.1.1 presenta una notevole compatibilità con X/Open(R) Single UNIX(R) Specification ed è stato sottoposto all'attenzione di X/Open per ottenere la definizione di prodotto conforme a Single UNIX Specification. Si prevede che X/Open definirà UnixWare 2.1.1 prodotto compatibile, ma qualora rimanessero degli argomenti riguardo ai quali X/Open non ha concesso il proprio assenso, questi verranno trattati mediante PTF o in UnixWare 2.1.2. L'ambiente Single UNIX Specification fornito con UnixWare 2.1.1 è facoltativo. Con il pacchetto update211 installato e la funzione Single UNIX Specification attivata, il sistema dovrebbe essere in grado di soddisfare i requisiti necessari per la definizione di prodotto compatibile con Single UNIX Specification. Le applicazioni sviluppate in questo ambiente sono portabili in una vasta gamma di sistemi UNIX. Per ulteriori informazioni sulla funzione Single UNIX Specification di UnixWare 2.1.1 e su come attivarla, consultare "Appendice C: Single UNIX Specification". 2. Preparazione all'installazione 2.1 Versione UnixWare Prima di installare l'update211, occorre installare UnixWare 2.1 nel sistema. Per supportare una nuova installazione di UnixWare 2.1, è possibile tuttavia utilizzare i driver dei pacchetti hba211 e nic211. 2.2 Pacchetti integrativi L'aggiornamento contiene consistenti modifiche apportate ai prodotti di base e ai pacchetti integrativi UnixWare installabili a scelta. I pacchetti integrativi che si desidera aggiornare mediante il pacchetto update211 possono essere aggiornati solamente se vengono installati prima dell'aggiornamento stesso. NOTA Se il pacchetto Advanced Commands (cmds) non è installato nel sistema e si desidera disporre della shell ksh-93 o dell'ambiente Single UNIX Specification, occorre installarlo prima dell'update211. Di seguito è riportato l'elenco dei pacchetti integrativi aggiornati dall'update211: Advanced Commands (cmds) Base System (base) BSD Compatibility (bsdcompat) C++ Compilation System (C++) Compaq Support Utilities (compaq) Desktop Manager (desktop) Enhanced Application Compatibility (acp) Graphics Utilities (dtxt) Internet Utilities (inet) Kernel Debugger (kdb) Language Supplement (ls) Motif Development Package (mdev) Network Support Utilities (nsu) NetWare UNIX Client (nuc) Optimizing C Compilation System (ccs) OS Multiprocessor Support (osmp) Server Utilities (server) Traditional Manual Pages (manpages) UnixWare 2.1 NetWare Services (nwsrvr) UnixWare 2.1 Japanese NetWare Services (nwsrvrJ) VERITAS File System (vxfs) Se questi pacchetti vengono installati dopo l'installazione dell'update211, è necessario reinstallare l'aggiornamento affinché i miglioramenti e le soluzioni dei problemi più recenti vengano inclusi in tali pacchetti. 2.2.1 Encryption Utilities NOTA Le seguenti informazioni riguardano esclusivamente gli utenti di Stati Uniti e Canada. Vi è una collisione tra l'update211 e il pacchetto integrativo Encryption Utilities (crypt). Se si desidera eseguire il prodotto Encryption Utilities sul sistema UnixWare Update 2.1.1, contattare SCO al numero telefonico (800) SCO-UNIX e richiedere il prodotto UnixWare Encryption Utilities Update 2.1.1. Quando si installa UnixWare Encryption Utilities Update 2.1.1, l'update211 deve essere già installato nel sistema. Il prodotto UnixWare Encryption Utilities Update 2.1.1 deve essere installato subito dopo l'update211. 2.3 Backup di file prescelti Durante l'installazione del pacchetto update211, l'utente ha la possibilità di effettuare il backup di alcuni file specifici. Se si seleziona questa opzione, i file che verranno modificati dal pacchetto update211 vengono identificati e il loro backup viene effettuato sul supporto selezionato. Quindi si proseguirà con l'installazione. Questo backup consente di rimuovere il pacchetto update211 e, se lo si desidera, di ripristinare lo stato precedente del sistema. Si consiglia vivamente di eseguire il backup. La quantità di spazio libero su disco necessario per il backup dipende dal software correntemente installato nel sistema (UnixWare 2.1 e pacchetti integrativi). Per default i file vengono salvati sul disco rigido in /var/sadm/bkup/update211, ma se si desidera disporre di più spazio sul disco rigido si può optare di effettuare il backup su dischetti o su nastro. 2.4 Come scaricare da un server FTP È possibile scaricare l'intero prodotto UnixWare 2.1.1 o parti di esso da un server FTP. Per scaricare i pacchetti e le immagini UnixWare 2.1.1, attenersi alle seguenti istruzioni: 1. Eseguire la procedura di login nel server FTP come utente anonimo e quando viene richiesta la parola d'ordine, immettere il proprio indirizzo di e-mail: ftp ftp.sco.com nome: anonymous Parola d'ordine: indirizzo di e-mail 2. Impostare la modalità binaria ftp: binary 3. Passare alla directory UW21: cd UW21/upd211 4. Scaricare i file desiderati: get upd211.pt1 # parte 1 del pacchetto update211 get upd211.pt2 # parte 2 del pacchetto update211 get upd211.pt* # se il pacchetto update211 comprende # più di due parti, scaricare # anche quelle get hba211.img # immagine dei pacchetti hba211 get nic211.img # immagine dei driver nic211 get upd211.txt # File contenente dati della somma di controllo get eng211.txt # Versione inglese di queste note get fr211.txt # Versione francese di queste note get de211.txt # Versione tedesca di queste note get it211.txt # Versione italiana di queste note get es211.txt # Versione spagnola di queste note get ja211.txt # Versione giapponese di queste note Se il trasferimento dei file non riesce, ripetere il comando get per rieseguire l'operazione. 5. Confrontare le somme di controllo dei file scaricati con quelle riportate nel file upd211.txt per verificare che il trasferimento sia avvenuto correttamente. 6. Una volta scaricati tutti i file desiderati, passare a "Istruzioni per l'installazione" per le istruzioni su come installarli. 2.5 Contenuto del CD-ROM di aggiornamento Il CD-ROM di aggiornamento contiene i file e le directory seguenti: UW211 # la directory di livello più elevato contiene # quanto segue: PKGS # contiene i pacchetti di aggiornamento: update211 # la directory contiene il pacchetto # update211 hba211 # la directory contiene i driver hba211 con # una sottodirectory per ogni pacchetto di # driver IMAGES # la directory contiene immagini del # dischetto: # è possibile usare queste immagini per # supportare un nuovo sistema UnixWare 2.1 # con i driver UnixWare 2.1.1 HBA o NIC nic211.img # immagine dei driver nic211 # usare nic211.img per creare un dischetto # IHV hba211.img # immagine dei driver hba211 DOCS # directory con documentazione con testo # in chiaro: eng211.txt # versione inglese di queste note fr211.txt # versione francese di queste note de211.txt # versione tedesca di queste note it211.txt # versione italiana di queste note es211.txt # versione spagnola di queste note ja211.txt # versione giapponese di queste note 3. Istruzioni per l'installazione Il pacchetto update211 e i pacchetti hba211 possono essere installati dalla riga di comando mediante il comando pkgadd. I pacchetti nic211, invece, devono essere installati da un dischetto IHV mediante l'utility Network Interface Card Configuration (niccfg, configurazione della scheda di interfaccia di rete). Tutte le procedure devono essere eseguite come superuser in modalità utente singolo. 3.1 Installazione dell'update211 Per installare il pacchetto update211 dal CD-ROM mediante il comando pkgadd, procedere nel seguente modo: 1. Inserire il CD-ROM di UnixWare 2.1.1 Update nel lettore di CD-ROM e montarlo: mount -Fcdfs -r /dev/cdrom/nome_dispositivo punto_di_montaggio Per esempio: mount -Fcdfs -r /dev/cdrom/c1b0t510 /cdrom1 2. Dare il comando pkgadd per installare update211: pkgadd -d /cdrom1/UW211/PKGS update211 Da questo momento in poi l'utente riceverà dei prompt dallo script di installazione del pacchetto. Per installare un pacchetto update211 scaricato dal server FTP, attenersi alle istruzioni riportate di seguito: 1. Se i file upd211.pt non si trovano già nel sistema nel quale si desidera installare il pacchetto update211, renderli disponibili (mediante nastro, FTP, NFS, ecc.). 2. concatenare i file upd211.pt mediante il comando cat e canalizzarli in pkgadd: cat upd211.pt* | pkgadd -d - Da questo momento in poi l'utente riceverà dei prompt dallo script di installazione del pacchetto. Una volta completata l'installazione, il sistema viene riavviato automaticamente. NOTA Durante l'installazione dell'update211, è possibile attivare la funzione Single UNIX Specification. Questa funzione deve essere attivata solamente se occorre disporre di un ambiente compatibile. NOTA Durante l'installazione dell'update211, quando i file vengono caricati nel sistema, può darsi che venga visualizzato il seguente messaggio: UX:pkginstall: ATTENZIONE: nomefile Ignorare il messaggio, in quanto si tratta di un messaggio informativo visualizzato da pkginstall quando un concatenamento hard viene interrotto. 3.2 Installazione dei driver hba211 Per installare un pacchetto hba211 dal CD-ROM mediante il comando pkgadd, procedere nel seguente modo: 1. Montare il CD-ROM come indicato nella procedura "Installazione dell'update211". 2. Dare il comando pkgadd per installare il driver HBA desiderato: pkgadd -d /cdrom1/UW211/PKGS/hba211 driver_di_dispositivo dove driver_di_dispositivo è adsl, adss, c7xx, c8xx, ida, ide, iiop o flashpt. 3. Smontare e rimuovere il CD-ROM. umount punto_di_montaggio 4. Riavviare il sistema. Per installare un'immagine hba211 scaricata dal server FTP attenersi alle istruzioni riportate di seguito: 1. Creare un dischetto HBA dal file immagine scaricato. La procedura per creare un dischetto HBA è identica a quella descritta più avanti nella sezione "Creazione di un dischetto IHV", con l'unica differenza che il file di input deve essere hba211.img anziché nic211.img. 2. Inserire il dischetto HBA nell'unità per dischetti e dare il comando pkgadd per installare il driver HBA desiderato: pkgadd -d diskette1 driver_di_dispositivo dove driver_di_dispositivo è adsl, adss, c7xx, c8xx, ida, ide, iiop o flashpt. 3. Riavviare il sistema. 3.3 Installazione dei driver nic211 I pacchetti nic211 devono essere installati da un dischetto IHV mediante l'utility Network Interface Card Configuration (niccfg). 3.3.1 Creazione di un dischetto IHV Per l'installazione dei driver di rete è necessario un dischetto IHV. Tale dischetto è inoltre utile se si desidera installare i driver UnixWare 2.1.1 NIC durante una nuova installazione di UnixWare 2.1. Per creare un dischetto nic211 IHV da CD-ROM, procedere nel seguente modo: 1. Inserire un dischetto UNIX formattato da 1,44 MB nell'unità per dischetti 1. È possibile formattare il dischetto utilizzando il seguente comando: format /dev/rdsk/f03ht 2. Inserire il CD-ROM nell'unità 1 per CD-ROM e per montare l'unità, digitare: mount -rF cdfs /dev/cdrom/nome_dispositivo /punto_di_montaggio dove nome_dispositivo è il nome del dispositivo CD-ROM e punto_di_montaggio è il punto di montaggio. 3. Copiare l'immagine nic211 dal CD-ROM su un dischetto: dd if=/punto_di_montaggio/UW211/IMAGES/nic211.img of=/dev/rdsk/f0t obs=36b NOTA Il comando soprariportato è suddiviso in due righe solamente per scopi di visualizzazione. Il comando deve essere dato su una sola riga di comando. 4. Per smontare l'unità CD-ROM, digitare: umount /punto_di_montaggio 5. Rimuovere il dischetto e apporvi un'etichetta. Per creare un dischetto nic211 IHV da un'immagine scaricata dal server FTP attenersi alle istruzioni riportate di seguito: 1. Inserire un dischetto UNIX formattato da 1,44 MB nell'unità per dischetti 1. 2. Copiare l'immagine nic211 dal CD-ROM su un dischetto: dd if=/nome_percorso/nic211.img of=/dev/rdsk/f0t bs=32b dove nome_percorso è il nome completo del percorso della directory che contiene l'immagine. 3.3.2 Uso di niccfg Per installare i driver nic211, invocare niccfg, selezionare l'opzione "Installa driver dal dischetto IHV" nella Schemata di riepilogo e attenersi alle istruzioni visualizzate sullo schermo. Le istruzioni relative all'uso dell'utility niccfg sono riportate nel Manuale di installazione di UnixWare 2.1. Per informazioni di carattere generale, consultare la sezione "Configurazione delle schede di interfaccia di rete" in "Appendice E: Impostazione e configurazione dell'hardware." In particolare, consultare la sezione "Installazione di un driver nuovo o aggiornato da un dischetto". 4. Dopo l'installazione La presente sezione fornisce informazioni sulla rimozione delle immagini e dei pacchetti di aggiornamento e sull'installazione e rimozione dei pacchetti integrativi. Tutte le procedure devono essere eseguite come superuser in modalità utente singolo. 4.1 Rimozione dei pacchetti di aggiornamento Per rimuovere i pacchetti update211 e hba211, si può utilizzare il comando pkgrm. Per esempio, per rimuovere il pacchetto update211 mediante il comando pkgrm, procedere nel seguente modo: pkgrm update211 Da questo momento in poi l'utente riceverà dei prompt dallo script di installazione del pacchetto. Se esistono delle dipendenze tra pacchetti che impediscono la rimozione di un pacchetto, queste vengono identificate quando si cerca di rimuovere il pacchetto. Prima di rimuovere il pacchetto UnixWare 2.1.1 desiderato, occorre rimuovere tutti i pacchetti da esso dipendenti. Per rimuovere i driver nic211, occorre usare l'utility Network Interface Card Configuration (niccfg). Le istruzioni relative all'uso di questa utility sono riportate nel Manuale di installazione di UnixWare 2.1. A questo proposito consultare la sezione "Configurazione delle schede di interfaccia di rete" in "Appendice E: Impostazione e configurazione dell'hardware". 4.2 Installazione dei pacchetti integrativi Non occorre rimuovere l'update211 prima di aggiungere un pacchetto integrativo. Se si installa il pacchetto update211 e in un momento successivo si installa un pacchetto integrativo, affinché i miglioramenti e le soluzioni dei problemi più recenti vengano inclusi in tale pacchetto, occorre reinstallare l'update211. Questo tipo di installazione è nota con il nome di installazione sovrapposta o per sovrapposizione. La procedura di installazione dell'update211 comprende un'opzione che consente di creare il backup dei file prima che questi vengano modificati durante l'installazione. Nel caso di un'installazione sovrapposta, verrà eseguito il backup dei file dei pacchetti integrativi che subiranno delle modifiche durante l'installazione. Prima di installare o reinstallare l'update211, si consiglia di creare sempre il backup dei file. 4.3 Rimozione dei pacchetti integrativi Per rimuovere un pacchetto integrativo modificato dall'update211, attenersi alla seguente procedura: 1. Rimuovere il pacchetto update211. 2. Rimuovere il pacchetto integrativo. 3. Reinstallare il pacchetto update211. Se si cerca di rimuovere il pacchetto integrativo senza dapprima rimuovere il pacchetto update211, il pacchetto integrativo non verrà rimosso completamente. 5. Appendice A: Miglioramenti e soluzioni dei problemi La presente appendice fornisce le informazioni relative ai PTF, nonché una descrizione generale dei miglioramenti e delle soluzioni dei problemi e riporta l'elenco dei driver nuovi e aggiornati. 5.1 Informazioni importanti sui PTF Può darsi che nel sistema siano già installati dei PTF. Una volta installato UnixWare 2.1.1., non cercare di riattivarli. Se dopo aver installato UnixWare 2.1.1 si esegue il comando pkginfo, i PTF correntemente installati nel sistema vengono ancora individuati, anche se i miglioramenti e le soluzioni dei problemi in UnixWare 2.1.1 li rendono obsoleti. Poiché la procedura di installazione "fissa" i PTF che sono già presenti nel sistema, non è possibile rimuoverli. In questo modo i file che sono stati installati e modificati dai PTF, e successivamente modificati dall'update211, da hba211 o nic211 non possono venire alterati. 5.2 Miglioramenti nel pacchetto update211 UnixWare 2.1.1 comprende dei miglioramenti e le soluzioni dei problemi derivanti da Richieste di modifica (Modification Requests, MR) e Correzioni temporanee del programma (Program Temporary Fixes, PTF). I PTF compresi nell'update211 sono i seguenti: ptf2100 Correzioni a smtp e popper e-mail ptf2165 Correzione del comando lp ptf2202 Correzione per l'unità per dischetti flessibili ptf2211 Correzione per le opzioni -D e -U del comando cpp ptf2223 Correzione del sysdump per i sistemi multiprocessore ptf2230 Correzione per il driver del mouse m320 ptf2236 Correzione della librearia Motif (CR 7982) ptf2240 Correzione di Libthread ptf2243 Aggiornamento per l'anno 2000 e oltre ptf2248 MediaMgr Restore seleziona il numero corretto di file ptf2255 Aggiornamento del driver di streams ptf2261 Aggiornamento del driver nastro SCSI ptf3004 Parametro regolabile NWS Kernel ptf3005 Corruzione della memoria condivisa di Netmgt ptf3006 Librerie runtime Motif e Composite Graphics ptf3008 Correzione di Libthread ptf3011 Ambienti locali inglesi per NUC ptf3014 Aggiornamento dei driver video ptf3026 Correzione per l'unità per dischetti flessibili ptf3028 Miglioramenti della prestazione per UnixWare 2.1 ptf3034 Aggiornamento del driver di streams ptf3037 Correzione per il driver del mouse m320 ptf3039 MAKE e AR accettano linee e nomi di file più lunghi ptf3040 Correzione di pkgremove per la compatibilità ABI di UnixWare 2.1 ptf3043 Correzione di cp/mv/ln per corruzioni e rallentamenti del sistema ptf3063 Correzione di un problema di sicurezza con setgid bit Le sezioni che seguono forniscono una descrizione generale dei PTF e MR compresi nell'update211. 5.2.1 Compilatori C e C++ assembler: Le istruzioni lock prefix generano il codice corretto. preprocessore C++: È stato effettuato un miglioramento per la preelaborazione dei molteplici file di intestazione inclusi. libreria C: La routine di libreria fpsetmask() è stata aggiornata per eliminare i problemi relativi a eccezioni in virgola mobile, che si verificano quando le eccezioni sono attivate. getpwuid(): Le chiamate della routine getpwuid() a realloc() reimpostano correttamente i puntatori FILE* vecchi. make: La dimensione dei buffer di input e output è stata aumentata per consentire righe di input lunghe. preprocessore: Il vecchio preprocessore C standalone (/lib/cpp) è stato migliorato per consentire un numero qualsiasi di opzioni-D o -U della riga di comando. acomp/optim: Sono stati effettuati vari miglioramenti di ottimizzazione, tra cui: 1. Correzione dell'estensione zero/segno in alcune istruzioni di assegnazione. 2. Trattamento di casi speciali nelle ottimizzazioni del ciclo while con operandi di istruzioni di chiamata indirizzati indirettamente mediante lo stack. 3. Miglioramento di alcune inizializzazioni di ottimizzazione di ciclo. 4. Correzione dell'ottimizzazione locale specifica del Pentium-Pro che comprendeva erroneamente operandi della memoria sorgente. 5. Preelaborazione di letterali stringa contenenti token di fine istruzione. 6. Correzione delle conversioni delle istruzioni da "cmpl" a "test" quando il primo operando è un operando registro. profiler: Le routine di line profiling sono state migliorate di modo che un programma collegato con il linker mediante l'opzione line profiling (-p), nel quale tuttavia nessuno dei moduli oggetto o degli oggetti condivisi è stato compilato per il profiling, produce comunque dati di profiling validi (ossia un file mon.out). Run-time Dynamic Linker (rtld): È stato creato un aggiornamento delle routine di eliminazione dei dati superflui del run-time linker per eseguire un'eliminazione più efficace della mappa generata dall'operazione di collegamento quando la ricerca di un file nell'elenco NEEDED del programma non ha dato alcun frutto. 5.2.2 Prestazioni Sono stati migliorati la prestazione del sistema e i carichi di lavoro multiutente, nonché il carico di lavoro della AIM Suite VII Shared Multiuser. Vengono forniti due nuovi parametri regolabili: PAGEOUTRATE, per controllare il daemon pageout del sistema e PRIV_L1_SIZE, che specifica la dimensione minima di un processo che consente di ottenere una tabella di pagina privata di livello 1 per migliorare le prestazioni dei processi più complessi. I moduli del Veritas File System sono stati migliorati per aumentare le prestazioni di scrittura dei file ad accesso casuale con carichi di memoria pesanti. Il driver di I/O asincrono funziona con qualsiasi driver di dispositivo sottostante. I miglioramenti delle prestazioni accelerano le chiamate del sistema e l'I/O su disco. I parametri regolabili del kernel vengono reimpostati su valori di default standard per i sistemi che non supportano i Servizi NetWare. Per i sistemi che supportano i Servizi NetWare uno script di postinstallazione ottimizza automaticamente il sistema per ottenere la massima efficienza. Se si installano i Servizi NetWare dopo avere installato l'update211, per ottimizzare il sistema correttamente occorre reinstallare l'update211. 5.2.3 Kernel È stato migliorato il controllo del flusso kdb. Le routine del driver di streams gestiscono in maniera più efficiente le routine di servizio quando vi è un carico di lavoro pesante. È stato migliorato unlink di streams. connect() asincrono mantiene correttamente lo stato della libreria dei socket. È stata migliorata la mappatura della memoria del kernel delle librerie condivise in associazione con NetScape. La condizione di arresto su uno stream in multiplexing viene gestita correttamente. È stata migliorata una funzione di sicurezza di Unixware. 5.2.4 Comandi Il comando lp mantiene le opzioni -o e -y quando è usato con -H hold e -H resume. Il comando cp è stato aggiornato per migliorarne la prestazione e mantenerne la validità anche per file di notevoli dimensioni (oltre i 70 MB). Il comando pkgremove gestisce correttamente i file condivisi tra pacchetti. È stata realizzata un'assegnazione intelligente dello spazio per i nomi di file oggetto per migliorare ar. Sono stati effettuati numerosi aggiornamenti per garantire che, a partire dall'anno 2000, le date siano impostate, interpretate, programmate e visualizzate correttamente. Il comando kill gestisce correttamente i processi zombie. Le conversioni da ASCII a EBCDIC e da EBCDIC ad ASCII funzionano correttamente. 5.2.5 SMTP e posta Sono stati realizzati diversi miglioramenti smtp e popper è stato modificato di modo che funzioni correttamente con client pop3. 5.2.6 Gestione di rete È stata fornita una libreria aggiornata, libnwu, per risolvere il problema della corruzione della memoria condivisa che talvolta si verificava quando veniva dato il comando nwcm -s nwum=on. Sono stati creati i collegamenti e le copie necessari per supportare adeguatamente NUC (Netware Unix Client) per gli ambienti locali di Australia, Canada, Irlanda e Nuova Zelanda. Le incoerenze interne tra UnixWare 2.1 e i prodotti localizzati giapponesi UnixWare 2.1 sono state eliminate. 5.2.7 Desktop Il desktop media manager seleziona correttamente i file durante un'operazione di ripristino. Il media manager è stato aggiornato per evitare l'arresto del desktop che talvolta si verifica durante l'accesso all'unità per dischetti. Quando si utilizza il desktop per impostare un server di installazione, viene creato l'apposito comando installsrv per copiare i supporti. 5.2.8 Motif (X) Vengono fornite nuove librerie runtime Motif (libXm.a e libXm.so) nonché una nuova libreria Composite Graphics (druntime.so.1) per migliorare la prestazione di Oracle Development 2000. 5.2.9 Driver video Vengono forniti un nuovo driver per schede video ATI MACH64 basate su ISA e un driver aggiornato per ETW32p. NOTA Il nuovo driver ATI MACH64 fornisce supporto per le schede ATI più recenti, ma non supporta alcuni adattatori ATI precedenti. Selezionare il nuovo driver solamente se il driver corrente non supporta l'adattatore utilizzato. I file di dati per Configurazione schermo e setvideomode sono stati aggiornati per supportare il chipset ETW32p e includono delle correzioni per le schede video MACH64 ISA. Il programma Configurazione schermo installa correttamente gli script di configurazione per tutte le schede supportate. 5.2.10 Supporto hardware Il driver per dischetti flessibili garantisce una formattazione corretta dei dischetti. Sono stati apportati inoltre dei miglioramenti nelle operazioni su e da dischetti con interfoliazione di 1:1. Il driver per l'unità cartuccia a nastro SCSI (st01) riporta correttamente le condizioni di esaurimento del nastro e gli errori dell'unità. I sistemi che usano schede PCI con memoria elevata si riavviano correttamente. È stato migliorato il driver Compaq wellness (cpqw). Il comportamento talvolta irregolare del mouse è stato intercettato. 5.2.11 Sistemi con multiprocessore Vengono forniti i file libthread.so e libthreadT.so aggiornati per amministrare al meglio le richieste del timer di sottoprocessi in multiplexing. Il kernel su sistemi MP supporta correttamente sysdump e si riavvia correttamente. 5.3 Miglioramenti dei pacchetti hba211 I pacchetti hba211 forniscono un nuovo driver per BusLogic, flashpt e versioni aggiornate dei seguenti driver di dispositivo: adsl adss c7xx c8xx ida ide (in passato faceva parte del pacchetto Base System) iiop Ogni driver di dispositivo rappresenta un pacchetto a sé stante che può essere aggiunto usando il comando pkgadd. La maggior parte di questi pacchetti può essere rimossa mediante il comando pkgrm. È inoltre possibile creare un dischetto HBA per supportare una nuova installazione di UnixWare 2.1. Se si esegue una nuova installazione di UnixWare 2.1 e occorre disporre di entrambi i driver HBA UnixWare 2.1 e UnixWare 2.1.1, installare dapprima il (o i) driver HBA UnixWare 2.1.1 e quindi procedere all'installazione del (o dei) driver dal dischetto HBA UnixWare 2.1. Il primo driver installato diventa il driver attivo. NOTA Per fornire un maggiore supporto hardware durante l'installazione di UnixWare 2.1, il driver ide UnixWare 2.1.1 è stato incluso nei pacchetti hba211 anziché nel pacchetto update211. Se si installa il driver di dispositivo ide UnixWare 2.1.1 nel sistema, per tornare al driver di dispositivo ide UnixWare 2.1 occorre reinstallare il sistema UnixWare 2.1. NOTA Sono stati apportati dei miglioramenti alle utility di diagnostica Compaq ida_menu. Pertanto: -- Se si installa un sistema UnixWare 2.1 usando il driver ida UnixWare 2.1.1 e quindi si aggiunge il pacchetto compaq, occorre reinstallare il driver di dispositivo ida UnixWare 2.1.1. -- Se il pacchetto compaq è già installato nel sistema UnixWare 2.1 e si installa il pacchetto update211, occorre installare anche il driver ida UnixWare 2.1.1. I PTF riportati di seguito forniscono miglioramenti e soluzioni dei problemi per i seguenti driver di dispositivo: ptf2215 Correzione di adss per risolvere l'arresto del driver in sistemi multiprocessore ptf2193 HBA con controllore Siemens C7XX SCSI ptf2228 Aggiornamento ATAPI per driver IDE ptf3003 Correzione del driver ADSL HBA ptf3007 Aggiornamento del driver ADSL ptf3009 Aggiornamento del driver ATAPI 5.4 Miglioramenti dell'immagine nic211 L'immagine nic211 fornisce le versioni aggiornate dei seguenti driver: SMC smpw0 SMC SMC8K Compaq netflex2 NOTA Se si desidera reinstallare i driver di dispositivo UnixWare 2.1 per la gestione della rete dopo aver installato il pacchetto nic211, occorre dapprima reinstallare il pacchetto UnixWare 2.1 NIC. Mediante il seguente PTF sono stati forniti miglioramenti e soluzioni dei problemi: ptf2047 Aggiornamento driver SMC8K 6. Appendice B: Compatibilità La presente appendice contiene informazioni relative alla compatibilità del codice sorgente, dei comandi, delle utility, dei socket e della shell ksh-93. 6.1 Compatibilità del codice sorgente Quanto riportato di seguito è valido per tutti i sistemi su cui è installato il pacchetto update211, indipendentemente dal fatto che la funzione Single UNIX Specification sia attivata o meno. È stato necessario apportare diverse modifiche ai file di intestazione per ottenere la conformità con X/Open Single UNIX Specification. Molte di queste modifiche aggiungono nuovi simboli e limitazioni allo spazio del nome. I simboli aggiunti per ottenere la compatibilità con le specifiche sono visibili per default quando il file di instestazione è incluso. Possono verificarsi errori di compilazione se i simboli nei file di instestazione sono in conflitto con simboli già dichiarati nel codice sorgente. Molti di questi identificatori in conflitto sono dichiarazioni di funzione che non esistevano in precedenza oppure tipi di parametri di dichiarazione di funzione modificati per ottenere la conformità con Single UNIX Specification (per esempio, char * è stato sostituito con void *). Di seguito sono riportati alcuni esempi dei conflitti più comuni che possono verificarsi durante la ricompilazione del codice sorgente. 1. La dichiarazione esterna della funzione random è stata aggiunta a stdlib.h. Se questa funzione è già dichiarata a livello locale, si verifica un errore. Spesso è sufficiente usare la funzione dichiarata in stdlib.h e rimuovere la dichiarazione locale. 2. In alcuni casi i nuovi identificatori in un file di intestazione richiedono la dichiarazione locale dell'identificatore e la ridefinizione di tutti i riferimenti allo stesso. 3. La dichiarazione 'caddr_t' per mmap() in /usr/include/sys/mman.h è stata sostituita con 'void *' Se mmap() è dichiarato localmente si può verificare il seguente errore: identifier redeclared: mmap. La soluzione proposta consiste nel rimuovere la dichiarazione locale di mmap(). 4. Vengono ridefiniti i seguenti campi di iovec_t in /usr/include/sys/uio.h: la nuova definizione di caddr_t iov_base è void *iov_base la nuova definizione di int iov_len è size_t iov_len La modifica a iov_base provoca degli errori se vengono eseguite delle operazioni aritmetiche su questo campo senza che venga attributo a un tipo di dati che può essere usato in operazioni aritmetiche. 5. I nomi dei membri della struttura interna FILE definiti in stdio.h sono stati modificati e iniziano con una doppia sottolineatura a sinistra. Nelle applicazioni che hanno riferimenti diretti a questi membri e non usano le interfacce standard di I/O fornite nella libreria standard C si verificano errori di compilazione. Alcuni dei nuovi file di instestazione sono stati presi dal pacchetto BSD Compatibility (bsdcompat). Solitamente questi file si trovavano in /usr/ucbinclude, mentre adesso sono inclusi in /usr/include e fanno parte della distribuzione standard dei file di intestazione. Questi file sono: /usr/ucbinclude/ndbm.h e /usr/ucbinclude/strings.h. La chiamata di sistema putmsg restituisce ENXIO quando si verifica un arresto durante l'esecuzione della chiamata. Questo comportamento è diverso da UnixWare 2.1 nel quale veniva generato EIO. Adesso EIO viene generato solamente se il descrittore di file, fd, si riferisce a un pipe basato su flussi di dati e l'altra estremità del pipe è chiusa. Questo comportamento è analogo alla condizione di errore EPIPE. 6.2 Comandi e utility Quanto riportato di seguito è valido per tutti i sistemi sui cui è installato il pacchetto update211, indipendentemente dal fatto che la funzione Single UNIX Specification sia attivata o meno. "--" delimitatore di operando: Le utility standard che accettano un elenco di operandi usano "--" per terminare l'elenco, consentendo così alle applicazioni portabili di distinguere l'elenco di operandi dalle opzioni aggiuntive supportate da una particolare implementazione. Vedere XCU, sezione 1.9 "Utility Description Defaults". Tra le utility che utilizzano "--" come delimitatore vi sono: dirname, pack, unpack, nohup, od, pg, printf, spell, strings, xargs. patch: Adesso l'utility patch esce con stato di uscita 1 se si verificano dei rifiuti. La versione precedente usciva con il numero dei rifiuti. strings: L'utility strings in precedenza usciva dopo il verificarsi di un errore di accesso al file. Adesso, anziché uscire immediatamente, continua l'elaborazione del file o dei file successivi. xargs: I valori di stato dell'uscita sono cambiati. Il comando esce con 127 se non è stato possibile trovare l'utility sulla riga di comando e con 126 se l'utility è stata trovata ma non eseguita. La versione precedente usciva con lo stato 1 in entrambi i casi. rm: È richiesto l'input dell'utente mentre in precedenza non lo era. Se si usa -r per rimuovere una directory protetta da scrittura quando stdin è un terminale e -f non è specificato, all'utente viene chiesto di confermare la rimozione della directory e del suo contenuto. Se si utilizza -ri, la richiesta comparirà due volte prima che la directory, anche se vuota, venga effettivamente rimossa. awk: Il valore di $0 all'interno del blocco END è stato cambiato. Anziché essere vuoto, adesso conserva il valore dell'ultimo record di input. In precedenza all'interno di un blocco END, print $0 si sarebbe comportato allo stesso modo di un'istruzione print e avrebbe stampato una riga vuota. Poiché $0 ora include il contenuto dell'ultima riga di input all'interno del blocco END, le applicazioni devono usare print "" anziché usare un'istruzione print da sola per stampare una riga vuota. Inoltre è stata modificata la funzione awk close di modo che restituisca un valore indicante la riuscita o meno dell'operazione. Una funzione precedente non documentata di awk consisteva nel fatto che una chiamata di chiusura non necessitava di parentesi per essere valida. Adesso una "chiamata" di chiusura senza parentesi non ha alcun effetto perché non è una chiamata di funzione vera e propria. Di conseguenza può succedere che script awk precedenti esauriscano i descrittori di file. sed: È stato modificato il modo in cui il comando "l" di sed visualizza caratteri non stampabili per conformarsi agli standard POSIX.2. In particolare questi caratteri sono visualizzati mediante sequenze di escape come quelle dello standard ANSI C (\t per tab e così via) mentre per gli altri caratteri vengono usati i numeri ottali (per esempio, \001 per ASCII control-A). crontab: Per la conformità a Single UNIX Specification, cron deve eseguire i lavori crontab e at con la shell POSIX-2. Poiché /usr/bin/sh non è la shell POSIX-2, cron è stato modificato di modo che per determinati utenti usi una shell diversa. Di solito viene utilizzata la shell dell'utente presa da /etc/passwd a condizione che la shell termini in sh. In caso contrario si usa /usr/bin/sh. 6.3 Socket Il pacchetto update211 comprende una versione della libreria di socket compatibile con POSIX-2. Questa libreria (/usr/lib/libsocket.so.2) integra la libreria di socket originariamente fornita con UnixWare 2.1 (/usr/lib/libsocket.so.1). Affinché un'applicazione possa trarre vantaggio dall'API standard e dalle funzioni avanzate della libreria di socket POSIX-2, tale applicazione deve essere collegata con la libreria POSIX-2. La riga di comando: c89 -o foo foo.c -l xnet -l c fa sì che il sistema di compilazione compili il file sorgente foo.c e colleghi il file oggetto risultante con la libreria POSIX-2. Si tenga presente che non è possibile collegare applicazioni nuove perché adoprino libsocket.so.1. Usare cc . . . -l socket . . . per collegare libsocket.so.2. L'elenco riportato di seguito descrive le differenze principali tra i socket di POSIX-2 e UnixWare 2.1. Per ulteriori informazioni vedere X/Open System Interface Definition, Issue 4 Version 2. 1. Gestione degli errori: Sono stati aggiunti diversi errori nuovi e alcune individuazioni degli errori esistenti sono state modificate. In alcuni casi per la stessa condizione la libreria POSIX-2 imposta valori errno diversi da quelli utilizzati dalla libreria UnixWare 2.1. 2. Opzioni socket : L'interfaccia Transport Provider è stata modificata per consentire l'impostazione di opzioni nello stato TS_UNBND e TS_DATA_XFER (e non solo nello stato TS_IDLE). 3. Lunghezza indirizzo: Il calcolo delle lunghezze degli indirizzi per i socket del dominio UNIX è stato modificato di modo che dia come risultato la lunghezza effettiva dei nomi di percorso e non la lunghezza massima. 4. Socket non bloccanti: Tentativi di collegamento su socket non bloccanti del dominio UNIX continuano a impostare errno in EINPROGRESS, ma adesso procedono a completare il collegamento. 5. Indicatore MSG_WAITALL: Il nuovo indicatore MSG_WAITALL è supportato nelle funzioni di ricezione (recv, recvfrom e recvmsg). Adesso queste chiamate bloccano l'accesso al buffer fino a quando il buffer di ricezione non è pieno. 6. Chiamate di sistema: Le seguenti chiamate di sistema passano ora attraverso la libreria di socket POSIX-2, in modo da ottenere un comportamento tipico dei socket: close, fstat, lseek, read, readv, write e writev. 6.4 ksh-93 e ksh-88 a confronto Quanto segue è valido solamente se si usa ksh-93 o se la funzione Single UNIX Specification è attivata. Nella presente sezione sono descritte alcune piccole incompatibilità tra ksh-93 e ksh-88. Non sono tuttavia compresi i casi che sono dei veri e propri bug in ksh-88 e le funzioni che sono interamente compatibili verso l'alto. 1. Le funzioni definite con name() con ksh-93, a differenza della ksh-88, sono compatibili con lo standard POSIX. Non sono consentite variabili locali e non vi sono ambiti separati. Le funzioni definite con la sintassi dei nomi delle funzioni mantengono la compatibilità. Anche le tracce delle funzioni sono interessate. 2. ! è ora una parola riservata. Di conseguenza i comandi con questo nome non funzionano più con ksh-93. 3. L'attributo -x di alias e typeset -f non è più valido e il file ENV viene letto solo per shell interattive. Per rendere le definizioni di funzione visibili agli script, occorre usare FPATH. 4. È stato aggiunto un comando integrato chiamato command che può essere trovato sempre prima della ricerca di PATH. Gli script che usano questo nome come nome di un comando (o di una funzione) non sono compatibili. 5. Il formato di output di alcuni comandi inclusi è stato modificato: set, typeset e alias presentano adesso virgolette singole intorno ai valori che hanno caratteri speciali. L'output per trap, senza argomenti, ha un formato che può essere usato come input. 6. Con ksh-88 il simbolo del dollaro seguito da una virgoletta singola ($') veniva interpretato letteralmente. Adesso è una stringa ANSI-C. Per ottenere il comportamento precedente, occorre avere il simbolo del dollaro. Inoltre il simbolo $ davanti a virgolette doppie ($") indica che la stringa deve essere tradotta per gli ambienti locali diversi da C o POSIX. Il $ viene ignorato negli ambienti C e POSIX. 7. Con ksh-88, l'espansione mediante la tilde non aveva luogo all'interno di ${...}. Con ksh-93 ${foo-~} causa l'espansione con la tilde se foo non è impostato. Se lo si desidera, è possibile disattivare l'espansione mediante la ~. 8. Sono state apportate alcune modifiche alle regole relative all'utilizzo dei token che potrebbero far sì che alcuni script con un uso delle virgolette in precedenza ambiguo producano degli errori di sintassi. 9. I programmi che dipendono da valori di uscita specifici per la shell (diversi da 0 o non zero) potrebbero non essere compatibili. Lo stato di uscita per numerosi guasti della shell è stato modificato. 10. I comandi inclusi in ksh-88 erano sempre eseguiti prima di cercare il comando nella variabile PATH. Adesso, invece, con ksh-93 se la directory corrente è in PATH e nella directory si ha un programma chiamato test, questo viene eseguito quando si digita test. La versione integrata viene eseguita nel punto in cui /bin viene trovato in PATH. 11. Alcune combinazioni non documentate di argomenti passati ai comandi inclusi in ksh non funzionano più perché ksh-93 si conforma a getopts per quanto riguarda i comandi inclusi. Per esempio, typeset -8I avrebbe funzionato in precedenza come sinonimo di typeset -i8. 12. La sostituzione dei comandi e l'espansione aritmetica vengono ora eseguite su PS1, PS3 e ENV quando sono espansi. Quindi i caratteri virgoletta inversa e $( in quanto parte del valore di queste variabili devono essere preceduti da \ per mantenerne il comportamento precedente. 13. La variabile ERRNO non è più utilizzata. 14. Se il nome di file che segue un simbolo di redirezione contiene caratteri modello, questi vengono espansi solamente per shell interattive. 15. Gli argomenti degli script che hanno come primo carattere un punto (dot script) vengono ripristinati una volta completati. 16. L'elenco degli alias individuati viene visualizzato da alias soltanto se l'opzione -t non è specificata. 17. Lo standard POSIX richiede che test "$arg" abbia uno stato di uscita di 0, se e solamente se $arg è nullo. Tuttavia poiché ciò interrompe i programmi che usano test -t, ksh93 tratta un test -t esplicito come se l'utente avesse inserito test -t 1. 18. La direttiva ^T della modalità emacs è stata modificata in modo tale che ora funziona esattamente come in gnu-emacs. 19. ksh-88 consentiva parentesi dispari all'interno di ${name op val}, mentre ksh-93 non lo consente. Quindi ${foo-(} deve essere scritto ${foo-\(} per funzionare in entrambe le versioni. 20. kill -l in ksh-93 elenca solamente i nomi dei segnali non il loro valore numerico. 21. Le variabili locali definite da typeset sono suddivise in ambiti statistici in ksh93. In ksh88 erano invece suddivise in ambiti dinamici, sebbene ciò non sia mai stato documentato. 22. Per conformarsi allo standard POSIX, il valore della variabile data a getopts è impostato su "?" quando si raggiunge la fine delle opzioni. 7. Appendice C: Single UNIX Specification La presente sezione fornisce informazioni sulla funzione Single UNIX Specification, la sua shell, l'ambiente di compilazione e le pagine di manuale. Sono inoltre riportate le procedure da seguire per attivare e disattivare la suddetta funzione. 7.1 Specification La funzione Single UNIX Specification comprende cinque specifiche X/Open Common Applications Environment: -- System Interface Definitions, Issue 4, Version 2 (XBD) -- System Interfaces and Headers, Issue 4, Version 2 (XSH) -- Commands and Utilities, Issue 4, Version 2 (XCU) -- Networking Services, Issue 4 -- X/Open Curses, Issue 4 NOTA Le utility di sviluppo in XCU non sono necessarie per la Single UNIX Specification. Le utility sono supportate da UnixWare, ma non sono considerate conformi in UnixWare 2.1.1. Per ottenere informazioni generali sulla Single UNIX Specification, sulla sua storia e le implicazioni commerciali, sfogliare il sito web X/Open: http://www.xopen.org/public/tech/unix/index.htm 7.2 La shell POSIX-2 (ksh-93) Single UNIX Specification richiede che la shell di login dell'utente sia una shell compatibile con POSIX-2, e che sia accessibile come sh. La shell compatibile con POSIX-2 usata è la versione 1993 della shell Korn (ksh-93 Version D) con i miglioramenti apportati da SCO. ksh-93 fornisce funzionalità nuove e più potenti, tra cui miglioramenti per array associative, aritmetica in virgola mobile, messaggi internazionalizzati, completamento di comandi e file, corrispondenza di modelli, nuovi comandi integrati e variabili di riferimento. Per ulteriori informazioni sulla ksh-93 vedere "The New KornShell Command and Programming Language", Morris I. Bolsky e David G. Korn, Prentice Hall PTR, 1995. Se il pacchetto manpages è installato, per visualizzare la pagina del manuale in inglese relativa a ksh-93 digitare quanto segue nella riga di comando: man ksh93 NOTA Se non si desidera attivare la funzione Single UNIX Specification, è comunque possibile utilizzare la ksh-93 impostando la shell di login su /u95/bin/ksh93. Infatti l'uso di questa shell soddisfa diversi requisiti runtime (non tutti) necessari per la compatibilità Single UNIX Specification. Per mantenere la compatibilità di UnixWare 2.1 per gli utenti non-Single UNIX Specification, ksh-88 continua a essere disponibile in /usr/bin/ksh. Per informazioni sulle differenze tra ksh-93 e la versione 1988 della shell Korn (ksh-88), fornita nel pacchetto cmds per UnixWare 2.1, consultare "Appendice B: Compatibilità". 7.3 Ambiente di compilazione conforme Per usare lo spazio del nome Single UNIX Specification degli identificatori e dei prototipi nei file di instestazione, occorre definire la macro _XOPEN_SOURCE in tutti i file sorgente prima di includere qualsiasi file di instestazione. Questo rivela le definizioni conformi a POSIX-1 e POSIX-2. Inoltre la macro _XOPEN_SOURCE_EXTENDED deve essere definita come "1" prima di includere le intestazioni. Usare l'interfaccia c89 con il sistema di compilazione C standard. Questa utility consente di sfruttare l'API standard, X/Open curses e le librerie di socket POSIX-2. Per visualizzare la pagina di manuale relativa a c89, usare il comando man. 7.4 X/Open Curses Unixware 2.1.1 fornisce inoltre la libreria X/Open curses. Sebbene X/Open curses non faccia formalmente parte della Single UNIX Specification, tale libreria viene fornita per incoraggiare gli sviluppatori di software a passare a quella che si prevede diventerà una specifica standard. Dopo aver installato il pacchetto update211 il sistema disporrà di due librerie curses, la versione UnixWare 2.1 e la nuova versione X/Open. La versione di curses fornita con UnixWare 2.1 è accessibile sempre nello stesso modo. La nuova libreria X/Open curses può essere collegata in due modi: cc -o foo foo.c -1 xcurses quindi usare: # include # include Oppure c89 -o foo foo.c -1 curses quindi usare: # include # include 7.5 Pagine di manuale Single UNIX Specification Sono state create e riadattate oltre 100 pagine di manuale per riflettere le modifiche introdotte per la funzione Single UNIX Specification. Tali pagine sono state incluse nel pacchetto update211. Le nuove pagine di manuale si sovrappongono alle pagine esistenti aventi lo stesso nome del pacchetto manpages, ma contengono informazioni sia per gli utenti Single UNIX Specification sia per gli utenti non-Single UNIX Specification. Le pagine di manuale in inglese sono disponibili mediante il comando man. Se il pacchetto manpages non è disponibile nel sistema corrente e si desidera visualizzare queste pagine utilizzando il comando man, occorre installare il pacchetto manpages prima di installare l'update211. Il pacchetto manpages è disponibile sui supporti di installazione UnixWare 2.1. Le pagine di manuale in giapponese sono disponibili come file di testo in chiaro e file Postscript(R) in /usr/share/jman. 7.6 Attivazione di Single UNIX Specification durante l'installazione Durante l'installazione dell'update211, all'utente viene data l'opzione di attivare Single UNIX Specification (è possibile attivarla anche successivamente). Poiché questa specifica definisce un comportamento che talvolta differisce da quello dei precedenti sistemi UnixWare, si consiglia di leggere le presenti note con attenzione prima di selezionarla. Normalmente si dovrebbbe attivare Single UNIX Specification solamente se occorre disporre di un ambiente compatibile. Se si attiva la funzione Single UNIX Specification durante l'installazione, viene attivato il parametro regolabile RSTCHOWN, /u95/bin/sh diventa la shell di default e i nuovi utenti aggiunti al sistema risultano conformi a Single UNIX Specification. NOTA Sebbene i nuovi utenti siano conformi, occorre specificare la shell /u95/bin/sh per gli utenti esistenti che desiderano conformarsi. Per ulteriori istruzioni vedere "Impostazione della shell di login". POSIX specifica due tipi di comportamento di chown entrambi supportati da UnixWare, ma l'attivazione di RSTCHOWN soddisfa ulteriori standard FIPS e XPG che impongono che l'utente non possa cedere la proprietà dei file. Lo script di installazione per l'update211 apporta due modifiche al file /etc/profile: la variabile di ambiente POSIX2 viene impostata su "on" e /u95/bin viene aggiunto all'inizio della variabile di ambiente PATH. Il file /etc/profile viene eseguito come parte della sequenza di login per tutti gli utenti la cui shell di login (la shell elencata in /etc/passwd) è /u95/bin/sh. Una volta installato il pacchetto update211, tutti gli utenti Single UNIX Specification hanno le variabili di ambiente sopramenzionate impostate come indicato nel rispettivo ambiente quando effettuano il login al sistema. 7.7 Attivazione di Single UNIX Specification dopo l'installazione Se la funzione Single UNIX Specification non è stata attivata durante l'installazione del pacchetto update211, è possibile attivarla dopo l'installazione attenendosi alla seguente procedura: 1. Impostare il parametro regolabile RSTCHOWN su 1 2. Impostare la shell di default come /u95/bin/sh 3. Impostare la shell di login su /u95/bin/sh 4. Riavviare il sistema 7.7.1 Impostazione di RSTCHOWN Per impostare il parametro regolabile RSTCHOWN su 1 attenersi alle istruzioni riportate di seguito: 1. Fare doppio clic sull'icona Strumenti_ammin nella finestra del desktop di UnixWare. 2. Fare doppio clic sull'icona Ottimizz_sistema. 3. Selezionare File System Parameters. 4. Scorrere fino a RSTCHOWN e quindi farvi clic sopra. 5. Spostare l'indicatore da 0 a 1 (tutto a destra) e fare clic su OK. 6. Selezionare No quando viene chiesto se si desidera ricompilare il kernel. 7. Fare clic su OK quando il sistema comunica che il kernel verrà ricompilato al riavvio del sistema. 7.7.2 Impostazione della shell di default Per impostare la shell di default: defadm useradd SHELL=/u95/bin/sh 7.7.3 Impostazione della shell di login Questa procedura varia a seconda che si stia impostando la shell di login per un utente nuovo o per uno già esistente e che si stia eseguendo l'operazione dalla riga di comando o dal desktop. -- Se si aggiunge un nuovo utente con il comando useradd, /u95/bin/sh viene usata per default. Non è necessario eseguire altre operazioni. -- Usare il comando usermod per impostare /u95/bin/sh per un utente già esistente. Per esempio: usermod -s /u95/bin/sh login NOTA Occorre eseguire questa operazione per gli utenti esistenti anche se durante il processo di installazione del pacchetto update211 si è attivata la funzione Single UNIX Specification. -- Se si utilizza Configurazione utente dal desktop, selezionare Mostra le altre opzioni e specificare la shell come /u95/bin/sh. Questa operazione è necessaria sia per gli utenti nuovi che per quelli esistenti quando si usa il desktop. 7.8 Disattivazione della funzione Single UNIX Specification Per disattivare la funzione Single UNIX Specification attenersi alla seguente procedura: 1. Reimpostare il parametro regolabile RSTCHOWN su 0 2. Reimpostare la shell di default come /usr/bin/sh o /usr/bin/ksh 3. Reimpostare la shell di login dell'utente su /usr/bin/sh o /usr/bin/ksh 4. Riavviare il sistema 7.8.1 Reimpostazione di RSTCHOWN Attenersi alla procedura "Impostazione di RSTCHOWN", ma spostare l'indicatore da 1 a 0. 7.8.2 Reimpostazione della shell di default Per reimpostare la shell di default: defadm useradd SHELL=/usr/bin/sh NOTA Usare /usr/bin/ksh se si desidera avere come shell di default la shell ksh-88. 7.8.3 Reimpostazione della shell di login Per ogni utente esistente Single UNIX Specification, usare il comando usermod per reimpostare /usr/bin/sh o /usr/bin/ksh come shell di login. 8. Appendice D: Assistenza tecnica 8.1 Informazioni sui servizi in linea SCO Quando è di importanza vitale avere le risposte corrette a quesiti tecnici o relativi ai prodotti, ci si può rivolgere ai servizi in linea SCO, disponibili 24 ore al giorno, 7 giorni alla settimana. SCO fornisce i seguenti servizi a tutti i clienti SCO: -- SCO nella World Wide Web (WWW) -- SCO's Online Support (SOS) -- SCOFORUM su CompuServe -- FTP anonimo -- UUCP anonimo -- Ftpmail -- InfoFax 8.2 World Wide Web (WWW) Nella World Wide Web SCO offre quanto segue: -- Informazioni su SCO -- Comunicati stampa -- Novità -- Informazioni da altre società -- Schede tecniche sui prodotti e servizi SCO -- Programmi per corsi tecnici SCO -- Database consultabile di articoli tecnici -- Accesso alle distribuzioni software addizionali di SCO Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: -- Browser Internet, come SCO Global Access o Mosaic -- Collegamento a Internet URL: http://www.sco.com 8.3 SCO's Online Support (SOS) SOS è un bollettino elettronico (BBS) pilotato da menu che fornisce un'intefaccia front-end, facilissima da usare: infatti, per eseguire i comandi è sufficiente premere pochissimi tasti. Il servizio di assistenza tecnica in linea SCO (SOS) contiene: -- Informazioni su SCO -- Comunicati stampa -- Novità -- Database consultabile di articoli tecnici -- Informazioni da altre società -- Schede tecniche sui prodotti e servizi SCO -- Programmi per corsi tecnici SCO -- Accesso alle distribuzioni software addizionali di SCO NOTA Per scaricare questi supplementi il pacchetto di comunicazione utilizzato deve supportare i protocolli di trasferimento XMODEM, YMODEM, ZMODEM o kermit. Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: -- Terminale e modem -- Computer, modem e pacchetto di comunicazione -- Comando cu(1C) (per i sistemi SCO XENIX/UNIX) Numeri telefonici: v.32, v.32bis 8@ +408 426-9495 Telebit Trailblazer 1@ +408 426-9525 Accesso a Internet via telnet: telnet sos.sco.com 8.4 SCOFORUM su CompuServe Nell'area SCOFORUM di CompuServe è disponibile una vasta gamma di forum CompuServe e informazioni tecniche relative a SCO. Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: Conto CompuServe Per ulteriori informazioni sull'acquisto di un conto CompuServe rivolgersi a CompuServe. Informazioni per l'accesso: collegarsi a CompuServe e digitare GO SCOFORUM. 8.5 FTP anonimo Il sito ftp anonimo di SCO fornisce accesso alle distribuzioni software addizionali di SCO. NOTA Per ulteriori informazioni su quello che è disponibile in ogni distribuzione addizionale, scaricare il file "README" situato nella directory root di ftp. Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: programma FTP e collegamento a Internet NOTA Il daemon ftpd presente sulla macchina a ftp.sco.com richiede che il proprio Domain Name Server sia registrato presso Internet. Informazioni per l'accesso: 1. ftp ftp.sco.com 2. Collegarsi come utente "anonymous" 3. Usare il proprio indirizzo di e-mail come parola d'ordine 8.6 UUCP anonimo Se l'UUCP è configurato, è possibile accedere alle macchine sosco (USA) o scolon (UK) per scaricare i file addizionali situati nella directory /usr/spool/uucppublic. Un esempio per accedere a sosco mediante l'UUCP è situato nel file /usr/lib/uucp/Systems sulla macchina locale. Il sito UUCP anonimo di SCO fornisce accesso alle distribuzioni software addizionali di SCO. NOTA Per ulteriori informazioni su ciò che è disponibile in ogni distribuzione software addizionale, scaricare il file /usr/spool/uucppublic/README mediante l'UUCP. Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: -- UUCP installato e configurato -- Modem Numeri telefonici: Per Canada, USA, costa del Pacifico, Asia e America Latina: v.32, v.32bis 5@ +408 425-3502 Telebit Trailblazer 1@ +408 429-1786 Nome della macchina: sosco Nome di login: uusls (si noti che il quarto carattere è la lettera "l") Nessuna parola d'ordine Per Europa, Medio Oriente e Africa: v.32 +44 (0) 1923 222681 Dowty Trailblazer +44 (0) 1923 210911 Nome della macchina: scolon Nome di login: uusls (si noti che il quarto carattere è la lettera "l") Parola d'ordine: bbsuucp 8.7 Ftpmail Ftpmail è un servizio di posta elettronica automatizzato che funge da gateway tra la posta elettronica e FTP. Infatti esegue i comandi FTP ricevuti tramite e-mail e invia i file richiesti all'utente sempre mediante e-mail. Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: pacchetto di E-MAIL elettronica Inviare la posta a: ftpmail@sco.com Lasciare vuota la riga del soggetto. Messaggio di una riga: help 8.8 InfoFax InfoFax è un servizio automatico via FAX. InfoFax contiene copie degli articoli tecnici più richiesti, offerte di corsi tecnici e informazioni sui prodotti. Disponibilità: 24 ore al giorno, 7 giorni alla settimana Requisiti di software e hardware per accedere a questo servizio: -- Telefono a pulsanti -- TELEFAX Telefono: +408 427-6800 Per l'elenco degli articoli disponibili richiedere l'articolo 1000.