Questa sezione descrive i problemi di Solaris 10 connessi all'amministrazione dei sistemi.
In alcuni casi, gli strumenti di amministrazione di Solaris Trusted Extensions, ad esempio la Solaris Management Console (SMC) e tninfo non visualizzano le etichette ADMIN_LOW o ADMIN_HIGH. Vengono visualizzate per errore le etichette PUBLIC e CNF : RESTRICTED.
Questo problema di visualizzazione delle etichette può produrre una configurazione errata dei sistemi. Ad esempio, SMC potrebbe visualizzare erroneamente una zona come PUBLIC mentre l'etichetta effettiva è ADMIN_LOW. A causa della visualizzazione errata dell'etichetta non è possibile avviare la zona.
L'errore si produce perché la visualizzazione predefinita dell'etichetta è impostata erroneamente su EXTERNAL anziché su INTERNAL. In questo modo, ADMIN_LOW viene promossa a etichetta minima per l'utente e ADMIN_HIGH viene degradata. Di conseguenza, gli strumenti di amministrazione visualizzano erroneamente le etichette minime e massime, anziché utilizzare i valori corretti ADMIN_LOW e ADMIN_HIGH.
Soluzione. Procedere come segue:
Installare le Solaris Trusted Extensions senza riavviare il sistema.
Modificare il file label_encodings. Il file label_encodings predefinito è /etc/security/tsol/label_encodings. Aggiungere la riga seguente nella sezione LOCAL DEFINITIONS:
Default Label View is Internal; |
La disinstallazione di Solaris Trusted Extensions sui sistemi x86 non riesce. Al riavvio del sistema, viene visualizzato il seguente messaggio di errore:
NOTICE: template type for bge0 incorrectly configured Change to CIPSO type for 129.146.108.249 ifconfig: setifflags: SIOCSLIFFLAGS: bge0: Invalid argument NOTICE: bge0 failed: Cannot insert CIPSO template for local addr 129.146.108.249 ip_arp_done: init failed |
Il sistema si blocca.
Soluzione. Procedere come segue:
Disinstallare le Solaris Trusted Extensions senza riavviare il sistema.
Eseguire i seguenti comandi.
# touch /etc/system # bootadm update-archive |
Riavviare il sistema.
Sui sistemi che eseguono una versione di Solaris che non supporta le zone, l'utilizzo di patchadd -R o di qualsiasi comando che accetta l'opzione -R per specificare un percorso radice alternativo per una zona globale in cui sono installate zone non globali, non funziona correttamente.
A differenza di quanto accade con il comando luupgrade [-t, -T, -p, -P] non viene visualizzato nessun messaggio di errore che indica le opportune limitazioni del comando.
Non viene segnalato che l'opzione -R non funziona correttamente. Come conseguenza di questa condizione, i pacchetti o le patch di Solaris 10 non vengono installati in nessuna delle zone non globali presenti.
Il problema si verifica durante l'installazione o la disinstallazione dei pacchetti o delle patch.
L'opzione -R funziona se nell'ambiente di boot alternativo sono state configurate zone non globali ma non sono state installate zone non globali. Per evitare potenziali problemi, o se non si è certi della presenza di zone non globali usate come percorsi radice alternativi, limitare l'utilizzo dell'opzione -R in tutte le istanze.
Per maggiori informazioni, vedere le seguenti pagine man:
Soluzione 1. Aggiornare il sistema operativo a Solaris 10 1/06 o versione successiva.
Se si esegue Solaris 10 3/05, installare le seguenti patch per consentire l'utilizzo dei comandi che accettano l'opzione -R per creare un percorso radice alternativo:
Patch con ID 119254-19 per i sistemi SPARC
Patch con ID 119255-19 per i sistemi x86
Soluzione 2. Limitare l'utilizzo di patchadd -R o di altri comandi che accettano l'opzione -R per creare un percorso radice alternativo.
Avviare la radice alternativa, ad esempio Solaris 10, come sistema operativo attivo. Quindi installare e disinstallare i pacchetti e le patch di Solaris 10 senza usare l'opzione -R.
Il comando cfgadm visualizza ApId che possono essere errati o non conformi con il formato specificato nella pagina man cfgadm_pci(1M). Il problema si verifica in presenza delle seguenti condizioni:
Aggiornamento a Solaris 10 11/06.
Sostituzione dell'hardware di collegamento delle schede PCI o PCI Express (PCIe) nella stessa posizione fisica. Ad esempio, sostituzione di uno chassis di espansione nella stessa posizione.
Non viene visualizzato nessun messaggio di errore specifico. Tuttavia, il comando cfgadm può visualizzare una delle seguenti informazioni:
Un ApId in formato errato che può funzionare
Un ApId in formato corretto che può non funzionare
Se l'ApId non funziona, il comando cfgadm visualizzerà un messaggio di errore corrispondente.
Soluzione. Rimuovere tutti i collegamenti PCI e PCIe nella directory /dev/cfg e quindi eseguire il comando devfsadm -C. I collegamenti PCI e PCIe vengono visualizzati come ApId:
cfgadm -s "select=class(pci)" |
I comandi smosservice o smdiskless possono avere problemi di funzionamento per una dipendenza dalla versione 1.5 di JDKTM.
Viene visualizzato il seguente messaggio di errore:
/usr/sadm/bin/smosservice list -u <user> -p <password> Exception in thread "main" java.lang.UnsupportedClassVersionError: com/sun/management/viperimpl/console/BaseConsoleOptionsManager (Unsupported major.minor version 49.0) at java.lang.ClassLoader.defineClass0(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:539) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123) at java.net.URLClassLoader.defineClass(URLClassLoader.java:251) at java.net.URLClassLoader.access$100(URLClassLoader.java:55) at java.net.URLClassLoader$1.run(URLClassLoader.java:194) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:187) at java.lang.ClassLoader.loadClass(ClassLoader.java:289) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274) at java.lang.ClassLoader.loadClass(ClassLoader.java:235) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302) |
Soluzione.
Impostare la variabile JAVA_HOME in modo che punti a un'installazione di JDK 1.5.
# JAVA_HOME=/usr/java |
Un sistema che esegue Sun Patch Manager Tool 2.0 può gestire i sistemi remoti che utilizzano Patch Manager Tool, anche nella versione 1.0.
Tuttavia, un sistema con una versione precedente di Patch Manager Tool non può gestire i sistemi remoti che utilizzano Patch Manager Tool 2.0. Le versioni precedenti includono:
Sun Patch Manager Base Software 1.x
Sun Patch Manager Tool 1.0
Il sistema operativo Solaris 8 non supporta il modello CIM/WBEM (Common Information Model/Web Based Enterprise Management) per Patch Manager Tool. Ciò comporta che sui sistemi Solaris 8 non è possibile eseguire la gestione remota con Patch Manager.
Sun Remote Services (SRS) Net Connect è supportato solo nella zona globale. Vengono generati messaggi di errore se si esegue una delle seguenti operazioni:
SRS Net Connect viene installato in una zona locale.
SRS Net Connect viene installato nella zona globale al momento della creazione di una zona locale.
Vengono generati i seguenti messaggi di errore:
*** installazione del pacchetto SUNWcstu non riuscita - amministrazione interattiva richiesta: Script di richiesta interattivo fornito dal software pkgadd: ERRORE: lo script di richiesta non è stato completato correttamente L'installazione di SUNWcstu è stata sospesa (è richiesta un'interazione). Non sono state apportate modifiche al sistema. *** installazione del pacchetto SUNWfrunc non riuscita - amministrazione interattiva richiesta: Script di richiesta interattivo fornito dal software pkgadd: ERRORE: lo script di richiesta non è stato completato correttamente L'installazione di SUNWfrunc è stata sospesa (è richiesta un'interazione). Non sono state apportate modifiche al sistema. |
Soluzione. Ignorare i messaggi di errore.
Durante l'installazione di una zona non globale con il comando zoneadm, vengono visualizzati messaggi di errore o di avvertimento durante l'installazione dei pacchetti. I messaggi generati sono simili ai seguenti:
Preparazione dell'installazione della zona zona1. Creazione dell'elenco dei file da copiare dalla zona globale. Copia di 2348 file nella zona. Inizializzazione del registro prodotti della zona. Determinazione dell'ordine di inizializzazione dei pacchetti della zona. Preparazione dell'inizializzazione di 790 pacchetti sulla zona. Inizializzati 790 pacchetti sulla zona. La zona zona1 è inizializzata. L'installazione di questi pacchetti ha generato degli errori: SUNWjhrt SUNWmcc SUNWjhdev SUNWnsb SUNWmcon SUNWmpatchmgr L'installazione di questi pacchetti ha generato dei messaggi di avvertenza: SUNWj3rt SUNWmc SUNWwbmc SUNWmga SUNWdclnt SUNWlvma SUNWlvmg SUNWrmui SUNWdoc SUNWpl5m SUNWpmgr |
I problemi relativi all'installazione dei pacchetti vengono anche registrati in /export/zone1/root/var/sadm/system/logs/install_log, che contiene un log dell'installazione della zona.
Soluzione. Nessuna.
La zona non globale può continuare a essere utilizzata nonostante la segnalazione di questi messaggi. L'installazione dei pacchetti generava alcuni problemi anche nelle versioni precedenti di Solaris Express e Solaris 10 Beta. Tuttavia, questi problemi non venivano segnalati. A partire da questa versione di Solaris, questi errori vengono segnalati e registrati correttamente.
Durante la riconfigurazione dinamica possono essere visualizzati messaggi di errore. I messaggi vengono visualizzati quando si esegue la riconfigurazione dinamica mentre sono attive operazioni di I/O sui dispositivi inclusi nel percorso della riconfigurazione dinamica. Dopo la visualizzazione dei messaggi, le operazioni di I/O vengono tentate nuovamente e possono riuscire. Qui di seguito è riportato un esempio dei messaggi visualizzati:
Jul 28 12:23:19 qame10-a scsi: [ID 107833 kern.warning] WARNING: /ssm@0,0/pci@19,700000/SUNW,qlc@2,1/fp@0,0/ssd@w2100000c5056fa13,0 (ssd6): Jul 28 12:23:19 qame10-a transport rejected fatal error Jul 28 12:22:08 qame10-a scsi: [ID 107833 kern.warning] WARNING: /ssm@0,0/pci@19,700000/SUNW,qlc@2,1/fp@0,0/ssd@w2100000c5056f9a7,0 (ssd36): Jul 28 12:22:08 qame10-a SCSI transport failed: reason 'timeout': retrying command |
Soluzione. Nessuna. Ignorare i messaggi di errore.
I comandi patchadd e patchrm funzionano in modo inappropriato nelle zone non globali che contengono file system ereditati. In queste zone, il comando pkgchk può generare messaggi di errore relativi ai pacchetti nelle seguenti situazioni:
Nella zona globale sono state applicate patch per il sistema di zone di Solaris 10 usando il comando patchadd.
Si utilizza patchrm per rimuovere le patch che sono state appena applicate.
In una zona non globale con file system ereditati, si controlla con il comando pkgchk uno dei pacchetti inclusi in una delle patch rimosse.
Il seguente messaggio di esempio viene visualizzato quando si utilizza il comando pkgchk su SUNWcsu nelle circostanze descritte in precedenza.
# pkgchk SUNWcsu ERRORE: /usr/lib/inet/certdb modtime <04/26/05 10:55:26 PM> atteso <01/23/05 01:48:24 AM>, effettivo dimensione file <36012> atteso <42152> effettivo cksum file <37098> atteso <19747> effettivo ERRORE: /usr/lib/inet/certlocal modtime <04/26/05 10:55:26 PM> atteso <01/23/05 01:48:24 AM>, effettivo dimensione file <44348> atteso <84636> effettivo |
Soluzione. Nessuna. Questi errori possono essere ignorati. Ignorare i messaggi di errore.
I sistemi che utilizzano la versione Solaris 10 3/05 HW1 possono avere problemi con IPsec. Questo problema si può verificare su un sistema appena installato o su un sistema che importa un numero elevato di nuovi manifesti SMF (Service Management Facility) all'avvio. In queste condizioni, l'inizializzazione di IPsec (che fa parte di svc:/network/initial:default) può precedere quella del framework di cifratura, che fa parte di svc:/system/cryptosvc:default. Poiché gli algoritmi di autenticazione o cifratura non sono ancora disponibili, la creazione delle associazioni di sicurezza di IPsec non riesce e produce i seguenti messaggi di errore:
PF_KEY error: type=ADD, errno=22: Invalid argument, diagnostic code=40: Algoritmo di autenticazione non supportato |
Questa condizione si può verificare ad esempio utilizzando la configurazione dinamica su un sistema Sun Fire E25K, che utilizza i servizi IPsec.
Soluzione. Prima di eseguire operazioni che utilizzano i servizi IPsec (ad esempio l'avvio con importazione di un numero elevato di nuovi manifesti SMF) procedere come segue:
Digitare questo comando prima dell'avvio:
ipsecalgs -s |
Se sul sistema è presente il file /etc/inet/secret/ipseckeys, digitare anche il comando:
ipseckey -f /etc/inet/secret/ipseckeys |
A questo punto è possibile eseguire le azioni che creano le associazioni di sicurezza IPsec, come le operazioni DR su un sistema Sun Fire E25K.
Questa procedura deve essere ripetuta solo quando è necessario importare un grande numero di manifesti SMF all'avvio.
Se si cerca di avviare il programma di amministrazione del registro dei prodotti di Solaris in una zona, l'operazione non riesce. Durante l'installazione della zona, il database del registro dei prodotti di Solaris, productregistry, non viene duplicato all'interno della zona. Il programma non può perciò essere eseguito nella zona.
Soluzione. Come superutente, copiare il database productregistry nella zona.
# cp /var/sadm/install/productregistry percorso_zona/var/sadm/install/ |
Nel comando precedente, percorso_zona è il percorso della directory radice della zona creata.
Se si utilizza il comando smdiskless per eliminare un client diskless, il comando non riesce. Il client diskless non viene rimosso dai database del sistema. Viene visualizzato il seguente messaggio di errore:
Failing with error EXM_BMS. |
Soluzione. Disabilitare la condivisione della partizione /export prima di aggiungere il client.
L'installazione di Net Connect 3.1.1 non riesce se si seleziona il prodotto all'inizio di un'installazione completa di Solaris 10. Il problema si verifica se l'installazione viene eseguita dal DVD del sistema operativo Solaris 10. Al termine dell'installazione del sistema operativo, il seguente messaggio di errore viene registrato nel log di installazione di Net Connect, in /var/sadm/install/logs/:
Installazione di SUNWSRSPX non riuscita. Errore: pkgadd non riuscito per SUNWsrspx Installazione completata. Package: SUNWsrspx |
Soluzione. Al termine dell'installazione del sistema operativo, procedere come segue:
Inserire il DVD del sistema operativo Solaris 10 o il CD Solaris 10 Software - 4.
Spostarsi nella directory del prodotto Net Connect.
Eseguire il programma di installazione di Net Connect.
Per scaricare la versione più recente di Sun Net Connect e le note sulla versione, accedere al portale di Sun Net Connect all'indirizzo https://srsnetconnect.sun.com.
Se si utilizza il comando smosservice delete per rimuovere un servizio di un client diskless, il comando non rimuove correttamente tutte le directory del servizio.
Soluzione. Procedere come segue.
Verificare che non siano presenti client che utilizzano il servizio.
# unshare /export/exec/Solaris_10_sparc.all # rm -rf /export/exec/Solaris_10_sparc.all # rm -rf /export/exec/.copyofSolaris_10_sparc.all # rm -rf /export/.copyofSolaris_10 # rm -rf /export/Solaris_10 # rm -rf /export/share # rm -rf /export/root/templates/Solaris_10 # rm -rf /export/root/clone/Solaris_10 # rm -rf /tftpboot/inetboot.sun4u.Solaris_10 |
Rimuovere la voce seguente dal file /etc/bootparams.
fs1-24 boottype=:os |
Rimuovere questa voce solo se il file server non fornisce funzioni o risorse per altri servizi.
Rimuovere la voce seguente dal file /etc/dfs/dfstab.
share -F nfs -o ro /export/exec/Solaris_8_sparc.all/usr |
Modificare il file /var/sadm/system/admin/services/Solaris_10.
Se il file server non è Solaris_10, eliminare il file.
Se il file server è Solaris_10, rimuovere tutte le voci che compaiono dopo le prime tre righe. Le righe eliminate indicano i pacchetti del servizio USR_PATH e SPOOLED ROOT in /export/root/templates/Solaris_10 e nelle piattaforme supportate.
Se si esegue patchadd per installare una patch via NFS da un altro sistema, il comando non riesce. L'esempio seguente mostra un'operazione patchadd non riuscita e il messaggio di errore risultante:
Verifica delle patch... Caricamento delle patch installate sul sistema... [...] Caricamento delle patch di cui è richiesta l'installazione. [...] Controllo delle patch specificate per l'installazione. [...] Le patch approvate saranno installate in questo ordine: [...] Controllo delle zone locali... [...] Riepilogo per le zone: [...] Patch che hanno superato il controllo delle dipendenze: [...] Applicazione delle patch alla zona globale Aggiunta delle patch... Controllo delle patch installate... Verifica della capacità del file system (metodo rapido)... Installazione dei package di patch... La patch IDpatch è stata installata correttamente. Vedere /var/sadm/patch/IDpatch/log per maggiori informazioni Package di patch installati: SUNWroute [...] Aggiunta delle patch... La directory delle patch /dev/.SUNW_patches_0111105334-1230284-00004de14dcb29c7 non è presente sul sistema. [...] Patchadd sta terminando. |
Soluzione. Copiare manualmente tutte le patch da installare dal server NFS al sistema locale. Usare quindi il comando patchadd per installare le patch dalla directory del sistema locale in cui erano state copiate.
Se si utilizza il comando lucreate per creare volumi RAID-1 (mirror) non associati a uno dei dispositivi della directory /dev/md, il comando non riesce. Per eseguire il mirroring dei file system con il comando lucreate, è prima necessario creare i mirror con Solaris Volume Manager.
Soluzione. Creare i file system in mirroring con Solaris Volume Manager, quindi creare il nuovo ambiente di boot con il comando lucreate.
Per maggiori informazioni sul comando lucreate, vedere la pagina man lucreate(1M) o la Guida all’installazione di Solaris 10 11/06: Solaris Live Upgrade e pianificazione degli aggiornamenti.
Per maggiori informazioni sulla creazione di file system in mirroring con Solaris Volume Manager, vedere il manuale Solaris Volume Manager Administration Guide.
Se si cerca di arrestare il sistema premendo una sequenza di tasti (ad esempio Stop-A o L1-A) il sistema può produrre un errore irreversibile. Viene visualizzato un messaggio di errore simile al seguente:
panic[cpu2]/thread=2a100337d40: pcisch2 (pci@9,700000): consistent dma sync timeout |
Soluzione. Non utilizzare una combinazione di tasti per portare il sistema al livello della PROM di OpenBoot.
Il comando ipfs salva e ripristina informazioni sullo stato della NAT (Network Address Translation) e tabelle sullo stato di filtro dei pacchetti. Questo programma impedisce l'interruzione delle connessioni di rete in caso di riavvio del sistema. Se si esegue il comando con l'opzione -W, ipfs non salva le tabelle di stato del kernel. Viene visualizzato il seguente messaggio di errore:
state:SIOCSTGET: Bad address |
Soluzione. Nessuna.
Dopo aver modificato il contenuto di snmpd.conf, è possibile eseguire il comando kill -HUP ID processo snmp. Questo comando arresta il processo snmp. Il comando invia quindi un segnale all'agente master del System Management Agent (snmpd) perché rilegga snmpd.conf e implementi le modifiche apportate. Non sempre il comando produce la rilettura del file di configurazione da parte dell'agente master. Di conseguenza, non sempre l'uso del comando rende effettive le modifiche del file di configurazione.
Anziché utilizzare kill -HUP, riavviare il System Management Agent dopo una modifica al file snmpd.conf. Procedere come segue:
Diventare superutente.
Digitare il comando seguente:
# /etc/init.d/init.sma restart
Si supponga di dover avviare un sistema Sun LX50 che dispone di una partizione di servizio e su cui è installato Solaris 10 per x86. Premendo il tasto funzione F4, quando richiesto, per avviare la partizione di servizio, lo schermo diventa vuoto. Il sistema non avvia la partizione di servizio.
Soluzione. Non premere il tasto F4 mentre è visualizzata la schermata di avvio del BIOS. Dopo un periodo di timeout, compare la schermata con le informazioni sulla partizione attiva del disco. Nella colonna del numero di partizione, selezionare il numero corrispondente a type=DIAGNOSTIC. Premere Invio. Il sistema avvia la partizione di servizio.
Il daemon di Solaris WBEM Services 2.5 non riesce a trovare i provider scritti per l'interfaccia com.sun.wbem.provider o per l'interfaccia com.sun.wbem.provider20. Anche se si crea un'istanza Solaris_ProviderPath per un provider scritto per queste interfacce, il daemon di Solaris WBEM Services 2.5 non riesce a trovarlo.
Soluzione. Arrestare e riavviare il daemon di Solaris WBEM Services 2.5.
# /etc/init.d/init.wbem stop # /etc/init.d/init.wbem start |
Se si utilizza la API javax
per creare il provider, non è necessario arrestare e riavviare il daemon di Solaris WBEM Services 2.5, poiché questo daemon riconosce dinamicamente i provider javax
.
Se si sceglie di usare la API com.sun al posto della API javax
per sviluppare un software WBEM, sono pienamente supportate solo le chiamate remote (RMI) ai metodi CIM (Common Information Model). Non è garantito che altri protocolli, ad esempio XML/HTTP, funzionino perfettamente con la API com.sun.
La tabella seguente riporta alcuni esempi di chiamate che vengono eseguite correttamente con RMI ma non con XML/HTTP.
Chiamata del metodo |
Messaggio di errore |
---|---|
CIMClient.close() |
NullPointerException |
CIMClient.execQuery() |
CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED |
CIMClient.getInstance() |
CIM_ERR_FAILED |
CIMClient.invokeMethod() |
XMLERROR: ClassCastException |
Lo strumento “Attivazioni e condivisioni” della Solaris Management Console non permette di modificare le opzioni di attivazione dei file system di importanza critica / (radice), /usr e /var.
Soluzione. Scegliere una delle seguenti procedure:
Usare l'opzione remount con il comando mount.
# mount -F tipo-file-system -o remount, altre-opzioni-mount \ dispositivo-da-attivare punto-attivazione |
Le modifiche alle proprietà di attivazione effettuate con l'opzione -remount del comando mount non vengono preservate in modo permanente. Inoltre, le opzioni che non vengono specificate nella parte altre-opzioni-mount del comando precedente ereditano i valori predefiniti specificati dal sistema. Per maggiori informazioni, vedere la pagina man mount_ufs(1M).
Modificare le proprietà di attivazione del file system nella voce appropriata del file /etc/vfstab, quindi riavviare il sistema.