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

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

 

 

 

Вот небольшой список утилит, позволяющих получить полезную информацию о вашей системе вмсете с некотрыми их параметрами (Более подробное описание всегда можно получить программой man):

top - информация об активности процессов. Принимает интерактивные команды:

  • 1 - Отобразить всю статистику по всем ядрам.
  • c -  Абсолютный путь расположения модуля команды и её аргументы.
  • h - Вывести справку о программе.
  • k - Уничтожить процесс. Программа запрашивает у вас код процесса и сигнал, который будет ему послан.
  • M - Сортировать по объёму используемой памяти.
  • n - Изменить число отображаемых процессов. Вам предлагается ввести число.
  • P - Сортировать по загрузке процессора.
  • r - Изменить приоритет процесса.
  • u - Сортировать по имени пользователя.
  • Z - Выбрать цвет подсветки.
  • z - Подсветить работающие процессы.
  • [Пробел] - Немедленно обновить содержимое экрана.
  • q - выход

vmstat - активность системы, информация о системе и аппаратных ресурсах

  • -a, --active - Показывает информацию о активной и не активной памяти. Работает в ядре 2.5.41 или более новом.
  • -f, --forks - Отображает количество вызовов fork() с момента загрузки.
  • -m, --slabs - Отображает /proc/slabinfo - сводную таблицу использования блоков памяти ядра.
  • -n, --one-header - Отображать заголовок только один раз
  • -s, --stats - Отображает таблицу разных событий и статистику памяти. Информация не обновляется.
  • -d, --disk - Информация о дисках.
  • -D, --disk-sum - Суммарная статистика дисковой активности.
  • -p, --partition device - Подробная информация о разделах.
  • -S, --unit character - Изменяет формат вывода 1000 (k), 1024 (K), 1000000 (m), or 1048576 (M) байт.
  • -t, --timestamp - добавляет отметку времени в каждую строку.
  • -w, --wide - Вывод информации в формате более 80 символов в строке. Будет поолезно если у вас "плывут" столбцы в таблице.

w - определяем, кто зарегистрирован и что они делают

  • -h, --no-header -Не выводить заголовок.
  • -u, --no-current - игнорировать имя пользователя при определении текущего процесса и процессорного времени. Отличия от w заметны при использовании sudo.
  • -s, --short - Использовать короткий формат (не отображать время входа в систему и JCPU or PCPU times).
  • -f, --from - Отображать (или не отображать, если оно отображается по умолчанию) колонку from.
  • -i, --ip-addr - Показывать IP адрес вместо исмени хоста в столбце from.
  • -o, --old-style - Использовать старый стиль вывода.

date - узнать текущую дату (так же можно установить дату с помощью этой комманды)

  • -d, --date=СТРОКА - Вывести не текущее время/дату, а время/дату, описанное строкой.
  • -f, --file=ФАЙЛ - то же, что date -d для каждой строки файла.
  • -r, --reference=ФАЙЛ - вывести не текущее время/дату, а время/дату последнего изменения файла.
  • -R, --rfc-2822 - вывести дату в формате RFC-2822. То же, что date '+%a, %d %b %Y %T %z' (например «Sun, 06 Dec 2009 15:33:24 +0300»).
  • --rfc-3339=СТРОКА - вывести дату в формате RFC-3339; строка может быть «date», «seconds» или «ns», То есть:
  • -s, --set=СТРОКА - установить время/дату, описанное строкой.
  • -u, --utc, --universal - время выводится или устанавливается в UTC.

uptime - сообщает, как долго работает система, степень загруженности

  • -p, --pretty - показать время непрерывной работы в человекопонятном формате.

uname - сообщает тип операционной системы

  • Без параметров, покажет базовое имя системы.
  • -s – показывает название ядра системы
  • -r – имя релиза ядра системы
  • -v – имя версии, а также дату компиляции ядра
  • -o – операционную систему
  • -p – тип процессора
  • -m тип оборудования (i386, i686, Alpha)
  • -a – всю информацию сразу

