IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Generals

lshw

Mostra informació sobre el hardware.

El paquet que proporciona aquesta comanda:

$ dpkg -S lshw
lshw: /usr/bin/lshw

Es pot mostrar el resultat en HTML:

$ sudo lshw -html > lshw.html
$ firefox lshw.html 

I També en XML

$ sudo lshw -xml > lshw.xml

Classes

El maquinari esta organitzat per classes. Podeu consultar les classe existents a la vostra màquina amb:

$ sudo lshw -short
H/W path        Device     Class       Description
==================================================
                           system      SN95V20
/0                         bus         FN95V20
/0/0                       memory      128KB BIOS
/0/4                       processor   AMD Athlon(tm) 64 Processor 3000+
/0/4/8                     memory      128KB L1 cache
/0/4/9                     memory      512KB L2 cache
/0/16                      memory      1GB System Memory
/0/16/0                    memory      1GB DIMM
/0/16/1                    memory      DIMM [empty]
/0/100                     bridge      nForce3 250Gb Host Bridge
/0/100/1                   bridge      nForce3 250Gb LPC Bridge
/0/100/1.1                 bus         nForce 250Gb PCI System Management
/0/100/2                   bus         CK8S USB Controller
/0/100/2.1                 bus         CK8S USB Controller
/0/100/2.2                 bus         nForce3 EHCI USB 2.0 Controller
/0/100/6                   multimedia  nForce3 250Gb AC'97 Audio Controller
/0/100/8                   storage     CK8S Parallel ATA Controller (v2.5)
/0/100/8/1      ide1       bus         IDE Channel 1
/0/100/8/1/0    /dev/hdc   disk        PIONEER DVD-RW DVR-106D
/0/100/a        scsi0      storage     CK8S Serial ATA Controller (v2.5)
/0/100/a/0      /dev/sda   disk        189GB Maxtor 6V200E0
/0/100/a/0/1    /dev/sda1  volume      32GB W95 FAT32 (LBA) partition
/0/100/a/0/2    /dev/sda2  volume      19GB Linux filesystem partition
/0/100/a/0/3    /dev/sda3  volume      138GB Extended partition
/0/100/a/0/3/5  /dev/sda5  volume      29GB Linux filesystem partition
/0/100/a/0/3/6  /dev/sda6  volume      107GB Linux filesystem partition
/0/100/a/0/3/7  /dev/sda7  volume      2000MB Linux swap / Solaris partition
/0/100/a/1      /dev/sdb   disk        149GB WDC WD1600JS-60M
/0/100/a/1/1    /dev/sdb1  volume      149GB Linux filesystem partition
/0/100/b                   bridge      nForce3 250Gb AGP Host to PCI Bridge
/0/100/b/0                 display     RV280 [Radeon 9200 PRO]
/0/100/e                   bridge      nForce3 250Gb PCI-to-PCI Bridge
/0/100/e/7                 bus         IEEE 1394 Host Controller
/0/100/e/8      eth0       network     88E8001 Gigabit Ethernet Controller
/0/101                     bridge      K8 [Athlon64/Opteron] HyperTransport Technology Configuration
/0/102                     bridge      K8 [Athlon64/Opteron] Address Map
/0/103                     bridge      K8 [Athlon64/Opteron] DRAM Controller
/0/104                     bridge      K8 [Athlon64/Opteron] Miscellaneous Control
/1              br0        network     Ethernet interface
/2              vbox0      network     Ethernet interface  

Observeu la columna class. Algunes de les més importants:

  • processor
  • network
  • volume:
  • memory:

lshw-gtk

Interfície gràfica GTK per a lshw.

Instal·lació:

$ sudo apt-get install lshw-gtk

Execució:

$ dpkg -L lshw-gtk | grep bin
/usr/bin
/usr/bin/lshw-gtk
$ gksu lshw-gtk

HAL (Hardware Abstraction Layer)

Els paquet hal proporciona les següent comandes:

$ dpkg -L hal | grep bin
/usr/bin
/usr/bin/lshal
/usr/bin/hal-device
/usr/bin/hal-get-property
/usr/bin/hal-set-property
/usr/bin/hal-find-by-capability
/usr/bin/hal-find-by-property
/usr/bin/hal-disable-polling
/usr/bin/hal-is-caller-locked-out
/usr/bin/hal-lock
/usr/sbin
/usr/sbin/hald

lshal

Mostra una llista sencera de tots els dispositius hal

$ lshal

Es pot obtenir una llista resumida amb

$ lshal --short
computer
acpi_FAN
acpi_CPU0
computer_alsa_timer
computer_oss_sequencer_0
...

És molt interessant l'opció que permet monitoritzar el dimoni HAL:

$ lshal -m

El podem utilitzar per veure que esta fent HAL (per exemple quan inserim un dispositiu USB o qualsevol altre dispositiu HotPlug):

$ lshal -m

Start monitoring devicelist:
-------------------------------------------------  
  

10:27:51.233: usb_device_204_6025_341977530783 added
10:27:51.899: usb_device_204_6025_341977530783_if0 added
10:27:53.675: usb_device_204_6025_341977530783_usbraw added
10:27:54.242: usb_device_204_6025_341977530783_if0 property info.linux.driver = 'usb-storage' (new)
10:27:59.409: usb_device_204_6025_341977530783_if0_scsi_host added
10:27:59.409: usb_device_204_6025_341977530783_if0_scsi_host_scsi_device_lun0 added
10:27:59.664: usb_device_204_6025_341977530783_if0_scsi_host_scsi_device_lun0_scsi_generic added
10:28:02.403: storage_serial_CBM_Flash_Disk_341977530783_0_0 added
10:28:03.107: volume_uuid_46E8_EB7F added
10:28:03.410: volume_part4_size_5575680 added
10:28:04.253: volume_uuid_46E8_EB7F property volume.mount_point = '/media/disk'
10:28:04.262: volume_uuid_46E8_EB7F property volume.is_mounted = true

hal-device-manager

Al menú Sistema/Preferències/Informació del maquinari podeu trobar un altre aplicació gràfica amb informació sobre el maquinari.

També hi ha la versió per KDE:

$ sudo apt-get install  kde-hal-device-manager
$ kde-hal-device-manager

hwinfo

$ sudo apt-get install hwinfo

Aquest paquet és utilitzar per eines com backupninja.

Els fitxers instal·lats són:

$ dpkg -L hwinfo
/.
/usr
/usr/sbin
/usr/sbin/hwinfo
/usr/share
/usr/share/doc
/usr/share/doc/hwinfo
/usr/share/doc/hwinfo/changelog.gz
/usr/share/doc/hwinfo/README.Debian
/usr/share/doc/hwinfo/TODO.Debian
/usr/share/doc/hwinfo/copyright
/usr/share/doc/hwinfo/changelog.Debian.gz
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/hwinfo.8.gz

L'ordre hwinfo dona informació del hardware:

$ hwinfo

dmidecode

Consulteu dmidecode

biosdecode

Consulteu biosdecode

linuxinfo

$ sudo apt-get install linux-info
$ linuxinfo 
Linux ubuntu-sala 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008
One AMD x86_64 1808MHz processor, 3619.95 total bogomips, 1011M RAM
System library 2.6.1

Sysstat i acct

Consulteu l'article Estadístiques del sistema am sysstat i acct.


hardinfo

$ sudo aptitude install hardinfo
$ hardinfo

discover

$ sudo apt-get install discover
$ discover

Busos del sistema

Paquet pciutils

 $ dpkg -L pciutils | grep bin
/usr/bin
/usr/bin/lspci
/usr/bin/setpci
/usr/bin/pcimodules
/usr/bin/update-pciids
/bin
/bin/lspci
/bin/setpci

lspci

Consulteu lspci

setpci

Estableix paràmetres dels dispositius PCI.

pcimodules

Mostra els mòduls dels kernel relacionats amb PCI:

$ pcimodules
amd64-agp
i2c-nforce2
ohci-hcd
ehci-hcd
snd-intel8x0
amd74xx
ata_generic
sata_nv
shpchp
k8temp
radeonfb
ohci1394
skge

update-pciids

Descarrega una nova versió de la llista de identificadors PCI:

$ sudo update-pciids
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  129k  100  129k    0     0  81806      0  0:00:01  0:00:01 --:--:--  112k
Done.

És útil si apareix alguna dispositiu com a desconegut:

"Unknown device 2830 (rev 02)) ... " 

Fent una actualització s'acostuma a resoldre el problema.

El fitxer que conté els ID és:

/usr/share/misc/pci.ids

Paquet usbutils

$ dpkg -L usbutils 
/.
/usr
/usr/sbin
/usr/sbin/lsusb
/usr/sbin/update-usbids
/usr/share
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/lsusb.8.gz
/usr/share/man/man8/update-usbids.8.gz
/usr/share/man/man1
/usr/share/doc
/usr/share/doc/usbutils
/usr/share/doc/usbutils/copyright
/usr/share/doc/usbutils/changelog.gz
/usr/share/doc/usbutils/changelog.Debian.gz
/usr/share/misc
/usr/bin
/var
/var/lib
/var/lib/misc
/var/lib/misc/usb.ids
/usr/share/man/man1/lsusb.1.gz
/usr/share/misc/usb.ids

lsusb

Consulte l'article lsusb

update-usbids

Actualitza els ids usb emmagatzemats al fitxer:

/var/lib/misc/usb.ids

Un exemple:

$ sudo update-usbids 
--2009-08-25 17:16:44--  http://linux-usb.sourceforge.net/usb.ids
Resolent linux-usb.sourceforge.net... 216.34.181.96
S'està connectant a linux-usb.sourceforge.net|216.34.181.96|:80... conectat.
HTTP: Petició enviada, esperant resposta... 200 OK
Longitud: 368600 (360K) [text/plain]
S'està desant a: «/var/lib/misc/usb.ids.new» 

100%[=======================================================================================================================================>] 368.600      114K/s   en  
3,2s     

2009-08-25 17:16:48 (114 KB/s) - s'ha desat «/var/lib/misc/usb.ids.new» [368600/368600]

Done.

lspcmcia

Mostra els dispositius pcmcia. És similar a les comandes lsusb i lspci però per a dispositius pcmcia.

pci-config

Consulteu també nictools-pci.

Consultar tots els IDs dels dispositius del bus 0.

$  sudo pci-config -B0 -a
pci-config.c:v2.05 2/23/2005 Donald Becker (becker@scyld.com)
 http://www.scyld.com/diag/index.html
Device #1 at bus 0 device/function 0/0, 00e110de.
Device #2 at bus 0 device/function 1/0, 00e010de.
Device #3 at bus 0 device/function 1/1, 00e410de.
Device #4 at bus 0 device/function 2/0, 00e710de.
Device #5 at bus 0 device/function 2/1, 00e710de.
Device #6 at bus 0 device/function 2/2, 00e810de.
Device #7 at bus 0 device/function 6/0, 00ea10de.
Device #8 at bus 0 device/function 8/0, 00e510de.
Device #9 at bus 0 device/function 10/0, 00e310de.
Device #10 at bus 0 device/function 11/0, 00e210de.
Device #11 at bus 0 device/function 14/0, 00ed10de.
Device #12 at bus 0 device/function 24/0, 11001022.
Device #13 at bus 0 device/function 24/1, 11011022.
Device #14 at bus 0 device/function 24/2, 11021022.
Device #15 at bus 0 device/function 24/3, 11031022.

Es pot saber per exemple el bus i el dispositiu d'una targeta de xarxa amb:

$ sudo ethtool -i eth0 | grep bus-info 
bus-info: 0000:00:04.0 

Què vol dir, bus 0, dispositiu 4, i funció 0.

Ara busqueu el ID del dispositiu:

$ pci-config -B0 -a
Device #12 at bus 0 device/function 4/0, 006610de

I s'estableix el "power state" a D3:

$ pci-config -B0 -S -#12

Vegeu també ethtool.

Kernel i mòduls

Mòduls del kernel

Per conèixer les comandes relacionades amb la gestió dels mòduls del kernel consulteu l'article Mòduls del Kernel.

Paquet module-init-tools

Consulteu Mòduls_del_kernel#Paquet_module-init-tools.

lsmod

Consulteu Mòduls_del_kernel#Comanda_lsmod

depmod

Consulteu Mòduls_del_kernel#depmod

insmod

Consulteu Mòduls_del_kernel#insmod_i_modprobe._Carregant_m.C3.B2duls_del_kernel.

modprobe

Consulteu Mòduls_del_kernel#insmod_i_modprobe._Carregant_m.C3.B2duls_del_kernel.

sysctl

Consulteu l'article Sysctl. Tunning del kernel

systune

Instal·lació:

$ sudo apt-get install systune

udev

Consulteu l'article sobre udev.

Targetes de xarxa

ethtool

Consulteu ethtool.

Es pot consultar el driver d'una targeta dexarxa amb:

$ sudo ethtool -i eth0
driver: skge
version: 1.13
firmware-version: N/A
bus-info: 0000:02:08.0

nictools-pci

$ sudo apt-get install nictools-pci

Proporciona les següents comandes:

$ dpkg -L nictools-pci | grep bin
/usr/sbin
/usr/sbin/alta-diag
/usr/sbin/eepro100-diag
/usr/sbin/epic-diag
/usr/sbin/myson-diag
/usr/sbin/natsemi-diag
/usr/sbin/ne2k-pci-diag
/usr/sbin/ns820-diag
/usr/sbin/pcnet-diag
/usr/sbin/rtl8139-diag
/usr/sbin/starfire-diag
/usr/sbin/tulip-diag
/usr/sbin/via-diag
/usr/sbin/vortex-diag
/usr/sbin/winbond-diag
/usr/sbin/yellowfin-diag
/usr/sbin/pci-config

Com?

Mostrar la CPU que estem utilitzant

$ sudo lshw -class cpu -short
H/W path        Device     Class       Description
==================================================
/0/4                       processor   AMD Athlon(tm) 64 Processor 3000+

Podem consultar tots els detalls amb:

$ sudo lshw -class cpu
 *-cpu                   
      description: CPU
      product: AMD Athlon(tm) 64 Processor 3000+
      vendor: Advanced Micro Devices [AMD]
      physical id: 4
      bus info: cpu@0
      version: 15.15.2
      slot: Socket 939
      size: 1800MHz
      capacity: 3GHz
      width: 64 bits
      clock: 200MHz
      capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx 
mmxext fxsr_opt x86-64 3dnowext 3dnow up pni ts fid vid ttp tm stc

Vegeu també: /proc/cpuinfo

Mostrar la informació sobre els busos de comunicació

$ sudo lshw -businfo
[sudo] password for sergi:
Bus info          Device     Class       Description
====================================================
                             system      SN95V20
                             bus         FN95V20
                             memory      128KB BIOS
cpu@0                        processor   AMD Athlon(tm) 64 Processor 3000+
                             memory      128KB L1 cache
                             memory      512KB L2 cache
                             memory      1GB System Memory
                             memory      1GB DIMM
                             memory      DIMM [empty]
