В данной статье пойдет речь о способах сбора сведений об оборудовании компьютера, который находится под управлением операционных систем семейства UNIX, такие как Linux и BSD. Также, будет немного затронута часть получения системной информации. Действия будут выполняться из командной строки без графической оболочки — их можно выполнить, подключившись к компьютеру удаленно по SSH.
- Информация о процессоре
- 1. lscpu (Linux)
- 2. sysctl -a (FreeBSD)
- 3. Файл /proc/cpuinfo (Linux)
- 4. Температура процессора
- Linux
- FreeBSD
- Информация об оперативной памяти
- 1. Файл /proc/meminfo (Linux)
- 2. free (Linux)
- Смотрим информацию о системе в Linux (Ubuntu, CentOS, Fedora)
- Узнаем имя хоста
- Находим производителя, серийный номер
- Информация о подключенном оборудовании
- Информация о процессоре
- Статистика использования процессора
- Информация о памяти
- Информация о подкачке
- Информация о виртуальной памяти
- Версия дистрибутива
- Версия ядра
- Параметры запуска ядра
- Архитектура системы
- Информация о жестких дисках
- Информация о блочных устройствах
- Свободное пространство на диске
- Примонтированные диски
- SCSI устройства
- Информация о PCI устройствах
- Информация о USB
- Информация о беспроводных сетевых адаптерах
- Информация об видеокарте
- Информация об видеокарте NVIDIA
- Информация о видеокарте ATI Readon
- Версия Unity
- Информация об аудио устройствах
- Состояние батареи
- Время работы системы
- Загрузка системы
- История выключений и перезагрузок
- Текущий RunLevel
- Просмотр лога ядра
- Загруженные модули ядра
- Информация о сети
- Информация о DNS серверах
- Информация о соктетах
- Информация о сервисах
- Просмотр лог файлов
- Поиск файла по имени
- Информация о пользователях
- Информация о группах
- Информация о паролях
- Загрузка системы
- Трассировка программ
- Трассировка вызовов библиотек
- Информация о процессах
- Установленные пакеты
- Информация о брандмаузере
- Выводы
Информация о процессоре
Команды для получения данных о процессоре.
1. lscpu (Linux)
Команда показывает информацию о характеристиках процессора в удобном виде:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 2
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 62
Model name: Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
Stepping: 4
CPU MHz: 2592.918
BogoMIPS: 5187.50
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 20480K
NUMA node0 CPU(s): 0-7
* больше всего нас интересует:
- Architecture — архитектура процессора — 32 бит или 64.
- Core(s) per socket — количество ядер на процессор.
- Socket(s) — количество физических/виртуальных процессоров.
- CPU(s) — суммарное количество процессорных ядер.
- Model name — модель процессора.
2. sysctl -a (FreeBSD)
Команда отображает множество данных, поэтому добавляем фильтр:
sysctl -a | egrep -i ‘hw.machine|hw.model|hw.ncpu’
hw.model: Intel(R) Xeon(R) CPU X5690 @ 3.47GHz
hw.machine: amd64
hw.ncpu: 2
* на самом деле, команда sysctl работает и в Linux, но формат вывода менее удобен, по сравнению с вышерассмотренной lscpu.
3. Файл /proc/cpuinfo (Linux)
Позволяет увидеть подробную информацию по каждому ядру:
Команда для подсчета количества ядер:
cat /proc/cpuinfo | grep processor | wc -l
4. Температура процессора
Linux
Сначала необходимо установить утилиту.
yum install lm_sensors
apt-get install lm-sensors
После установки утилиты выполняем:
FreeBSD
Загружаем необходимый модуль:
* для автоматической его загрузки добавляем в файл /boot/loader.conf строку coretemp_load=»YES»
sysctl -a | grep temperature
dev.cpu.0.temperature: 40.0C
dev.cpu.1.temperature: 41.0C
Информация об оперативной памяти
1. Файл /proc/meminfo (Linux)
MemTotal: 8010284 kB
MemFree: 1058580 kB
MemAvailable: 2791616 kB
Buffers: 1884 kB
Cached: 1754092 kB
SwapCached: 122280 kB
Active: 4330296 kB
Inactive: 2006792 kB
Active(anon): 3623768 kB
Inactive(anon): 983120 kB
Active(file): 706528 kB
Inactive(file): 1023672 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 1048572 kB
SwapFree: 597684 kB
Dirty: 20 kB
Writeback: 0 kB
AnonPages: 4466532 kB
Mapped: 92808 kB
Shmem: 25776 kB
Slab: 408732 kB
SReclaimable: 308820 kB
SUnreclaim: 99912 kB
KernelStack: 7312 kB
PageTables: 23276 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 5053712 kB
Committed_AS: 3770324 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 159328 kB
VmallocChunk: 34359341052 kB
HardwareCorrupted: 0 kB
AnonHugePages: 3248128 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 257984 kB
DirectMap2M: 8130560 kB
* чаще всего, самое важное:
- MemTotal — общий объем оперативной памяти.
- MemFree — объем памяти, который не используется системой.
- Buffers — память, которая в данным момент ожидает записи на диск.
- Cached — объем, задействованный под кэш чтения с диска.
- MemAvailable — объем памяти, доступной в распределители без необходимости обмена.
- SwapTotal — объем файла подкачки.
- SwapFree — свободный объем файла подкачки.
* Объем используемой памяти = MemTotal – MemFree — Cached — Buffers.
Для перевода килобайт в гигабайты можно воспользоваться онлайн калькулятором.
2. free (Linux)
Данная команда позволяет получить информацию об использовании памяти в удобной таблице. Для еще большего удобства, мы выведем ее с помощью дополнительного параметра -h:
total used free shared buff/cache available
Mem: 3,7G 568M 378M 193M 2,8G 2,6G
Swap: 4,0G 94M 3,9G
Всё о Интернете, сетях, компьютерах, Windows, iOS и Android
Смотрим информацию о системе в Linux (Ubuntu, CentOS, Fedora)
Тем кто только-только пересел с операционной системы Windows на более сложный Linux, порой бывает сложно выполнить те операции, которые на знакомой ОС делались за пару секунд.
Одна из подобных задач — посмотреть основную информацию о системе: какой стоит процессор, материнская плата, версия операционной системы, разрядность, ядро и т.п. В старой доброй Windows достаточно было вывести свойства системы или открыть диспетчер задач. А тут всё сложнее. Но вся сила Линукс — в консоли и есть ряд специальных команд командой строки, которые помогут узнать всю необходимую информацию о Вашей ОС Linux, будь то Ubuntu, CentOS, Fedora или иной дистрибутив. Сейчас я Вам их покажу!
Читайте также: Можно ли с айфона раздавать вай фай
hwinfo — эта утилита выдаёт массу информации о комплектующих: процессоре, материнской плате, оперативной памяти, видеокарте, жесткому диску и т.п. К сожалению, не во всех дистрибутивах она присутствует, но установить ещё случай чего — проще простого:
— в Debian, Ubuntu: sudo apt-get install hwinfo
— в Fedora и Red Hat: yum install hwinfo
Чтобы вывести основную информацию, воспользуйтесь ключом —short.
lshw — эта команда выдаёт полную информацию о аппаратной части компьютера или ноутбука.
Конечно, до уровная утилиты hwinfo ещё далеко, но основную информацию получить вполне реально. Команда lshw выполняется с правами рута — sudo lshw.
cat /proc/cpuinfo — вывод полной информации о процессоре, установленном на ПК.
cat /proc/meminfo — подробные данные о полном объёме оперативной памяти, сколько её занято и сколько свободно.
free -m — команда похожа по результату на предыдущую, за тем лишь результатом, что вывод будет в виде небольшой таблицы.
lspci | grep VGA — эта директива отобразит информацию по установленной видеокарте.
lspci | grep Audio — смотрим какая на компьютере установлена звуковая карта.
df -H — подробная информация по разделам жесткого диска, их объём и текущая загрузка.
lspci | grep Ethernet — модель и производитель сетевого адаптера ПК.
uname -a — эта команда отобразит в консоли основные данные по операционной системе Linux — версию ядра, дистрибутива, а так же используемую архитектуру — 32 или 64 бита).
uname -r — выводится информация о версии ядра ОС.
cat /proc/version — вывод команды полностью аналогичен предыдущей.
lsb_release -a — здесь в качестве результата выполнения команды будет название установленного дистибутива Линукс и его версия:
cat /etc/*release* — результат выполнения команды будет во много аналогичным предшествующей директиве. То есть будет показана инфа о дистрибутиве и его версии.
Важное отличие — если Вы используете ОС построенную на каком либо дистрибутиве, то команда отобразить и информацию о базовом дистрибутиве Линукс.
ls -clt / | tail -n 1 | awk ‘< print $7, $6, $8 >’ — эта команда отобразит Вам дату и время установки системы.
ls -dl /var/log/installer/ — эта команда Linux так же позволяет узнать дату и время установки системы.
cat /etc/issue — результат выполнения команды аналогичен предыдущей. Вам будет показана версия дистрибутива ОС.
С помощью этого списка основных команд Вы сможете без проблем посмотреть и узнать основную информацию о ПК и операционной системе.
Собрать всю доступную информацию о системе и железе Ubuntu может понадобиться если у вас появился новый компьютер или ноутбук, и вам интересно, какое там точно оборудование. Также это может понадобиться если нужно заменить какой-либо компонент, например, жесткий диск. Ну или даже просто так. Для замены оборудования вам нужно знать всю информацию заранее. Также информация о железе Ubuntu может понадобиться если вы собираетесь настраивать Wifi, Bluetooth, веб камеру или устанавливать драйвера для видеокарты.
В этой статье я перечислю команды, с помощью которых может быть получена информация об операционной системе Ubuntu. Все команды были проверены в Ubuntu 16.04, но они должны работать в любом современном дистрибутиве, таком как Debian, Fedora, OpenSUSE и т д.
Узнаем имя хоста
Самый простой способ узнать имя хоста своей машины, это команда hostname:
Читайте также: Рейтинг фильтров обратного осмоса с минерализатором
Если у вас сервер, можно посмотреть доменное имя узла определяемое по DNS:
Полное доменное имя хоста (FQDN) можно посмотреть командой:
Находим производителя, серийный номер
Если у вас ноутбук, то может быть получена такая информация, как производитель, серийный номер, и другая информация о железе Ubuntu, закодированная в dmi:
sudo dmidecode -s system-serial-number
$ sudo dmidecode -s system-manufacturer
$ sudo dmidecode -s system-product-name
Всю доступную информацию смотрите командой:
sudo dmidecode | more
Также в можно использовать команду lshw, в некоторых дистрибутивах придется ее установить:
sudo lshw | more
$ sudo lshw -short
Информация о подключенном оборудовании
Команда покажет все подключенное оборудование, используемые PCI и USB порты и т д:
Информация о процессоре
Информация о процессоре linux тоже легко доступна:
processor : 0
vendor_id : AuthenticAMD
cpu family : 16
model : 6
model name : AMD Athlon(tm) II X2 250 Processor
stepping : 3
microcode : 0x10000c8
cpu MHz : 2300.000
Статистика использования процессора
Посмотреть загруженность процессора можно командой:
21:56:27 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
21:56:27 all 18,27 0,33 5,26 2,01 0,00 0,04 0,00 0,00 0,00 74,10
Возможно утилиту придется установить, установив пакет sysstat.
Информация о памяти
Посмотреть статистику использования памяти в системе можно командой:
MemTotal: 6109876 kB
MemFree: 188544 kB
MemAvailable: 2117964 kB
Buffers: 254120 kB
Cached: 1595932 kB
Если не нужна такая подробная информация, можно получить информацию о linux командой free.
Отобразить информацию о памяти в мегабайтах:
В читаемом виде:
Информация о подкачке
Посмотреть подключен ли swap раздел и какого он размера можно командами:
Информация о виртуальной памяти
sudo vmstat
$ sudo vmstat 1
$ sudo vmstat 2
Версия дистрибутива
Команда покажет версию и название дистрибутива, а также некоторую дополнительную информацию, это важная информация об операционной системе linux:
Версия ядра
Ядро — это самый важный компонент системы. Информация о системе Ubuntu, а именно версии ядра доступна с помощью команды uname.
uname -r
$ uname -a
Linux dhcppc0 4.1.15-8-default #1 SMP PREEMPT Wed Jan 20 16:41:00 UTC 2016 (0e3b3ab) x86_64 x86_64 x86_64 GNU/Linux
Параметры запуска ядра
cat /proc/cmdline
$ sysctl -a | more
Архитектура системы
uname -m
$ getconf LONG_BIT
$ arch
Информация о жестких дисках
Смотрим подключенные жесткие диски:
fdisk -l | grep ‘^Disk /dev’
Disk /dev/sda: 465,8 GiB, 500107862016 bytes, 976773168 sectors
Disk /dev/sdb: 931,5 GiB, 1000204886016 bytes, 1953525168 sectors
Смотрим разделы на определенном диске:
Узнаем метку диска:
sudo fdisk /dev/sda
$ sudo e2label /dev/sda1
$ sudo cfdisk /dev/sda
Информация о блочных устройствах
Атрибуты блочных устройств:
Список всех блочных устройств:
Свободное пространство на диске
Информация о системе Ubuntu включает информацию о дисках. Отобразить использованное пространство всех дисков:
df
$ df -H
$ df -HT
Отобразить размер файлов в домашней папке:
Примонтированные диски
Посмотреть все примонитрованные файловые системы:
cat /proc/mount
$ mount
SCSI устройства
Отобразить параметры SCSI устройств подключенных к системе:
sudo iostat
$ sudo iostat 2
Информация о PCI устройствах
PCI устройства — это все устройства, подключенные к материнской плате компьютера, это процессор, сетевая карта, беспроводный адаптер, и так далее. По сути, посмотреть железо Ubuntu можно просмотрев pci устройства.
lspci
$ lspci -vt
$ lspci | grep -i ‘устройство’
$ lspci -vvvn| less
Информация о USB
Кроме PCI устройств есть еще внешние USB, это принтеры, Bluetooth адаптер, мышка, клавиатура. Это тоже важная информация о компьютере Ubuntu.
lsusb
$ lsusb -vt
Информация о беспроводных сетевых адаптерах
Модель и производителя сетевого адаптера можно посмотреть через lscpi, но более подробную информацию о настройках и поддерживаемых функциях там не узнать, для этого есть свои команды:
iwconfig
$ watch -n 1 cat /proc/net/wireless
$ wavemon
$ iw list
Информация об видеокарте
lspci | grep -i vga
$ lspci -vvnn | grep VGA
sudo lshw -class display
Информация об видеокарте NVIDIA
Если установлены проприетарные драйвера, информацию о видеокарте можно посмотреть командой:
Читайте также: Не работает активный сабвуфер
Здесь будет представлена более подробная информация о компьютере Ubuntu, чем в обычном выводе lspci.
Информация о видеокарте ATI Readon
Для работы команды, нужно чтобы был установлен драйвер ATI:
Версия Unity
Информация об аудио устройствах
lspci | grep -i audio
Состояние батареи
На ноутбуке нам может понадобиться посмотреть состояние батареи:
upower -i /org/freedesktop/UPower/devices/battery_BAT0
$ acpi -V
Время работы системы
Загрузка системы
uptime
$ cat /proc/loadavg
$ sudo top
$ sudo htop
$ sudo atop
История выключений и перезагрузок
last reboot
$ last shutdown
Текущий RunLevel
RunLevel это уровень запуска в системе инициализации SysVinit.
runlevel
$ who -r
Просмотр лога ядра
Очень полезная информация о компьютере Ubuntu, информация об ошибках и проблемах находится в логе ядра:
sudo less /var/log/dmesg
$ sudo grep ‘regx’ /var/log/dmesg
$ sudo grep ‘[h|s]d’ /var/log/dmesg
Загруженные модули ядра
sudo lsmod
$ sudo modinfo _____имя_модуля___
Информация о сети
Посмотреть локальный ip адрес и другую информацию о сетевых интерфейсах:
sudo ip a
$ sudo ip
$ sudo ip link ls up
$ sudo ifconfig -a
Посмотреть только информацию об интерфейсе eth0:
sudo ip a show eth0
$ sudo ifconfig eth0
Посмотреть таблицу маршрутизации:
sudo ip r
$ sudo route -n
$ sudo netstat -nr
Посмотреть сетевые мосты:
sudo brctl show
$ sudo bridge link
Информация о DNS серверах
Адреса DNS серверов, с которыми работает система находятся в файле /etc/resolv.conf:
Системные настройки DNS находятся в файле /etc/host.conf
Информация о соктетах
Смотрим открытые сетевые и локальные сокеты:
Все прослушиваемые порты:
sudo netstat -tulpn
$ sudo netstat -tulpn | grep LISTEN
Смотрим все TCP сокеты:
Смотрим открытые в системе файлы:
lsof | more
$ lsof | grep something
$ lsof /dev/sda2
Информация о сервисах
Смотрим все запущенные сервисы. В SysVinit:
sudo service —status-all
sudo initctl list
Проверяем загружается ли сервис автоматически:
sudo initctl status service-name
$ sudo initctl status smbd
sudo service имя_сервиса status
$ sudo service nginx status
Просмотр лог файлов
cd /var/log
$ ls -l
$ tail -f /var/log/имя_файла
$ grep ‘то_что_нужно’ /var/log/имя_файла
Поиск файла по имени
С помощью Locate:
locate имя_файла
$ locate passwd
$ locate курсовая.doc
find -name <имя_файла>-print
$ find /etc/ -name /etc/passwd -print
$ find $HOME -name ‘*.doc’ -print
Информация о пользователях
less /etc/passwd
$ grep userName /etc/passwd
$ getent passwd
Информация о группах
less /etc/group
$ getent group
$ grep имя_группы /etc/group
$ groups имя_пользователя
Информация о паролях
chage -l имя_пользователя
$ chage -l root
$ chage -l vivek
Загрузка системы
sudo top
$ sudo htop
$ sudo atop
$ sudo ps auxwww
$ sudo netstat опции
$ sudo iostat
$ sudo mpstat 1
$ sudo sar опции
Трассировка программ
strace -o output.txt /bin/foo
$ strace -p 22254 -s 80 -o debug.nginx.txt
Трассировка вызовов библиотек
sudo ltrace /usr/sbin/httpd
$ sudo ltrace /sbin/chroot /usr/sbin/httpd
Информация о процессах
sudo pstree
$ sudo pstree | less
$ sudo ps auxwwwm
$ ps alxwww
$ ps auxwww
$ lsof -b M -n -l
Изменяем приоритет процесса:
sudo /bin/nice -n -1 имя процесса
$ sudo /bin/nice -n -1 pid
$ sudo renice __приоритет___ pid
Использование CPU процессом:
sudo taskset -p pid
$ sudo taskset -p 42
Установленные пакеты
Смотрим список всех установленных пакетов:
dpkg -l
$ dpkg -l | less
$ dpkg -l nginx
Смотрим все установленные патчи:
sudo apt-show-versions -a | grep -i «security»
Смотрим все необходимые исполняемому файлу библиотеки:
Какому пакету принадлежит файл:
dpkg -S /путь/к/файлу
$ dpkg -S /bin/ls
Делаем резервную копию списка установленных программ:
sudo dpkg —get-selections > /root/installed.pkgs.txt
sudo dpkg —set-selections
Информация о брандмаузере
sudo iptables -L -n -v
$ sudo ufw status numbered
$ sudo ufw status verbose
$ sudo ufw app list
Выводы
На этом сайте уже есть стати подробно расписывающие многие из приведенных здесь команд. Информацию о тех командах, которые не описаны, вы можете получить, выполнив в терминале команду man. Если я упустил какие-либо важные команды и параметры, напишите в комментариях!