ps - список процессов

  • -A - все процессы;
  • -a - связанные с конкретным терминалом, кроме главных системных процессов сеанса, часто используемая опция;
  • -N - отрицание выбора;
  • -d - все процессы, кроме главных системных процессов сеанса;
  • -e - все процессы;
  • -f - расширение информации
  • T - все процессы на конкретном терминале;
  • a - процессы, связанные с текущим терминалом, а также процессы других пользователей;
  • r - информация только о работающих процессах;
  • x - процессы, отсоединённые от терминала.
  • -с - отображать информацию планировщика;
  • -f - вывести максимум доступных данных, например, количество потоков;
  • -j, (j) - вывести процессы в стиле Jobs, минимум информации;
  • -M, (Z) - добавить информацию о безопасности;
  • -o, (o) - позволяет определить свой формат вывода;
  • -sort, (k) - выполнять сортировку по указанной колонке;
  • -L, (H) - отображать потоки процессов в колонках LWP и NLWP;
  • -m, (m) - вывести потоки после процесса;
  • -V, (V) - вывести информацию о версии;
  • -H - отображать дерево процессов linux;

free - использование памяти

  • -b, --bytes - Отображать объём памяти в байтах.
  • -k, --kilo - Отображать объём памяти в килобайтах (Установлено по умолчанию).
  • -m, --mega- Отображать объём памяти в мегабайтах.
  • -g, --giga- Отображать объём памяти в гигабайтах.
  • --tera - Отображать объём памяти в терабайтах.
  • -h, --human - Показывать данные в человекопонятном формате.
  • -w, --wide -Переключитесь в широкоформатный режим (более 80 символов в строке). В этом режиме буферы и кэш выводятся в двух отдельных столбцах.
  • -c, --count count - Отображение времени подсчета результатов. Требует параметр-s
  • -l, --lohi - Показать подробную статистику нижней и верхней памяти. В совресменных x64 системах не очень актуально.
  • --si  - использовать 1000 not 1024 в качестве разрядов (для определения кило-, мега- и т.д.)
  • -t, --total - Показать строку с итоговыми значениями столбцов.

iostat - средняя загрузка процессора, активность дисков

  • -c - Показать отчёт об использовании процессора.
  • -d - Показать отчёт об использовании устройств.
  • -g group_name { device [...] | ALL } - Отображение статистики для группы устройств. Отображается статистика для каждого отдельного устройства в списке, а затем строка общей статистики для группы, отображаемой как имя_группы и состоящей из всех устройств в списке. Ключевое слово all означает, что все блочные устройства, определенные системой, должны быть включены в группу.
  • -h - Вывести отчёт в человекопонятной форме.
  • -j { ID | LABEL | PATH | UUID | ... } [ device [...] | ALL ] - Отображение постоянных имён устройств. В опциях ID | LABEL | PATH | UUID | ... указывается тип нужного имени. Можно задавать любое значение параметров, если каталог с этими именами присутствует в /dev/disk. При необходимости можно указать несколько устройств.
  • -k - Отображать статистику в килобайтах в секунду.
  • -m- Отображать статистику в мегабайтах в секунду.
  • -N - отображает зарегестрировакнные в списке имён устройства, для любых устройст поддерживающих списки. Например полезно для просмотра статистики LVM2.
  • -p [ { device [,...] | ALL } ] - Параметр-p отображает статистику для блочных устройств и их разделов, которые используются системой. Если введено имя устройства, то отображается статистика по нему и всем его разделам. Последнее ключевое слово all указывает на необходимость отображения статистики для всех блочных устройств и разделов, определенных системой, включая те, которые никогда не использовались.
  • -T - Эта опция используется с опцией-G и указывает, что должна отображаться только общая статистика, а не статистика для отдельных устройств в группе.
  • -t - Печать времени для каждого отображаемого отчета. Формат метки времени может зависеть от значения переменной среды S_TIME_FORMAT
  • -x - отображение расширеной статистики.
  • -z - Не выводить выходные данные для любых устройств, для которых не было активности в течение периода выборки.

