Мониторинг#

Настройка#

Программный продукт имеет собственные встроенные средства мониторинга.

В разделе приведены некоторые средства мониторинга производительности и настройки, доступные в ОС SberLinux OS Server:

  • Performance Co-Pilot (pcp) используется для мониторинга, визуализации, хранения и анализа измерений производительности на системном уровне. Это позволяет осуществлять мониторинг и управление данными в режиме реального времени, а также регистрировать и извлекать историю данных.

  • ОС SberLinux OS Server предоставляет несколько инструментов, которые можно использовать из командной строки для мониторинга системы. Ниже приведены встроенные инструменты командной строки:

    • top предоставляется пакетом procps-ng. Утилита предлагает динамическое представление о процессах в работающей системе. Отображает различные данные, включая сводку системы и список задач, которыми в данный момент управляет ядро Linux.

    • ps предоставляется пакетом procps-ng. Утилита делает снимок выбранной группы активных процессов. По умолчанию проверяемая группа ограничена процессами, принадлежащими текущему пользователю и связанными с терминалом, на котором выполняется команда ps.

    • Virtual memory statistics (vmstat) предоставляется пакетом procps-ng. Утилита формирует мгновенные отчеты о процессах, памяти, страницах, вводе/выводе блоков, прерываниях и активности CPU в системе.

    • System activity reporter (sar) предоставляется пакетом sysstat. Утилита собирает и отображает информацию о системной активности за текущий день.

  • perf анализирует производительность различных операций (подробнее в разделе «База знаний» → «Утилита рerf»).

  • bcc-tools используется для сбора компилятора BPF (BCC). Компилятор предоставляет более 100 сценариев eBPF, которые отслеживают действия ядра. Для получения дополнительной информации о каждом из инструментов обратитесь к руководству (с помощью команды man). В нем содержатся сценарии использования и основные функции компилятора.

  • turbostat предоставляется пакетом kernel-tools. Утилита отображает данные о топологии процессора, частоте, статистике состояния питания в режиме ожидания, температуре и энергопотреблении процессоров Intel 64.

  • iostat предоставляется пакетом sysstat. Утилита мониторинга и отчетов о загрузке устройств ввода-вывода системы, помогает администраторам принимать решения о распределении нагрузки ввода-вывода между физическими дисками.

  • ss печатает статистическую информацию о сокетах, позволяя администраторам оценивать производительность устройства за период. ОС SberLinux OS Server рекомендует использовать ss поверх netstat.

  • irqbalance распределяет аппаратные прерывания между процессорами для повышения производительности системы.

  • numastat предоставляется пакетом numactl. По умолчанию утилита numastat отображает системную статистику попадания и промаха NUMA для каждого узла из распределителя памяти ядра. Оптимальная производительность определяется высокими значениями numa_hit и низкими значениями numa_miss.

  • numad - автоматический демон управления привязкой NUMA. Отслеживает топологию NUMA и использование ресурсов в системе, что динамически улучшает распределение ресурсов NUMA, управление ими и производительность системы.

  • SystemTap отслеживает и анализирует действия операционной системы, особенно действия ядра.

  • Valgrind анализирует приложения, запуская их на синтетическом процессоре и инструментируя существующий код приложения по мере его выполнения. Затем печатает комментарий, который четко идентифицирует каждый процесс, участвующий в выполнении приложения, в указанный пользователем файл, дескриптор файла или сетевой сокет. Также полезен для поиска утечек памяти.

  • pqos предоставляется пакетом intel-cmt-cat. Утилита для мониторинга и управления кешем CPU и пропускной способностью памяти на последних процессорах Intel.

Отображение и предоставление метрик обеспечиваются за счет средств и инструментов мониторинга, используемых клиентом в конечной информационной системе.

Дополнительная информация#

Дополнительная информация о работе перечисленных инструментов указана в справочных страницах man: top, ps, vmstat, irqbalance и ss.

Метрики#

Ниже приведены ключевые метрики, используемые для оценки состояния и производительности системы. Для каждой метрики указаны описание, размерность и основные атрибуты.

Процессор и память#

Название

Описание

Размерность

Основные атрибуты

cpu.utilization

Доля времени, в течение которого процессор выполнял задачи (не простаивал)

Процент (%)

- cpu_id: идентификатор ядра (целое число)
- mode: режим использования (user, system, idle, и др.) (строка)
- timestamp: временная метка (время)

load.average

Среднее количество процессов в состоянии выполнения или ожидающих CPU

Безразмерная величина

- interval: интервал усреднения (1, 5 или 15 минут) (целое число)
- value: значение нагрузки (число с плавающей точкой)
- host: имя хоста (строка)

memory.usage

Объем физической оперативной памяти, используемой системой

Байты

- total: общий объем RAM (целое число)
- used: объем занятой памяти (целое число)
- available: объем доступной памяти (целое число)

