In questo documento sono trattati i seguenti argomenti:
Modifiche al programma di installazione di Red Hat Enterprise Linux (Anaconda)
Informazioni generali
Informazioni relative al kernel
Modifiche ai driver e al supporto hardware
Modifiche ai pacchetti
La sezione seguente include le informazioni specifiche al programma di installazione di Red Hat Enterprise Linux, Anaconda.
Per poter aggiornare un sistema Red Hat Enterprise Linux 3 precedentemente installato in Update 3, è necessario usare Red Hat Network per aggiornare quei pacchetti che sono stati modificati. L'utilizzo di Anaconda per eseguire il miglioramento in Update 3 non è supportato.
Utilizzare Anaconda solo per eseguire una nuova installazione di Red Hat Enterprise Linux 3 Update 3.
Se copiate i contenuti dei CD-ROM di Red Hat Enterprise Linux 3 Update 3 (per esempio, in preparazione per una installazione basata sulla rete), assicuratevi di copiare i CD-ROM solo per il sistema operativo. Non copiate i CD-ROM aggiuntivi, o qualsiasi altro CD-ROM, in quanto tale operazione sovrascriverà i file necessari per il corretto funzionamento di Anaconda.
Questi CD-ROM devono essere installati dopo l'installazione di Red Hat Enterprise Linux.
Questa sezione contiene informazioni generali non relative ad altre sezioni presenti in questo documento.
Red Hat Enterprise Linux 3 Update 3 aggiunge la versione più recente del KornShell (ksh) sul CD Extra di Red Hat Enterprise Linux. KornShell è un linguaggio di programmazione della shell, sia per un uso interattivo che per lo script della shell, ed è compatibile con la Bourne Shell (sh).
Il nuovo pacchetto ksh risulta essere un'alternativa facoltativa a pdksh, il quale è stato già incluso nel core distribution. Risulta essere utile nei casi in cui è necessaria una compatibilità esatta con le semantiche AT&T ksh.
Il pacchetto autofs, il quale controlla il funzionamento dei demoni automount eseguiti su Red Hat Enterprise Linux, è stato aggiornato alla versione 4. Questo aggiornamento fornisce una compatibilità completa con la versione 3. Altresì esso è in grado di aggiungere le seguenti caratteristiche:
I mount Browsable (ghosting) — Il ghosting della mappa delle directory vi permette di vedere le directory stesse all'interno della mappa autofs senza il bisogno di montarle. Quando accesse (ad esempio quando viene richiesto un elenco delle directory), l'entry della mappa viene montata in modo da essere visualizzata.
Supporto per il Replicated Server — La funzionalità replicated server permette ad un amministratore di specificare le entry di una mappa che indicano server multipli e replicati. Il demone automount tenta di determinare il server più idoneo da usare per i processi di mount, verificando la latenza di un rpc_ping per ogni server disponibile. È possibile assegnare ai server delle priorità, permettendo all'amministratore un maggiore controllo. Consultate il file /usr/share/doc/autofs-4.1.3/README.replicated-server, per maggiori informazioni sul formato della mappa.
Mappe eseguibili — Ora è possibile marcare una mappa come eseguibile. L'initscript che analizza la mappa auto.master, la passa sotto forma di un programma per l'auto-mounter. Viene chiamato un program map come script con una chiave come argomento. È possibile che questa operazione non ritorni alcun output se è presente un errore, oppure una o più righe contenente una mappa (con \). Questa caratteristica risulta essere utile per l'implementazione della funzionalità /net.
Mount multipli — Questa caratteristica permette al demone automount di ricercare i metodi multipli di lookup in successione. Per esempio, un lookup è in grado di interrogare NIS e file map.
Red Hat Enterprise Linux 3 Update 2 è attualmente "sotto valutazione" per un Evaluated Assurance Level (EAL) 3+/Controlled Access Protection Profile (CAPP) sulle seguenti piattaforme:
Red Hat Enterprise Linux WS sull'architettura x86
Red Hat Enterprise Linux AS sulle architetture x86, AMD64, IBM zSeries, iSeries, e pSeries
Per poter ottenere l'ultimissimo stato dei criteri di valutazione, consultate la seguente pagina Web:
http://www.redhat.com/solutions/industries/government/commoncriteria/
Tutte le patch applicate a Red Hat Enterprise Linux 3 Update 2 code base, per poter ottenere la certificazione EAL3, sono state riportate nella release di Red Hat Enterprise Linux 3 Update 3.
Per maggiori informazioni sulla valutazione del sottosistema, consultare la pagina man di laus(7).
Dal suo impiego iniziale nel Red Hat Enterprise Linux 3 Update 2 kernel, il kernel per Update 3 contiene alcune modifiche che abilitano la verifica per le chiamate del sistema su architetture aggiuntive. Quando non si usa l'auditing, queste modifiche sono neutrali. Il componente Kernel fornisce un accesso ai servizi di verifica attraverso un dispositivo a carattere speciale /dev/audit. Attraverso questo dispositivo, un demone di tipo user-space (auditd) è in grado di abilitare o disabilitare la verifica e può fornire al kernel i rulesets usati per determinare quando è necessario registrare una invocazione per una chiamata di sistema. Questo dispositivo viene usato anche da auditd per riprendere le informazioni della verifica dal kernel, e per trasferirli ad un log di audit. Consultate la pagina man di audit(4) per informazioni sulle chiamate ioctl() supportate, e sulle interfacce /proc/ per la gestione e la regolazione del comportamento di verifica.
La versione del Web server httpd incluso come parte di Red Hat Enterprise Linux 3 Update 3 include diverse modifiche molto importanti:
Il modulo mod_cgi è stato migliorato per gestire correttamente gli output su stderr e stdout
Le variabili dell'ambiente SSL definite da mod_ssl possono essere usate direttamente da mod_rewrite utilizzando la sintassi %{SSL:...}. Per esempio, "%{SSL:SSL_CIPHER_USEKEYSIZE}" può espandersi a "128".
Similmente, le variabili dell'ambiente SSL possono essere usate direttamente da mod_headers utilizzando la sintassi %{...}s.
È stato incluso il modulo mod_ext_filter
Il group id minimo accettabile che verrà usato da suexec, è stato abbassato da 500 a 100. Questo permette l'utilizzo di suexec con gli utenti appartenenti al gruppo "users".
Questa sezione contiene le informazioni relative al kernel di Red Hat Enterprise Linux 3 Update 3
Red Hat Enterprise Linux 3 Update 3 include un nuovo contenuto del kernel in grado di facilitare la diagnosi delle sospensioni del sistema 'system hangs'. Viene utilizzata una nuova capacità NMI hardware (Non-Maskable Interrupt), per eseguire una forzatura del kernel panic.
Per abilitare questo contenuto, impostare il seguente parametro per il controllo del sistema nel modo seguente:
kernel.unknown_nmi_panic = 1
Questo può essere eseguito usando il comando sysctl (sysctl -w kernel.unknown_nmi_panic=1), oppure aggiungendo la riga sopra riportata su /etc/sysctl.conf.
Una volta abilitato il suddetto contenuto (riavviando il sistema), è possibile forzare un panic pigiando il pulsante NMI del sistema.
I sistemi che non dispongono di un pulsante in grado di generare un NMI, possono continuare ad usare il watchdog NMI, il quale genererà un NMI se avverrà il lock up del sistema.
Il suddetto contenuto non è compatibile con OProfile; se OProfile è attivo, pigiando il pulsante NMI (oppure utilizzando il watchdog NMI) non si verificherà alcun panic del sistema.
Il bilanciamento IRQ dell'hardware per Lindenhurst (Intel® E7520 e Intel® E7320) e per le piattaforme chipset basate su Tumwater (Intel® E7525) è stato abilitato. Quindi il bilanciamento IRQ software per queste piattaforme presenti nel kernel di Red Hat Enterprise Linux 3 Update 3 è stato disabilitato.
Il kernel Red Hat Enterprise Linux 3 Update 3 include un nuovo contenuto sulla sicurezza conosciuto come Exec-shield. Exec-shield rappresenta un miglioramento per il kernel di Linux in grado di creare delle sezioni molto grandi di programmi, contraddistinti in modo particolare. Questa operazione è in grado di ridurre il danno potenziale dovuto ad alcune carenze relative alla sicurezza, come ad esempio gli exploit dovuti alla saturazione del buffer.
Exec-shield può rendere randomici gli indirzzi della memoria virtuale sui quali vengono caricati alcuni binari. Questa mappatura VM randomica, rende più difficoltoso nei confronti delle applicazioni maliziose, l'accesso in modo improprio ai codici o dati, in base alla conoscenza dei rispettivi indirizzi virtuali.
Il comportamento di Exec-shield può essere controllato tramite il proc file system. Vengono usati due file:
/proc/sys/kernel/exec-shield
/proc/sys/kernel/exec-shield-randomize
Il file /proc/sys/kernel/exec-shield controlla la funzionalità generale di Exec-shield, e può essere manipolata usando il seguente comando:
echo <value> > /proc/sys/kernel/exec-shield
Dove <value> rappresenta uno dei seguenti:
0 — Exec-shield (incluso il mapping VM randomico) è stato disabilitato per tutti i binari, che siano essi marcati o non marcati
1 — Exec-shield è stato abilitato per tutti i binari marcati
2 — Exec-shield è stato abilitato per tutti i binari, senza tener in considerazione quelli marcati (per un utilizzo di SOLOtest)
Il valore di default per /proc/sys/kernel/exec-shield è 1.
Il file /proc/sys/kernel/exec-shield-randomize controlla se Exec-shield rende la procedura VM mapping randomica, e se può essere manipolata usando il segunete comando:
echo <value> > /proc/sys/kernel/exec-shield-randomize
Dove <value> rappresenta uno dei seguenti:
0 — L'VM mapping randomico è disabilitato
1 — L'VM mapping randomico è abilitato
Il valore di default per /proc/sys/kernel/exec-shield-randomize è 1.
È possibile configurare Exec-shield includendo una (o entrambi) delle seguenti righe all'interno del file /etc/sysctl.conf:
kernel.exec-shield=<value>
kernel.exec-shield-randomize=<value>
(dove <value> è il valore precedentemente indicato.)
Exec-shield può essere disabilitato ad un sistem level per mezzo di una opzione di avvio del kernel. Inserendo il seguente parametro sulla riga (o righe) corrispondente al "kernel" all'interno del file /etc/grub.conf, verrà disabilitato Exec-shield:
exec-shield=0
La funzionalità Exec-shield è solo disponibile per i binari creati (e contrassegnati) utilizzando il toolchain (compiler, assembler, linker) disponibile con Red Hat Enterprise Linux 3 Update 3. I binari creati usando una versione diversa del toolchain, possono essere ancora usati, ma poichè essi non verranno contrassegnati non potranno usufruire dei vantaggi dovuti all'uso di Exec-shield.
Gli sviluppatori dell'applicazione devono tener presente che nella maggior parte dei casi, GCC contrassegna correttamente il proprio codice, come codice in grado di utilizzare Exec-shield. In alcune circostanze (generalmente dovute a causa dell'inline assembler o di altro codice di tipo nonportable), dove GCC non contrassegna correttamente (oppure, raramente, incorrettamente) il codice generato, è possibile passare le opzioni GCC in modo da ottenere il risultato desiderato.
Le opzioni che controllano il processo per contrassegnare il binario ad un livello di assemblaggio sono:
-Wa,--execstack
-Wa,--noexecstack
Le opzioni che controllano il processo per contrassegnare il binario ad un livello linker sono:
-Wl,-z,execstack
-Wl,-z,noexecstack
È possibile altresì adottare un controllo più dettagliato, disabilitando Exec-shield per un binario specifico al momento dell'esecuzione. Ciò viene fatto utilizzando il comando setarch:
setarch i386 <binary>
(Dove <binary> rappresenta il binario da eseguire.) Il binario viene eseguito successivamente senza la funzionalità Exec-shield.
Il proc file /proc/self/maps può essere usato per osservare gli effetti di Exec-shield. Utilizzando cat in modo da visualizzare il mapping VM del processo corrente, sarete in grado di visualizzare Exec-shield durante la sua funzione normale. In modo analogo, sarete in grado di usare setarch insieme con cat, per notare come un mapping VM normale possa differire da un mapping Exec-shield.
Red Hat Enterprise Linux 3 Update 3 include un nuovo contenuto relativo alla sicurezza — Il supporto del kernel per alcune nuove CPU Intel che presentano la capacità NX (No eXecute). Tale tecnologia limita l'esecuzione del codice del programma, rendendolo più difficoltoso per gli hacker che tentano di inserire codici maliziosi all'interno del sistema, per mezzo di un buffer overrun. Quando alcune pagine specifiche vengono marcate come non eseguibili, la CPU non è in grado di eseguire il codice all'interno di queste pagine. Ciò può essere usato per marcare alcune aree della memoria, come ad esempio lo stack o heap (luoghi tipici dove vengono conservati i buffer.)
Red Hat Enterprise Linux 3 (disponibile inizialmente dal 22 di Ottobre 2003) include il supporto NX per la piattaforma AMD64.
Questo aggiornamento contiene i bug fixes per un certo numero di driver. Gli aggiornamenti più importanti sono elencati qui di seguito. In alcuni casi, il driver originale è stato conservato con un nome diverso, ed è disponibile come alternativa non predefinita per organizzazioni che desiderano migrare la configurazione dei loro driver su di una versione più recente.
Poichè in alcuni casi solo una revisione più vecchia del driver verrà conservata per ogni aggiornamento, è necessario completare la migrazione su driver più recenti prima di applicare il successivo aggiornamento di Red Hat Enterprise Linux.
Queste release notes indicano anche i driver rimossi da questo aggiornamento. I suddetti driver possiedono il nome del driver di base insieme al numero della revisione; per esempio, megaraid_2002.o. È necessario rimuovere i suddetti driver da /etc/modules.conf prima di installare questo tipo di aggiornamento del kernel.
Ricordate che l'unico modo per sapere quali driver sono stati usati, è di rivedere i contenuti di /etc/modules.conf. L'uso del comando lsmod non rappresenta un'alternativa al controllo di questo file.
Adaptec RAID (driver aacraid)
Il driver aacraid è stato aggiornato da 1.1.2 a 1.1.5-2339
Il nuovo driver è scsi/aacraid/aacraid.o
Il vecchio driver è stato conservato come addon/aacraid_10102/aacraid_10102.o
LSI Logic RAID (driver megaraid)
Il driver megaraid2 include un supporto per un numero di nuovi adattatori host bus (alcuni prodotti PERC4 e Serial ATA), che non sono supportati dal driver megaraid. Se il vostro sistema contiene esclusivamente questi nuovi prodotti, il driver megaraid2 viene caricato per default. Se possedete i prodotti più vecchi, il driver megaraid continuerà ad essere il default.
Tuttavia, se avete un mix di vecchi e nuovi adattatori MegaRAID, allora il driver che viene selezionato, dipende dall'ordine attraverso il quale gli adattatori vengono controllati. (Notate che non potete caricare entrambi i driver megaraid e megaraid2 simultaneamente.) Se il driver di default presente sul vostro sistema non è quello desiderato, eseguite una delle seguenti azioni:
Se state eseguendo l'installazione del sistema, digitate il seguente comando al prompt di avvio:
expert noprobe
Successivamente, selezionare il driver desiderato dal menù.
Se il sistema risulta essere già installato, modificate /etc/modules.conf e cambiate le righe "alias scsi_hostadapter" che si riferiscono al driver megaraid o megaraid2, per il driver desiderato. Notate che dopo aver eseguito alcune modifiche nei confronti di /etc/modules.conf, è necessario ricreare l'immagine initrd; consultate la pagina man di mkinitrd, per maggiori informazioni.
Il driver megaraid2 è stato aggiornato da v2.10.1.1 a v2.10.6-RH1
Il nuovo driver è scsi/megaraid2.o
Il vecchio driver è stato conservato come addon/megaraid_2101/megaraid2101.o
Il driver v2.00.9 è stato rimosso
Il driver di default resta il driver v1.18k (megaraid.o)
IBM ServeRAID (driver ips)
Il driver ips è stato aggiornato da 6.11.07 a 7.00.15
Il nuovo driver è scsi/ips.o
Il driver precedente è stato mantenuto come addon/ips_61107/ips_61107.o
Il driver 6.10.52 ips (ips_61052.o) è stato rimosso
LSI Logic MPT Fusion (driver mpt*)
Questi driver sono stati aggiornati da 2.05.11.03 a 2.05.16
I nuovi driver si trovano in message/fusion/
I driver più vecchi sono stati conservati in addon/fusion_20511
I driver 2.05.05+ (mpt*_20505.o) sono stati rimossi
Compaq SA53xx Controllers (driver cciss)
Il driver cciss è stato aggiornato da 2.4.50.RH1 a v2.4.52.RH1
QLogic Fibre Channel (driver qla2xxx)
Questi driver sono stati aggiornati da 6.07.02-RH2 a 7.00.03-RH1
I nuovi driver si trovano in addon/qla2200/
Il vecchio driver è stato conservato in addon/qla2200_60702RH2
I driver 6.06.00b11 (qla2*00_60600b11.o) sono stati rimossi
Notare che QLogic non fornisce più l'adattatore QLA2100. Questo adattatore non è più supportato da QLogic o Red Hat. Per cui, il driver si trova nel pacchetto kernel-unsupported.
Emulex Fibre Channel (driver lpfc)
Questo dirver è stato aggiunto alla distribuzione. La versione è 7.0.3
Il driver si trova in addon/lpfc
Intel PRO/1000 (driver e1000)
Questo driver è stato aggiornato da 5.2.30.1-k1 a 5.2.52-k3
Intel PRO/100 (driver e100)
Questo driver è stato aggiornato dalla versione 2.3.30-k1 a 2.3.43-k1
Broadcom Tigon3 (driver tg3)
Questo driver è stato aggiornato da v3.1 a v3.6RH
Questa sezione contiene un elenco dei pacchetti aggiornati, aggiunti o rimossi da Red Hat Enterprise Linux 3 come parte di Update 3. I pacchetti che sono stati creati per le architetture multiple, sono elencati insieme con l'architettura in questione racchiuse da parentesi.
Questi elenchi includono i pacchetti di tutte le varianti di Red Hat Enterprise Linux 3. Il vostro sistema potrebbe non includere tutti i pacchetti di seguito riportati.
I seguenti pacchetti sono stati aggiornati da Red Hat Enterprise Linux 3 Update 2:
ImageMagick
ImageMagick-c++
ImageMagick-c++-devel
ImageMagick-devel
ImageMagick-perl
MAKEDEV
XFree86
XFree86-100dpi-fonts
XFree86-75dpi-fonts
XFree86-ISO8859-14-100dpi-fonts
XFree86-ISO8859-14-75dpi-fonts
XFree86-ISO8859-15-100dpi-fonts
XFree86-ISO8859-15-75dpi-fonts
XFree86-ISO8859-2-100dpi-fonts
XFree86-ISO8859-2-75dpi-fonts
XFree86-ISO8859-9-100dpi-fonts
XFree86-ISO8859-9-75dpi-fonts
XFree86-Mesa-libGL
XFree86-Mesa-libGLU
XFree86-Xnest
XFree86-Xvfb
XFree86-base-fonts
XFree86-cyrillic-fonts
XFree86-devel
XFree86-doc
XFree86-font-utils
XFree86-libs
XFree86-libs-data
XFree86-sdk
XFree86-syriac-fonts
XFree86-tools
XFree86-truetype-fonts
XFree86-twm
XFree86-xauth
XFree86-xdm
XFree86-xfs
anaconda
anaconda-runtime
arpwatch
at
autofs
bash
bind
bind-chroot
bind-devel
bind-utils
bison
cdda2wav
cdrecord
cdrecord-devel
chkconfig
comps
control-center
cpp
crash
cups
cups-devel
cups-libs
cvs
dev
dhclient
dhcp
dhcp-devel
eclipse
eclipse-lomboz
elfutils
elfutils-devel
elfutils-libelf
elfutils-libelf-devel
ethereal
ethereal-gnome
ethtool
expect
expect-devel
expectk
file-roller
gcc
gcc-c++
gcc-g77
gcc-gnat
gcc-java
gcc-objc
gdb
glibc (i386)
glibc (i686)
glibc-common
glibc-debug
glibc-devel
glibc-headers
glibc-kernheaders
glibc-profile
glibc-utils
gnome-panel
grep
grub
gtk+
gtk+-devel
gtkhtml3
gtkhtml3-devel
httpd
httpd-devel
hwdata
imap
imap-devel
imap-utils
initscripts
itcl
jpackage-utils
kdelibs
kdelibs-devel
kernel (athlon)
kernel (i686)
kernel-BOOT
kernel-doc
kernel-hugemem
kernel-hugemem-unsupported
kernel-smp (athlon)
kernel-smp (i686)
kernel-smp-unsupported (athlon)
kernel-smp-unsupported (i686)
kernel-source
kernel-unsupported (athlon)
kernel-unsupported (i686)
kernel-utils
krb5-devel
krb5-libs
krb5-server
krb5-workstation
laus
laus-devel
lha
libcap
libcap-devel
libf2c
libgcc
libgcj
libgcj-devel
libgnat
libgtop2
libgtop2-devel
libobjc
libpcap
libpng
libpng-devel
libpng10
libpng10-devel
libstdc++
libstdc++-devel
ltrace
lvm
mdadm
metacity
mkisofs
mod_auth_pgsql
mod_authz_ldap
mod_ssl
modutils
modutils-devel
ncompress
net-snmp
net-snmp-devel
net-snmp-perl
net-snmp-utils
nfs-utils
nptl-devel
nscd
nss_ldap
ntp
ntsysv
openldap
openldap-clients
openldap-devel
openldap-servers
openmotif
openmotif-devel
openoffice.org
openoffice.org-i18n
openoffice.org-libs
openssl (i386)
openssl (i686)
openssl-devel
openssl-perl
pam
pam-devel
parted
parted-devel
passwd
perl
perl-CGI
perl-CPAN
perl-DB_File
perl-suidperl
php
php-devel
php-imap
php-ldap
php-mysql
php-odbc
php-pgsql
popt
postfix
ppp
prelink
procps
pvm
pvm-gui
qt
qt-MySQL
qt-ODBC
qt-PostgreSQL
qt-designer
qt-devel
rdist
readline
readline-devel
redhat-config-bind
redhat-config-kickstart
redhat-config-network
redhat-config-network-tui
redhat-config-proc
redhat-config-securitylevel
redhat-config-securitylevel-tui
rh-postgresql
rh-postgresql-contrib
rh-postgresql-devel
rh-postgresql-docs
rh-postgresql-jdbc
rh-postgresql-libs
rh-postgresql-pl
rh-postgresql-python
rh-postgresql-server
rh-postgresql-server
rh-postgresql-test
rhnlib
rhpl
rp-pppoe
rpm
rpm-build
rpm-devel
rpm-python
rpmdb-redhat
rsync
rusers
rusers-server
samba
samba-client
samba-common
samba-swat
schedutils
sendmail
sendmail-cf
sendmail-devel
sendmail-doc
shadow-utils
squid
squirrelmail
strace
sysklogd
sysstat
tcl
tcl-devel
tcl-html
tcllib
tclx
tcpdump
tix
tk
tk-devel
tux
unixODBC
unixODBC-devel
unixODBC-kde
up2date
up2date-gnome
utempter
vixie-cron
xemacs
xemacs-el
xemacs-info
xinetd
xscreensaver
ypserv
I seguenti pacchetti sono stati aggiunti a Red Hat Enterprise Linux 3 Update 3:
amtu
anacron
authd
bind-libs
bootparamd
diskdumputils
eal3-certification
eal3-certification-doc
eclipse-rhaps-develserver
evolution-connector
laus-libs
nss_db
nss_db-compat
qt-config
I seguenti pacchetti sono stati rimossi da Red Hat Enterprise Linux 3 Update 3:
java-javadoc
( x86 )