sar - сбор и выдача данных о системной активности (у этой комманды огромное количество возможных параметров, многие из указанных тут параметров нуждаются в расшифровке, так, что смотрите man)

  • -A - Эквивалентно параметру -bBdHqrRSuvwWy -I SUM -I XALL -m ALL -n ALL -u ALL -P ALL.
  • -B - Статистика подкачки.
  • -b - Статистика ввода-вывода.
  • -C - При чтении данных из файла отображать имеющиеся там комментарии.
  • -d - Отчеты об активности блочных устройств.
  • -e [ hh:mm:ss ] - Задать время окончания отчета. По умолчанию-18:00:00. Время должно быть в 24-часовом формате. Этот параметр можно использовать, когда данные считываются из файла или записываются в файл (опции-f или-o ).
  • -f [ filename ] - Извлечение записей с именем filename. Значение по умолчанию параметра filename-текущий ежедневный файл данных - /var/log/SA/Sadd. Параметр-f не включает параметр -o.
  • -H - Статистика использования страниц памяти.
  • -I { int [,...] | SUM | ALL | XALL } - Вывести статистику по прерыванию int (номер прерывания). Указание нескольких -I int в строкевыдаст статистику нескольких прерываний. Ключевое слово sum указывает, что должно отображаться общее количество полученных прерываний в секунду. All указывает на то, что должна отображаться статистика из первых 16 прерываний.
  • -i interval - Выбрать записи данных в секундах как можно ближе ко времени, указанному параметром интервала
  • -j { ID | LABEL | PATH | UUID | ... } - Отображение постоянных имён устройств. В опциях ID | LABEL | PATH | UUID | ... указывается тип нужного имени. Можно задавать любое значение параметров, если каталог с этими именами присутствует в /dev/disk.
  • -m { keyword [,...] | ALL } - Отчёт со статистикой управления питанием. Эта статистика зависит от параметра садк "-S POWER"
  • -n { keyword [,...] | ALL } - Сетевая статистика
  • -o [ filename ] - Сохраните данные в файле в двоичном формате. Каждое значение в отдельной записи. Значение filename по умолчанию -  /var/log/SA/Sadd. -o  работает только с -f.
  • -P { cpu [,...] | ALL } - Отчет статистики каждого ядра для указанного процессора или процессоров. ALL выводит статистику для каждого отдельного процессора и общую для всех процессоров.
  • -p - Красивые названия устройств. Используется вместе с -d. По умолчанию имена печатаются как dev m-n, где m и n номер устройства. Сопоставления устройств определяются в /etc/sysconfig/sysstat.ioconf.
  • -q - Длинна очереди средняя загрузка.
  • -R - Статистика памяти.
  • -r - Отчёт об использовании памяти. 
  • -S - Отчёт об использовании подкачки.
  • -s [ hh:mm:ss ] - Время начала выборки данных. Время запуска по умолчанию-08:00:00. Время должно быть указано в 24-часовом формате. Этот параметр может использоваться только при считывании данных из файла (опция-f ).
  • -t - При чтении данных из ежедневного файла данных SAR будет отображать метки времени в исходном локальном времени создателя файла данных. По умолчанию метки отображаются во времени локального пользователя.
  • -u [ ALL ] - Отчёт об использовании ЦП. Ключевое слово all указывает, что должны отображаться все поля.
  • -v - Отчёт о состоянии  inode и других таблиц ядра.
  • -W - Статистика подкачки.
  • -w - Отчет о создании задачах и активности по переключению контекста.
  • -y - Отчёт об активности TTY устройств.

mpstat - использование мультипроцессора (подробную информацию о значении параметров ищите в man)

  • -A - эквивалентно -u -I ALL -P ALL
  • -I { SUM | CPU | SCPU | ALL } - Отобразает статистику прерываний (подр)
  • -P { cpu [,...] | ON | ALL } - cpu -  номер процессора, для которого должна представляться статистика. Процессор 0 является первым процессором. ON указывает, что данные представляются для всех работающих процессоров, All указывает на то, что  данные представляются для всех процессоров.
  • -u - Отчёт об использовании ЦП.

