Piszę program, który wyświetla różne informacje o systemie (w systemie CentOS). Na przykład typ i szybkość procesora (od /proc/cpuinfo
), czas ostatniego uruchomienia (obliczony na podstawie /proc/uptime
), adres IP (z ifconfig
wyjścia) oraz lista zainstalowanych drukarek (z lpstat
wyjścia).
Obecnie z dmidecode
programu pozyskuje się kilka danych :
- Typ platformy (
dmidecode -s system-product-name
) - Wersja systemu BIOS (
dmidecode -s bios-version
) - Ilość pamięci fizycznej (
dmidecode -t17 | grep Size
)
Są one dostępne tylko wtedy, gdy mój program jest uruchomiony jako root (ponieważ w przeciwnym razie dmidecode
podproces nie powiedzie się z /dev/mem: Permission denied
błędem). Czy istnieje alternatywny sposób uzyskania tych informacji, do których normalny użytkownik może uzyskać dostęp?
/sys/devices/virtual/dmi/id
. Dostępnych jest tam wiele informacji dotyczących konkretnej platformy. Przydatny skrypt można znaleźć na stronie unix.stackexchange.com/questions/75750/… . Jeśli chodzi o informacje o systemie, drugie zdanie również jest dobre. Istnieje wiele narzędzi, takich jakfree
lub nawet,htop
które mogą zapewnić ci to, czego chcesz.