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

Материал из ALT Linux Wiki
 
(не показаны 4 промежуточные версии 2 участников)
Строка 91: Строка 91:
| style="background:#FFFACD;" | '''lsblk -o NAME,FSTYPE,SIZE,UUID,MOUNTPOINT '''
| style="background:#FFFACD;" | '''lsblk -o NAME,FSTYPE,SIZE,UUID,MOUNTPOINT '''
| Вывод в виде дерева о дисках и разделах, точках монтирования
| Вывод в виде дерева о дисках и разделах, точках монтирования
|}
=Журнал ошибок системы (логи)=
{| class="standard"
! Команда
! Описание
|-
| style="background:#FFEFD5;" | '''Journald'''
| [[Journald|Работа с журналом системных ошибок]]
|-
| style="background:#FFFACD;" | '''journalctl -b -p err'''
| Отобразить ошибки с момента запуска, фильтр сообщений по их приоритету (восемь уровней приоритета, от 0 до 7)
|-
| style="background:#FFEFD5;" | '''journalctl --disk-usage'''
| Отобразить общий размер логов
|-
| style="background:#FFFACD;" | '''journalctl -xe'''
| Отобразить логи сервисов. Если включаемый systemd сервис не запускается.
|-
| style="background:#FFEFD5;" | '''journalctl -f'''
| Отобразить логи в реальном времени
|-
| style="background:#FFFACD;" | '''journalctl -ek'''
| Отобразить логи ядра
|}
|}


Строка 788: Строка 812:
| Утилита определения клавиш
| Утилита определения клавиш
|}
|}
=Проверка состояния жестких дисков=
{{:Проверка состояния жестких дисков}}


=Оперативная память=
=Оперативная память=
Строка 832: Строка 853:


  '''Виды кэша'''<br/>'''PageCache''' или '''страничный кэш''' - это место, куда ядро складывает все данные, которые были записаны или считаны из диска.<br/>Кэш '''inode''' и '''dentrie''' тоже относится к файловой системе. Только в него записываются не сами данные, а структура файловой системы, расположение файлов и папок.
  '''Виды кэша'''<br/>'''PageCache''' или '''страничный кэш''' - это место, куда ядро складывает все данные, которые были записаны или считаны из диска.<br/>Кэш '''inode''' и '''dentrie''' тоже относится к файловой системе. Только в него записываются не сами данные, а структура файловой системы, расположение файлов и папок.
=Тестирование оперативной памяти=
{{:Тестирование оперативной памяти}}


=Сеть, Сетевое оборудование, Анализ сети=
=Сеть, Сетевое оборудование, Анализ сети=
Строка 1021: Строка 1039:
* [[Systemd|Systemd — подсистема инициализации и управления службами в Linux]]
* [[Systemd|Systemd — подсистема инициализации и управления службами в Linux]]
* [[Участник:HihinRuslan/Systemd|Улучшаем Systemd]]
* [[Участник:HihinRuslan/Systemd|Улучшаем Systemd]]
* [[Рекомендуемые_материалы_по_изучению_ОС_Альт|Рекомендуемые материалы по изучению ОС Альт]]


{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}}
[[Категория:HOWTO]]
[[Категория:HOWTO]]
{{Category navigation|title=Команды в консоли|category=Команды в консоли|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Команды в консоли|category=Команды в консоли|sortkey={{SUBPAGENAME}}}}

Текущая версия от 14:48, 11 июня 2024

TODO:
в стадии наполнения


Задачи

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

Внимание! Для тех у кого возникнет желание править данную статью - пожалуйста проверяйте команды перед их добавлением в статью, главная задача не принести вреда
конечному пользователю


Дистрибутив и система