pci@0000:00:00.0             bridge      nForce3 250Gb Host Bridge
pci@0000:00:01.0             bridge      nForce3 250Gb LPC Bridge
pci@0000:00:01.1             bus         nForce 250Gb PCI System Management
pci@0000:00:02.0             bus         CK8S USB Controller
pci@0000:00:02.1             bus         CK8S USB Controller
pci@0000:00:02.2             bus         nForce3 EHCI USB 2.0 Controller
pci@0000:00:06.0             multimedia  nForce3 250Gb AC'97 Audio Controller
pci@0000:00:08.0             storage     CK8S Parallel ATA Controller (v2.5)
ide@1             ide1       bus         IDE Channel 1
ide@1.0           /dev/hdc   disk        PIONEER DVD-RW DVR-106D
pci@0000:00:0a.0  scsi0      storage     CK8S Serial ATA Controller (v2.5)
scsi@0:0.0.0      /dev/sda   disk        189GB Maxtor 6V200E0
scsi@0:0.0.0,1    /dev/sda1  volume      32GB W95 FAT32 (LBA) partition
scsi@0:0.0.0,2    /dev/sda2  volume      19GB Linux filesystem partition
scsi@0:0.0.0,3    /dev/sda3  volume      138GB Extended partition
                  /dev/sda5  volume      29GB Linux filesystem partition
                  /dev/sda6  volume      107GB Linux filesystem partition
                  /dev/sda7  volume      2000MB Linux swap / Solaris partition
scsi@1:0.0.0      /dev/sdb   disk        149GB WDC WD1600JS-60M
scsi@1:0.0.0,1    /dev/sdb1  volume      149GB Linux filesystem partition
pci@0000:00:0b.0             bridge      nForce3 250Gb AGP Host to PCI Bridge
pci@0000:01:00.0             display     RV280 [Radeon 9200 PRO]
pci@0000:00:0e.0             bridge      nForce3 250Gb PCI-to-PCI Bridge
pci@0000:02:07.0             bus         IEEE 1394 Host Controller
pci@0000:02:08.0  eth0       network     88E8001 Gigabit Ethernet Controller
pci@0000:00:18.0             bridge      K8 [Athlon64/Opteron] HyperTransport Technology Configuration
pci@0000:00:18.1             bridge      K8 [Athlon64/Opteron] Address Map
pci@0000:00:18.2             bridge      K8 [Athlon64/Opteron] DRAM Controller
pci@0000:00:18.3             bridge      K8 [Athlon64/Opteron] Miscellaneous Control
                  br0        network     Ethernet interface
                  vbox0      network     Ethernet interface

Mostrar la memòria del sistema

$ lshw -C memory
 *-memory                
      description: System memory
      physical id: 0
      size: 1011MB
 *-cache:0
      description: L1 cache
      physical id: 0
      size: 128KB
 *-cache:1
      description: L2 cache
      physical id: 1
      size: 512KB

Conèixer el model de la nostra targeta de xarxa

$ sudo lshw -class network -short
H/W path        Device     Class       Description
==================================================
/0/100/e/8      eth0       network     88E8001 Gigabit Ethernet Controller
/1              br0        network     Ethernet interface
/2              vbox0      network     Ethernet interface

Podem consultar tots els detalls amb:

$ sudo lshw -class network
  *-network               
       description: Ethernet interface
       product: 88E8001 Gigabit Ethernet Controller
       vendor: Marvell Technology Group Ltd.
       physical id: 8
       bus info: pci@0000:02:08.0
       logical name: eth0
       version: 13
       serial: 00:30:1b:b7:cd:b6
       size: 100MB/s
       capacity: 1GB/s
       width: 32 bits
       clock: 66MHz
       capabilities: pm vpd bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=skge driverversion=1.11 duplex=full firmware=N/A latency=32 link=yes maxlatency=31   
...

O podem utilitzar lspci (tingueu en compte que encara que estigui integrada a la placa mare us apareixerà la informació)

$ lspci | grep Ethernet
02:08.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 13)

Com depurar el que succeïx amb el maquinari a Ubuntu (per exemple al inserir un dispositiu USB)

Podem mirar els fitxers de log. Normalment:

$ tail -f /var/log/messages

I també podem utilitzar el monitor de HAL:

$ sudo lshal -m

I el monitor de udev:

$ sudo udevmonitor

Sistema de fitxers /proc

Consulteu procfs

Sistemes d'interrupcions

Opcions de carrega del kernel

Desactivar APIC:

Paràmetre noapic al carregar el kernel:


nolapic?

Vegeu també