swap.usage

Объем данных, выгруженных в подкачку (swap)

Байты

- total_swap: общий размер swap-раздела/файла (целое число)
- used_swap: объем используемого swap (целое число)
- swap_io_rate: скорость обмена с swap (число с плавающей точкой)

Ниже приведены команды и инструменты для получения значений каждой из основных метрик мониторинга системы:

  1. cpu.utilization — загрузка процессора.

    • Способ 1:

      top
      

      Где:

      • В верхней части вывода отображается общая загрузка CPU по всем ядрам.

      • Нажмите 1, чтобы увидеть загрузку по каждому ядру отдельно. (см. раздел «Использование команды top»).

    • Способ 2:

      vmstat 1 5
      

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

      procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
       r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
       0  0      0 3054480   2708 423036    0    0     0     0    3    2  0  1 99  0  1
       0  0      0 3054480   2708 423036    0    0     0     0  111   98  0  0 100  0  0
       0  0      0 3054480   2708 423036    0    0     0     0  111  100  0  0 100  0  0
       0  0      0 3054480   2708 423036    0    0     0    24  282  159  1  4 83  0 12
       0  0      0 3054480   2708 423036    0    0     0     0  136  119  0  0 100  0  0
      

      Где:

      • Последние два столбца (us — пользовательский режим, sy — системный режим) показывают процент использования CPU.

      • Аргументы: обновление каждую секунду, 5 итераций.

    • Способ 3:

      sudo dnf install -y sysstat
      sudo systemctl enable --now sysstat
      sar -u 1 3
      

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

      Linux 5.14.0-570.51.1.sl9_6^1.x86_64 (localhost.localdomain) 	10/30/2025 	_x86_64_	(4 CPU)
      
      10:11:56 AM     CPU     %user     %nice   %system   %iowait    %steal     %idle
      10:11:57 AM     all      0.00      0.00      0.00      0.00      0.50     99.50
      10:11:58 AM     all      0.00      0.00      0.25      0.00      0.25     99.50
      10:11:59 AM     all      0.00      0.00      0.00      0.00      0.50     99.50
      Average:        all      0.00      0.00      0.08      0.00      0.42     99.50
      

      Отображает детальную статистику CPU: %user, %system, %idle, %iowait и др.

  2. load.average — средняя нагрузка.

    • Способ 1:

      uptime
      

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

      10:19:48 up 13 days,  2:19,  1 user,  load average: 0.03, 0.07, 0.03
      

      В конце строки выводятся три значения: средняя нагрузка за 1, 5 и 15 минут.

    • Способ 2:

      top
      

      Строка load average отображается в верхней части интерфейса (см. раздел «Использование команды top»).

    • Способ 3:

      cat /proc/loadavg
      

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

      0.00 0.02 0.01 1/178 92582
      

      Формат: 1min 5min 15min running_threads/total_threads last_pid

  3. memory.usage — использование оперативной памяти.

    • Способ 1:

      free -m
      

      Где:

      • Отображает объемы total, used, free, available в МБ (см. раздел «Использование команды free»).

      • Столбец available — наиболее релевантный для оценки реального свободного объема.

    • Способ 2:

      vmstat -s
      

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

            3727000 K total memory
             510616 K used memory
             206496 K active memory
             225108 K inactive memory
            3051188 K free memory
               2708 K buffer memory
             425428 K swap cache
            1679356 K total swap
                  0 K used swap
            1679356 K free swap
             406447 non-nice user cpu ticks
              12005 nice user cpu ticks
             522457 system cpu ticks
          448717152 idle cpu ticks
              37328 IO-wait cpu ticks
             634120 IRQ cpu ticks
            1226295 softirq cpu ticks
            3931297 stolen cpu ticks
             346836 pages paged in
             897549 pages paged out
                  0 pages swapped in
                  0 pages swapped out
          100305412 interrupts
           95117433 CPU context switches
         1760702416 boot time
              92706 forks
      

      Показывает детализированную статистику по памяти (единица измерения – КБ).

    • Способ 3:

      cat /proc/meminfo
      

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

      MemTotal:        3727000 kB
      MemFree:         3050180 kB
      MemAvailable:    3215376 kB
      Buffers:            2708 kB
      Cached:           363016 kB
      SwapCached:            0 kB
      Active:           206392 kB
      Inactive:         225108 kB
      Active(anon):      89408 kB
      Inactive(anon):        0 kB
      Active(file):     116984 kB
      Inactive(file):   225108 kB
      Unevictable:        3072 kB
      Mlocked:               0 kB
      SwapTotal:       1679356 kB
      SwapFree:        1679356 kB
      Zswap:                 0 kB
      Zswapped:              0 kB
      Dirty:                 0 kB
      Writeback:             0 kB
      AnonPages:         67900 kB
      Mapped:            57372 kB
      Shmem:             23632 kB
      KReclaimable:      62412 kB
      Slab:             123548 kB
      SReclaimable:      62412 kB
      SUnreclaim:        61136 kB
      KernelStack:        3840 kB
      PageTables:         1904 kB
      SecPageTables:         0 kB
      NFS_Unstable:          0 kB
      Bounce:                0 kB
      WritebackTmp:          0 kB
      CommitLimit:     3542856 kB
      Committed_AS:     320912 kB
      VmallocTotal:   34359738367 kB
      VmallocUsed:       15484 kB
      VmallocChunk:          0 kB
      Percpu:            26368 kB
      HardwareCorrupted:     0 kB
      AnonHugePages:     14336 kB
      ShmemHugePages:        0 kB
      ShmemPmdMapped:        0 kB
      FileHugePages:         0 kB
      FilePmdMapped:         0 kB
      CmaTotal:              0 kB
      CmaFree:               0 kB
      Unaccepted:            0 kB
      HugePages_Total:       0
      HugePages_Free:        0
      HugePages_Rsvd:        0
      HugePages_Surp:        0
      Hugepagesize:       2048 kB
      Hugetlb:               0 kB
      DirectMap4k:      118640 kB
      DirectMap2M:     4075520 kB
      

      Содержит полную информацию о состоянии памяти, включая кеши и буферы.

  4. swap.usage — использование подкачки.

    • Способ 1:

      free -m
      

      Раздел Swap показывает total, used, free (см. раздел «Использование команды free»).

    • Способ 2:

      swapon --show
      

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

      NAME      TYPE      SIZE USED PRIO
      /dev/dm-1 partition 1.6G   0B   -2
      

      Отображает активные swap-устройства и их размеры.

    • Способ 3:

      cat /proc/swaps
      

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

      Filename				Type		Size		Used	Priority
      /dev/dm-1                               partition	1679356		0	-2
      

      Список всех swap-разделов/файлов с указанием используемого объема.