Команда Описание
hostnamectl Посмотреть название системы, версию ядра, разрядность, имя компьютера в сети
lsb_release -a Вывод названия и версии используемого дистрибутива
uname -m Посмотреть архитектуру ядра операционной системы - например, x86_64/i686 (64/32 бита)
arch Посмотреть разрядность операционной системы - x86_64,AMD64 (64-bit) или x86,i686 (32-bit)
dmidecode | grep -A 9 "System Information" Информация о модели ПК или ноутбука
dmidecode | less Полный вывод о компонентах ПК
inxi -F Информация о модели ПК или ноутбука в утилите inxi
inxi -S | grep Desktop Листинг. Выводит версию DE и версию дистрибутива
distro_info -e Проверка имени и версии дистрибутива аналог lsb_release -a. Используется в проектах Etersoft EPM и rpm-build-altlinux-compat
cat /etc/*release* Аналогично предыдущей команде, плюс информация о базовом дистрибутиве
uname -a Вывод информации о системе, дистрибутиве и архитектуре (32/64 бита)
ls /boot/efi/EFI/Microsoft/Boot Наличие файлов bootmgfw.efi или bootmgr.efi говорит о наличии Windows
calendar | grep Ubuntu Информация о дистрибутиве. Пакет собран в Autoimports BaseALT, доступен для сборки в сизиф.
efibootmgr Отобразить доступные загрузочные записи в UEFI. Для редактирования читать man efibootmgr
efibootmgr -Bb xxxx Осторожно! Удаление пункта из EFI. xxxx -- номер загрузчика из вывода efibootmgr (boot0003 -> 0003)
Узнать дату установки дистрибутива
ls -ld /root/.install-log/
ls -lct /etc | tail -1 | awk '{print $6,$7,$8}'
Показать дату установки дистрибутива (может не работать!)
LC_TIME="ru_RU.UTF-8" rpm -qia |grep "Install Date"|awk '{print $3}'|uniq |sort -r|tail -n 1 Показать дату установки дистрибутива
rpm -qa --last | tail -n 1 | awk '{ for (i=2; i<=NF; i++) printf $i " "; printf "\n" }' Для систем на RPM дату установки можно предположить по времени установки первого пакета
tune2fs -l <файл_устройства_диска> | grep created Узнать, когда была первая запись на диск /dev/sdxX для ФС на ext2/3/4
Поиск других файловых и операционных систем
cat /etc/fstab Проверка списка монтирования файловых систем по UUID
cat /proc/mtab Просмотр смонтированных файловых систем.
blkid Вывод UUID для жестких дисков
fdisk -lu Информация о дисках и разделах
ls -l /dev/disk/by-uuid Информация о правах доступа к разделам
lsblk -o NAME,FSTYPE,SIZE,UUID,MOUNTPOINT Вывод в виде дерева о дисках и разделах, точках монтирования

Журнал ошибок системы (логи)

Команда Описание
Journald Работа с журналом системных ошибок
journalctl -b -p err Отобразить ошибки с момента запуска, фильтр сообщений по их приоритету (восемь уровней приоритета, от 0 до 7)
journalctl --disk-usage Отобразить общий размер логов
journalctl -xe Отобразить логи сервисов. Если включаемый systemd сервис не запускается.
journalctl -f Отобразить логи в реальном времени
journalctl -ek Отобразить логи ядра

Ядро

Команда Описание
uname -r Отобразить текущее ядро
ls -lh /boot/{vmlin,init}* Отобразить имеющиеся ядра в /boot
ls /boot | grep vmlinuz Отобразить имеющиеся ядра в /boot
ls -lh /boot | grep vmlinuz Отобразить имеющиеся файлы образов ядер в /boot
du -hs /lib/modules Размер каталога с модулями ядер
ls /lib/modules Модули ядра ОС хранятся в директории /lib/modules/<версия-ядра-ос>
lsmod | head -5 Ознакомиться с началом списка загруженных в текущий момент модулей ядра ОС
grep vm /proc/modules Загруженные модули ядра, содержащие строку "vm" в названии
lsmod | grep vm lsmod всего лишь читает содержимое файла /proc/modules и выводит его с соответствующим форматированием
grep -A16 "syslogd 1.4.1:" /var/log/messages|cut -b24- Извлечь информацию о процессе загрузки ядра, включая информацию обо всех устройствах, которые были идентифицированы в процессе загрузки системы
grep sda /var/log/messages | cut -b24- В данном примере показан фрагмент файла /var/log/messages, информация о дисковом устройстве, представленном файлом устройства /dev/sda.
dmesg | head Утилита dmesg выводит начало сообщений ядра ОС в кольцевом буфере (хранится в ОЗУ)
sysctl -a Отобразить параметры ядра Linux
sysctl -a | less Отобразить параметры ядра Linux
sysctl -a | grep 'something' Отобразить параметры ядра Linux
cat /proc/cmdline Параметры, которые были переданы ядру ОС в процессе загрузки системы
dmesg | grep "Command line" Выведет параметры загрузки ядра
sysctl -a | more
sysctl -a | less
sysctl -a | grep 'foo'
sysctl -a | grep net.ipv4.ip_forward
man 7 bootparam Параметры загрузки, передаваемые ядру
man 7 kernel-command-line Параметры загрузки, передаваемые ядру
modprobe -c Выведет список всех модулей ядра.
modprobe -c | grep tvtuner Список огромный, памяти консоли может не хватить. Можно поискать по ключевому слову, к примеру так. Слово tvtuner стоит заменить на интересующую подстроку.

Оконный менеджер, Менеджер входа в систему, Текущий сеанс

Команда Описание
pstree Просмотр дерева процессов. Из команды можно узнать Менеджер входа - их список: gdm,lightDM,xdm,sddm,lxdm, либо отсеять с помощью grep,
например: pstree | grep gdm
wmctrl -m Узнать какой используется оконный менеджер
wmctrl -d Узнать список всех рабочих столов, управляемых текущим оконным менеджером
wmctrl -l Узнать список окон, управляемых текущим оконным менеджером
echo $XDG_CURRENT_DESKTOP Показать текущее окружение рабочего стола (DE)
echo $GDMSESSION Показать, какая выбрана сессия (текущая) в Менеджере входа
printf 'Desktop: %s\nSession: %s\n' "$XDG_CURRENT_DESKTOP" "$GDMSESSION" Вывод двух предыдущих команд одной строкой
Текущий сеанс
last Просмотреть историю всех успешных входов в систему
last <username> Просмотреть историю входа определенного пользователя <username>
last -i Отображать IP-адреса в истории входа вместо имени хоста
last -n число Отображать количество строк списка пользователей, зарегистрировавшихся в системе последними
last -f /var/log/btmp Просмотр всех неудачных попыток входа на ваш сервер Linux или через lastb
lastb Просмотр записи обо всех неудавшихся попытках регистрации пользователей в системе из /var/log/btmp
loginctl show-session $XDG_SESSION_ID Проверить статус вашей сессии
env Вывод переменных окружения. Из нее узнаем окружение рабочего стола, пользователя, язык в системе и много другой информации

Ноутбук. Уровень заряда батареи. Проверка камеры

Команда Описание
upower -i /org/freedesktop/UPower/devices/battery_BAT0 Отобразить состояние батареи с помощью Upower
upower -i `upower -e | grep 'BAT'` Отобразить состояние батареи с помощью Upower. Дополнительная команда.
upower -i $(upower -e | grep BAT) | grep --color=never -E "state|to\ full|to\ empty|percentage" Отобразить только состояние батареи с помощью комбинации upower и grep
acpi Показывает состояние батареи и другую информацию ACPI (только состояние заряда батареи)
acpi -V Показать все устройства питания
acpi -t Проверка температуры батареи, просмотреть вывод в градусах Фаренгейта можно, используя флаг -f: acpi -t -f
acpi -a Показать подключен ли источник переменного тока или нет.
lsusb Вывести список оборудования подключеyных по USB
ffplay /dev/video0 Отображать видео захват с веб-камеры через ffplay
mplayer tv:// -tv driver=v4l2:width=640:height=480:device=/dev/video0 -fps 15 -vf screenshot Отображать видео захват с веб-камеры
'
'
'

Пользователь системы

Команда Описание
w или who Сообщает, какие пользователи работают в данный момент в системе
whoami Сообщает имя, с которым вы вошли в систему в данном сеансе работы
cat /etc/passwd Вывести информацию о пользователях и группах и правах на доступ к ним
cat /etc/passwd | awk /bash/{print} Вывести информацию о рут и пользователе
sed 's/:.*//' /etc/passwd Упрощенный вывод двух верхних команд.
getent group groupname Информация о группах, где состоит пользователь
id Посмотреть список групп пользователя Linux
id -G Вывести только список групп текущего пользователя
id -Gn Вывести идентификаторы групп, если вы хотите получить их имена
id -Gn имя_пользователя Вывести список групп для определённого пользователя
groups Вывести список групп, где состоит пользователь
groups имя_пользователя Вывести только список групп пользователя Linux
groups | wc -w Посчитать количество групп, в которых состоит пользователь Linux
loginctl show-session $XDG_SESSION_ID Вывести статус вашей сессии

