Sistēmas pakalpojumiem ir izšķiroša nozīme Linux sistēmas darbībā, fonā veicot dažādus uzdevumus un procesus.systemctl>ir spēcīgs komandrindas rīks, kas lietotājiem ļauj efektīvi pārvaldīt šos pakalpojumus. Šajā rakstā mēs izpētīsim lietošanas pamatussystemctl>lai palaistu, apturētu, restartētu, iespējotu, atspējotu un parādītu pakalpojumu statusu Linux vidē.
Kas ir systemctl?
Pirms iedziļināties pakalpojumu pārvaldībā, ir svarīgi saprast pamatussystemctl>. Šī komanda tiek izmantota, lai kontrolētu systemd sistēmu un pakalpojumu pārvaldnieku, kas ir mūsdienu Linux izplatīšanas galvenā sastāvdaļa.
systemctl [command] [unit]>
Šeit,
-
command>: Veicamā darbība (piemēram, sākt, apturēt, restartēt, iespējot, atspējot). -
unit>: Ietekmētais pakalpojums vai vienība.
Systemctl ir kontrolieris vai Systemd lietderība (init sistēma ar programmu kopu, kas tiek izpildīta fonā), ar palīgierīcēm pārvaldības pakalpojumos. Šīs komandas tiek izpildītas saknes režīmā, ja neveicat sistēmas sakņu režīmu, pieprasot root paroli.
Kas ir pakalpojums?
Pakalpojums skaitļošanā ir fona process, kas veic konkrētus uzdevumus un funkcijas bez lietotāja iejaukšanās. Pakalpojumi bieži sākas automātiski sistēmas sāknēšanas laikā un darbojas nepārtraukti, lai nodrošinātu tādas funkcijas kā tīmekļa apkalpošana, failu koplietošana vai sistēmas uzraudzība. Tos pārvalda operētājsistēma, un pēc vajadzības tos var palaist, apturēt vai restartēt. Pakalpojumi palīdz nodrošināt būtisku darbību pastāvīgu pieejamību. Piemēri ir tādi tīmekļa serveri kā Apache, datu bāzes serveri, piemēram MySQL, un sistēmas reģistrēšanas pakalpojumi.
Kas ir dēmons?
Dēmons ir fona process, kas nepārtraukti darbojas Linux vai Unix sistēmā. Tas veic uzdevumus bez tiešas lietotāja mijiedarbības, bieži sākas automātiski sāknēšanas laikā. Parastie piemēri ir tīmekļa serveri, datu bāzu serveri un sistēmas uzraudzības rīki. Dēmoniem parasti ir nosaukumi, kas beidzas ar d, piemēramhttpd>vaisshd>. Tie palīdz efektīvi pārvaldīt sistēmas funkcijas un pakalpojumus.
Kas ir init sistēma?
Init sistēma ir pirmais process, kas tiek palaists Linux sistēmas sāknēšanas laikā un ir atbildīgs par sistēmas inicializēšanu. Tas pārvalda sistēmas pakalpojumus un procesus, apstrādājot to palaišanu, apturēšanu un restartēšanu. Parastās iniciēšanas sistēmas ietver SysVinit, Upstart un systemd. Init sistēma nodrošina visu nepieciešamo pakalpojumu pareizu darbību un pārvalda atkarības starp tiem. Tas turpina darboties fonā, lai uzraudzītu un pārvaldītu sistēmas procesus visā sistēmas darbības laikā.
Vienības sistēmād
Sistēmā systemd vienības ir pamata objekti, kurus systemd pārvalda un kontrolē. Tie atspoguļo sistēmas resursus, piemēram, pakalpojumus, taimerus, ierīces un pievienošanas punktus. Katru vienību nosaka konfigurācijas fails ar noteiktu sufiksu, piemēram.service>par pakalpojumiem vai.timer>taimeriem. Vienības var palaist, apturēt, iespējot vai atspējot, izmantojot systemctl komandas. Tie ir būtiski, lai noteiktu, kā sistēma sāk darboties un pārvalda dažādus procesus un resursus.
.servisa vienības sistēmād
Systemd.service>vienības ir konfigurācijas faili, ko izmanto pakalpojumu pārvaldībai Linux sistēmās. Tie nosaka, kā un kad pakalpojumi ir jāsāk, jāpārtrauc un jārestartē. Katrs.service>failā ir ietverta tāda informācija kā pakalpojuma nosaukums, apraksts un palaišanas komanda. Šie faili parasti atrodas/etc/systemd/system>vai/lib/systemd/system>. To pārvaldīšana ietver tādas komandas kāsystemctl start>,systemctl stop>, unsystemctl enable>.
Kā sistēmā atrast visas sistēmas vienības?
Lai uzskaitītu pieejamās sistēmas vienības vai uzskaitītu visus pakalpojumus operētājsistēmā Linux, mēs izmantojam šādu komandu:
systemctl list-unit-files --type service -all>
Kā palaist sistēmas pakalpojumu operētājsistēmā Linux
Sintakse:
seriāls postgres
sudo systemctl start service.service>
Komanda start kalpo vienas vai vairāku komandrindā norādīto vienību palaišanai (aktivizēšanai).
Piemērs:
sudo systemctl start mariadb>

