Jedna komenda, cztery monitory systemu – magia tmux w praktyce

Wyobraź sobie, że jednym poleceniem w systemie Linux uruchamiasz kompletny widok do monitorowania systemu Linux tzn. CPU, sieć, dyski i miejsce na dysku.

Bez klikania. Bez konfiguracji GUI. Czysty terminal.

Brzmi jak coś dla administratora z 10-letnim doświadczeniem?
Nie – to po prostu dobrze użyty tmux.

Dziś rozłożymy na czynniki pierwsze tę komendę:

tmux new-session \; send-keys 'top -d 7' C-m \; split-window -v -p 70 \; send-keys 'bwm-ng -t 2000' C-m \; split-window -v \; send-keys 'S_COLORS=never iostat -k 5 -s -y -z' C-m \; select-pane -t 1 \; split-window -h \; send-keys 'watch -n 61 df' C-m

I pokażemy, jak z niej zrobić własny terminalowy dashboard.

Co ta komenda właściwie robi?

Tworzy sesję tmux i dzieli ekran na kilka paneli, w których uruchamia różne narzędzia monitorujące:

  • CPU → top
  • sieć → bwm-ng
  • I/O dysku → iostat
  • miejsce na dysku → df (przez watch)

Efekt? Coś w stylu terminalowego centrum dowodzenia.

Krok po kroku

1. Start sesji tmux

tmux new-session \;

Tworzy nową sesję. To jak otwarcie pustego workspace’u.

2. Uruchomienie monitoringu CPU

send-keys 'top -d 7' C-m \;

Uruchamia top:

  • -d 7 → odświeżanie co 7 sekund
  • C-m → symuluje ENTER (czyli wykonuje komendę)

Info: W tym momencie masz pierwszy panel z CPU i procesami.

3. Podział okna (góra/dół)

split-window -v -p 70 \;
  • -v → podział pionowy (czyli góra/dół)
  • -p 70 → dolny panel zajmuje 70%

Teraz masz dwa panele:

  • mały u góry (top)
  • duży na dole

4. Monitoring sieci

send-keys 'bwm-ng -t 2000' C-m \;

Uruchamia bwm-ng:

  • -t 2000 → odświeżanie co 2 sekundy

Info: Widzisz ruch sieciowy w czasie rzeczywistym.

5. Kolejny podział (więcej paneli)

split-window -v \;

Dzieli dolny panel jeszcze raz.

Teraz masz:

  • góra: top
  • środek: bwm-ng
  • dół: pusty panel

6. Monitoring operacji dyskowych

send-keys 'S_COLORS=never iostat -k 5 -s -y -z' C-m \;

Uruchamia iostat:

  • -k → w kilobajtach
  • 5 → co 5 sekund
  • -s → podsumowanie
  • -y → pomija pierwszy raport (często mylący)
  • -z → ukrywa nieaktywne urządzenia
  • S_COLORS=never → bez kolorów (czytelniej w tmux)

Info: Idealne do diagnozowania „czemu dysk muli”.

7. Powrót do pierwszego panelu

select-pane -t 1 \;

Wracamy do panelu z top.

8. Podział na lewo/prawo

split-window -h \;
  • -h → podział poziomy (lewo/prawo)

Teraz obok top pojawi się nowy panel.

9. Monitoring miejsca na dysku

send-keys 'watch -n 61 df' C-m

Uruchamia watch, który co 61 sekund wykonuje:

df

Info: Dostajesz cykliczny podgląd zajętości dysków.

Finalny układ

Efekt końcowy wygląda mniej więcej tak:

+-------------------+----------------------+
| top (CPU) | df (co 61s) |
+-------------------+----------------------+
| bwm-ng (network) |
+------------------------------------------+
| iostat (disk I/O) |
+------------------------------------------+

Dlaczego to jest potężne narzędzie monitorowania systemu Linux?

Bo:

  • wszystko w jednym miejscu
  • działa przez SSH
  • zero GUI
  • ekstremalnie szybkie
  • pełna kontrola

To podejście jest często używane przez:

  • DevOpsów
  • administratorów
  • ludzi diagnozujących problemy wydajnościowe

About the author

Autor "BIELI" to zapalony entuzjasta otwartego oprogramowania, który dzieli się swoją pasją na blogu poznajlinuxa.pl. Jego wpisy są skarbnicą wiedzy na temat Linuxa, programowania oraz najnowszych trendów w świecie technologii. Autor "BIELI" wierzy w siłę społeczności Open Source i zawsze stara się inspirować swoich czytelników do eksplorowania i eksperymentowania z kodem.