Процессы

Каждый процесс в Linux имеет свой идентификатор, называемый PID. Перед тем, как выполнить остановку процесса, нужно определить его PID.

Команда Описание
ps axu Утилита отчета о состоянии процесса ps. Команда выведет список всех процессов.
ps aux | grep имя_процесса Узнать PID конкретного процесса через поиск через grep
ps aux | grep имя_процесса | grep -v grep Вывести процесс исключая из поиска grep
pgrep имя_процесса Утилита вывода только информации PID
pgrep -f имя_процесса Если нужно искать только по имени процесса, то надо указать опцию -f
pidof имя_процесса Утилита ищет PID конкретного процесса по его имени. Имя процесса должно только совпадать с искомым
pidof -s имя_процесса С помощью опции -s можно попросить утилиту выводить только один PID
pstree Утилита позволяет посмотреть список дочерних процессов для определённого процесса, также их PID
pstree -p | grep имя_процесса Cмотрtим дерево процессов для конкретного процесса. Например, мы хотим удалить какой-либо файл, а система нам сообщает, что он используется другим процессом.
kill номер_процесса Убьет процесс с номером PID
kill -9 номер_процесса Посылает сигнал убить процесс по SIGKILL (он имеет номер 9) процессу PID
killall имя_процесса Убьет все процессы с заданным именем (по имени процесса)
killall -s 9 имя_процесса Убьет все процессы с заданным именем, шлет сигнал SIGTERM
lsof /home/юзер/файл.aac С помощью утилиты lsof можно посмотреть, какие процессы используют директорию или файл в данный момент
fuser /home/юзер/файл.aac Есть ещё одна утилита, которая позволяет выполнить подобную задачу.
После PID идёт одна буква, которая указывает, что делает этот процесс с файлом или папкой:
• c - текущая директория;
• r - корневая директория;
• f - файл открыт для чтения или записи;
• e - файл выполняется как программа;
• m - файл подключен в качестве библиотеки.
auditd Аудит системных событий в Linux
ss -lptn 'sport = :80' Иногда необходимо узнать PID Linux-программы, которая использует сетевой порт, например 80. Для этого можно использовать утилиту ss

