15 поширених команд Linux (repost з ITEDU.center)

 У цій статті зібрали 15 поширених команд, які варто знати кожному сисадміну. Це не повний список можливостей Linux, але вони допоможуть моніторити систему, знаходити помилки й автоматизувати рутину.

htop — зручний перегляд процесів у реальному часі

Це вдосконалений варіант команди top, але з інтуїтивним інтерфейсом і можливістю управляти процесами безпосередньо. htop показує:

  • навантаження на CPU та RAM у вигляді графіків;
  • повну структуру процесів у вигляді дерева;
  • можливість завершити процес без введення PID.

lsof — перевірка відкритих файлів і портів

lsof (List Open Files) дозволяє дізнатися, які процеси використовують конкретні файли або порти. Корисно, якщо порт уже зайнятий, і сервіс не стартує.

lsof -i :80

Це допоможе зʼясувати, що саме використовує порт 80 — зазвичай вебсервер або інша мережева служба.

journalctl — перегляд логів у системах із systemd

Для Ubuntu 18.04+, CentOS 7+ та інших дистрибутивів із systemd ця команда — мастхев. Вона дозволяє:

  • читати системні журнали;
  • шукати помилки;
  • фільтрувати логи за сервісами.

journalctl -xe        # перегляд останніх повідомлень і помилок

journalctl -u nginx   # перегляд логів конкретного сервісу nginx

systemctl — керування службами

Це основна команда для взаємодії з systemd. За допомогою systemctl ти можеш

  • запускати та зупиняти сервіси;
  • вмикати автозапуск;
  • перевіряти статус служб.

systemctl status sshd    

systemctl restart apache2 

systemctl enable nginx    

du — аналіз використання диска

du (disk usage) дозволяє побачити, які каталоги займають найбільше місця.

du -sh /var/* 

Зручно, коли потрібно зʼясувати, чому диск майже заповнений.

df — перевірка вільного місця

Показує, скільки вільного простору залишилось на розділах. З прапорцем -h (human-readable) результат виводиться у зручному вигляді: мегабайти, гігабайти, замість байтів.

df -h

Цю команду найчастіше використовують, коли програми падають через нестачу місця.

free — моніторинг оперативної памʼяті

Ця команда покаже, скільки оперативки та swap розділу використовується.

free -h   # вивід доступної та зайнятої памʼяті 

Зручно для базової діагностики, якщо система почала гальмувати.

uptime — навантаження на систему

Показує аптайм системи, кількість активних користувачів і середнє навантаження за останні 1, 5 та 15 хвилин.

uptime   # коротка зведена інформація про роботу системи

top — базовий моніторинг процесів

Менш зручна за htop: складніша навігація, але встановлена майже в кожному дистрибутиві.

top   # перегляд процесів у реальному часі

ps aux — знімок усіх процесів

Команда показує всі запущені процеси в системі. Можна поєднувати з grep, щоб шукати конкретні сервіси:

ps aux | grep apache

ps aux –sort=-%mem | head

ss — перевірка мережевих зʼєднань

Сучасна альтернатива netstat. Вона швидша, детальніша і вже включена в більшість дистрибутивів.

ss -tuln   # показує активні TCP/UDP-порти та процеси, що їх слухають

Показує, які порти відкриті, які служби їх використовують і які зовнішні зʼєднання активні.

ip — конфігурація мережі

Це сучасна утиліта для роботи з мережевими інтерфейсами, маршрутами й адресацією. Вона прийшла на заміну застарілому ifconfig і дає більше контролю.

За допомогою команди можна:

  • переглядати конфігурацію мережевих інтерфейсів (`ip a`);
  • керувати маршрутами (`ip r`);
  • призначати IP-адреси або змінювати їх вручну.

ping — перевірка доступності

Найпростіший спосіб перевірити, чи хост доступний у мережі. ping надсилає запити ICMP й чекає на відповідь

ping google.com

ping -c 4 192.168.0.1

traceroute — діагностика маршрутів

Допомагає зʼясувати, на якому етапі виникає проблема з мережею або де затримуються пакети.

traceroute google.com   # відображення маршруту пакетів до хоста

nc — перевірка портів

Дозволяє перевірити, чи відкритий порт 22 (SSH) на віддаленому хості та чи відповідає служба. Корисно для діагностики SSH, вебсерверів, баз даних тощо.

nc -zv 192.168.1.10 22


Як дізнатися в якому шелі ті працюєш зараз

echo $0
ps -p $$
: The $$ parameter holds the Process ID (PID) of the current shell.
echo $SHELL
readlink /proc/$$/exe
: (On Linux systems that support the /proc filesystem) This command will display the actual executable file that is running your current shell session, resolving any symbolic links

Comments

Popular posts from this blog

Открываем порт для сервера Minecraft на роутере mikrotik (команда для терминала в WinBox)

Интересное о Формальдегиде