Komanda Sākt
Kā apturēt sistēmas pakalpojumu operētājsistēmā Linux
Sintakse:
sudo systemctl stop service.service>
Komandas apturēšana kalpo, lai apturētu pakalpojumu vai (deaktivizētu) vienu vai vairākas komandrindā norādītās vienības.
Piemērs:
sudo systemctl stop mariadb>

Komanda Stop un Status
Kā parādīt sistēmas pakalpojuma statusu Linux
Sintakse:
sudo systemctl status service.service>
Komandas statuss kalpo, lai pārbaudītu pakalpojuma statusu. Rādīt īsu izpildlaika statusa informāciju par vienu vai vairākām vienībām, kam seko jaunākie žurnāla dati. Ja nav norādītas vienības, parādiet sistēmas statusu.
Piemērs:
sudo systemctl status mariadb>

Komandas statuss
Kā restartēt sistēmas pakalpojumu operētājsistēmā Linux
Sintakse:
attiecību sastāvs
sudo systemctl restart service.service>
Komanda restart kalpo pakalpojuma restartēšanai izpildes laikā. Apturiet un pēc tam palaidiet vienu vai vairākas komandrindā norādītās vienības. Ja vienības vēl nedarbojas, tās tiks iedarbinātas.
Piemērs:
sudo systemctl restart mariadb>

Komanda Restartēt
Kā iespējot sistēmas pakalpojumu operētājsistēmā Linux
Sintakse:
sudo systemctl enable name_service.service>
Iespējošanas komanda kalpo pakalpojuma izpildei kopš inicializācijas, ja tā sastāv no vienas vai vairākām vienībām vai vienību gadījumiem. Tādējādi tiks izveidots komplekts simbolsaites , kā tas ir kodēts norādīto vienību failu sadaļās [Instalēt]. sistēmas pārvaldnieka konfigurācija tiek pārlādēta (līdzvērtīgi dēmona pārlādēšanai), lai nodrošinātu, ka izmaiņas tiek nekavējoties ņemtas vērā.
Piemērs
sudo systemctl enable mariadb>

Komanda Iespējot

Komandas statuss
Kā atspējot sistēmas pakalpojumu operētājsistēmā Linux
Sintakse:
sudo systemctl disable name_service.service>
Atspējošanas komanda kalpo pakalpojuma atsaukšanai kopš vienas vai vairāku vienību inicializācijas. Tādējādi no vienības konfigurācijas direktorija tiek noņemtas visas simboliskās saites uz vienības failiem, kas atbalsta norādītās vienības, un tādējādi tiek atsauktas visas izmaiņas, kas veiktas, iespējojot vai saiti.
Piemērs:
sudo systemctl disable mariadb>