Дисковая подсистема и сеть#

Название

Описание

Размерность

Основные атрибуты

disk.io.throughput

Скорость передачи данных при операциях чтения и записи на диск

Байт/сек

- device: имя блочного устройства (например, sda, nvme0n1) (строка)
- read_bytes: объем прочитанных данных (целое число)
- write_bytes: объем записанных данных (целое число)

disk.utilization

Процент времени, в течение которого устройство было занято операциями I/O

Процент (%)

- device: имя устройства (строка)
- util_pct: процент загрузки (число с плавающей точкой)
- await: среднее время обслуживания запроса, мс (число с плавающей точкой)

network.throughput

Скорость передачи и приема данных по сетевому интерфейсу

Байт/сек

- interface: имя сетевого интерфейса (например, eth0, ens3) (строка)
- rx_bytes: полученные байты (целое число)
- tx_bytes: переданные байты (целое число)
- errors: количество ошибок (целое число)

network.packet.rate

Количество сетевых пакетов, обрабатываемых интерфейсом в секунду

Пакеты/сек

- interface: имя интерфейса (строка)
- rx_packets: полученные пакеты (целое число)
- tx_packets: переданные пакеты (целое число)
- dropped: отброшенные пакеты (целое число)

Ниже приведены команды и инструменты для получения значений каждой из основных метрик мониторинга системы:

  1. disk.io.throughput — пропускная способность диска.

    sudo dnf install -y sysstat
    iostat -x 2 3
    

    Где:

    • Столбцы r/s, w/s — операции чтения/записи в секунду.

    • Столбцы rkB/s, wkB/s — объем данных (в КБ в секунду).

  2. disk.utilization — загрузка диска.

    iostat -x 1 3
    

    Где:

    • Столбец %util — процент времени, в течение которого устройство было занято.

    • Столбец await — среднее время ожидания завершения операции (в миллисекундах).

    Важно

    Значение %util > 70–80% может указывать на узкое место ввода-вывода.

  3. network.throughput — сетевая пропускная способность.

    • Способ 1:

      sar -n DEV 1 3
      

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

      11:20:46 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
      11:20:47 AM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
      11:20:47 AM    enp3s0      4.00      1.00      0.24      0.19      0.00      0.00      0.00      0.00
      

      Столбцы rxkB/s и txkB/s — полученные и переданные КБ в секунду.

    • Способ 2:

      cat /proc/net/dev
      

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

      Inter-|   Receive                                                |  Transmit
       face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
          lo:     720      12    0    0    0     0          0         0      720      12    0    0    0     0       0          0
      enp3s0: 360377161 4972154    0 2053    0     0          0         0  4845003   38445    0    0    0     0       0          0
      

      Показывает накопленные счетчики байтов и пакетов по интерфейсам.

    • Способ 3:

      nstat -z
      

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

      #kernel
      IpInReceives                    601598             0.0
      IpInHdrErrors                   0                  0.0
      IpInAddrErrors                  5                  0.0
      IpForwDatagrams                 0                  0.0
      IpInUnknownProtos               0                  0.0
      IpInDiscards                    0                  0.0
      IpInDelivers                    39617              0.0
      IpOutRequests                   23714              0.0
      ...
      

      Отображает расширенные сетевые счетчики ядра.

  4. network.packet.rate — скорость обработки пакетов.

    sar -n DEV 1 3
    

    Где:

    • Столбцы rxpck/s и txpck/s — полученные и переданные пакеты в секунду.

    • Столбцы rxdrop/s, txdrop/s — отброшенные пакеты.

