Direct naar de hoofdinhoud
Module 5 · Les 2 van 211/11 in de cursus~15 min
Modulelessen (2/2)

Taakcontrole en logboeken (bg, fg, tail)

Wanneer u de terminal gebruikt, wilt u mogelijk een langetermijnopdracht uitvoeren zonder de shell te vergrendelen. Linux ondersteunt Job Control, waarmee u processen naar de achtergrond kunt sturen en weer naar de voorgrond kunt schakelen. Daarnaast leert u hoe u logbestanden kunt monitoren om te controleren wat er op het systeem gebeurt.


Commando's uitvoeren op de achtergrond: & en jobs

Om een ​​opdracht direct op de achtergrond te starten (waarbij de controle over de terminal onmiddellijk wordt vrijgegeven), voegt u het teken & (ampersand) toe aan het einde van de opdracht:

Bash
sleep 1000 &

Deze opdracht retourneert een taaknummer (bijvoorbeeld [1]) en een PID.

Vacatures weergeven: jobs

De opdracht jobs geeft een overzicht van de actieve processen die zijn gekoppeld aan de huidige shell-sessie en die op de achtergrond worden uitgevoerd of zijn opgeschort:

Bash
jobs

Verplaatsprocessen: fg, bg en Ctrl+Z

Als er een opdracht op de voorgrond wordt uitgevoerd en de terminal blokkeert, kunt u:

  1. Druk op Ctrl + Z om het huidige proces te onderbreken (pauzeren).
  2. Gebruik de opdracht bg (achtergrond) om het onderbroken proces op de achtergrond opnieuw te starten:
    Bash
    bg %1   # Restarts job 1 in the background
  3. Gebruik de opdracht fg (voorgrond) om een achtergrondproces terug naar de voorgrond te brengen:
    Bash
    fg %1   # Brings job 1 to the foreground

Controlelogboeken: tail en journalctl

Systeem- en applicatielogboeken registreren belangrijke gebeurtenissen. Vaak moet u deze bestanden in realtime bekijken terwijl ze worden geschreven.

Het einde van een bestand bekijken: tail

Met de opdracht tail worden de laatste regels van een bestand weergegeven (standaard is dit 10 regels):

Bash
tail /var/log/syslog
tail -n 20 /var/log/syslog    # Shows the last 20 lines

Om een ​​bestand in realtime te monitoren (bijvoorbeeld om logberichten te bekijken die zijn gegenereerd tijdens het testen van een applicatie), gebruikt u de optie -f (volgen):

Bash
tail -f logs/server.log

Probeer het zelf

Oefening 1: Maak een lijst van actieve taken

Oefening#linux.m5.l2.e1
Pogingen: 0Laden…

Geef de lijst met huidige taken (achtergrond- of opgeschorte processen) in de terminalsessie weer met behulp van de opdracht 'jobs'.

Editor laden…
Toon hint

Gebruik eenvoudigweg het commando 'jobs'.

Oplossing beschikbaar na 3 pogingen

Oefening 2: Breng een baan naar de voorgrond

Oefening#linux.m5.l2.e2
Pogingen: 0Laden…

Breng de momenteel actieve achtergrondtaak naar de voorgrond met behulp van de opdracht 'fg'.

Editor laden…
Toon hint

Gebruik het commando 'fg' om de taak weer naar de voorgrond te brengen.

Oplossing beschikbaar na 3 pogingen

Oefening 3: Controleer de laatste regels van een log

Oefening#linux.m5.l2.e3
Pogingen: 0Laden…

Geef de laatste regels van het logbestand weer op 'logs/server.log' met behulp van de opdracht 'tail'.

Editor laden…
Toon hint

Gebruik 'tail' gevolgd door het bestandspad: 'logs/server.log'.

Oplossing beschikbaar na 3 pogingen