G.5 Aggiunta o aggiornamento dei driver LAN

Man mano che sviluppano e rilasciano nuove schede LAN, i produttori rendono generalmente disponibili anche driver nuovi o aggiornati. Alcune schede LAN funzionano correttamente anche con le versioni precedenti dei driver, ma è possibile anche che la versione precedente del driver non sia in grado di rilevare una nuova scheda LAN e si rifiuti di caricarla. In altri casi, la versione precedente del driver viene comunque caricata ma la scheda LAN presenta gravi problemi di funzionamento. Quindi, per utilizzare una nuova scheda LAN al meglio, è consigliabile sempre usare un driver aggiornato.

Le seguenti sezioni spiegano come ottenere o compilare i driver:

Per informazioni su come caricare i driver con parametri specifici, vedere Sezione G.5.3, Caricamento dei driver con i parametri.

G.5.1 Come ottenere i driver

I nuovi driver per le schede LAN devono essere richiesti direttamente al produttore. La maggior parte dei produttori di schede LAN consente agli utenti di scaricare gratuitamente le versioni aggiornate dei driver dal proprio sito Web. Alcuni driver possono essere scaricati da www.scyld.com/network, mentre l'origine del driver Broadcom* BCM5700 può essere scaricata da http://www.broadcom.com/drivers/downloaddrivers.php.

Se il produttore dispone di driver binari specificatamente compilati per la versione kernel usata da ZENworks, è possibile richiedere questo driver e usare uno dei metodi di aggiornamento descritti per aggiungere il driver. ZENworks 10 è basato su SLES 10 SP1, versione del kernel 2.6.16.46-0.12. Se il driver non è per questa versione specifica, è necessario richiedere l'origine e compilarla per la versione utilizzata. Per ulteriori informazioni, consultare Sezione G.5.2, Creazione dei driver.

G.5.2 Creazione dei driver

Quasi tutti i driver Linux vengono distribuiti sotto forma di codice sorgente e devono essere quindi compilati per poter essere usati. Seguire le istruzioni del produttore fornite con il nuovo driver per creare il modulo driver. Molti driver possono essere creati in modo che possano essere incorporati nel kernel. Tuttavia, è generalmente consigliabile creare i driver LAN come moduli kernel esterni.

Al momento della creazione dei driver LAN, è necessario verificare che il computer su cui è installata la build utilizzi lo stesso kernel dell'ambiente di imaging. Se non riesce a caricare il driver LAN nell'ambiente di imaging, è possibile che l'ambiente della build non corrisponda a quello di imaging.

È possibile trovare la versione corrente del kernel dell'ambiente Linux utilizzando il seguente comando:

uname -r

Per creare i driver:

Come ottenere l'albero del codice sorgente Linux

Per compilare un modulo, è necessario disporre dell'albero del codice sorgente Linux che contiene le corrispondenze di configurazione per il kernel ZENworks.

Per usare l'albero del codice sorgente di Linux:

  1. Per ottenere il codice sorgente necessario, scaricare il file dell'albero sorgente di Linux linux-2.6.16.46-0.12-pulsar.tgz.

  2. Decomprimere il file tar e installare l'albero del codice sorgente nella directory /usr/src.

    Il file tar, ad esempio, crea le seguenti directory:

    /usr/src/linux-2.6.16.46-0.12
    /usr/src/linux-2.6.46-0.12-obj
    
  3. Per creare un collegamento all'albero di origine:

    1. Per modificare la directory /usr/src, immettere:

      cd /usr/src
      
    2. Se la directory contiene un collegamento Linux temporaneo, cancellarlo.

    3. Creare un nuovo collegamento Linux temporaneo come:

      ln -s linux-2.6.16.46-0.12 linux
      

Appena l'albero del codice sorgente del kernel Linux e il collegamento temporaneo per la compilazione del modulo sono disponibili, passare a Compilazione del modulo.

Compilazione del modulo

Per compilare manualmente il modulo:

  1. Installare il codice.

    Seguire le istruzioni per l'installazione del codice fornite dal produttore.

    Generalmente il codice sorgente del modulo è ubicato in una directory di /usr/src. I file del codice sorgente del modulo vengono generalmente forniti sotto forma di file gzipped tar, ossia (.tar.gz o .tgz). In alcuni casi è possibile anche che sia un file bzipped (.bz2).

  2. Per compilare l'origine, modificare le directory impostandole sull'origine.

  3. Dopo aver compilato il modulo per ZENworks, copiare il file del modulo .ko (fare attenzione a selezionare il nome del modulo corretto e non un file .ko di lavoro) e installarlo utilizzando il metodo di aggiornamento dei driver o inserirlo nel file system initrd.

G.5.3 Caricamento dei driver con i parametri

Se ci sono moduli che si desidera caricare durante l'elaborazione di linuxrc e il programma non rileva che deve essere caricato o se si desidera specificare i parametri di caricamento, è possibile immettere una riga nel file linuxrc.config o /info. Questo file deve essere successivamente aggiornato nel file system initrd.

In alcuni casi può essere necessario caricare un modulo driver LAN con parametri specifici. È possibile eseguire questa operazione utilizzando una riga come:

insmod="moduleName parm=xxx"

Questo tipo di riga viene comunemente usato per caricare un driver LAN con parametri specifici, come full duplex o una velocità specifica.