Просмотр системных процессов#

Использование команды ps#

Команда ps позволяет отображать информацию о запущенных процессах, а также создает статический список, то есть снимок состояния (snapshot), который покажет, что именно происходит при выполнении команды. Если нужен постоянно обновляемый список запущенных процессов, используйте команду top.

Чтобы вывести список всех процессов, которые в настоящее время запущены в системе, включая процессы, принадлежащие другим пользователям, используйте команду:

ps ax

Для каждого перечисленного процесса команда ps ax отображает:

  • идентификатор процесса (PID);

  • связанный с ним терминал (TTY);

  • текущее состояние (STAT);

  • накопленное процессорное время (TIME);

  • имя исполняемого файла (COMMAND).

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

PID TTY      STAT   TIME COMMAND
  1 ?        Ss     3:09 /usr/lib/systemd/systemd --switched-root --system -
  2 ?        S      0:25 [kthreadd]
  3 ?        S      0:00 [pool_workqueue_]
  4 ?        I<     0:00 [kworker/R-rcu_g]
  5 ?        I<     0:00 [kworker/R-sync_]
  6 ?        I<     0:00 [kworker/R-slub_]
  7 ?        I<     0:00 [kworker/R-netns]
[output truncated]

Чтобы отобразить владельца рядом с каждым процессом, используйте следующий вариант команды:

ps aux

Помимо информации, предоставляемой командой ps ax, ps aux отображает:

  • действительное имя пользователя владельца процесса (USER);

  • процент использования процессора (%CPU);

  • процент использования памяти (%MEM);

  • размер виртуальной памяти в КБ (VSZ);

  • объем физической памяти без замены в КБ (RSS);

  • время или дату запуска процесса.

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

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.3  53128  2988 ?        Ss   13:28   0:02 /usr/lib/systemd/systemd --system --deserialize 20
root         2  0.0  0.0      0     0 ?        S    13:28   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    13:28   0:00 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S    13:28   0:00 [kworker/u:0]
root         6  0.0  0.0      0     0 ?        S    13:28   0:00 [migration/0]
[output truncated]

Также можно использовать команду ps в сочетании с grep, чтобы увидеть, запущен ли конкретный процесс.

Например, чтобы определить, работает ли emacs, введите:

ps ax | grep emacs

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

92961 pts/0    R+     0:00 grep --color=auto emacs

Использование команды top#

Команда top отображает список процессов, выполняемых в системе в режиме реального времени. Она также выводит дополнительную информацию о времени безотказной работы системы, текущем использовании процессора и памяти или общем количестве запущенных процессов и позволяет выполнять такие действия, как сортировка списка или уничтожение процесса.

Чтобы использовать команду top, введите ее в командной строке:

top

Для каждого перечисленного процесса команда top отображает:

  • идентификатор процесса (PID);

  • эффективное имя пользователя владельца процесса (USER);

  • приоритет (PR);

  • значение nice (NI);

  • объем виртуальной памяти, которую использует процесс (VIRT);

  • объем используемой процессом физической памяти без обмена (RES);

  • объем общей памяти, используемой в процессе (SHR);

  • процент использования процессора (%CPU);

  • процент использования памяти (%MEM);

  • накопленное процессорное время (TIME+);

  • имя исполняемого файла (COMMAND).

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

top - 19:22:08 up  5:53,  3 users,  load average: 1.08, 1.03, 0.82
Tasks: 117 total,   2 running, 115 sleeping,   0 stopped,   0 zombie
Cpu(s):  9.3%us,  1.3%sy,  0.0%ni, 85.1%id,  0.0%wa,  1.7%hi,  0.0%si,  2.6%st
Mem:    761956k total,   617256k used,   144700k free,    24356k buffers
Swap:  1540092k total,    55780k used,  1484312k free,   256408k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  510 john      20   0 1435m  99m  18m S  9.0 13.3   3:30.52 gnome-shell
32686 root      20   0  156m  27m 3628 R  2.0  3.7   0:48.69 Xorg
 2625 john      20   0  488m  27m  14m S  0.3  3.7   0:00.70 emacs
    1 root      20   0 53128 2640 1152 S  0.0  0.3   0:02.83 systemd
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.01 kthreadd
    3 root      20   0     0    0    0 S  0.0  0.0   0:00.18 ksoftirqd/0
    5 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kworker/u:0
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    7 root      RT   0     0    0    0 S  0.0  0.0   0:00.30 watchdog/0
    8 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 cpuset
    9 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 khelper
   10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kdevtmpfs
   11 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 netns
   12 root      20   0     0    0    0 S  0.0  0.0   0:00.11 sync_supers
   13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 bdi-default
   14 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 kintegrityd
   15 root       0 -20     0    0    0 S  0.0  0.0   0:00.00 kblockd

