Я пишу програму, яка відображає різну системну інформацію (у системі CentOS). Наприклад, тип та швидкість процесора (від /proc/cpuinfo
), час останнього завантаження (обчислюється з /proc/uptime
), IP-адреса (з ifconfig
виходу) та список встановлених принтерів (з lpstat
виводу).
В даний час з dmidecode
програми отримується кілька даних :
- Тип платформи (
dmidecode -s system-product-name
) - Версія BIOS (
dmidecode -s bios-version
) - Об'єм фізичної пам'яті (
dmidecode -t17 | grep Size
)
Вони доступні лише в тому випадку, якщо моя програма запускається як root (тому що в іншому випадку dmidecode
підпроцес закінчується /dev/mem: Permission denied
помилкою). Чи є альтернативний спосіб отримати цю інформацію, щоб звичайний користувач міг отримати доступ?
/sys/devices/virtual/dmi/id
. Тут доступна велика кількість інформації, що стосується платформи. Для зручного сценарію см unix.stackexchange.com/questions/75750 / ... . Для системної інформації також добре ваше інше речення. Є безліч комунальних служб, таких якfree
і навіть,htop
які можуть отримати вам те, що ви хочете.