5.2. File di livello superiore all'interno del filesystem proc

L'elenco seguente riporta alcuni dei file virtuali di livello superiore più utili contenuti nella directory /proc/.

NotaNota Bene
 

Nella maggior parte dei casi, il contenuto dei file elencati in questa sezione non sarà lo stesso di quelli installati sulla vostra macchina. Ciò è perché gran parte delle informazioni è specifica dell'hardware su cui Red Hat Enterprise Linux stà funzionando.

5.2.1. /proc/apm

Questo file fornisce informazioni sullo stato del sistemaAdvanced Power Management (APM), tali informazioni vengono poi utilizzate dal comando apm. Se a un alimentatore CA è collegato un sistema non alimentato a batteria, il file virtuale ha più o meno questo aspetto:

1.16 1.2 0x07 0x01 0xff 0x80 -1% -1 ?

L'esecuzione del comando apm -v in tale sistema dà un output simile al seguente:

APM BIOS 1.2 (kernel driver 1.16)
AC on-line, no system battery

Per i sistemi non alimentati a batteria, apm può svolgere altre operazioni oltre a quella di mettere la macchina in modalità di standby. Il comando apm è molto più utile per i laptop. Per esempio, l'output riportato di seguito deriva dal comando cat /proc/apm di un portatile collegato a una presa di corrente:

1.16 1.2 0x03 0x01 0x03 0x09 100% -1 ?

Quando lo stesso portatile, da pochi minuti, non è più collegato all'alimentazione, il contenuto del file apm cambia in modo seguente:

1.16 1.2 0x03 0x00 0x00 0x01 99% 1792 min

Il comando apm -v produce informazioni più utili come quelli riportati di seguito:

APM BIOS 1.2 (kernel driver 1.16)
AC off-line, battery status high: 99% (1 day, 5:52)

5.2.2. /proc/cmdline

Questo file mostra i parametri trasmessi al kernel al momento dell'avvio. Un esempiodel file /proc/cmdline ha il seguente aspetto:

ro root=/dev/hda2

Ciò significa che il kernel è montato in modalità di sola lettura, come indicato da (ro), esterno alla seconda partizione del primo dispositivo IDE (/dev/hda2).

5.2.3. /proc/cpuinfo

Il file virtuale identifica il tipo di processore presente sul vostro sistema. Quello riportato di seguito è un esempio di output tipico derivante da /proc/cpuinfo:

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 15
model		: 2
model name	: Intel(R) Xeon(TM) CPU 2.40GHz
stepping	: 7
cpu MHz		: 2392.371
cache size	: 512 KB
physical id	: 0
siblings	: 2
runqueue	: 0
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca 
cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
bogomips	: 4771.02

5.2.4. /proc/devices

Questo file visualizza i diversi caratteri e dispositivi a blocchi attualmente configurati (non include i dispositivi i cui moduli non sono stati caricati). Ecco riportato un esempio di output:

Character devices:
  1 mem
  2 pty
  3 ttyp
  4 ttyS
  5 cua
  7 vcs
 10 misc
 14 sound
 29 fb
 36 netlink
128 ptm
129 ptm
136 pts
137 pts
162 raw
254 iscsictl

Block devices:
  1 ramdisk
  2 fd
  3 ide0
  9 md
 22 ide1

L'output del file /proc/devices comprende il numero maggiore e il nome del dispositivo ed è suddiviso in due sezioni principali: Character devices e Block devices.

I dispositivi a carattere sono simili ai dispositivi a blocchi, a eccezione di due differenze sostanziali:

  1. I dispositivi a blocco dispongono di un buffer grazie al quale possono ordinare tali richieste prima di elaborarle. Ciò si rivela alquanto utile nel caso dei dispositivi creati per immagazzinare informazioni — per esempio i dischi fissi —, poichè l'abilità di ordinare l'informazione prima che venga scritta sul dispositivo è permette poi di ordinarla in modo più efficiente. I dispositivi a carattere non richiedono l'operazione di buffering.

  2. In secondo luogo, i dispositivi a blocchi possono inviare e ricevere informazioni in blocchi di una certa dimensione, configurati a seconda del dispositivo. I dispositivi a carattere non inviano i dati in base a una dimensione predefinita.