Инструменты системного мониторинга содержат полезные интерактивные команды, которые можно использовать с командой top.

Просмотр памяти#

Использование команды free#

Команда free позволяет отображать объем свободной и использованной памяти в системе.

free предоставляет информацию как о физической памяти (mem), так и о пространстве подкачки (swap). Отображает общий объем памяти (total), а также объем используемой (used), свободной (free), общей (shared), в буферах ядра (buffers) и кешированной (cached) памяти. Например:

free

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

               total        used        free      shared  buff/cache   available
Mem:         3727000      511000     3050708       23632      428232     3216000
Swap:        1679356           0     1679356

По умолчанию команда free отображает значения в КБ. Чтобы отобразить значения в МБ, используйте опцию -m:

free -m

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

               total        used        free      shared  buff/cache   available
Mem:            3639         499        2978          23         418        3140
Swap:           1639           0        1639

Просмотр блочных устройств и файловых систем#

Использование команды lsblk#

Команда lsblk отображает список доступных блочных устройств. Для этого введите ее в командной строке:

lsblk

Для каждого перечисленного блочного устройства команда lsblk отображает:

  • имя устройства (NAME);

  • основной и второстепенный номер устройства (MAJ:MIN);

  • съемное ли устройство (RM);

  • его размер (SIZE);

  • его доступность только для чтения (RO);

  • тип устройства (TYPE);

  • точку монтирования (MOUNTPOINT).

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

NAME               MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                  8:0    0   16G  0 disk 
├─sda1               8:1    0    1G  0 part /boot
└─sda2               8:2    0   15G  0 part 
  ├─sberlinux-root 253:0    0 13.4G  0 lvm  /
  └─sberlinux-swap 253:1    0  1.6G  0 lvm  [SWAP]
sdb                  8:16   0   16G  0 disk 
sdc                  8:32   0   16G  0 disk 
sr0                 11:0    1 11.7G  0 rom  

По умолчанию lsblk перечисляет блочные устройства в древовидном формате. Чтобы отобразить информацию в виде обычного списка, добавьте опцию -l:

lsblk -l

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

NAME           MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda              8:0    0   16G  0 disk 
sda1             8:1    0    1G  0 part /boot
sda2             8:2    0   15G  0 part 
sdb              8:16   0   16G  0 disk 
sdc              8:32   0   16G  0 disk 
sr0             11:0    1 11.7G  0 rom  
sberlinux-root 253:0    0 13.4G  0 lvm  /
sberlinux-swap 253:1    0  1.6G  0 lvm  [SWAP]

Использование команды blkid#

Команда blkid позволяет отображать информацию о доступных блочных устройствах. Для этого используйте ее в командной строке оболочки от имени пользователя с административными полномочиями (root):

blkid

Для каждого перечисленного блочного устройства команда blkid отображает доступные атрибуты: универсальный уникальный идентификатор (UUID), тип файловой системы (TYPE) или метка тома (LABEL). Например, для устройства /dev/vda1:

blkid /dev/vda1

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

/dev/vda1: UUID="<block_device_uuid>" TYPE="ext4"

По умолчанию blkid перечисляет все доступные блочные устройства. Чтобы отобразить информацию о конкретном устройстве, укажите его имя в командной строке:

blkid device_name

Например, чтобы отобразить информацию о /dev/vda1, введите:

blkid /dev/vda1

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

/dev/vda1: UUID="<block_device_uuid>" TYPE="ext4"

Также можно использовать вышеуказанную команду с опциями -p и -o udev, чтобы получить более подробную информацию. Обратите внимание, что для запуска этой команды необходимы права пользователя с административными полномочиями (root):

blkid -po udev device_name

Например, для устройства /dev/vda1:

blkid -po udev /dev/vda1

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

ID_FS_UUID=<block_device_uuid>
ID_FS_UUID_ENC=<encoded_block_device_uuid>
ID_FS_VERSION=1.0
ID_FS_TYPE=ext4
ID_FS_USAGE=filesystem
ID_PART_ENTRY_SCHEME=dos
ID_PART_ENTRY_TYPE=0x83
ID_PART_ENTRY_FLAGS=0x80
ID_PART_ENTRY_NUMBER=1
ID_PART_ENTRY_OFFSET=2048
ID_PART_ENTRY_SIZE=1024000
ID_PART_ENTRY_DISK=252:0

