Paano Mag-mask ng Serbisyo gamit ang systemctl Command

Paano Mag Mask Ng Serbisyo Gamit Ang Systemctl Command



Ang systemctl ay isang command line utility na ginagamit upang pamahalaan ang mga serbisyo ng system. Mayroon itong iba't ibang mga opsyon upang pamahalaan ang serbisyo sa Linux, tulad ng pagsisimula ng isang serbisyo, paghinto nito, pagpapagana, at hindi pagpapagana nito. May isa pang opsyon na tinatawag na a maskara .

Ang pag-mask sa isang serbisyo ng systemd ay nangangahulugan na ang serbisyo ay hindi pinagana at hindi maaaring paganahin, kahit na sa pamamagitan ng system o sa manu-manong utos. Ang masking ay isang mas malakas na paraan ng hindi pagpapagana.

Sa gabay na ito, ituturo ko sa iyo kung paano i-mask ang isang serbisyo sa Linux gamit ang systemctl, at kung paano ito i-unmask. Bukod dito, sasaklawin ko ang mga pangunahing pagkakaiba sa pagitan ng isang naka-mask na serbisyo at isang may kapansanan na serbisyo.







Babala: Sa Linux, ang mga serbisyo ay magkakaugnay. Dahil ang pag-mask sa serbisyo ay hindi pinagana ito at ipinagbabawal ang anumang pag-activate, samakatuwid ay gamitin ito nang maingat.



Bago magpatuloy, unawain muna natin ang mekanismo sa likod ng serbisyong nakamaskara.



Ano ang Masked Service

Ang naka-mask na serbisyo ay isang permanenteng hindi pinaganang serbisyo na pumipigil dito na ma-enable ng system o system administrator. Karaniwang ginagamit ng mga tagapangasiwa ng system ang maskara opsyon na i-deactivate ang hindi gumagana o magkasalungat na serbisyo. Gayunpaman, inirerekomendang gamitin ang opsyong ito nang may pag-iingat, dahil ang pag-mask sa isang mahalagang serbisyo ng system ay maaaring magdulot ng mga hadlang sa pag-boot ng system.





Paano Ilista ang Mga Serbisyong Naka-mask

Upang ilista ang mga naka-mask na serbisyo sa Linux, gamitin ang listahan-mga yunit opsyon na may nabanggit na estadong nakamaskara.

systemctl list-units --estado = nakamaskara



Paano Mag-mask ng Serbisyo

Ang systemctl command ay maaaring gamitin upang i-mask ang anumang serbisyo gamit ang maskara opsyon. Ang pangkalahatang syntax ng command ay binanggit sa ibaba.

sudo systemctl mask [ Pangalan ng Serbisyo ]

Ang pagpipiliang mask sa itaas na syntax ay mahalagang gumagawa ng simbolikong link sa serbisyo sa /etc/systemd/system .

Ang isa o higit pang mga serbisyo ay maaari ding banggitin, na pinaghihiwalay ng isang espasyo.

I-mask natin ang serbisyo ng SSH gamit ang syntax sa itaas.

sudo systemctl mask ssh.service

Upang suriin ang katayuan ng isang naka-mask na serbisyo, gamitin ang –estado= opsyon na may systemctl list-units .

Kung tatangkain mong simulan ang serbisyo, makakatanggap ka ng output na nagsasabing nakamaskara ang unit.

Tandaan: Hindi mo mai-mask ang isang serbisyong ginawa sa /etc/systemd/system direktoryo. Dahil ang mga serbisyo sa direktoryo na ito ay mahalaga para sa mga pagpapatakbo ng system, ang pag-mask sa mga ito ay maaaring makapinsala sa normal na paggana ng system. Gayunpaman, ang hindi pagpapagana sa mga serbisyong ito ay katumbas ng pagtatakip sa kanila.

Paano Magtatakpan ng Pansamantalang Serbisyo

Ang isang serbisyo ay maaaring itago hanggang sa susunod na boot sa pamamagitan ng paggamit ng -runtime opsyon.

sudo systemctl mask [ Pangalan ng Serbisyo ] --runtime

Lumilikha ito ng simbolikong link ng serbisyo sa /run/systemd/system direktoryo. Kung ang simbolikong link ng serbisyo ay naroroon na sa direktoryo, ang serbisyo ay idinisenyo upang pansamantalang i-mask.

Paano I-unmask ang isang Serbisyo

Gamitin ang systemctl command kasama ang alisan ng maskara opsyon upang alisin ang mga paghihigpit sa maskara. Hindi tatanggapin ng utos na ito ang landas ng serbisyo, samakatuwid, ang mga pangalan ng serbisyo lamang ang kinakailangang banggitin.

sudo systemctl unmask [ Pangalan ng Serbisyo ]

Maaaring kailanganin mong i-reboot ang system pagkatapos i-unmask ang serbisyo.

Pagkakaiba sa pagitan ng Masked Service at Disabled Service

Ang isang hindi pinaganang serbisyo ay maaaring paganahin at simulan ng system at sa mga manu-manong utos. Gayunpaman, ang naka-mask na serbisyo ay hindi maaaring paganahin, alinman sa pamamagitan ng system o sa pamamagitan ng manu-manong pakikipag-ugnayan.

Kapag ang isang serbisyo ay ginawang hindi pinagana, isang simbolikong link na ginawa sa /etc/systemd/system ang direktoryo ay tinanggal, at ang serbisyo ay hindi na-activate sa boot. Ngunit maaari itong i-activate ng mga umaasa na serbisyo.

Sa kabilang banda, ang naka-maskarang serbisyo ay naka-link sa /dev/null na ginagawa itong permanenteng hindi magagamit.

Tandaan na ang /dev ang direktoryo ay naglalaman ng mga file ng mga block device. Ang /dev/null ay isang virtual na aparato na nag-aalis ng anumang nakasulat dito. Ito ay karaniwang ginagamit upang itapon ang output mula sa stdout at stderr.

Konklusyon

Kung gusto mong gawing permanenteng hindi pinagana ang anumang serbisyo, pagkatapos ay gamitin ang systemctl mask command. Ang isang naka-mask na serbisyo ay hindi maaaring paganahin kahit ng system. Sa gabay na ito, tinakpan ko kung paano i-mask ang isang serbisyo nang permanente, at pansamantala. Bukod dito, binanggit din namin ang isang paraan upang i-unmask ang isang serbisyo at ang mga pangunahing pagkakaiba sa pagitan ng isang naka-mask at naka-disable na serbisyo.