Estou escrevendo um programa que exibe várias informações do sistema (em um sistema CentOS). Por exemplo, o tipo e a velocidade do processador (de /proc/cpuinfo), o último tempo de inicialização (calculado de /proc/uptime), o endereço IP (de ifconfigsaída) e uma lista de impressoras instaladas (de lpstatsaída).
Atualmente, vários dados são obtidos do dmidecodeprograma:
- O tipo de plataforma (
dmidecode -s system-product-name) - A versão do BIOS (
dmidecode -s bios-version) - A quantidade de memória física (
dmidecode -t17 | grep Size)
Eles estarão disponíveis apenas se meu programa for executado como root (caso contrário, o dmidecodesubprocesso falhará com um /dev/mem: Permission deniederro). Existe uma maneira alternativa de obter essas informações que um usuário normal possa acessar?
/sys/devices/virtual/dmi/id. Muitas informações específicas da plataforma estão disponíveis lá. Para um script útil, consulte unix.stackexchange.com/questions/75750/… . Para informações do sistema, sua outra frase também é boa. Existem muitos utilitários, como esses,freeou até mesmohtopo que você deseja.