Komanda Atspējot

Komandas statuss
Izslēdziet vai restartējiet sistēmu, izmantojot systemctl
Restartējiet sistēmu: Tas pamācasystemd>lai restartētu visu sistēmu. Visi pakalpojumi tiek apturēti, un sistēma pirms restartēšanas tiek pilnībā izslēgta.
sudo systemctl reboot>
Izslēdziet sistēmu: Tas liek sistēmai izslēgt iekārtu. Visi pakalpojumi un procesi tiek apturēti, un sistēma ir droši izslēgta.
sudo systemctl shutdown>
Journalctl
journalctl>ir komanda, ko izmanto Linux sistēmās lai meklētu un parādītu žurnālus nosystemd>žurnāls, kas ir sistēmas pakalpojums, kas apkopo un saglabā reģistrēšanas datus. Šeit ir vienkāršs ceļvedis, kā lietotjournalctl>:
journalctl -n 10>tiek izmantots, lai parādītu pēdējos 10 ierakstus (rindas) no systemd žurnāla. Tālāk ir sniegts katras komandas daļas sadalījums:
-
journalctl>: izsaucjournalctl>komanda, ko izmanto, lai vaicātu un parādītu žurnālus no sistēmas žurnāla. -
-n 10>: norāda parādāmo rindu skaitu. Šajā gadījumā,-n 10>pamācajournalctl>lai parādītu pēdējos 10 žurnāla ierakstus.
journalctl -n 10>
Pakalpojuma nodrošināšana, izmantojot systemd, ir būtiska prakse, lai aizsargātu sistēmu pret iespējamām ievainojamībām un nesankcionētu piekļuvi. Šeit ir vienkāršota rokasgrāmata, kā to paveikt:
1. Izprotiet pakalpojumu vienības failus
- Pakalpojuma konfigurācija : katru systemd pakalpojumu pārvalda vienības fails, kas parasti atrodas
/etc/systemd/system/>. Šie faili nosaka pakalpojuma darbību, tostarp tā palaišanas darbību, resursu ierobežojumus un drošības iestatījumus.
2. Ierobežojiet pakalpojuma atļaujas
- Lietotāju un grupu atļaujas : norādiet lietotāju un grupu, kurā pakalpojums darbojas. Kad vien iespējams, izvairieties no root lietotāja izmantošanas, lai samazinātu drošības pārkāpumu ietekmi.
3. Izmantojiet sistēmas drošības līdzekļus
- PrivateTmp : iespējot privāto
/tmp>un/var/tmp>pakalpojuma direktorijus, lai novērstu informācijas noplūdi starp dažādiem pakalpojumiem. - ProtectSystem un ProtectHome : iestatiet šīs opcijas, lai ierobežotu piekļuvi attiecīgi sistēmas direktorijiem un lietotāju mājas direktorijiem, lai uzlabotu sistēmas drošību.
- ReadOnlyPaths un ReadWritePaths : norādiet, no kuriem direktorijiem pakalpojums var lasīt vai rakstīt. Rakstīšanas piekļuves ierobežošana var novērst neparedzētas kritisko failu modifikācijas.
4. Ierobežojiet resursu izmantošanu
- Ierobežojiet CPU un atmiņu : Izmantojiet
CPUQuota>unMemoryLimit>iespējas ierobežot pakalpojuma CPU un atmiņas lietojumu, novēršot resursu izsmelšanas uzbrukumus.
5. Iespējojiet tīkla vadīklas
- Ierobežot piekļuvi tīklam : izmantot
RestrictAddressFamilies>,IPAddressAllow>, unIPAddressDeny>iespējas kontrolēt pakalpojuma piekļuvi tīklam, ierobežojot tā pakļaušanu iespējamiem draudiem.
6. Iestatiet failu sistēmas atļaujas
- Failu sistēmas atļaujas : Pārliecinieties, vai pakalpojuma failiem un direktorijiem ir atbilstošas atļaujas (
chmod>) un īpašumtiesības (chown>), lai novērstu nesankcionētu piekļuvi.
7. Regulāri atjauniniet un uzraugiet
- Atjauniniet sistēmu : regulāri atjauniniet savu sistēmu un pakalpojumu programmatūru, lai izlabotu drošības ievainojamības un nodrošinātu, ka jūsu drošības pasākumi joprojām ir efektīvi.
- Uzraudzīt žurnālus : Uzraudzīt sistēmas žurnālu žurnālus (
journalctl>) par jebkādām aizdomīgām darbībām vai ar drošību saistītiem notikumiem un, ja nepieciešams, veiciet attiecīgas darbības.
Secinājums
Mēs apspriedām systemctl, kas ir būtisks komandrindas rīks sistēmas pakalpojumu pārvaldībai operētājsistēmā Linux, kam ir izšķiroša loma tādos uzdevumos kā pakalpojumu palaišana, apturēšana, restartēšana, iespējošana un atspējošana. Šajā rakstā ir sniegts visaptverošs systemctl ceļvedis, kas aptver tā sintaksi un taustiņu komandas. No pieejamo sistēmas vienību uzskaitīšanas līdz automātiskās palaišanas iespējošai vai atspējošanai katra komanda veicina efektīvu pakalpojumu pārvaldību. Rakstā tika apskatīti arī bieži uzdotie jautājumi, piedāvājot praktiskus risinājumus tādiem uzdevumiem kā pakalpojuma statusa pārbaude, pakalpojumu palaišana, apturēšana un restartēšana, kā arī automātiskās palaišanas iespējošana vai atspējošana. Kopumā sistēmasctl komandu izpratne un apguve ir būtiska Linux administratori lai nodrošinātu savu sistēmu stabilitāti un optimālu darbību.
Systemctl — FAQ
Kas ir Linux pakalpojums?
Linux pakalpojums ir fona process vai lietojumprogramma, kas darbojas neatkarīgi no lietotāja mijiedarbības, nodrošinot noteiktu funkcionalitāti vai veicot sistēmas uzdevumus. To pārvalda init sistēma, parasti systemd, un to var palaist, apturēt un pārvaldīt, izmantojot tādas komandas kā
systemctl>.
Kāda ir atšķirība starp Systemctl un pakalpojumu?
systemctl>ir komandrindas rīks, ko izmanto, lai pārvaldītu sistēmas pakalpojumusservice>ir simboliska saite uzsystemctl>daudzās sistēmās, nodrošinot saderību ar vecākiem sākuma skriptiem.
Kā pārbaudīt pakalpojuma statusu operētājsistēmā Linux?
Izmantojiet `
systemctl status `>lai redzētu, vai pakalpojums darbojas, aktīvs (nesen apturēts) vai neaktīvs (nekad nav palaists). Tas atklāj svarīgu informāciju, piemēram, atmiņas lietojumu un aktīvos savienojumus.
Kā sākt, apturēt, restartēt pakalpojumu?
Lai sāktu , izmantojiet:
sudo systemctl start>Par apstāšanos , izmantojiet:
sudo systemctl stop>Lai restartētu , izmantojiet:
sudo systemctl restart>Piezīme : Atcerieties nomainīt
>ar faktisko pakalpojuma nosaukumu.
Kā panākt, lai pakalpojums sāknēšanas laikā tiktu sākts automātiski?
Izmantot
sudo `>systemctl enable `>lai iestatītu pakalpojuma slēgšanu automātiski, kad sistēma sāknējas.notīriet npm kešatmiņuLai atspējotu automātisko palaišanu, izmantojiet `
sudo systemctl disable `>.