pmap - использование процессами оперативной памяти (pmap PID [-x|-d|...])

  • -x, --extended - Отображать данные в расширенном формате.
  • -d, --device - Показывать столбец device.
  • -q, --quiet - Скрывает некоторые строки в выводе.
  • -A, --range low,high - Ограничить вывод заданным диапазоном адресов. Начальное и конечное значение диапазонов задаются через запятую.
  • -X - Ещё подробнее чем -x.
  • -XX - показать все доступные детали.
  • -p, --show-path - Показать полный путь к файлам
  • -c, --read-rc - Прочитать конфигурацию по умолчанию
  • -C, --read-rc-from file - Прочитать конфигурацию из файла
  • -n, --create-rc - Создать новую конфигурацию по умолчанию
  • -N, --create-rc-to file - Создать новый файл с конфигурацией

df - информация о занятом месте на жестком диске

  • -a, --all - Включая виртуальные файловые системы
  • -B, --block-size=SIZE - Масштабирование по размеру перед печатью.
  • --direct - Показать статистику для файла вместо точки подключения
  • --total - Посчитать общую сумму
  • -h, --human-readable - Выводить размер в человекопонятном фрмате (1K 234M 2G и т.д.)
  • -H, --si - Истольовать основание 1000 вместо 1024
  • -i, --inodes -  вывести информацию об инодах вместо блоков.
  • -k - то же что и  --block-size=1K
  • -l, --local - Список лимитов для локальных файловых систем
  • --no-sync - не синхронизировать перед получением информации (включено по умолчанию)
  • --output[=FIELD_LIST] - Использовать формат вывода, определенный FIELD_LIST, или распечатать все поля, если параметра FIELD_LIST нет.
  • -P, --portability - Исрользовать формат вывода POSIX.
  • --sync - Синхронизировать перед получением сведений.
  • -t, --type=TYPE - Ограничить список файловых систем типом TYPE
  • -T, --print-type - Вывести тип файловой системы.
  • -x, --exclude-type=TYPE - Ограничить список файловых систем исключив тип TYPE

sensors - информация о температуре процессора (Используя без параметров можно получить сведения о температуре каждого ядра)

  • -c, --config-file config-file - Указать файл конфигурации. Чтобы временно отключить настройки по умолчанию можно использовать -c /dev/nul
  • -s, --set - Оценить все указанные в конфигурационном файле параметры. Доступно только для root.
  • -A, --no-adapter - Не показывать адаптер для каждого чипа.
  • -u - Показывать необработанные данные. Только в этом режиме видны необработанные имена, на которые необходимо ссылаться в конфигурационном файле.
  • -f, --fahrenheit - Показать температуру в градусаф фаренгейта (По умолчанию показывает в градусах цельсия).
  • --bus-list - Создавать операторы шины, подходящие для использования в sensors.conf. Такие операторы шины необходимы только в том случае, если у вас есть несколько микросхем с одинаковым адресом на разных шинах одного типа. Поскольку номера шины обычно не сохраняются после перезагрузки, эти инструкции позволяют ссылаться на каждую шину по имени, а не по номерам.

htop - улучшенная версия интерактивного просмотрщика процессов top. htop позволяет просматривать процессы в виде дерева процессов.

  • -d --delay=DELAY - Задержка между обновлениями, в десятых долях секунды.
  • -C --no-color --no-colour - Запуск htop в монохромном режиме.
  • -p --pid=PID,PID... - Показывать только указанные PID
  • -s --sort-key COLUMN Сортировать по этому столбцу (используйте --sort-key help для списка столбцов)
  • -u --user=USERNAME - Показывать только процессы пользователя USERNAME