Графика

Команда Описание
glxinfo Информации о OpenGL и реализации GLX в XWindows
lspci | grep VGA Информация о производителе видео карты
grep 'Graphics' /var/log/Xorg.0.log | tail -n1 Покажет контроллер видеокарты, чем команда выше
glxgears Простой 3D тест, выводит частоту кадров в терминале
xrandr Вывод списка поддерживаемых графических разрешений экрана. Утилита для настройки экрана в линукс
xwininfo -root | grep Depth Проверить глубину цвета. xwininfo - информационная утилита окна для X
grep -Eiwo -m1 'nvidia|amd|ati|intel' /var/log/Xorg.0.log Показать какая видеокарта используется
Версия видео драйвера
geforce.com/drivers Сайт для проверки совместимости драйвера nvidia для видеокарты
xdriinfo Определить используемый сейчас драйвер видеокарты
xrandr --listproviders Должно отобразить два адаптера, первый интел, второй amd
glxinfo | grep OpenGL Посмотреть информацию по графике intel (NVIDIA). Поиск без учета регистра через - grep -i opengl
DRI_PRIME=1 glxinfo | grep OpenGL Посмотреть информацию по amd. Пример запуска приложения на карте amd - DRI_PRIME=1 glxgears
glxinfo | grep Open Вывод : поставщик OpenGL - X.Org или другой
glxinfo | grep version Узнать версию сервер/клиент, версию драйвера
glxinfo | grep render Проверить есть ли direct rendering
lshw -c display | egrep 'physical|configuration' Узнать название используемого видеодрайвера + modinfo nvidia детальная информация по драйверу
Версия видеокарты
lspci -vnn | grep -i VGA Определить видеокарту
lspci -nn | grep VGA Определить видеокарту
lspci | grep VGA Вывод информации о видеокарте
lspci -k | grep -A 2 -E "(VGA|3D)" Вывод информации о видеокарте
lspci -k | grep -A2 VGA или xrandr Узнать какой видео драйвер используется
inxi -GS Узнать версию видеокарты в утилите Inxi
echo $XDG_SESSION_TYPE Узнать оконную систему, на которой запущена сессия (X11 или Wayland)

Аудио

