1 760
contributi
(→Esempio: Un Dispositivo USB: immagini) |
m (→Riassunto: Alla scoperta del dispositivo: corretto) |
||
Riga 36: | Riga 36: | ||
filesystem virtuale ''sysfs''. All'avvio di Linux, ''sysfs'', dovrebbe essere montato dagli script di inizializzazione della vostra distribuzione nella directory ''/sys''. ''sysfs'' consente di dare un'occhiata a come le varie parti del kernel sono legate l'una a l'altra, questo lo si deduce grazie ai vari link simbolici (''symlink'' NdT) che puntano all'interno dell'intero filesystem. | filesystem virtuale ''sysfs''. All'avvio di Linux, ''sysfs'', dovrebbe essere montato dagli script di inizializzazione della vostra distribuzione nella directory ''/sys''. ''sysfs'' consente di dare un'occhiata a come le varie parti del kernel sono legate l'una a l'altra, questo lo si deduce grazie ai vari link simbolici (''symlink'' NdT) che puntano all'interno dell'intero filesystem. | ||
In tutti gli esempi di seguito, saranno riportati | In tutti gli esempi di seguito, saranno riportati i veri percorsi (''path'' NdT) di ''sysfs'' corrispondenti ad hardware specifico. La vostra macchina sar� certamente diversa, ma la posizione relativa delle informazioni sar� la stessa. Non ci si deve allarmare se i nomi di file nel ''sysfs'' non sono i medesimi, ci� � normale e prevedibile. | ||
Inoltre, la struttura interna del file di sistema ''sysfs'' | Inoltre, la struttura interna del file di sistema ''sysfs'' subisce modifiche, a causa sia della riorganizzazione dei driver sia del fatto che gli sviluppatori del kernel trovano nuovi modi per meglio presentare in ''user space'' le strutture interne del kernel. A causa di questo, col tempo, alcuni dei ''symlink'', precedentemente menzionati in questo capitolo, possono non essere presenti. Tuttavia, le informazioni sono ancora tutte presenti, al massimo sono state un po' spostate. | ||
====Esempio: Come Determinare il Driver di Rete==== | ====Esempio: Come Determinare il Driver di Rete==== | ||
Riga 48: | Riga 48: | ||
eth0 eth1 eth2 lo</pre> | eth0 eth1 eth2 lo</pre> | ||
La directory ''lo'' rappresenta il dispositivo di rete loopback, e non � dipendente da nessun dispositivo di rete realmente installato. Invece si dovrebbe riservare particolare attenzione alle directory ''eth0'', ''eth1'' e ''eth2'', | La directory ''lo'' rappresenta il dispositivo di rete loopback, e non � dipendente da nessun dispositivo di rete realmente installato. Invece si dovrebbe riservare particolare attenzione alle directory ''eth0'', ''eth1'' e ''eth2'', dato che si riferiscono a dispositivi realmente esistenti | ||
Per determinare | Per determinare di quali dispositivi ci si deve occupare, si utilizza il comando ''ifconfig'': | ||
<pre>$ /sbin/ifconfig -a | <pre>$ /sbin/ifconfig -a | ||
Riga 88: | Riga 88: | ||
Questo risultato dimostra che il dispositivo Ethernet si vede assegnato un indirizzo IP valido (<tt>inet</tt>). | Questo risultato dimostra che il dispositivo Ethernet si vede assegnato un indirizzo IP valido (<tt>inet</tt>). | ||
Ora, dopo che abbiamo individuato il dispositivo <tt>eth0</tt> e ci siamo accertati di volerlo | Ora, dopo che abbiamo individuato il dispositivo <tt>eth0</tt> e ci siamo accertati di volerlo abilitare nel nostro nuovo kernel, dobbiamo individuare quale driver lo controlla. Ci� si realizza con una semplice procedura, che � quella si seguire i link nel filesystem sysfs, basta digitare un comando di una sola riga: | ||
<pre>$ basename `readlink /sys/class/net/eth0/device/driver/module` | <pre>$ basename `readlink /sys/class/net/eth0/device/driver/module` | ||
Riga 103: | Riga 103: | ||
../../../../module/e1000</pre> | ../../../../module/e1000</pre> | ||
: 4. | : 4. Dato che a noi interessa solo il nome del modulo e ci disinteressiamo del resto del risultato ottenuto con il comando ''readlink'', tenendo solo la parte pi� a destra del risultato. Questo � appunto ci� che il comando ''basename'' realizza. Applicandolo direttamente all'intero percorso, questo comando ci ritorna quanto segue: | ||
<pre>$ basename ../../../../module/e1000 | <pre>$ basename ../../../../module/e1000 | ||
e1000</pre> | e1000</pre> |
contributi