hddtemp - информация о температуре жесткого диска

  • -b, --drivebase - Отображение файла базы данных, который позволяет hddtemp распознавать поддерживаемые диски.
  • -D, --debug - Отображения различных полей S.M.A.R.T. и их значения.
  • -d, --daemon - Запускает hddtemp в режиме демона TCP/IP (порт 7634 по умолчанию).
  • -f, --file=file - Истользовать файл базы данных file.
  • -l, --listen=addr - Слушать адрес (Pv4 или IPv6).
  • -n, --numeric - Выведит только температуру (без устройства).
  • -p, --port=# - Слушать порт (в режиме демона TCP/IP)
  • -s, --separator=char - Разделитель между полями (в протоколе TCP/IP в режиме демона). Разделитель по умолчанию `|'.
  • -S, --syslog=s -Переключатсяь в режим демона и регистрировать температуры в syslog каждые s секунд.
  • -q, --quiet - Не проверять, поддерживается ли диск.
  • -u, --unit=C|F - Выводить температуру либо в градусах Цельсия или Фаренгейта.
  • -w, --wake-up - Пробуждение диска при необходимости (только диски ATA).
  • -4 - Слушать только IPv4 сокеты.
  • -6 - Слушать только IPv6 сокеты.

strace- системные вызовы (это очень многофукциональный инструмент, но не совсем относящийся к теме статьи, так что упомяну только некоторые параметры)

  • -o trace_output.txt - перенаправить вывод в trace_output.txt.
  • -p PID - трассировать уже запущенное приложение с указанным PID.
  • -e trace= - создаёт фильтр выводимой информации, например trace=open,access выводит только записи open и access.
  • -f - не игнорировать дочерние процессы (по умолчанию они игнорируются).

lsof- перечисляет открытые файлы, сетевые соединения и еще многое.

  • -u - выводит список файлов, открытых конкретным пользователем.
  • -U - позволяет вывести все файлы сокетов домена Unix.
  • -c - позволяет вывести сведения о файлах, которые держат открытыми процессы, выполняющие команды, имена которых начинаются с заданных символов.
  • +d - позволяет выяснить, какие папки и файлы открыты в некоей директории (но не в её поддиректориях).
  • -d - позволяет задать список дескрипторов файлов, разделённых запятой, которые надо включить в вывод или исключить из него.
  • -p - позволяет вывести все файлы, открытые процессом с указанным при вызове команды PID.
  • -P - подавляет, для сетевых файлов, преобразование номеров портов в имена портов.
  • -i - позволяет вывести сведения о файлах, интернет-адреса которых соответствуют заданному адресу. Если при вызове команды не задавать адреса, эта опция позволяет вывести сведения обо всех интернет-сокетах и сетевых файлах.
  • -t - подавляет вывод всей информации за исключением ID процессов.

cat /Proc/... - различная статистика ядра. Вообще /Proc это виртуальная файловая система на которую отображаются различные переменные ядра и где их можно непосредственно посмотреть. Собственно многие программы мониторинга берут свои данные именно тут. Итак вкратце:

  • /proc/buddyinfo - В этом файле хранится информация о фрагментации памяти в ядре. Строка означает зону памяти, а номер количество доступных страниц определенного уровня.
  • /proc/cmdline - Параметры, которые были указанны в строке запуска ядра загрузчиком Grub.
  • /proc/config.gz - В этом архиве находится текущая конфигурация ядра.
  • /proc/consoles - В этом файле хранятся зарегистрированные в ядре символические устройства для системной консоли /dev/console.
  • /proc/cpuinfo - Здесь хранится очень подробная информация о процессоре. Вы можете посмотреть производителя, количество ядер, кеша, активные ядра, частоту, поддерживаемые расширения и многое другое.
  • /proc/crypto - Здесь перечислены все криптографические шифры, поддерживаемые ядром, а также дополнительная информация по каждому из них.
  • /proc/devices - Здесь отображаются различные блочные и символические устройства подключенные к системе. Кроме тех, для которых не загружены модули ядра.
  • /proc/diskstats - Статистика ввода и вывода на блочные устройства, в том числе и жесткие диски. Первые две цифры — номер устройства, дальше название. Четвертая цифра — количество удачных чтений с диска, количество объединенных чтений, секторов прочитано, время чтения в миллисекундах, удачные записи, объединенные записи, секторов записано,  время записи в миллисекундах, текущие операции ввода и вывода, текущее время работы и общее время операций ввода и вывода.
  • /proc/fb - В этом файле отображаются устройства фреймбуфера (экраны), а также используемые графические драйвера. Также здесь может быть указан драйвер Nvidia или catalyst если вы использовали проприетарный драйвер.
  • /proc/filesystems - Здесь содержится список файловых систем, которые на данный момент поддерживаются ядром. Файловая система специального назначения, не использующаяся для хранения данных на носителях помечается словом nodev.
  • /proc/interrupts - В этом файле содержаться все доступные прерывания.
  • /proc/iomem - В этом файле содержится текущая карта памяти для всех программ и ядра.
  • /proc/ioports - В этом файле содержаться все зарегистрированные диапазоны портов, а также устройства, которые их используют.
  • /proc/kallsyms - Здесь собраны все доступные функции и их адреса, которые могут быть использованы из модулей ядра.
  • /proc/kcore - Содержимое оперативной памяти представленное в одном файле. Размер файла равен объему ОЗУ плюс 4 килобайта. Для доступа к нему нужны права суперпользователя.  Открыть файл получится только скопировав предварительно его в другую папку.
  • /proc/kmsg - Хранит сообщения ядра, которые выводит утилита dmesg. Для доступа к kmsg нужны права root.
  • /proc/kpagecount - информация о размере страниц памяти.
  • /proc/loadavg -Информация о средней загрузки системы.
  • /proc/locks - Список заблокированных ядром ресурсов. Может содержать много отладочной информации и не несет совсем никакой пользы для обычных пользователей:
  • /proc/meminfo - Здесь отображается вся доступная информация об оперативной памяти и пространстве подкачки.
  • /proc/misc - В этом файле перечислены различные драйверы, загруженные для подключенных устройств или программ.
  • /proc/modules - Список всех загруженных модулей ядра. Это то, что мы получаем с помошью lsmod.
  • /proc/mounts - В этом файле перечислены все точки монтирования и все подключенные файловые системы. То же самое можно увидеть выполнив mount -a.
  • /proc/partitions - Все подключенные к системе разделы жестких дисков или других запоминающих устройств.
  • /proc/stat - В этом файле содержится различная статистическая информация о системе. Такая, как частота процессора, количество тактов, количество сброшенных страниц памяти на диск, количество системных прерываний, время загрузки и т д.
  • /proc/swaps - Информация о пространстве подкачки. Подключенные разделы, файлы, а также их размер, приоритет и состояние.
  • /proc/sysrq-trigger - Это файл доступен для записи и используется для передачи ядру специальных SysRq команд.
  • /proc/uptime - Здесь отображается сколько времени прошло после запуска компьютера. Первое число означает общее количество секунд после запуска компьютера, а второе время в режиме ожидания:
  • /proc/version - Точная версию ядра, компилятора, и в некоторых случаях, даже дистрибутива:
  • /proc/vmstat - Информация о виртуальной памяти и ее использовании в системе.
  • /proc/zoneinfo - Информация о виртуальной памяти и ее использовании в системе с разбиением на зоны памяти в зависимости от ее назначения.
  • /proc/dma - информация о каналах DMA.
  • /proc/pci - информация о каждом устройстве PCI.
  • /proc/sys/ - Предоставляет информацию о системе, и позволяет изменять различные параметры ядра на лету, а также включать дополнительные функции.
  • /proc/PID/ - Папки с номерами PID вместо имен, содержат информацию о каждом запущенном в системе процессе. Когда процесс заканчивается, его каталог исчезает из системы. Если открыть любой из этих каталогов в нем есть такие файлы (cmdline — содержит команду с помощью которой был запущен процесс, а также переданные ей параметры cwd — символическая ссылка на текущую рабочую директорию процесса exe — ссылка на исполняемый файл root — ссылка на папку суперпользователя environ — переменные окружения, доступные для процесса fd — содержит файловые дескрипторы, файлы и устройства, которые использует процесс maps, statm,иmem — информация о памяти процесса stat, status — состояние процесса)

Есть ещё пара приложений для получения информации о видеокарте. Конечно с их помощью можно не только мониторить температуру, но и управлять параметраим видеокарты, однако статья у нас о мониторинге. Само собой, ставить нужно то из них, которое подходит к чипу вашей видеокарты :) Впрочем выбор очевиден. aticonfig- информаци о видеокарте ati (в том числе о температуре) и nvidia-setting- информаци о видеокарте (в том числе о температуре). Но на сегодня хватит, подробности о прграммах для работы с видеокартами как нибудь в следующий раз.

Добавить комментарий


Защитный код
Обновить