Aptitude: differenze tra le versioni

m
(→‎Cercare un pacchetto: ricerca avanzata)
Riga 1: Riga 1:
{{stub}}
L'installazione dei driver proprietari NVIDIA su Debian si pu� fare in due modi, e in entrambi i casi e' molto semplice.


Mi sono accorto che molti nuovi utenti di Linux vengono disorientati dal fatto di ritrovarsi per la prima volta a che fare con un S.O. di tipo UNIX, e spero di fare cosa utile trattando qui le principali caratteristiche di un tale sistema.
Il primo metodo prevede di utilizzare l'installer automatico fornito da Nvidia: si tratta di uno script per la shell che tramite un menu ci guida nell'installazione. Questo metodo, per quanto semplice e funzionale, ha uno svantaggio: aggira il sistema di gestione dei pacchetti (APT nel caso di Debian, ma anche qualunque altro), con il risultato che questo non sapr� mai dell'esistenza del modulo e non potr� aiutarci nella gestione di eventuali dipendenze o conflitti con altri pacchetti.
L'articolo � ancora nel primo stadio di elaborazione, e chi volesse partecipare alla stesura � assolutamente il benvenuto ;-).


== Cosa significa UNIX ==
Il secondo metodo utilizza un tool specifico di Debian: module-assistant. Module-assistant � un programma che permette di automatizzare la compilazione di molti moduli proprietari, e la creazione di pacchetti .deb contenenti i moduli compilati, per la successiva installazione tramite APT. Lo svantaggio di questo metodo � che i nuovi pacchetti per module-assistant arrivano sempre con qualche giorno di ritardo rispetto all'installer, come � ovvio che sia.


Linux � un kernel UNIX-like, e questo di fatto sancisce delle regole ben precise che vengono rispettate in fase di progettazione del Sistema Operativo:
Si raccomanda di usare <b>uno solo</b> dei due metodi proposti.
* Il kernel � il nucleo software del sistema, e ha il compito di amministrare le risorse: un processo non pu� e non deve accedere all'hardware, ma dialoga solo con il kernel.
* Ogni oggetto con cui � possibile interagire nel sistema � un file, e in quanto tale ha tutte e sole le caratteristiche dei file: un proprietario, un gruppo proprietario, dei permessi impostabili per lettura, scrittura ed esecuzione, e il metodo di interazione � unico.
* altro..