Использование команды partx#

Команда partx позволяет отображать список разделов диска для перечисления таблиц разделов конкретного диска. Выполните команду от имени пользователя с административными полномочиями (root) и опцией -s, за которой следует имя устройства:

partx -s device_name

Например, чтобы вывести список разделов на /dev/vda, введите:

partx -s /dev/vda

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

NR   START      END  SECTORS  SIZE NAME UUID
  1    2048  1026047  1024000  500M
  2 1026048 41943039 40916992 19.5G

Использование команды findmnt#

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

findmnt

Для каждой перечисленной файловой системы команда findmnt отображает:

  • целевую точку монтирования (TARGET);

  • исходное устройство (SOURCE);

  • тип файловой системы (FSTYPE);

  • соответствующие параметры монтирования (OPTIONS).

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

TARGET                       SOURCE     FSTYPE     OPTIONS
/                            /dev/mapper/sberlinux-root
│                                       xfs        rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,noquota
├─/proc                      proc       proc       rw,nosuid,nodev,noexec,relatime
│ └─/proc/sys/fs/binfmt_misc systemd-1  autofs     rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=16082
├─/sys                       sysfs      sysfs      rw,nosuid,nodev,noexec,relatime,seclabel
│ ├─/sys/kernel/security     securityfs securityfs rw,nosuid,nodev,noexec,relatime
│ ├─/sys/fs/cgroup           cgroup2    cgroup2    rw,nosuid,nodev,noexec,relatime,seclabel,nsdelegate,memory_recursiveprot
│ ├─/sys/fs/pstore           pstore     pstore     rw,nosuid,nodev,noexec,relatime,seclabel
│ ├─/sys/fs/bpf              bpf        bpf        rw,nosuid,nodev,noexec,relatime,mode=700
│ ├─/sys/fs/selinux          selinuxfs  selinuxfs  rw,nosuid,noexec,relatime
│ ├─/sys/kernel/debug        debugfs    debugfs    rw,nosuid,nodev,noexec,relatime,seclabel
│ ├─/sys/kernel/tracing      tracefs    tracefs    rw,nosuid,nodev,noexec,relatime,seclabel
│ ├─/sys/fs/fuse/connections fusectl    fusectl    rw,nosuid,nodev,noexec,relatime
│ └─/sys/kernel/config       configfs   configfs   rw,nosuid,nodev,noexec,relatime
├─/dev                       devtmpfs   devtmpfs   rw,nosuid,seclabel,size=4096k,nr_inodes=460093,mode=755,inode64
│ ├─/dev/shm                 tmpfs      tmpfs      rw,nosuid,nodev,seclabel,inode64
│ ├─/dev/pts                 devpts     devpts     rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000
│ ├─/dev/mqueue              mqueue     mqueue     rw,nosuid,nodev,noexec,relatime,seclabel
│ └─/dev/hugepages           hugetlbfs  hugetlbfs  rw,relatime,seclabel,pagesize=2M
├─/run                       tmpfs      tmpfs      rw,nosuid,nodev,seclabel,size=745400k,nr_inodes=819200,mode=755,inode64
│ ├─/run/credentials/systemd-sysctl.service
│ │                          none       ramfs      ro,nosuid,nodev,noexec,relatime,seclabel,mode=700
│ ├─/run/credentials/systemd-tmpfiles-setup-dev.service
│ │                          none       ramfs      ro,nosuid,nodev,noexec,relatime,seclabel,mode=700
│ ├─/run/credentials/systemd-tmpfiles-setup.service
│ │                          none       ramfs      ro,nosuid,nodev,noexec,relatime,seclabel,mode=700
│ └─/run/user/1000           tmpfs      tmpfs      rw,nosuid,nodev,relatime,seclabel,size=372700k,nr_inodes=93175,mode=700,uid=10
└─/boot                      /dev/sda1  xfs        rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,noquota

По умолчанию findmnt перечисляет файловые системы в древовидном формате. Чтобы отобразить информацию в виде обычного списка, добавьте опцию -l:

findmnt -l

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

