Hvordan fikse SystemCTL -kommandoen ikke funnet feil i Linux

Hvordan fikse SystemCTL -kommandoen ikke funnet feil i Linux

Linux har flere forskjellige kommandoer for å utføre forskjellige oppgaver. Noen ganger møter imidlertid brukere feil mens de kjører kommandoer. En av de vanlige feilene er “SystemCTL -kommando ikke funnet”. Denne feilen oppstår når systemet finner SystemCTL -kommandoen mangler. Denne artikkelen dekker SystemCTL -kommandoen ikke funnet feil i detalj.

Hva er SystemCTL -kommando

SystemCTL er et kommandolinjeverktøy i Linux som kontrollerer systemets tjenester. Det er et viktig verktøy som gjør det mulig for systemadministratorer å administrere systemets tjenester og ressurser. SystemCTL -kommandoen lar brukere begynne, slutte, aktivere, deaktivere og starte tjenester på Linux -systemet på nytt på Linux -systemet.

Hva som forårsaker "SystemCTL -kommandoen ikke funnet" -feilen

Feilen "SystemCTL -kommandoen ikke funnet" oppstår når systemet finner systemet Mangler. Hovedårsaken til SystemCTL -feil er bruken av den gamle Linux -versjonen. Gamle Linux -versjoner har bare støtte for sysvinit i stedet for systemd -verktøyet.

Som SystemD -verktøy mangler i noen eldre versjoner av Linux. SystemCTL er kompatibel med dette verktøyet. Men hvis du bruker SystemCTL med eldre Linux -konfigurasjoner som for eksempel sysvinit eller upstart Feilkommandoen som ikke er funnet vil oppstå.

Her er listen over mulige årsaker som den oppstår:

  • SystemCTL -pakken er ikke installert
  • Banemiljøvariabelen er ikke riktig
  • SystemCTL -kommandoen er ikke kjørbar
  • Systemet kjører ikke et systemd-basert init-system

Hvordan fikse feilen "SystemCTL -kommandoen ikke funnet"

Hvis du bruker Linux -versjonen som ikke bruker SystemD som et sentralt styringsverktøy, er her noen raske rettelser til denne feilen.

  • Installer SystemCTL -pakken
  • Sjekk banemiljøvariabelen
  • Gjør SystemCTL -kommandoen kjørbar
  • Sjekk init -systemet
  • Erstatte SystemCTL med tjenestekommandoen

1: Installer SystemCTL -pakken

Hvis SystemCTL -pakken ikke er installert på systemet, er det første trinnet å installere den. Du kan installere SystemCTL -pakken ved hjelp av Linux Package Manager.

Å installere SystemD -pakken kan løse problemet, men det er ikke en garantert løsning. Det er nødvendig å først sjekke om Systemd Pakken er allerede installert på systemet ditt.

Kjør følgende kommando for å sjekke om SystemCTL Pakker er installert eller ikke:

sudo dpkg -l | grep systemd

Hvis pakkene allerede er installert, vises utgangen som viser at SystemD allerede er installert:

I tilfelle hvis pakkene ikke er installert, kan vi installere det ved å bruke trinnene nedenfor.

For eksempel å installere den på Ubuntu og Debian-baserte systemer, Kjør gitte kommandoer for å installere SystemCTL -pakken.

Første oppdateringspakker:

sudo apt oppdatering

Kjør under kommandoen for å installere SystemD:

sudo apt install Systemd

Red Hat-baserte systemer Bruk kommando:

sudo yum installer systemd

Hvis du fremdeles møter en feil til tross for at du har installert SystemD, kan det være lurt å vurdere å installere den på nytt ved hjelp av følgende kommando.

sudo apt install -reinstall systemd

Ved å installere SystemD -verktøyet, bør dette løse problemet.

2: Sjekk banemiljøvariabelen

Hvis banemiljøvariabelen ikke er satt riktig, kan det hende at systemet ikke kan finne SystemCTL -kommandoen. Du kan sjekke banemiljøvariabelen ved å kjøre følgende kommando:

ekko $ bane

Utgangen skal inneholde banen til katalogen der SystemCTL -kommandoen er lokalisert. Hvis den ikke er til stede, kan du legge til katalogen i banemiljøvariabelen ved å bruke følgende kommando:

Eksportbane = $ bane:/usr/bin/systemctl

3: Gjør SystemCTL -kommandoen kjørbar

Hvis SystemCTL -kommandoen ikke kan kjøres, gjør den kjørbar ved hjelp av CHMOD. Bruk kommandoen nedenfor for å gjøre SystemCTL -kommandoen kjørbar:

sudo chmod +x/usr/bin/systemctl

4: Sjekk init -systemet

En av hovedårsakene til SystemCTL Kommandoen fungerer ikke er hvis systemet ditt ikke kjører et systemd-basert init-system, kan du møte "SystemCTL -kommando ikke funnet”Feil. For å sjekke om systemet ditt kjører en SystemD-basert init-system, Du kan kjøre følgende kommando:

ps -p 1 -o comm =

Hvis utgangen er "Systemd“Systemet ditt kjører et systemd-basert init-system. Hvis utgangen ikke er "SystemD", kan det hende du må bytte til et SystemD-basert init-system for å bruke SystemCTL-kommandoen.

5: Erstatter SystemCTL med tjenestekommandoen

En enkel løsning for å fikse “sudo: SystemCTL: Kommando ikke funnet”Feil er å bruke tjenestekommandoen i stedet for SystemCTL. Tjenestekommandoen kan brukes til å kjøre System V init -skript, som støttes av eldre versjoner av Linux.

I tilfelle du ikke vil installere Systemd Utility, da er denne løsningen en enkel og effektiv løsning. Ved å bruke tjenestekommandoen, kan du administrere systemtjenester med letthet, uten å måtte bruke SystemCTL -kommandoen.

Merk at tjenestekommandoen kanskje ikke er tilgjengelig for alle tjenester, og noen tjenester kan kreve bruk av SystemCTL.

Følgende syntaks vil bli fulgt av tjenestekommando:

sudo service [service_name] [action]

Du kan også bruke andre kommandoer med tjenestekommandoen, for eksempel stopp, omstart, status og laste inn, avhengig av hva du vil gjøre med tjenesten.

For eksempel for å kjøre samme kommando med UFW -tjenestens bruk:

sudo service ufw start

For å identifisere og liste tjenestene navn for å administrere bruk:

SystemCTL-liste-enheter

Dette vil vise en liste over alle kjøretjenestene som for øyeblikket kjører på systemet ditt:

Konklusjon

SystemCTL -kommando ikke funnet”Feil er en vanlig feil i Linux. Det kan være forårsaket av flere grunner, inkludert SystemCTL Pakken blir ikke installert, og banemiljøvariabelen blir ikke satt riktig, SystemCTL Kommando blir ikke kjøres, og systemet kjører ikke et systemd-basert init-system. Bruk av tjenestekommando i stedet for SystemCTL Kommando Vi kan enkelt fikse denne feilen for eldre Linux -distros.