Raspberry Pi har mycket systeminformation tillgänglig som detaljer om CPU, processorns aktuella temperatur, mängden minne och så vidare. Inte all information finns tillgänglig på ett ställe. Men om du vet var du ska leta kan du upptäcka en hel del intressanta data om din Pi.

Förutom "standard" systemresursverktyg som " ps ", " df ", " top " och andra användbara kommandon som "htop", "iotop" och "blickar", kan systeminformation hittas under "/ proc" -filsystemet. En av de mest användbara är cpuinfo " cpuinfo ", som innehåller data på ett systems CPU. För att se det skriver du:

 katt / proc / cpuinfo 

Utgången berättar tre saker om denna Raspberry Pi: Den har en processor baserad på ARM-arkitekturen (i stället för Intel som i Windows-datorer och Mac-datorer), processorn använder ARMv6-instruktionsuppsättningen, och att processorn är BCM2708, som vi vet är en processor från Broadcom. ARMv6-instruktionssatsen är en av de äldre ARM-modellerna. De flesta moderna smartphones och surfplattor använder ARMv7-arkitekturen, och alltmer blir den nya 64-bitars ARMv8-instruktionssatsen allt vanligare.

Andra filer som är värda att titta på i / proc-filsystemet inkluderar "/ proc / meminfo", "/ proc / partitions" och "/ proc / version." Varje kan undersökas med kommandot " cat ".

Informationen som finns under "/ proc" är tillgänglig på alla Linux-system; Raspberry Pi har emellertid också ett speciellt kommando tillgängligt som visar information som är specifik för Raspberry Pi-brädet. vcgencmd " vcgencmd " kan få tillgång till en hel del specifika uppgifter om Raspberry Pi, inklusive klockfrekvenser, olika spänningar, CPU-temperaturen och vilka hårdvarukodiker som är aktiverade.

Börja med CPU-kärntemperaturen, typ:

 vcgencmd measure_temp 

Utgången är en enda rad som rapporterar temperaturen:

 temp = 50.8'C 

Detta nummer är viktigt för dem som överklockar sin Pi-processor eller som har byggt projekt runt Raspberry Pi med begränsat luftflöde över processorn.

Prata om överklockning, för att se den aktuella CPU-frekvensen tillsammans med minsta och maximala frekvenser använda:

 katt / sys / enheter / system / cpu / cpu0 / cpufreq / scaling_cur_freq katt / sys / enheter / system / cpu / cpu0 / cpufreq / scaling_min_freq katt / sys / enheter / system / cpu / cpu0 / cpufreq / scaling_max_freq 

Antalet utdata är i kilohertz, så 950000 är 950MHz.

Andra klockhastigheter kan också upptäckas med " vcgencmd measure_clock CLOCKNAME " där CLOCKNAME är en av h264, isp, v3d, uart, pwm, emmc, pixel, vec, hdmi eller dpi. Till exempel:

 vcgencmd measure_clock arm 

Utgången är i Hertz, så 700000000 är 700MHz.

 frekvens (45) = 700 miljoner 

Du kan använda följande skalskript för att lista alla klockhastigheter:

 för src i armkärnan h264 isp v3d uart pwm emmc pixel vec hdmi dpi; gör \ echo -e "$ src: \ t $ (vcgencmd measure_clock $ src)"; \ Gjort 

Ett annat " vcgencmd " vcgencmd som du kanske tycker är användbart är " vcgencmd measure_volts " för att hitta de interna spänningarna för kärna, sdram_c, sdram_i och sdram_p. Till exempel:

 vcgencmd measure_volts kärna 

Utgången kommer att se ut så här:

 Volt = 1.20V 

Följande skalkommandon visar alla spänningar:

 för id i kärnan sdram_c sdram_i sdram_p; gör \ echo -e "$ id: \ t $ (vcgencmd measure_volts $ id)"; \ Gjort 

För att se vilka hårdvarukodiker som har aktiverats, använd " vcgencmd codec_enabled CODECNAME " där CODECNAME är en av H264, MPG2, WVC1, MPG4, MJPG eller WMV9. Till exempel:

 vcgencmd codec_enabled H264 

För att spara tid på att upprepa kommandot för varje codec kan du använda det här enkla skriptet.

 för codec i H264 MPG2 WVC1 MPG4 MJPG WMV9; gör \ echo -e "$ codec: \ t $ (vcgencmd codec_enabled $ codec)"; \ Gjort 

För att se hur minnet är uppdelat mellan CPU och GPU använd:

Slutligen, för att se hur mycket ledigt minne som är tillgängligt för systemet, använd:

 free -o -h 

Om du har några frågor om vcgencmd eller något av de andra systemverktygen som nämns, vänligen lämna en kommentar nedan och vi kommer se om vi kan hjälpa till.