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:
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.
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
På 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.