Przejdź do głównej treści
eLearner.app
Moduł 5 · Lekcja 2 z 211/11 w kursie~15 min
Lekcje modułu (2/2)

Kontrola zadań i logi (bg, fg, tail)

Podczas korzystania z terminala możesz chcieć uruchomić długo działające polecenie bez blokowania powłoki (shell). Linux obsługuje kontrolę zadań (Job Control), która umożliwia przesyłanie procesów do tła i przełączanie ich z pierwszym planem. Ponadto nauczysz się monitorować logi, aby sprawdzać, co dzieje się w systemie.


Uruchamianie poleceń w tle: & i jobs

Aby uruchomić polecenie bezpośrednio w tle (natychmiast zwalniając kontrolę nad terminalem), na końcu polecenia dodaje się znak & (ampersand):

Bash
sleep 1000 &

To polecenie zwraca numer zadania (np. [1]) oraz PID.

Listowanie zadań: jobs

Polecenie jobs wyświetla listę aktywnych procesów powiązanych z bieżącą sesją powłoki, które działają w tle lub są wstrzymane:

Bash
jobs

Przenoszenie procesów: fg, bg i Ctrl+Z

Jeśli polecenie działa na pierwszym planie (foreground) i blokuje terminal, możesz:

  1. Nacisnąć Ctrl + Z, aby wstrzymać (zapauzować) bieżący proces.
  2. Użyć polecenia bg (background), aby wznowić wstrzymany proces w tle:
    Bash
    bg %1   # Wznawia zadanie 1 w tle
  3. Użyć polecenia fg (foreground), aby przenieść proces z tła na pierwszy plan:
    Bash
    fg %1   # Przenosi zadanie 1 na pierwszy plan

Monitorowanie logów: tail i journalctl

Logi systemowe i aplikacji rejestrują ważne zdarzenia. Często zachodzi potrzeba obserwowania tych plików w czasie rzeczywistym, w miarę ich zapisywania.

Wyświetlanie końca pliku: tail

Polecenie tail wyświetla ostatnie linie pliku (domyślnie 10 linii):

Bash
tail /var/log/syslog
tail -n 20 /var/log/syslog    # Wyświetla ostatnich 20 linii

Aby monitorować plik w czasie rzeczywistym (na przykład w celu przeglądania logów generowanych podczas testowania aplikacji), użyj opcji -f (follow):

Bash
tail -f logs/server.log

Spróbuj sam

Ejercicio 1: Elenca i job attivi

Ćwiczenie#linux.m5.l2.e1
Próby: 0Ładowanie...

Wyświetl listę bieżących zadań (procesów w tle lub wstrzymanych) w sesji terminala za pomocą polecenia 'jobs'.

Ładowanie edytora...
Pokaż wskazówkę

Użyj po prostu polecenia 'jobs'.

Rozwiązanie dostępne po 3 próbach

Ejercicio 2: Porta un job in primo piano

Ćwiczenie#linux.m5.l2.e2
Próby: 0Ładowanie...

Przenieś na pierwszy plan (foreground) aktualnie aktywne zadanie w tle za pomocą polecenia 'fg'.

Ładowanie edytora...
Pokaż wskazówkę

Użyj polecenia 'fg', aby przenieść zadanie z powrotem na pierwszy plan.

Rozwiązanie dostępne po 3 próbach

Ejercicio 3: Controlla le ultime righe di un log

Ćwiczenie#linux.m5.l2.e3
Próby: 0Ładowanie...

Wyświetl ostatnie linie pliku logu znajdującego się w 'logs/server.log' za pomocą polecenia 'tail'.

Ładowanie edytora...
Pokaż wskazówkę

Użyj 'tail', po którym podasz ścieżkę do pliku: 'logs/server.log'.

Rozwiązanie dostępne po 3 próbach