Per maggiori informazioni sui dispositivi, consultate la seguente documentazione:

/usr/src/linux-2.4/Documentation/devices.txt

5.2.5. /proc/dma

Questo file contiene un elenco dei canali DMA (accesso diretto alla memoria) per il canale ISA in uso. Un esempio di file /proc/dma ha il seguente aspetto:

 4: cascade

5.2.6. /proc/execdomains

Il file elenca quali sono i formati di eseguibili attualmente supportati dal kernel di Linux e la gamma di "personalità" che essi supportano.

0-0   Linux           [kernel]

Pensate ai domini degli eseguibili, come la "personalità" di un determinato sistema operativo. Dato che altri formati binari, quali Solaris, UnixWare e FreeBSD, possono essere utilizzati con Linux, i programmatori possono modificare il modo in cui il sistema operativo gestisce le chiamate del sistema da questi binari,cambiando la personalità del compito. A eccezione del dominio eseguibile PER_LINUX, personalità diverse possono essere implementate come moduli caricabili dinamicamente.

5.2.7. /proc/fb

Questo file contiene un elenco di dispositivi del frame buffer, con il numero del dispositivo del frame buffer e l'unità che lo controlla. Un tipico esempio di output di /proc/fb per sistemi che contengono dispositivi frame buffer ha il seguente aspetto:

0 VESA VGA

5.2.8. /proc/filesystems

Il file visualizza un elenco dei tipi di filesystem attualmente supportati dal kernel. Un esempio di output da un /proc/filesystems generico, è simile a quanto segue:

nodev	rootfs
nodev	bdev
nodev	proc
nodev	sockfs
nodev	tmpfs
nodev	shm
nodev	pipefs
	ext2
nodev	ramfs
	iso9660
nodev	devpts
	ext3
nodev	autofs
nodev	binfmt_misc

La prima colonna indica se il filesystem è stato montato su un dispositivo a blocchi; quelli che iniziano con nodev non sono montati su un dispositivo a blocchi. Nella seconda colonna sono elencati i nomi dei filesystem supportati.

Il comando mount scorre attraverso i filesystem qui riportati,quando non ne viene specificato uno come argomento.

5.2.9. /proc/interrupts

Questo file registra il numero di interrupt per (IRQ) su di un'architettura x86. Un file standard /proc/interrupts ha solitamente questo aspetto:

           CPU0       
  0:   80448940          XT-PIC  timer
  1:     174412          XT-PIC  keyboard
  2:          0          XT-PIC  cascade
  8:          1          XT-PIC  rtc
 10:     410964          XT-PIC  eth0
 12:      60330          XT-PIC  PS/2 Mouse
 14:    1314121          XT-PIC  ide0
 15:    5195422          XT-PIC  ide1
NMI:          0 
ERR:          0

Nel caso di macchine multiprocessore, questo file può avere un aspetto leggermente diverso:

           CPU0       CPU1       
  0: 1366814704          0          XT-PIC  timer
  1:        128        340    IO-APIC-edge  keyboard
  2:          0          0          XT-PIC  cascade
  8:          0          1    IO-APIC-edge  rtc
 12:       5323       5793    IO-APIC-edge  PS/2 Mouse
 13:          1          0          XT-PIC  fpu
 16:   11184294   15940594   IO-APIC-level  Intel EtherExpress Pro 10/100 Ethernet
 20:    8450043   11120093   IO-APIC-level  megaraid
 30:      10432      10722   IO-APIC-level  aic7xxx
 31:         23         22   IO-APIC-level  aic7xxx
NMI:          0
ERR:          0

La prima colonna si riferisce al numero di IRQ. Ogni CPU presente nel sistema ha la propria colonna e il proprio numero di interrupt (IRQ). La colonna successiva indica il tipo di interrupt e l'ultima colonna contiene il nome del dispositivo interessato.

Ogni tipo di interrupt presente in questo file, i quali sono specifici a seconda dell'architettura, ha un significato leggermente diverso. Per le macchine x86, sono comuni i seguenti valori:

5.2.10. /proc/iomem

Il file mostra la mappa corrente della memoria del sistema per i vari dispositivi:

00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000f0000-000fffff : System ROM
00100000-07ffffff : System RAM
  00100000-00291ba8 : Kernel code
  00291ba9-002e09cb : Kernel data
e0000000-e3ffffff : VIA Technologies, Inc. VT82C597 [Apollo VP3]
e4000000-e7ffffff : PCI Bus #01
  e4000000-e4003fff : Matrox Graphics, Inc. MGA G200 AGP
  e5000000-e57fffff : Matrox Graphics, Inc. MGA G200 AGP
e8000000-e8ffffff : PCI Bus #01
  e8000000-e8ffffff : Matrox Graphics, Inc. MGA G200 AGP
ea000000-ea00007f : Digital Equipment Corporation DECchip 21140 [FasterNet]
  ea000000-ea00007f : tulip
ffff0000-ffffffff : reserved

Nella prima colonna sono visualizzati i registri di memoria usati da ogni tipo di memoria. La seconda colonna indica il tipo di memoria presente all'interno di tali registri e visualizza persino quali registri di memoria sono usati dal kernel all'interno della RAM del sistema o, se il network interface card possiede porte Ethernet multiple, e i registri di memoria assegnati per ogni porta.

5.2.11. /proc/ioports

L'output di /proc/ioports fornisce un elenco della porta registrata che viene utilizzata per comunicazioni in ingresso o in uscita con un dispositivo. Questo file può essere piuttosto lungo. Il seguente risulta essere un elenco parziale:

0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
02f8-02ff : serial(auto)
0376-0376 : ide1
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI conf1
d000-dfff : PCI Bus #01
e000-e00f : VIA Technologies, Inc. Bus Master IDE
  e000-e007 : ide0
  e008-e00f : ide1
e800-e87f : Digital Equipment Corporation DECchip 21140 [FasterNet]
  e800-e87f : tulip

La prima colonna indica l'effettivo range dell'indirizzo della porta I/O riservato al dispositivo che si trova nell'elenco della seconda colonna.

5.2.12. /proc/isapnp

Questo file elenca le schede PnP (Plug and Play) installate negli alloggiamenti ISA sul sistema. Riguarda principalmente le schede audio, ma può includere qualsiasi altro dispositivo. Quanto segue rappresenta un esempio del file /proc/isapnp con installata una scheda audio:

Card 1 'CTL0070:Creative ViBRA16C PnP' PnP version 1.0 Product version 1.0
  Logical device 0 'CTL0001:Audio'
    Device is not active
    Active port 0x220,0x330,0x388
    Active IRQ 5 [0x2]
    Active DMA 1,5
    Resources 0
      Priority preferred
      Port 0x220-0x220, align 0x0, size 0x10, 16-bit address decoding
      Port 0x330-0x330, align 0x0, size 0x2, 16-bit address decoding
      Port 0x388-0x3f8, align 0x0, size 0x4, 16-bit address decoding
      IRQ 5 High-Edge
      DMA 1 8-bit byte-count compatible
      DMA 5 16-bit word-count compatible
      Alternate resources 0:1
        Priority acceptable
        Port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
        Port 0x300-0x330, align 0x2f, size 0x2, 16-bit address decoding
        Port 0x388-0x3f8, align 0x0, size 0x4, 16-bit address decoding
        IRQ 5,7,2/9,10 High-Edge
        DMA 1,3 8-bit byte-count compatible
        DMA 5,7 16-bit word-count compatible

Il file può essere piuttosto lungo, a seconda del numero di dispositivi elencati, dei loro requisiti o le loro richieste in relazione alle risorse.

Ogni scheda elenca il proprio nome, il numero della versione PnP e quello della versione del prodotto. Se un dispositivo è attivo e configurato, questo file indicherà anche i suoi numeri di porta e di IRQ. Inoltre, per assicurare una migliore compatibilità, la scheda specifica i valori preferred e acceptable per svariati parametri, allo scopo di consentire alle schede PnP di lavorare evitando conflitti inerenti alla porta e all'IRQ.

5.2.13. /proc/kcore