Команда Описание
lspci | grep -i audio Вывод информации о звуковой карте в системе
aplay --list-devices или aplay -l Более подробная информация о звуковой карте
arecord --list-devices Проверка звуковых модулей для записи звука
aplay -c 2 /dev/urandom Послушать "шум" драйверов, остановить ctrl+C
lsmod | grep snd Узнать модули ядра поодерживающие устройства snd
cat /proc/modules | grep snd Узнать модули ядра поодерживающие устройства snd
cat /proc/asound/cards
cat /proc/asound/card*/codec* | grep Codec
Обзор устройств с которых можно получить вывод/ввод звука. номер звукового устройства, и так
pactl set-sink-volume 0 100% где 0 замени на свой номер для повышения громкости на 100%
ps aux | grep pulseaudio Проверка звуковых модулей. Определение звуковых карт в системе. нужен пакет alsa-utils
pulseaudio -k Перезапуск пульсаудио
arecord -f cd -d 10 test-mic.wav
Воспроизвести полученный файл:
aplay test-mic.wav
Проверка работы микрофона. Также смотрите параметры $ alsamixer в терминале и настройки pavucontrol
alsa-tools Пакет содержит инструменты ALSA (современной звуковой подсистемы Linux), предназначенные для низкоуровневой работы с некоторыми звуковыми картами

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

Команда Описание
lshal Отображение информации о подключенных устройствах, находящихся в HAL
lspci Отображение информации о всех PCI шинах и подключенных к ним девайсах
lspci -v Вывод более подробной информации
lsmod Вывод состояния модулей ядра, для некоторых устройств можно увидеть используемый драйвер
cat /proc/bus/input/devices Посмотреть информацию по всем вашим устройствам ввода следующей командой
hardinfo Графическая утилита отображения информации об устройствах компьютера
hwinfo Вывод полной информации обо всех устройствах компьютера.
dmidecode -s bios-version Узнать версию биоса материнской платы(DMI)
dmidecode -s bios-release-date Узнать дату выхода версии биос
hw-probe -all -upload Сбор информации о системе и оборудовании и выдача ссылки на просмотр этих данных. Проба оборудования
inxi -F Утилита для компактного и полного вывода информации о системе и железе.
Скрипт c inxi - Вывод информации о железе (Скрипт)
Выводит информацию в отдельном окне. Нужно создать файл и поместить в него текст скрипта. #!/bin/bash (inxi -c0 -F) | xmessage -file --center Но мне кажется, что через gxmessage "красивее" выглядит Запуск скрипта sh скрипт или ./скрипт

Информация о всех подключенных устройствах

Команда Описание
hwinfo --short Получение информации о подключенных устройствах, можно опросить только отдельное устройство, например WLAN: hwinfo –wlan.
lshw Команда выведет полную информацию о железе, следует выполнять с правами root'а (sudo lshw). Установка lshw: sudo apt-get install lshw.
lshw -html > myhard.html Вывод информации о железе в html страничку

USB

Команда Описание
lsusb Информация о USB шине и присоединенных устройствах
lsusb -v Более подробная информация о USB шине и присоединенных устройствах
lsusb -t Проверка работы портов
dmesg | grep bug Просмотр ошибок при подключении оборудования
lsusb -vvv |grep -i -B5 -A5 bcdUSB Определяет теоретическую максимальную скорость порта для каждого порта USB. Строка bcdUSB возвращает версию USB порта. Аналог команды lsusb -t.

CPU

Команда Описание
cat /proc/cpuinfo Все про процессор: модель, частота, кэш и т.д. Если есть флаг lm - значит процессор поддерживает 64 бита.
cat /proc/loadavg Загрузка ЦП за последние 1, 5 и 15 минут
lscpu Выведет информацию о процессоре. В пункте CPU op-mode(s) можно увидеть поддерживаемую разрядность 32-bit (i686), 64-bit (x86_64)
cpu-z Графическая утилита. Там в разделе CPU -> instructions можно посмотреть доступную разрядность процессора
grep -qw lm /proc/cpuinfo && echo yes Посмотреть поддержку 64-bit у процессора через флаг lm. Если выведет "yes", ЦП поддерживает 64-bit
egrep '(vmx|svm)' /proc/cpuinfo Поддержка виртуализации в процессоре. Если присутствует флаг:
svm (Secure Virtual Machines) - значит у вас процессор с поддержкой аппаратной виртуализации от AMD, если vmx (Virtual Machine eXtension) - значит процессор Intel
lscpu Посмотреть поддержку виртуализации в процессоре. Смотрим пункт Виртуализация или флаги на наличие svm/vmx

SSD + HDD