TARGET                   SOURCE     FSTYPE     OPTIONS
/proc                    proc       proc       rw,nosuid,nodev,noexec,relatime
/sys                     sysfs      sysfs      rw,nosuid,nodev,noexec,relatime,seclabel
/dev                     devtmpfs   devtmpfs   rw,nosuid,seclabel,size=4096k,nr_inodes=460093,mode=755,inode64
/sys/kernel/security     securityfs securityfs rw,nosuid,nodev,noexec,relatime
/dev/shm                 tmpfs      tmpfs      rw,nosuid,nodev,seclabel,inode64
/dev/pts                 devpts     devpts     rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000
/run                     tmpfs      tmpfs      rw,nosuid,nodev,seclabel,size=745400k,nr_inodes=819200,mode=755,inode64
/sys/fs/cgroup           cgroup2    cgroup2    rw,nosuid,nodev,noexec,relatime,seclabel,nsdelegate,memory_recursiveprot
/sys/fs/pstore           pstore     pstore     rw,nosuid,nodev,noexec,relatime,seclabel
/sys/fs/bpf              bpf        bpf        rw,nosuid,nodev,noexec,relatime,mode=700
/                        /dev/mapper/sberlinux-root
[output truncated]

Также можно вывести список файловых систем определенного типа. Для этого добавьте опцию -t и тип файловой системы:

findmnt -t <type>

Пример команды для файловой системы ext4:

findmnt -t ext4

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

TARGET                     SOURCE     FSTYPE   OPTIONS
/proc                      proc       proc     rw,nosuid,nodev,noexec,relatime
/sys                       sysfs      sysfs    rw,nosuid,nodev,noexec,relatime,s
/dev                       devtmpfs   devtmpfs rw,nosuid,seclabel,size=370080k,n
/dev/pts                   devpts     devpts   rw,nosuid,noexec,relatime,seclabe
/dev/shm                   tmpfs      tmpfs    rw,nosuid,nodev,seclabel
/run                       tmpfs      tmpfs    rw,nosuid,nodev,seclabel,mode=755
/                          /dev/mapper/vg_sbcos-lv_root
                                      ext4     rw,relatime,seclabel,data=ordered
/sys/kernel/security       securityfs security rw,nosuid,nodev,noexec,relatime
/sys/fs/selinux            selinuxfs  selinuxf rw,relatime
/sys/fs/cgroup             tmpfs      tmpfs    rw,nosuid,nodev,noexec,seclabel,m
/sys/fs/cgroup/systemd     cgroup     cgroup   rw,nosuid,nodev,noexec,relatime,r
[output truncated]

Использование команды df#

Команда df позволяет отображать подробный отчет об использовании дискового пространства системы:

df

Для каждой перечисленной файловой системы команда df отображает:

  • ее имя (Filesystem);

  • размер (1K-blocks или Size);

  • используемое место (Used);

  • доступное место (Available);

  • процент использования пространства (Use %);

  • место монтирования (Mounted).

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

Filesystem                 1K-blocks    Used Available Use% Mounted on
devtmpfs                        4096       0      4096   0% /dev
tmpfs                        1863500       0   1863500   0% /dev/shm
tmpfs                         745400   20556    724844   3% /run
/dev/mapper/sberlinux-root  13979648 2084216  11895432  15% /
/dev/sda1                     983040  335252    647788  35% /boot
tmpfs                         372700       0    372700   0% /run/user/1000

По умолчанию команда df показывает размер раздела в блоках объемом 1 КБ и объем используемого и доступного дискового пространства в КБ. Чтобы просмотреть информацию в удобочитаемом формате (в МБ и ГБ), используйте опцию -h:

df -h

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

Filesystem                  Size  Used Avail Use% Mounted on
devtmpfs                    4.0M     0  4.0M   0% /dev
tmpfs                       1.8G     0  1.8G   0% /dev/shm
tmpfs                       728M   21M  708M   3% /run
/dev/mapper/sberlinux-root   14G  2.0G   12G  15% /
/dev/sda1                   960M  328M  633M  35% /boot
tmpfs                       364M     0  364M   0% /run/user/1000

Примечание

Запись /dev/shm представляет собой систему виртуальной памяти файловой системы, где /sys/fs/cgroup - файловая система Cgroup, а /run содержит информацию о запущенной системе.

Использование команды du#

Команда du позволяет отображать объем пространства, используемого файлами в каталоге. Чтобы отобразить использование диска для каждого из подкаталогов в текущем рабочем каталоге, выполните команду без дополнительных опций:

du

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

8       ./.gconf/apps/gnome-terminal/profiles/Default
12      ./.gconf/apps/gnome-terminal/profiles
16      ./.gconf/apps/gnome-terminal
[output truncated]
460     ./.gimp-2.6
68828   .

По умолчанию команда du отображает использование диска в КБ. Чтобы просмотреть информацию в МБ и ГБ, используйте опцию -h, которая позволяет отображать значения в удобном для чтения формате:

du -h

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

8.0K    ./.gconf/apps/gnome-terminal/profiles/Default
12K     ./.gconf/apps/gnome-terminal/profiles
16K     ./.gconf/apps/gnome-terminal
[output truncated]
460K    ./.gimp-2.6
68M     .