Il file rappresenta la memoria fisica del sistema ed è memorizzato in formato file core. A differenza di molti file /proc, kcore visualizza la dimensione. Questo valore viene fornito in byte ed equivale alla dimensione della memoria fisica (RAM) usata più 4 KB.

Il contenuto di questo file è progettato per essere esaminato da un debbuger, come gdb e non è leggibile.

AttenzioneAvvertenza
 

Non cercate di visualizzare il file virtuale /proc/kcore. I contenuti del file altereranno l'output di testo sul terminale. Se vi dovesse capitare per errore di visualizzare il file, premete [Ctrl]-[C] per arrestare il processo e digitate poi reset per tornare a visualizzare il prompt della linea di comando.

5.2.14. /proc/kmsg

Il file è utilizzato per contenere messaggi generati dal kernel. Tali messaggi vengono poi raccolti da altri programmi, come per esempio /sbin/klogd o /bin/dmesg.

5.2.15. /proc/ksyms

Il file contiene le definizioni dei simboli esportati dal kernel utilizzati dai tool dei moduli per collegare in modo dinamico moduli caricabili.

e003def4 speedo_debug	[eepro100]
e003b04c eepro100_init	[eepro100]
e00390c0 st_template	[st]
e002104c RDINDOOR	[megaraid]
e00210a4 callDone	[megaraid]
e00226cc megaraid_detect	[megaraid]

La prima colonna elenca l'indirizzo di memoria della funzione del kernel, mentre la seconda colonna si riferisce al nome della funzione e l'ultima colonna indica il nome del modulo caricato.

5.2.16. /proc/loadavg

Questo file permette di dare uno sguardo al carico medio del processore riguardante la CPU e IO nel tempo, e fornisce altresì dati aggiuntivi utilizzati da uptime e da altri comandi. Un esempio di file /proc/loadavg sarà il seguente:

0.20 0.18 0.12 1/80 11206

Le prime tre colonne misurano il grado di utilizzo della CPU e IO negli ultimi 1, 5 e 10 minuti. La quarta colonna mostra il numero di processi attualmente in esecuzione e il numero totale dei processi. L'ultima colonna visualizza l'ultimo identificativo di processo usato.

5.2.17. /proc/locks

Questo file visualizza i file attualmente bloccati dal kernel. I contenuti di questo file sono contengono dati interni di debugging del kernel, e possonovariare sensibilmente a seconda dell'uso del sistema. Un tipico file /proc/locks di un sistema carico al minimo ha questo aspetto:

1: FLOCK  ADVISORY  WRITE 807 03:05:308731 0 EOF c2a260c0 c025aa48 c2a26120
2: POSIX  ADVISORY  WRITE 708 03:05:308720 0 EOF c2a2611c c2a260c4 c025aa48

A ciascun blocco viene attribuito un numero, posto all'inizio di ogni linea. La seconda colonna si riferisce alla classe di blocco utilizzata: FLOCK indica che il file è stato bloccato, secondo il vecchio stile UNIX, da una chiamata di sistema flock, mentre POSIX rappresenta il nuovo sistema di bloccaggio POSIX, che si serve della chiamata di sistema lockf.

La terza colonna può avere due valori: ADVISORY o MANDATORY. ADVISORYindica che il blocco non impedisce ad altre persone di accedere ai dati, ma si limita a impedire altri tentativi di bloccare gli stessi. MANDATORY segnala che non sono permessi altri accessi ai dati mentre il blocco è attivo. La quarta colonna indica se il blocco concede o meno al proprietario (holder) l'accesso READ o WRITE al file, mentre la quinta colonna mostra l'ID del processo proprietario. La sesta colonna mostra l'ID del file che viene bloccato nel seguente formato: MAJOR-DEVICE: MINOR-DEVICE:INODE-NUMBER. La settima colonna indica dove inizia e finisce l'area del file bloccato. Le colonne restanti riportano le strutture interne dei dati del kernel utilizzati per il debugging e possono essere ignorate.

5.2.18. /proc/mdstat

Questo file contiene l'informazione corrente per la configurazioni di dischi multipli (RAID). Se il sistema non dispone di tale configurazione, allora /proc/mdstat avrà il seguente aspetto:

Personalities : 
read_ahead not set
unused devices: <none>

Il file rimane nello stato stesso stato come visto precedente finché non esiste un RAID software o un dispositivo md. In tal caso, potete usare /proc/mdstat per farvi un'idea dell'attuale situazione dei vostri dispositivi RAID mdX.

Il file /proc/mdstat mostra un sistema che presenta md0 configurato come dispositivo RAID 1. Al momento sta risincronizzando i dischi:

Personalities : [linear] [raid1]
read_ahead 1024 sectors
md0: active raid1 sda2[1] sdb2[0] 9940 blocks [2/2] [UU] resync=1% finish=12.3min
algorithm 2 [3/3] [UUU]
unused devices: <none>

5.2.19. /proc/meminfo

Questo è uno dei file nella directory /proc più comunemente usati: riporta, infatti, una grande quantità di preziose informazioni in merito all'attuale utilizzo della RAM nel sistema.

. Un sistema con 256 MB di RAM e 384 MB di spazio di swap potrebbe presentare un file /proc/meminfo simile a questo:

       total:     used:    free:   shared: buffers:  cached:
Mem:  128692224 121212928  7479296        0  9293824 47964160
Swap: 1103093760 32772096 1070321664
MemTotal:       125676 kB
MemFree:          7304 kB
MemShared:           0 kB
Buffers:          9076 kB
Cached:          34204 kB
SwapCached:      12636 kB
Active:          79352 kB
ActiveAnon:      57308 kB
ActiveCache:     22044 kB
Inact_dirty:       240 kB
Inact_laundry:   17468 kB
Inact_clean:       984 kB
Inact_target:    19608 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:       125676 kB
LowFree:          7304 kB
SwapTotal:     1077240 kB
SwapFree:      1045236 kB
HugePages_Total:     2
HugePages_Free:      2
Hugepagesize:     2096 kB

Molte delle informazioni qui riportate sono utilizzate dai comandi free, top e ps. A dire il vero, l'output del comando free ha un aspetto simile ai contenuti e alla struttura di /proc/meminfo. Guardando direttamente /proc/meminfo, si possono osservare ulteriori dettagli:

5.2.20. /proc/misc

Il file elenca driver misti registrati sul dispositivo principale, il cui numero è 10:

135 rtc
  1 psaux
134 apm_bios

La prima colonna indica il numero minore di ciascun dispositivo, mentre la seconda colonna mostra il driver in uso.

5.2.21. /proc/modules

Questo file mostra un elenco di tutti i moduli che sono stati caricati nel kernel. Il suoi contenuti variano a seconda della configurazione e dell'uso del vostro sistema, ma dovrebbe essere organizzato in modo analogo all'output delfile /proc/modules di questo esempio:

ide-cd                 27008   0 (autoclean)
cdrom                  28960   0 (autoclean) [ide-cd]
soundcore               4100   0 (autoclean)
agpgart                31072   0 (unused)
binfmt_misc             5956   1
iscsi                  32672   0 (unused)
scsi_mod               94424   1 [iscsi]
autofs                 10628   0 (autoclean) (unused)
tulip                  48608   1
ext3                   60352   2
jbd                    39192   2 [ext3]

La prima colonna contiene il nome del modulo. La seconda si riferisce alla dimensione della memoria di questo modulo, misurata in byte. La terza colonna indica se il modulo è attualmente caricato (1) o non caricato (0 ). L'ultima colonna indica se il modulo può essere scaricato automaticamente dopo un certo periodo di inattività (autoclean) o se non lo si sta usando (unused). Un modulo che presenta una linea contenente un nome riportato tra parentesi ([ o ]) indica che esso dipende da un altro modulo che deve essere presente per poter funzionare.

Questa informazione può essere visualizzata tramite il comando /sbin/lsmod.

5.2.22. /proc/mounts

Questo file fornisce un elenco di tutti i mount utilizzati dal sistema:

rootfs / rootfs rw 0 0
/dev/hda2 / ext3 rw 0 0
/proc /proc proc rw 0 0
/dev/hda1 /boot ext3 rw 0 0
none /dev/pts devpts rw 0 0
none /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0