Команда Описание
systemctl status fstrim.timer Проверить включен ли TRIM
lsblk Посмотреть подключённые жёсткие диски
lsblk -o NAME,SIZE,UUID,TYPE,MOUNTPOINT Посмотреть информацию о дисках
cat /proc/partitions Посмотреть информацию о дисках
inxi -plo Информация о разбиении диска. разделы диска
inxi -h Посмотреть флаги разделов жесткого диска
mount Посмотреть информацию о подключенных устройствах и параметрах подключения
df -H Посмотреть список партиций, их точки монтирования, использование места, тип файловой системы
df -h Узнать размер свободного пространства на разделах диска
du -hs * 2>/dev/null | sort -h Отсортировать файлы по размеру
fdisk -l Все партиции, названия устройств и геометрия hdd
hdparm -iv /dev/sda Посмотреть идентификационную информацию, собранной во время загрузки ОС
hdparm -Tv /dev/sda Измерить время чтения из кэша, для верности показателей - повторить 2-3 раза на неактивном диске
hdparm -Tt /dev/sda Сравнение времени чтения устройства. Полная статистика. Для получения значимых результатов эту операцию следует повторить 2-3 раза в неактивной системе
hddtemp -uC /dev/sda Отображение температуры в Цельсиях для винчестера /dev/sda (установочный пакет hddtemp)
hdparm -I /dev/sda Информация о диске (модель, прошивка, атрибуты и пр)
smartctl -d ata -a -i /dev/sda Информация о диске (модель, прошивка, атрибуты и пр)
smartctl -a /dev/sda Вывод SMART информация для винчестера /dev/sda (необходим пакет smartmontools)
baobab Графическая утилита для анализа места на жестком диске в GNOME
ncdu / Консольная утилита для анализа места на жестком диске
ls -lh /var/log/ Посмотреть содержимое папки с выводом в мегабайтах, килобайтах и пр.  
parted /dev/sdX print Информация о жестком диске - sdX, X заменить на букву диска - a,b,c
gdisk -l /dev/sda Покажет раздел загрузчика с кодом раздела EF00
tree -L 3 /boot Вывод структуры ввиде дерева
df -h | awk '$NF=="/"{printf "Disk Usage: %d/%dGB (%s)\n", $3,$2,$5}' Расчет использования жесткого диска
e2fsck -cfpv /dev/sda1 для восстановления битых секторов жесткого диска и подождать несколько часов
whdd Консольная Ncurses утилита для диагностики жёстких дисков и восстановления данных с них
Диагностика жесткого диска и восстановление данных
find -type f -printf "%k\t%p\n" | sort -n | tail Найти десять самых больших файлов. Размер в блоках по килобайту
ls -1 /dev/sd? Получить список устройств
fdisk -l /dev/sda Посмотреть какие разделы есть на диске "sda"
Узнать, что переполняет диск
konqueror с плагинами Свободный веб-браузер и файловый менеджер, являющийся ключевым компонентом графической среды KDE
du <путь> sort -n. В альте можно отключить резервное копирование (bacula-fd) и почистить /var
gparted Графическая утилита для работы с дисками и разделами
filelight Графическое представление использования дисков/флешек
baobab Графическое представление использования дисков/флешек в Gnome
ncdu Консольный анализатор использования дисков/флешек
Жёсткие диски имеют особенные названия. В зависимости от интерфейса, через который подключён жёсткий диск, название может начинаться на:
sd — устройство, подключённое по SCSI;
hd — устройство ATA;
vd — виртуальное устройство;
mmcblk — обозначаются флешки, подключённые через картридер;
В наше время большинство блочных устройств Linux подключаются через интерфейс SCSI. Сюда входят жёсткие диски, USB-флешки, даже ATA-диски теперь тоже подключаются к SCSI через специальный переходник.
Поэтому в большинстве случаев вы будете иметь дело именно с дисками sd. Третья буква в имени диска означает его порядковый номер в системе. Используется алфавитная система.
Например sda — первый диск, sdb — второй диск, sdc — третий и так далее. Дальше следует цифра — это номер раздела на диске — sda1, sda2.

Монтирование устройств