= Metodo 1: l'installer Nvidia =
== Occorrente ==
Ecco di cosa abbiamo bisogno per l'installazione:
* Headers del kernel che stiamo utilizzando (occhio alle subversion, per controllare si pu usare <tt>uname -r</tt>) o, in alternativa, i sorgenti dello stesso kernel (gli headers fanno parte dei sorgenti, ed esistono come pacchetto indipendente solo ed esclusivamente per poter compilare moduli fuori dal kernel senza dover scaricare tutto il kernel)
* Driver corretto per la nostra architettura scaricabile da [http://www.nvidia.com www.nvidia.com]


== Gestione della RAM ==
== Cosa fare ==
Un processo in esecuzione deve risiedere in RAM, e oltre al programma in s� vengono messe in RAM anche tutte le librerie a cui � linkato il programma.
Prima di tutto occorre chiudere X. Non basta fare logout, bisogna proprio killare il server grafico: se avete installato un desktop manager, per esempio kdm, andate in una console non grafica (per es. con <tt>Ctrl+lt+F1</tt>), e usate, da root:
<pre>
# /etc/init.d/kdm stop
</pre>


il kernel amministra le risorse del sistema e, in particolare, al lancio di un processo vede se c'� abbastanza RAM, e se no ne libera un po' (se pu�, altrimenti usa la swap, e se � finita anche quella d� errore).
Ora, controllate (con <tt>ls -l</tt>) che il link <tt>/usr/src/linux</tt> punti agli headers del kernel in funzione o ai sorgenti, che per� <b>devono</b> essere configurati esattamente come il nostro kernel corrente.


quando un processo viene terminato, non c'� necessariamente bisogno di liberare completamente la RAM occupata dal processo, anzi, c'� una certa probabilit� che almeno le librerie condivise possano servire ad un altro programma, quindi linux le mantiene in RAM finch� non c'� la reale necessit� di quello spazio.
Per fare un esempio supponiamo di aver installato il .deb dei sorgenti, e di doverli quindi confgurare:
<pre>
$ cd /usr/src
$ tar xvfj linux-source-xxx
$ cd linux-source-xxx
$ cp /boot/config-`uname -r` .config
$ make oldconfig
</pre>


lo stesso concetto vale per i dati: la probabilit� di utilizzare pi� volte parte degli stessi dati � pi� alta di quella di usarne sempre di diversi, quindi vengono cancellati dalla RAM solo quando ce n'� bisogno.
dopo di che l'unica cosa da fare andare nella directory dove abbiamo salvato il driver nvidia e dare il comando:


questo significa "mantenere una cache".
<pre># sh NVIDIA-*</pre>


per verificare che funziona, si pu� provare ad aprire openoffice, per poi chiuderlo, e poi riaprirlo: si noter� che i tempi di apertura la prima e la seconda volta sono molto diversi.
dove <tt>NVIDIA-*</tt> � il nome del driver che abbiamo scaricato.


:[[Utente:Tindal|Tindal]]
Comparir� un menu interattivo che ci guider� nell'installazione, dove dovremo rispondere alle domande dicendo che vogliamo installare il driver.
 
{{Warningbox|Potreste aver gi� installato un driver NVIDIA, in questo caso:
#Se lo avete installato voi, allora questa guida non vi server perche sapete gi� come fare :)
#Se ve lo ha installato un'altra persona, allora potete tranquillamente dire all'installer di sovrascriverlo se state installando una versione piu aggiornata.}}
 
Il nuovo installer permette l'aggiornamento automatico di <tt>xorg.conf</tt>. Potete farlo anche a mano, semplicemente editando il file <tt>/etc/X11/xorg.conf</tt> come indicato nella sezione successiva.
 
Dopo aver installato il driver per il kernel � opportuno installare i driver (sempre proprietari) per xfree/xorg, e anche il tool grafico per configurarli:
<pre>
# aptitude install nvidia-glx nvidia-settings
</pre>
ricordate che molte delle impostazioni che potete modificare con <tt>nvidia-settings</tt> necessitano del riavvio della sessione per avere effetto.
 
 
In fine possiamo far ripartire il server grafico, sempre nell'ipotesi che usiate kdm:
<pre>
# /etc/init.d/kdm start
</pre>
 
== Verifica ==
 
Per verificare velocemente se tutto funziona, e ottenere anche un valore indicativo dell'aumento di prestazioni ottenuto potete usare glxgears, da lanciare in un terminale.
 
Glxgears � un semplicissimo programma che produce in una finestra l'animazione di tre ruote dentate che girano, e nel frattempo conta quanti frame al secondo riesce a generare il vostro sistema. Non � pensato per effettuare un vero benchmark, ma � solo un test indicativo, e i suoi risultati dipendono vistosamente dal carico presente sulla CPU, quindi per ottenere indicazioni attendibili evitate di lanciarlo mentre la CPU sta facendo altre cose.
 
= Metodo 2: module-assistant =
== Occorrente ==
Per usare questo motodo � sufficiente una connessione ad internet, oltre, ovviamente, a module-assistant: se non l'abbiamo:
<pre># aptitude install module-assistant</pre>
 
== Cosa fare ==
Come per l'altro metodo, bisogna fermare il server grafico, e poi non dobbiamo fare altro che lanciare module-assistant:
<pre># m-a</pre>
 
il quale ci mostra un menu grafico tramite il quale dobbiamo, nell'ordine:
* aggiornare la lista dei pacchetti disponibili
* preparare il sistema per la compilazione
* selezionare il modulo da compilare dalla lista fornita
* compilare
* installare il pacchetto ottenuto
 
il tutto senza uscire da module-assistant.
 
nota: module-assistant si occupa automaticamente di installare un compilatore se non l'avete, e anche gli headers del kernel. Se possedete gi� gli headers giusti, o anche l'intero kernel (che, ricordo, deve essere configurato esattamente come il vostro kernel), � sufficiente controllare di avere impostato il link simbolico <tt>/usr/src/linux</tt> in modo che punti agli headers o ai sorgenti:
<pre>ln -s /usr/src/linux-headers-xxx /usr/src/linux</pre>
 
Ora bisogna modificare xorg.conf, nella sezione "Device", in modo che nella riga "Driver" sia scritto <tt>'''nvidia'''</tt> (di solito al posto di <tt>'''nv'''</tt> o <tt>'''vesa'''</tt>), inoltre bisogna sostituire, nella sezione "Module", le righe
<pre>
Load    "dri"
Load    "GLcore"
</pre>
con la riga
<pre>
Load    "glx"
</pre>
 
dopo di che non resta che installare i driver per xfree/xorg e il tool grafico per configurarli, e poi si pu� lanciare X:
<pre>
# aptitude install nvidia-glx nvidia-settings
# /etc/init.d/kdm start
</pre>
 
Per verificare se funziona tutto usate glxgears, come indicato nella sezione precedente.
 
= Opzioni utili =
 
In <tt>xorg.conf</tt> ci sono alcune opzioni specifiche del driver nvidia che si posono inserire nella sezione "Device", per esempio se non vogliamo vedere il logo Nvidia ad ogni avvio possiamo inserire:
<pre>
Option "NoLogo" "1"
</pre>
invece per usare il codice AGP del driver proprietario invece di quello libero possiamo inserire:
<pre>
Option "NvAGP" "On"
</pre>
personalmente con questa opzione attivata riscontro con glxgears un aumento di prestazioni pari al 50%.
 
Ci sono molte altre opzioni possibili, che trovate elencate, su Debian, in <tt>/usr/share/doc/nvidia-glx/README.txt.gz</tt>.
 
----
Autore: [[Utente:Bedo|Bedo]]
[[Categoria:Desktop]][[Categoria:Hardware]]
 
Correzioni, metodo 2 e opzioni utili aggiunti da [[Utente:tindal|tindal]]
1 760

contributi