Hur man använder Systemd för att lista tjänster

De flesta moderna Linux-distributioner använder systemd som sitt init-system. Systemd hanterar tjänster genom att aktivera eller inaktivera så kallade ”service”-filer. Om du vill lista dessa tjänster men inte vet hur, är kommandot systemctl din nyckel.

Denna guide visar olika sätt att lista Systemd-tjänster i Linux. För att börja, se till att du använder ett Linux-system med systemd installerat. Öppna därefter en terminal och följ stegen nedan.

Lista Aktiva Tjänster med Systemd

När du arbetar med Systemd kan det vara användbart att veta vilka tjänster som är igång. Du kan enkelt lista aktiva tjänster med kommandot: systemctl --type=service --state=running.

Detta kommando skapar en tabell som visar alla aktiva tjänster med information om deras status och en kort beskrivning. Kör kommandot i terminalen för att se resultatet.

systemctl --type=service --state=running

Om du vill filtrera listan för en specifik tjänst kan du använda grep tillsammans med systemctl. Till exempel, för att kontrollera om ”snapd.service” körs, använd kommandot:

systemctl --type=service --state=running | grep 'snapd'

Detta visar endast informationen om Snapd-tjänsten. Du kan även spara utdata till en textfil med följande kommando:

systemctl --type=service --state=running > ~/aktiva-tjanster.txt

För att visa innehållet i textfilen, använd cat:

cat ~/aktiva-tjanster.txt

Visa Inaktiva Tjänster

Det är också möjligt att lista inaktiva Systemd-tjänster. I terminalen, använd kommandot systemctl --type=service --state=inactive:

systemctl --type=service --state=inactive

Detta ger en tabell med inaktiva tjänster. Du kan också använda grep för att söka efter en specifik tjänst, som exempelvis:

systemctl --type=service --state=inactive | grep 'updatedb.service'

För att spara resultatet i en textfil:

systemctl --type=service --state=inactive > ~/inaktiva-tjanster.txt

Och för att visa filens innehåll:

cat ~/inaktiva-tjanster.txt

Lista Alla Installerade Tjänster

För att se alla Systemd-tjänster, oavsett om de är aktiva eller inte, använd kommandot systemctl list-unit-files --type=service. Genom att utesluta --state visas alla service-filer.

systemctl list-unit-files --type=service

Du får en tabell med alla service-filer. För att filtrera ut en specifik tjänst, kombinera med grep:

systemctl list-unit-files --type=service | grep 'my-service'

För att exportera listan till en textfil:

systemctl list-unit-files --type=service > ~/service-filer.txt

Och visa filen med:

cat ~/service-filer.txt

Visa Status för Enskilda Tjänster

Det är även värdefullt att kunna se statusen för en enskild tjänst. Använd systemctl status följt av tjänstens namn. Till exempel, för ”NetworkManager.service”:

systemctl status NetworkManager

För att spara statusinformationen till en textfil:

systemctl status MyService > ~/MyService-status.txt

Visa filens innehåll med:

cat ~/MyService-status.txt