L'output è simile al contenuto di /etc/mtab, con la differenza che /proc/mount può essere più attuale.

La prima colonna specifica il dispositivo montato e la seconda indica il mountpoint, e la terza colonna indica il tipo di filesystem, mentre la quarta specifica se è montato in modalità di sola lettura (ro) oppure lettura-scrittura (rw). La quinta e la sesta colonna riportano dei valori fittizi creati in modo da corrispondere al formato in uso in /etc/mtab.

5.2.23. /proc/mtrr

Il file si riferisce all'attuale MTRR (Memory Type Range Registers) in uso con il sistema. Se l'architettura del sistema supporta gli MTRR, allorail file /proc/mtrr avrà all'incirca questo aspetto:

reg00: base=0x00000000 (   0MB), size=  64MB: write-back, count=1

Gli MTRR vengono utilizzati con i processori Intel della famiglia P6 (Pentium II e successivi) per controllare l'accesso del processore ai range di memoria. Usando una scheda video su bus PCI o AGP, un file /proc/mtrr configurato correttamente, può aumentare le prestazioni più del 150%.

Il più delle volte, questo valore è configurato per default. Per maggiori informazioni sulla configurazione manuale di questo file, consultate la seguente URL:

http://web1.linuxhq.com/kernel/v2.3/doc/mtrr.txt.html

5.2.24. /proc/partitions

Molte delle informazioni qui riportate sono poco importanti per gran parte degli utenti, a eccezione delle linee che seguono:

5.2.25. /proc/pci

Questo file contiene un elenco completo di tutti i dispositivi PCI presenti sul sistema. A seconda del numero dei dispositivi PCI, /proc/pci può raggiungere una discreta lunghezza. Ecco qui un esempio dell'aspetto di questo file su un sistema di base:

  Bus  0, device   0, function  0:
    Host bridge: Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (rev 3).
      Master Capable.  Latency=64.  
      Prefetchable 32 bit memory at 0xe4000000 [0xe7ffffff].
  Bus  0, device   1, function  0:
    PCI bridge: Intel Corporation 440BX/ZX - 82443BX/ZX AGP bridge (rev 3).
      Master Capable.  Latency=64.  Min Gnt=128.
  Bus  0, device   4, function  0:
    ISA bridge: Intel Corporation 82371AB PIIX4 ISA (rev 2).
  Bus  0, device   4, function  1:
    IDE interface: Intel Corporation 82371AB PIIX4 IDE (rev 1).
      Master Capable.  Latency=32.  
      I/O at 0xd800 [0xd80f].
  Bus  0, device   4, function  2:
    USB Controller: Intel Corporation 82371AB PIIX4 USB (rev 1).
      IRQ 5.
      Master Capable.  Latency=32.  
      I/O at 0xd400 [0xd41f].
  Bus  0, device   4, function  3:
    Bridge: Intel Corporation 82371AB PIIX4 ACPI (rev 2).
      IRQ 9.
  Bus  0, device   9, function  0:
    Ethernet controller: Lite-On Communications Inc LNE100TX (rev 33).
      IRQ 5.
      Master Capable.  Latency=32.  
      I/O at 0xd000 [0xd0ff].
      Non-prefetchable 32 bit memory at 0xe3000000 [0xe30000ff].
  Bus  0, device  12, function  0:
    VGA compatible controller: S3 Inc. ViRGE/DX or /GX (rev 1).
      IRQ 11.
      Master Capable.  Latency=32.  Min Gnt=4.Max Lat=255.
      Non-prefetchable 32 bit memory at 0xdc000000 [0xdfffffff].

L'output mostra un elenco di tutti i dispositivi PCI nell'ordine bus, dispositivo e funzione. Oltre a riportare il nome e la versione del dispositivo questo elenco fornisce anche informazioni dettagliate sull'IRQ in modo che l'amministratore può andare rapidamente alla ricerca di conflitti.

SuggerimentoSuggerimento
 

Per ottenere una versione più leggibile di queste informazioni, digitate:

/sbin/lspci -vb

5.2.26. /proc/slabinfo

