Команди за системна информация на Linux

Когато работите с Linux, често се налага да проверявате системна информация. Може да искате да знаете коя дистрибуция използвате. Или каква е версията на ядрото. А понякога трябва да видите колко памет имате свободна.
Добрата новина? Linux предлага десетки вградени команди за това. Днес ще разгледаме най-полезните от тях. Ще научите как да извличате всякаква информация за системата си.
Защо е важно да познавате тези команди
Преди да навлезем в детайлите, нека обясня защо това е полезно.
Първо, тези команди работят на всяка Linux дистрибуция. Били вы на Ubuntu, Fedora или Arch, командите са едни и същи. Това ги прави универсален инструмент.
Второ, често графичният интерфейс не показва всички детайли. Чрез терминала получавате пълен достъп до системната информация. Виждате неща, които GUI скрива.
Трето, когато търсите помощ онлайн, хората ще ви питат за версията. Ще искат да знаят конфигурацията ви. С тези команди отговаряте за секунди.
Основна информация за операционната система
Командата uname
Това е най-базовата команда за системна информация. Тя показва данни за ядрото и системата.
uname -a
Опцията -a показва всичко наведнъж. Виждате името на ядрото, хостнейма, версията и архитектурата.
Ето какво означават отделните опции:
uname -s– показва името на ядрото (Linux)uname -n– показва мрежовото име на компютъраuname -r– показва версията на ядротоuname -v– показва допълнителна информация за версиятаuname -m– показва хардуерната архитектура (x86_64, i686 и т.н.)uname -o– показва операционната система
Командата hostnamectl
Това е модерна команда, която показва повече информация. Тя е част от systemd и работи на повечето съвременни дистрибуции.
hostnamectl
Резултатът включва хостнейм, тип машина, операционна система и ядро. Показва се също иконка и chassis тип.
Полезно е когато работите с виртуални машини. Командата автоматично разпознава дали сте на физическа или виртуална система.
Файлът /etc/os-release
Всяка Linux дистрибуция има специален файл с информация за себе си. Той се намира в /etc/os-release.
cat /etc/os-release
Този файл съдържа стандартизирана информация. Виждате името на дистрибуцията, версията, ID и URL адреси. Форматът е еднакъв навсякъде.
За по-стари дистрибуции може да срещнете /etc/lsb-release или специфични файлове. Например /etc/redhat-release на Red Hat базирани системи.
Командата lsb_release
Ако системата ви поддържа LSB (Linux Standard Base), използвайте тази команда.
lsb_release -a
Тя показва дистрибуцията, версията, кодовото име и описание. Много е удобна за скриптове.
Детайлна хардуерна информация
Командата lscpu
Искате да знаете всичко за процесора си? Това е командата, която ви трябва.
lscpu
Виждате архитектурата, броя ядра, CPU честотата и кеш паметта. Показва се също производителят и модела.
Информацията е полезна когато оптимизирате производителността. Или когато компилирате софтуер за конкретна архитектура.
Командата lshw
Това е мощна команда за изброяване на хардуера. Тя показва подробна информация за всички компоненти.
sudo lshw -short
Опцията -short дава кратък списък. Без нея получавате изключително детайлен изход.
Можете да филтрирате по класове:
sudo lshw -class memory
sudo lshw -class processor
sudo lshw -class disk
Командата изисква root права. Без sudo няма да видите пълна информация.
Командата hwinfo
На OpenSUSE и SUSE Linux това е стандартната команда. Трябва да я инсталирате на други дистрибуции.
sudo hwinfo --short
Тя е подобна на lshw, но с различен формат. Показва процесори, памет, дискове, мрежови карти и още.
За детайлна информация за конкретен компонент използвайте:
sudo hwinfo --cpu
sudo hwinfo --memory
Командата dmidecode
Това е най-дълбоката команда за хардуер. Тя чете директно от SMBIOS таблиците.
sudo dmidecode -t system
sudo dmidecode -t bios
sudo dmidecode -t memory
Виждате серийни номера, производители и конкретни спецификации. Полезно е за инвентаризация на хардуер.
Информация за дисковете и файловите системи
Командата df
Искате да проверите свободното място на дисковете? Използвайте df.
df -h
Опцията -h показва размерите в четим формат (GB, MB). Виждате монтираните файлови системи и използваното пространство.
За по-опростен изглед само на физическите дискове:
df -h -x tmpfs -x devtmpfs
Командата lsblk
Тази команда показва блоковите устройства в дървовидна структура.
lsblk
Виждате дисковете, партициите и монтираните точки. Показва се също размерът на всяка партиция.
За повече информация добавете опции:
lsblk -f # показва файловата система
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT # персонализиран изход
Командата fdisk
Това е класическа команда за управление на партиции. Може да я използвате и за преглед.
sudo fdisk -l
Показват се всички налични дискове и техните партиции. Виждате размери, типове и boot флагове.
Информация за паметта
Командата free
Искате бързо да проверите RAM паметта? Използвайте free.
free -h
Виждате общата памет, използваната, свободната и кеша. Показва се също swap пространството.
За непрекъснато наблюдение добавете интервал:
free -h -s 2 # обновява на всеки 2 секунди
Файлът /proc/meminfo
За детайлна информация за паметта разгледайте този файл.
cat /proc/meminfo
Съдържа десетки параметри за паметта. Виждате всякакви статистики и детайли.
Информация за процесите
Командата top
Това е интерактивен монитор на процесите и системата.
top
Виждате CPU и памет използването в реално време. Показват се активните процеси сортирани по консумация.
Натиснете q за изход. Натиснете h за помощ.
Командата htop
Това е подобрена версия на top. Трябва да я инсталирате отделно.
htop
Има цветен интерфейс и е по-лесна за ползване. Можете да управлявате процеси директно от нея.
Мрежова информация
Командата ip
Това е модерната команда за мрежова информация. Тя замени старата ifconfig.
ip addr show
Виждате всички мрежови интерфейси и техните IP адреси. Показва се също MAC адресът.
За кратък изглед:
ip -br addr
Командата hostname
За бърза проверка на хостнейма:
hostname
hostname -I # показва IP адресите
Визуални инструменти за системна информация
Командата neofetch
Това е популярен инструмент за показване на системна информация. Има красив ASCII арт лого.
neofetch
Показва операционна система, ядро, uptime, пакети и още. Изглежда впечатляващо в скрийншотове.
Инсталирайте го с:
sudo apt install neofetch # Ubuntu/Debian
sudo dnf install neofetch # Fedora
Командата screenfetch
Подобна на neofetch, но малко по-стара.
screenfetch
Използва се често в Linux общността за споделяне на setup.
Командата inxi
Това е изключително мощна команда за системна информация. Показва почти всичко.
inxi -Fxz
Опциите означават:
-Fпоказва пълна информация-xдобавя екстра детайли-zскрива чувствителни данни като MAC адреси
Инсталирайте я с:
sudo apt install inxi # Ubuntu/Debian
sudo dnf install inxi # Fedora
Полезни комбинации и трикове
Често искате да запазите изхода в файл. Използвайте пренасочване:
uname -a > system_info.txt
lshw > hardware_details.txt
За комбиниране на няколко команди използвайте скрипт:
#!/bin/bash
echo "=== Системна информация ==="
uname -a
echo ""
echo "=== CPU ==="
lscpu | grep "Model name"
echo ""
echo "=== Памет ==="
free -h
echo ""
echo "=== Дискове ==="
df -h
Запазете като sysinfo.sh и стартирайте с bash sysinfo.sh.
Как да използвате информацията
След като научихте командите, ето как да ги приложите практически.
При търсене на помощ: Когато питате във форум, включете изхода от uname -a и lsb_release -a. Хората ще знаят каква система имате.
При инсталиране на софтуер: Проверете дали имате достатъчно ресурси. Използвайте free -h и df -h.
При диагностика на проблеми: Командата dmesg показва kernel съобщения. Командата journalctl показва системни логове.
При мониторинг на системата: Използвайте top или htop за проследяване на процеси. Проверявайте ресурсите редовно.
Заключение
Linux предоставя богат набор от команди за системна информация. Някои са прости и бързи. Други показват невероятно детайлни данни.
Започнете с основните: uname, free, df и lsblk. Те покриват повечето ежедневни нужди.
Когато искате повече детайли, преминете към lshw, inxi или hwinfo. Те са мощни инструменти за задълбочен анализ.
Запомнете, че повечето детайлни команди изискват root права. Използвайте sudo когато е необходимо.
С времето тези команди стават втора природа. Ще ги използвате без да мислите. Това е част от уменията на всеки Linux администратор.
Експериментирайте с различни опции. Прочетете man страниците с man команда. Linux документацията е отлична.
Споделете тази статия с приятели, които учат Linux. Запазете си я за справка. Командите тук са вечно актуални.



