Tôi đang viết một chương trình hiển thị thông tin hệ thống khác nhau (trên hệ thống CentOS). Ví dụ: loại bộ xử lý và tốc độ (từ /proc/cpuinfo), thời gian khởi động cuối cùng (được tính từ /proc/uptime), địa chỉ IP (từ ifconfigđầu ra) và danh sách các máy in được cài đặt (từ lpstatđầu ra).
Hiện tại, một số dữ liệu được lấy từ dmidecodechương trình:
- Loại nền tảng (
dmidecode -s system-product-name) - Phiên bản BIOS (
dmidecode -s bios-version) - Dung lượng bộ nhớ vật lý (
dmidecode -t17 | grep Size)
Chúng chỉ khả dụng nếu chương trình của tôi chạy dưới quyền root (vì nếu không thì quá dmidecodetrình con bị /dev/mem: Permission deniedlỗi). Có cách nào khác để lấy thông tin này mà người dùng bình thường có thể truy cập không?
/sys/devices/virtual/dmi/id. Rất nhiều thông tin cụ thể nền tảng có sẵn ở đó. Để biết một tập lệnh tiện dụng, hãy xem unix.stackexchange.com/questions/75750/ . Đối với thông tin hệ thống, câu khác của bạn là tốt quá. Có rất nhiều tiện ích nhưfreehoặc thậm chíhtopcó thể mang lại cho bạn những gì bạn muốn.