Lær Linux

Alt om Daemons i Linux

Alt om Daemons i Linux

Siden Linux-operativsystemet er karakterisert som et multitasking-operativsystem, er en demon per definisjon et program som kontinuerlig kjøres som en bakgrunnsprosess. Kort sagt, utførelsen av denne prosessen er ikke avhengig av en aktiv brukers systeminteraksjon. En vanlig systembruker kan ikke kontrollere den periodiske kjøringen av en demonprosess.

Navngivningskonvensjonen som definerer de fleste daemon-prosesser er bokstaven 'suffiks' d. Denne navnekonvensjonen gjør det mulig å skille mellom normale systemprosesser og daemondrevne prosesser. For eksempel, sshd er en demoneprosess som er ansvarlig for styringen av innkommendeSSH tilkoblinger. Et annet eksempel på en demonprosess ersyslogd. Det er ansvarlig for Linux-systemloggingsanlegget.

I et Linux-miljø er lanseringen av demoner på oppstartstidspunktet. Siden Linux-systemet er en perfekt Unix-klon, kvalifiserer en init-prosess som overordnet prosess til en demon. For å starte og stoppe demoner på Linux-operativsystemet ditt, må du først få tilgang til/ etc / init.d skriptkatalogen på operativsystemet ditt.

Vanlige demoner fungerer

Nyttige Linux-tjenestedemoner

Enten du er en nybegynner-, mellom- eller ekspertbruker i Linux-operativsystemverdenen, vil du aldri unnlate å bli kjent med noen av de ovennevnte demonene når du fremmer dine ferdigheter og ekspertise i dette OS-miljøet.

Starte / stoppe / starte demoner: den terminalbaserte tilnærmingen

Nå som du har en liste over nyttige Linux-demoner å huske og utforske, er det første du trenger å vite hvordan du starter, stopper eller starter disse demonene på nytt. Når Linux Terminal er lansert, bør du vurdere følgende syntaksregler for å starte, stoppe og starte en demone på Linux-operativsystemet.

tjeneste foretrukket-daemon-navn start tjenesten foretrukket-demon-navn stopp  tjeneste foretrukket daemon-navn omstart

Bytt ut foretrukket-demon-navn syntaksargument med navnet på Linux-systemets demon som du velger. Du kan velge en fra dememonlisten som er uthevet ovenfor så lenge den er aktiv eller allerede definert på Linux-systemet ditt. For eksempel kan vi implementere den praktiske bruken av syntaksen ovenfor ved å prøve å starte, stoppe og starte adaemon. Naviger til / etc / init.d katalog på terminalen din for listen over tilgjengelige demoner på Linux-systemet ditt.

oppføring av aktive demoner på Linux-systemet ditt.png

hvordan du starter, stopper og starter en daemon-tjeneste på Linux-systemet ditt.png

Oppføring av Linux-systemets demoner

En mer effektiv måte å merke tilgjengelige demoner på Linux-systemet ditt i stedet for å navigere til / etc / init.d katalogen er å liste opp alle definerte aktive og inaktive demoner fra den katalogen med en enkelt kommando. Følgende kommando er effektiv for å nå dette målet.

$ service -status-all

liste opp alle demonene på Linux-operativsystemet.png

Avstivede positive [+] og negative [-] tegn foran de oppførte demonnavnene antyder at de er henholdsvis aktive eller inaktive.

Arbeide med brukerdefinerte demoner

Spesifikke regler eller protokoller må følges for å opprette og implementere en brukerdefinert daemon med hell. Disse protokollene hjelper deg med å forstå utførelsen av demoner i ethvert Linux-miljø fullt ut. Daemons er også fleksible nok til å grensesnitt med kjernemoduler gjennom systemanrop. Denne funksjonen for daemon-funksjonalitet støtter interaksjonen med maskinvareenheter som PDAer (Personal Digital Assistants), skrivere og levedyktige eksterne kontrollkort. Byggesteinene til demoner bidrar også til den karakteristiske kraften og fleksibiliteten til Linux-operativsystemet.

En relatabel daemonimplementering ved hjelp av Python er nøye demonstrert og dokumentert av Sander Marechal. Vær opptatt av å følge henrettelsesordren når du lager denne demonen. For det første trenger Linux-systemet ditt installasjon av Python-pakker for å kunne utvikle demoner. For å installere Python kan du bruke følgende kommando.

$ sudo apt installere python3-pip python3-dev

Koblingen til Sander Marechals forfatter Python-demonkode tilbyr også en raffinert Python 3-kodeversjon. Det vil hjelpe hvis du vurderer å implementere den for å forstå bedre hvordan demoner fungerer.

Hvis du er usikker på om du har Python installert, kjører du følgende kommando på Linux-terminalen.

$ python3 --versjon

Formålet med en hvilken som helst demon

Siden en enkelt demon er dedikert til å håndtere en bestemt oppgave, bør den utføre den til perfeksjon. Den aktuelle oppgaven kan være så enkel som å lage en rapport og sende den til en administrator via sendmail eller så komplisert som å administrere flere domener knyttet til flere postkasser. På et tidspunkt må demonen du skal lage, snakke med andre eksisterende demoner.

bruker-til-demon-interaksjon

Det frarådes å få systembrukeren og den opprettede demonen til å kommunisere direkte. Hvis det er nødvendig for demonen, lager du for å kommunisere med en systembruker. Denne kommunikasjonen kan tilrettelegges gjennom noe som et GUI-grensesnitt. Denne kommunikasjonsplattformen kan enten ha GTK + GUI-kompleksitet eller signalsett enkelhet.

Å lage din demon

Mange tilnærminger støtter opprettelsen av demoner. For eksempel kan du bruke kommandolinjegrensesnittet til å demonisere et Python-skript som følger:

$ python my_python_script.py &

Du kan lagre Sander Marechals forfatter Python3-demonkode på en Python-fil og demonisere den med kommandoen ovenfor. Mens den ovennevnte terminalkommandoen enkelt vil lage en demon for deg, må du takle utfordringer som uforutsigbare terminalutganger. Disse utfordringene avhenger av hvor godt du omformet Python-demonkoden din. Ovennevnte tilnærming støtter heller ikke tildeling av PID-låsefiler til spesifikke demoner. Det gjør det umulig å kontrollere noen demon da de fleste av dem kjøres øyeblikkelig. På den annen side, hvis du bare trenger en enkel daemon, vil den ovennevnte tilnærmingen gi deg de ønskede daemon-resultatene.

Daemon grunnleggende struktur

Før en demon utfører eller utfører en tiltenkt funksjon, må den vurdere noen forutinntatte regler som fører til utførelsen. Du kan tenke på disse reglene som husarbeid på lavt nivå som fører til den faktiske oppgaven. Disse reglene kan brytes ned i følgende trinn.

Mer om implementeringer av demoner, finner du på GitHub.

Installer det siste OpenRA-strategispillet på Ubuntu Linux
OpenRA er en Libre / Free Real Time Strategy-spillmotor som gjenskaper de tidlige Westwood-spillene som den klassiske Command & Conquer: Red Alert. Di...
Installer nyeste Dolphin Emulator for Gamecube & Wii på Linux
Dolphin Emulator lar deg spille de valgte Gamecube- og Wii-spillene dine på Linux Personal Computers (PC). Som en fritt tilgjengelig og åpen kildekod...
Hvordan bruke GameConqueror Cheat Engine i Linux
Artikkelen dekker en guide om bruk av GameConqueror-juksemotoren i Linux. Mange brukere som spiller spill på Windows bruker ofte "Cheat Engine" -appli...