Сбор информации о системе Ubuntu

Собрать всю доступную информацию о системе и железе Ubuntu может понадобиться если у вас появился новый компьютер или ноутбук, и вам интересно, какое там точно оборудование. Также это может понадобиться если нужно заменить какой-либо компонент, например, жесткий диск. Ну или даже просто так. Для замены оборудования вам нужно знать всю информацию заранее. Также информация о железе Ubuntu может понадобиться если вы собираетесь настраивать Wifi, Bluetooth, веб камеру или устанавливать драйвера для видеокарты.

В этой статье я перечислю команды, с помощью которых может быть получена информация об операционной системе Ubuntu. Все команды были проверены в Ubuntu 16.04, но они должны работать в любом современном дистрибутиве, таком как Debian, Fedora, OpenSUSE и т д.

Содержание статьи: Узнаем имя хоста Находим производителя, серийный номер Информация о подключенном оборудовании Информация о процессоре Статистика использования процессора Информация о памяти Информация о подкачке Информация о виртуальной памяти Версия дистрибутива Версия ядра Параметры запуска ядра Архитектура системы Информация о жестких дисках Информация о блочных устройствах Свободное пространство на диске Примонтированные диски SCSI устройства Информация о PCI устройствах Информация о USB Информация о беспроводных сетевых адаптерах Информация об видеокарте Информация об видеокарте NVIDIA Информация о видеокарте ATI Readon Версия Unity Информация об аудио устройствах Состояние батареи Время работы системы Загрузка системы История выключений и перезагрузок Текущий RunLevel Просмотр лога ядра Загруженные модули ядра Информация о сети Информация о DNS серверах Информация о соктетах Информация о сервисах Просмотр лог файлов Поиск файла по имени Информация о пользователях Информация о группах Информация о паролях Загрузка системы Трассировка программ Трассировка вызовов библиотек Информация о процессах Установленные пакеты Информация о брандмаузере Выводы

Узнаем имя хоста

Самый простой способ узнать имя хоста своей машины, это команда hostname:

hostname

server01

Или:

cat /etc/hostname

server01

Если у вас сервер, можно посмотреть доменное имя узла определяемое по DNS:

dnsdomainname

fuck-cs.pp.ua

Полное доменное имя хоста (FQDN) можно посмотреть командой:

hostname

server01.fuck-cs.pp.ua

Находим производителя, серийный номер

Если у вас ноутбук, то может быть получена такая информация, как производитель, серийный номер, и другая информация о железе 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 порты и т д:

sudo lsdev

Информация о процессоре

Информация о процессоре linux тоже легко доступна:

cat /proc/cpuinfo

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

Или:

lscpu

Статистика использования процессора

Посмотреть загруженность процессора можно командой:

sudo mpstat

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.

Информация о памяти

Посмотреть статистику использования памяти в системе можно командой:

less /proc/meminfo

MemTotal: 6109876 kB MemFree: 188544 kB MemAvailable: 2117964 kB Buffers: 254120 kB Cached: 1595932 kB

Если не нужна такая подробная информация, можно получить информацию о linux командой free.

Отобразить информацию о памяти в мегабайтах:

free -m

В гигабайтах:

free -g

В читаемом виде:

free -h

Информация о подкачке

Посмотреть подключен ли swap раздел и какого он размера можно командами:

swapon -s

cat /proc/swaps

vmstat

Информация о виртуальной памяти

sudo vmstat $ sudo vmstat 1 $ sudo vmstat 2

Версия дистрибутива

Команда покажет версию и название дистрибутива, а также некоторую дополнительную информацию, это важная информация об операционной системе linux:

lsb_release -a

Версия ядра

Ядро - это самый важный компонент системы. Информация о системе 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

Смотрим разделы на определенном диске:

fdisk -l /dev/sda

Узнаем метку диска:

sudo fdisk /dev/sda $ sudo e2label /dev/sda1 $ sudo cfdisk /dev/sda

Информация о блочных устройствах

Атрибуты блочных устройств:

blkid

Список всех блочных устройств:

lsblk

Свободное пространство на диске

Информация о системе Ubuntu включает информацию о дисках. Отобразить использованное пространство всех дисков:

df $ df -H $ df -HT

Отобразить размер файлов в домашней папке:

du $ du /home

Примонтированные диски

Посмотреть все примонитрованные файловые системы:

cat /proc/mount $ mount

SCSI устройства

Отобразить параметры SCSI устройств подключенных к системе:

lsscsi

Статистика ввода/вывода:

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

Если установлены проприетарные драйвера, информацию о видеокарте можно посмотреть командой:

nvidia-smi

Или

nvidia-settings

Здесь будет представлена более подробная информация о компьютере Ubuntu, чем в обычном выводе lspci.

Информация о видеокарте ATI Readon

Для работы команды, нужно чтобы был установлен драйвер ATI:

fglrxinfo

Версия Unity

unity --version

Информация об аудио устройствах

lspci | grep -i audio

Или:

cat /proc/asound/cards

Или:

arecord -l

Состояние батареи

На ноутбуке нам может понадобиться посмотреть состояние батареи:

upower -i /org/freedesktop/UPower/devices/battery_BAT0 $ acpi -V

Время работы системы

uptime $ who $ w

Загрузка системы

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:

cat /etc/resolv.conf

Системные настройки DNS находятся в файле /etc/host.conf

cat /etc/host.conf

Информация о соктетах

Смотрим открытые сетевые и локальные сокеты:

sudo ss

Все прослушиваемые порты:

sudo ss -l

Или:

sudo netstat -tulpn $ sudo netstat -tulpn | grep LISTEN

Смотрим все TCP сокеты:

sudo ss -t -a

UDP сокеты:

sudo ss -u -a

Смотрим открытые в системе файлы:

lsof | more $ lsof | grep something $ lsof /dev/sda2

Информация о сервисах

Смотрим все запущенные сервисы. В SysVinit:

sudo service --status-all

В Upstart:

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:

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"

Смотрим все необходимые исполняемому файлу библиотеки:

ldd имя_файла

Какому пакету принадлежит файл:

dpkg -S /путь/к/файлу $ dpkg -S /bin/ls

Делаем резервную копию списка установленных программ:

sudo dpkg --get-selections > /root/installed.pkgs.txt

Восстанавливаем:

sudo dpkg --set-selections < /root/installed.pkgs.txt

Информация о брандмаузере

sudo iptables -L -n -v $ sudo ufw status numbered $ sudo ufw status verbose $ sudo ufw app list

Выводы

На этом сайте уже есть стати подробно расписывающие многие из приведенных здесь команд. Информацию о тех командах, которые не описаны, вы можете получить, выполнив в терминале команду man. Если я упустил какие-либо важные команды и параметры, напишите в комментариях!

Отправка комментария

0 Комментарии