Il file fornisce informazioni sull'uso della memoria a livello dello slab. I kernel di Linux di versione superiore a 2.2 utilizzano i pool di slab per gestire la memoria oltre il livello di pagina. Gli oggetti comunemente utilizzati dispongono di pool di slab propri. Quella riportata di seguito è una porzione di un tipico file virtuale /proc/slabinfo/:

slabinfo - version: 1.1 (statistics)
kmem_cache            64     68    112    2    2    1
nfs_write_data         0      0    384    0    0    1
nfs_read_data          0    160    384    0   16    1
nfs_page               0    200     96    0    5    1
ip_fib_hash           10    113     32    1    1    1
journal_head          51   7020     48    2   90    1
revoke_table           2    253     12    1    1    1
revoke_record          0      0     32    0    0    1
clip_arp_cache         0      0    128    0    0    1
ip_mrt_cache           0      0     96    0    0    1

I valori contenuti nel file seguono l'ordine nome cache, numero di oggetti attivi, numero totale degli oggetti, dimensioni dell'oggetto, numero degli slab (blocchi) attivi degli oggetti, numero totale degli slab degli oggetti e numero delle pagine per ogni slab.

Va sottolineato che, in questo caso, attivo significa in uso.

5.2.27. /proc/stat

Questo file tiene traccia di svariate statistiche relative al sistema dal momento dell'ultimo riavvio. I contenuti di /proc/stat, i quali possono raggiungere una discreta lunghezza, iniziano generalmente in questo modo:

cpu  1139111 3689 234449 84378914
cpu0 1139111 3689 234449 84378914
page 2675248 8567956
swap 10022 19226
intr 93326523 85756163 174412 0 3 3 0 6 0 1 0 428620 0 60330 0 1368304 5538681
disk_io: (3,0):(1408049,445601,5349480,962448,17135856) 
ctxt 27269477
btime 886490134
processes 206458

Alcune delle statistiche più comunemente usate includono:

5.2.28. /proc/sysrq-trigger

Usando il comando echo, un utente root remoto può eseguire i comandi System Request Key in modo remoto, come se fosse in un terminal locale. Per eseguire echo e quindi per inserire i valori per questo file, /proc/sys/kernel/sysrq deve essere impostato su di un valore diverso da 0. Per maggiori informazioni sul System Request Key, consultate la Sezione 5.3.9.3.

Anche se è possibile scrivere su questo file, non è possibile effettuare la lettura, anche da parte di utente root.

5.2.29. /proc/swaps

Questo file misura lo spazio di swap e il suo utilizzo. Per sistemi che hanno un'unica partizione di swap, l'output del file /proc/swap ha all'incirca questo aspetto:

Filename     Type       Size    Used   Priority
/dev/hda6    partition  136512  20024  -1

Anche se queste informazioni si possono trovare in altri file disponibili nella directory /proc, /proc/swap fornisce una rapida rappresentazione del nome di ogni file di swap, del tipo di spazio di swap e delle dimensioni totali usate in kilobyte. La colonna della priorità (Priority) è utile quando vengono utilizzati file di swap multipli. Quanto più bassa è la priorità, tanto maggiore è la probabilità che il file di swap venga utilizzato.

5.2.30. /proc/uptime

Il file indica da quanto tempo il computer è acceso dal momento dell'ultimo riavvio. L'output di /proc/uptime è piuttosto ridotto:

350735.47 234388.90

Il primo numero indica il numero totale dei secondi trascorsi dall'accensione del sistema, mentre l'altro indica quanti di quei secondi la macchina ha trascorso in idle, in secondi.

5.2.31. /proc/version

Questo file indica la versione del kernel di Linux, del gcc in uso, e della versione di Red Hat Enterprise Linux installata sul sistema:

Linux version 2.4.20-1.1931.2.231.2.12.ent (user@foo.redhat.com) (gcc version 3.2.3 20030422 
(Red Hat Enterprise Linux 3.2.3-7)) #1 Thu Jun 19 14:57:04 EDT 2003

Queste informazioni servono per diversi scopi, tra cui quello di fornire i dati relativi alla versione al prompt di login.