Команда Описание
mount /путь_к_директории/образ.iso -o loop /media/iso Монтирование образа iso в созданную/имеющуюся директорию /media/iso
mount file.iso /media/iso/ -t iso9660 -o loop Монтирование образа iso в созданную/имеющуюся директорию /media/iso
umount /media/iso/ Размонтирование образа из директории /media/iso/
modprobe loop При «Ошибка подключения ISO образа». Невозможно найти ни одного устройства обратной связи. Может быть ядро не знает об устройствах обратной связи.
(В этом случае перекомпилируется ядро или выполните modprode loop)
ls /home | grep back Узнать существует каталог vps-backup для монтирования по команде mount /home/vps-backup, при ее отсутствии терминал вернет - mount: /home/vps-backup: Нет такого файла или каталога
mount | grep /dev/sdb Посмотреть куда примонтирован "sdb"
mount | column -t Получить информацию о текущих смонтированных файловых системах с удобным оформлением по столбцам
findmnt Отображает информацию в виде красивого дерева и сама форматирует столбцы, а также может найти нужную файловую систему
mount -t ntfs-3g -o rw,flush /dev/sdXx /mnt Принудительное монтирование раздела sdXx (,где Хх - ваш номер диска) с ntfs
ntfsfix /dev/sdxX Если не монтируется раздел с ntfs после перезагрузки с windows 10

Узнать файловую систему

Команда Описание
file -s /dev/sda1 Определить, какая файловая система на разделе /dev/sda1
df -T Определить файловую систему для смонтированных разделов

Комбинации клавиш

Команда Описание
xev Утилита определения клавиш

Оперативная память

Команда Описание
cat /proc/meminfo Информация об объеме RAM, SWAP и другая информация
free -m Общий объем памяти (RAM, SWAP), количество использованной, свободной памяти в МБайтах [1]
free -m -s 5 Вывод в других единицах — с ключами:-b байтах; -m мегабайтах; -g гигабайтах, -s запустить с заданным периодом обновления информации
free -m | awk 'NR==2{printf "Memory Usage: %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2} Расчет использования оперативной памяти
Очистка кэша памяти
free -h Посмотреть размер страничного кэша можно в последней колонке - cached
cat /proc/slabinfo | egrep dentry\|inode Просмотр кэша inode и dentrie, относящихся к файловой системе.
В него записываются не сами данные, а структура файловой системы, расположение файлов и папок.
sync; echo 1 > /proc/sys/vm/drop_caches Очистка кэша PageCache
sync; echo 2 > /proc/sys/vm/drop_caches Очистка inode и dentrie
sync; echo 3 > /proc/sys/vm/drop_caches Очистка inode и dentrie и PageCache

Примечание

Описание колонок в выводе команды free
total — общее количество памяти;
used — реально использующая в данный момент и зарезервированная системой память;
free — свободная память (total минус used);
shared — Shared memory или Разделяемая память, можно посмотреть командой ipcs;
buffers — буферы в памяти — страницы памяти, зарезервированные системой для выделения их процессам, когда они затребуют этого, так же известна как heap-memory;
cached — файлы, которые недавно были использованы системой/процессами и хранящиеся в памяти на случай если вскоре они снова потребуются.
Виды кэша
PageCache или страничный кэш - это место, куда ядро складывает все данные, которые были записаны или считаны из диска.
Кэш inode и dentrie тоже относится к файловой системе. Только в него записываются не сами данные, а структура файловой системы, расположение файлов и папок.

Сеть, Сетевое оборудование, Анализ сети