В конце списка команда du всегда показывает общее использование диска для текущего каталога. Чтобы отобразить только эту информацию, используйте опцию -s, например, в сочетании с вышеописанной -h:

du -sh

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

68M     .

Просмотр информации об оборудовании#

Использование команды lspci#

Команда lspci перечисляет все устройства PCI, присутствующие в системе. Для использования команды введите:

lspci

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

00:00.0 Host bridge: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller
00:01.0 VGA compatible controller: Red Hat, Inc. Virtio 1.0 GPU (rev 01)
00:02.0 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:02.1 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
00:02.2 PCI bridge: Red Hat, Inc. QEMU PCIe Root port
[output truncated]

Используйте опцию -v для более подробного вывода и -vv - для отображения полной информации:

lspci -v|-vv

Например, чтобы определить производителя, модель и размер памяти видеокарты системы, введите:

lspci -v

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

[output truncated]

01:00.0 VGA compatible controller: nVidia Corporation G84 [Quadro FX 370] (rev a1) (prog-if 00 [VGA controller])
        Subsystem: nVidia Corporation Device 0491
        Physical Slot: 2
        Flags: bus master, fast devsel, latency 0, IRQ 16
        Memory at f2000000 (32-bit, non-prefetchable) [size=16M]
        Memory at e0000000 (64-bit, prefetchable) [size=256M]
        Memory at f0000000 (64-bit, non-prefetchable) [size=32M]
        I/O ports at 1100 [size=128]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: <access denied>
        Kernel driver in use: nouveau
        Kernel modules: nouveau, nvidiafb

[output truncated]

Использование команды lsusb#

Команда lsusb позволяет отображать информацию о USB-шинах и подключенных к ним устройствах. Чтобы перечислить все USB-устройства, которые находятся в системе, введите:

lsusb

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

Bus 001 Device 001: ID <vendor_id_1>:<product_id_1> Linux Foundation 2.0 root hub
Bus 002 Device 001: ID <vendor_id_1>:<product_id_1> Linux Foundation 2.0 root hub
[output truncated]
Bus 001 Device 002: ID <vendor_id_2>:<product_id_2> Realtek Semiconductor Corp. Mass Storage Device (Multicard Reader)
Bus 008 Device 002: ID <vendor_id_3>:<product_id_3> Hewlett-Packard Logitech M-UAL-96 Mouse
Bus 008 Device 003: ID <vendor_id_4>:<product_id_4> IBM Corp.

Используйте опцию -v для более подробного вывода:

lsusb -v

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

[output truncated]

Bus 008 Device 002: ID <vendor_id_3>:<product_id_3> Hewlett-Packard Logitech M-UAL-96 Mouse
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           <vendor_id_3> Hewlett-Packard
  idProduct          <product_id_3> Logitech M-UAL-96 Mouse
  bcdDevice           31.00
  iManufacturer           1
  iProduct                2
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
[output truncated]

Использование команды lspcmcia#

Команда lspcmcia позволяет перечислить все устройства PCMCIA в системе. Для этого введите команду в командной строке:

lspcmcia

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

Socket 0 Bridge:        [yenta_cardbus]         (bus ID: <pci_bus_id>)

Используйте опцию -v для более подробного вывода:

lspcmcia -v|-vv

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

Socket 0 Bridge:        [yenta_cardbus]         (bus ID: <pci_bus_id>)
        Configuration:  state: on       ready: unknown

Использование команды lscpu#

Команда lscpu позволяет перечислить информацию о процессорах, присутствующих в системе, включая количество процессоров, их архитектуру, поставщика, семейство, модель, кеш, ЦП и т.д. Для использования команды введите:

lscpu

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

Architecture:                x86_64
  CPU op-mode(s):            32-bit, 64-bit
  Address sizes:             45 bits physical, 48 bits virtual
  Byte Order:                Little Endian
CPU(s):                      4
  On-line CPU(s) list:       0-3
Vendor ID:                   GenuineIntel
  Model name:                Intel Xeon E312xx (Sandy Bridge)
    CPU family:              6
    Model:                   42
    Thread(s) per core:      1
    Core(s) per socket:      4
    Socket(s):               1
    Stepping:                1
    BogoMIPS:                5985.94
    Flags:                   fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtsc
                             p lm constant_tsc rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic popcnt t
                             sc_deadline_timer aes xsave avx hypervisor lahf_lm cpuid_fault pti xsaveopt arat
Virtualization features:     
  Hypervisor vendor:         KVM
  Virtualization type:       full
Caches (sum of all):         
  L1d:                       128 KiB (4 instances)
  L1i:                       128 KiB (4 instances)
  L2:                        16 MiB (4 instances)
  L3:                        16 MiB (1 instance)
NUMA:                        
  NUMA node(s):              1
  NUMA node0 CPU(s):         0-3
[output truncated]