Команда Описание
lspci | grep Ethernet Информация о контроллере Ethernet
lspci | grep -i 'net' Просмотр доступных сетевых карт
lspci | egrep -i --color 'network|ethernet' Узнать модель сетевой карты
lspci -v | grep Ethernet -A 1 Узнать модель сетевой карты, более детальный вывод
lspci -v | grep Ethernet -A 20 Еще более подробная информация о сетевом оборудовании в системе
lspci -kv | less
lshw -class network Более подробная информация о сетевом оборудовании в системе через утилиту lshw
dmesg | grep eth Проверка обнаружения сетевого оборудования
ethtool eth0 Для отображения настроек сетевой карты в ethtool запустите утилиту передав в параметрах имя сетевого адаптера
ethtool -i eth0 Для просмотра информации о сетевом драйвере и прошивке
ethtool -P eth0 Узнать MAC адрес
ethtool eth0 | grep "Speed\|Duplex" Узнать текущую скорость передачи данных сетевой карты
ethtool -s eth0 duplex full speed 100 autoneg off Для принудительного понижения скорости до 100 Мбит/с в режиме Full Duplex и отключения автоопределения настроек
ethtool -s eth0 duplex full speed 1000 autoneg off Вернуть сетевую карту в гигабитный режим
mii-tool -F 100baseTx-FD eth0 Понизить скорость до 100 Мбит/с в режиме Full Duplex, не имея ethtool
ifconfig eth0 media 100baseTX mediaopt full-duplex Понизить скорость до 100 Мбит/с в режиме Full Duplex, вариант совсем для гиков
ifconfig Просмотр сетевых интерфейсов, количество переданных/принятых пакетов, IP адрес, маска и т. д.
ifconfig | grep 'inet addr:' Узнать все ip адреса сервера, в том числе и ipv6. При ошибке доустановить пакет net-tools
ifconfig | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}' Показать только ip адреса, без лишней информации
ifconfig | awk '/inet addr:/ {print substr($2, 6)}' Показать только ip адреса, без лишней информации
ifconfig | awk '/inet addr:/ {print substr($2, 6)}' | grep -v 127.0.0.1 Позволяет убрать локальный интерфейс, чтобы глаза не мозолил
ip link show Подробная информация о сетевом протоколе для сетевой карты
ip a Посмотреть сетевые интерфейсы
ip a | grep inet | awk '{print $2}' Показать только ip адреса, без лишней информации
ifconfig | grep 'inet addr:' Вовод информации - inet addr, Bcast, Mask
ping -n -i 0.2 -s 512 -I eth0 ya.ru Проверить передачу пакетов по сети
traceroute -N 16 -q 1 -A ya.ru Проверить передачу пакетов по сети
mtr ya.ru Проверить передачу пакетов по сети
ip route get 10.94.171.10 Узнать, через какую запись в таблице маршрутизации пойдет трафик на IP адрес
iptraf -d eth0 Посмотреть суммарную статистику по интерфейсу. Узнать что забивает канал
iptraf -i eth0 Просмотр статистики по соединениям
nload Утилита анализа трафика
Опции nload:
device - выбор интерфейса
-a - промежуток в секундах, для подсчитывания среднего значения
-i - стопроцентная планка на графике пропускной способности в kBit/s
-m - отображение нескольких интерфейсов, без графика
-t - интервал обновления в миллисекундах
-u - режим отображения: Bit/s, kBit/s, MBit/s
iwlist scan 2> /dev/null | grep ESSID | wc -l Узнаем сколько есть точек доступа Wi-Fi
route -n Узнать адрес шлюза по умолчанию, на который будут отправляться все пакеты,
для которых не прописаны дополнительные правила в таблице маршрутизации.
Из вывода команды нас интересует строка с подсетью 0.0.0.0 и аналогичной маской, это и есть адрес шлюза по умолчанию.
0.0.0.0 192.168.3.1 0.0.0.0 UG 0 0 0 eth0

Искомый адрес 192.168.3.1, в малых сетях это как правило адрес роутера или сервера выполняющего роль шлюза в интернет.

netstat -tlnp Узнать кто подключился к вашему ПК
ssh-copy-id username@remote-machine Подключение по SSH без пароля
ngrep google port 80 Показать содержимое всех пакетов, прошедших по 80 порту, со словом google
ngrep -i \'game*|chat|recipe\' -W byline -d eth0 Вывод пакетов удовлетворяющих маске по одному в строке, для интерфейса eth0
ngrep -i \'rcpt to|mail from\' -d any tcp port smtp Слушать весь SMTP трафик на всех сетевых интерфейсах
ngrep -q -t -wi "login" port 23 Показать текущее время для каждого совпадения (кто и когда заходит на машину телнетом)
echo -e {$HTTP,\\n$FTP,\\n$HTTPS}_PROXY Проверить прокси в /etc/sysconfig/network, настраивается локально через alterator-sysconfig/proxy
ip route      Информация о сетевом соединении
И в этом случае ищите строку вида:
default via 10.1.1.254 dev enp2s0 proto static metric 100
В случае, если вас интересует внешний IP-адрес в сети интернет, который будет отображаться у всех рабочих станций вашей локальной сети скрытых NAT, то вы можете воспользоваться web-сервисом https://2ip.ru или другим подобным.

Информация по ссылкам:

Сообщение о проблеме

Для решения вопросов функционирования оборудования при сообщении о проблеме вам может потребоваться предоставить информацию следующих команд

Команда Описание
Проблемы с оборудованием
dmesg
pciscan -v
cpuscan -v
acpiscan -v
mousescan -v
x11createconfig
cat /proc/cmdline
lsusb -vvv
Проблемы с разделами жёсткого диска
fdisk -l
storagescan -v

Ресурсы