Ako maskovať službu pomocou príkazu systemctl

Ako Maskovat Sluzbu Pomocou Prikazu Systemctl



Systemctl je nástroj príkazového riadka, ktorý sa používa na správu systémových služieb. Má rôzne možnosti na správu služby v systéme Linux, ako je spustenie služby, jej zastavenie, povolenie a zakázanie. Existuje ďalšia možnosť s názvom a maska .

Maskovanie služby systemd znamená, že služba je zakázaná a nemožno ju povoliť ani systémom alebo na manuálny príkaz. Maskovanie je silnejšia forma deaktivácie.

V tejto príručke vás prevediem, ako maskovať službu v systéme Linux pomocou systemctl a ako ju odmaskovať. Okrem toho sa budem venovať kľúčovým rozdielom medzi maskovanou službou a službou so zdravotným postihnutím.







POZOR: V systéme Linux sú služby vzájomne závislé. Keďže maskovanie službu znemožňuje a zakazuje jej aktiváciu, používajte ju opatrne.



Predtým, ako pôjdeme ďalej, najprv pochopme mechanizmus maskovanej služby.



Čo je to maskovaná služba

Maskovaná služba je trvalo zakázaná služba, ktorá zabraňuje jej aktivácii správcom systému alebo systému. Správcovia systému zvyčajne používajú maska možnosť deaktivácie nefunkčných alebo konfliktných služieb. Odporúča sa však používať túto možnosť opatrne, pretože maskovanie dôležitej systémovej služby môže priniesť prekážky pri zavádzaní systému.





Ako uviesť maskované služby

Ak chcete zobraziť maskované služby v systéme Linux, použite súbor zoznam-jednotiek možnosť s maskovaným stavom uvedeným.

systemctl zoznam-jednotky --štát = maskovaný



Ako maskovať službu

Príkaz systemctl možno použiť na maskovanie ľubovoľnej služby s maska možnosť. Všeobecná syntax príkazu je uvedená nižšie.

sudo maska ​​systemctl [ Názov služby ]

Možnosť masky vo vyššie uvedenej syntaxi v podstate vytvára symbolický odkaz na službu v /etc/systemd/system .

Môže sa uviesť aj jedna alebo viacero služieb oddelených medzerou.

Poďme maskovať službu SSH pomocou vyššie uvedenej syntaxe.

sudo systemctl maska ​​ssh.service

Ak chcete skontrolovať stav maskovanej služby, použite –štát= možnosť s systemctl zoznam-jednotky .

Ak sa pokúsite spustiť službu, dostanete výstup, ktorý hovorí, že jednotka je maskovaná.

Poznámka: Nemôžete maskovať službu vytvorenú v /etc/systemd/system adresár. Keďže služby v tomto adresári sú nevyhnutné pre systémové operácie, ich maskovanie môže poškodiť normálnu funkčnosť systému. Vypnutie týchto služieb sa však rovná ich maskovaniu.

Ako dočasne zamaskovať službu

Službu je možné maskovať až do nasledujúceho spustenia pomocou -beh programu možnosť.

sudo maska ​​systemctl [ Názov služby ] --beh programu

Vytvára symbolické prepojenie služby v /run/systemd/system adresár. Ak je symbolický odkaz služby už prítomný v adresári, potom je služba navrhnutá tak, aby bola dočasne maskovaná.

Ako demaskovať službu

Použite príkaz systemctl s odmaskovať možnosť odstrániť obmedzenia masky. Tento príkaz neprijme cestu k službe, preto je potrebné uviesť iba názvy služieb.

sudo systemctl odmaskovať [ Názov služby ]

Po demaskovaní služby možno budete musieť reštartovať systém.

Rozdiel medzi maskovanou službou a zakázanou službou

Deaktivovanú službu je možné povoliť a spustiť systémom a na manuálne príkazy. Maskovú službu však nie je možné povoliť ani systémom, ani manuálnou interakciou.

Keď je služba zakázaná, symbolický odkaz, ktorý sa vytvorí v /etc/systemd/system adresár sa odstráni a služba sa pri zavádzaní neaktivuje. Môžu ho však aktivovať závislé služby.

Na druhej strane je maskovaná služba prepojená s /dev/null čím sa stáva trvalo nepoužiteľným.

Všimnite si, že /dev adresár obsahuje súbory blokových zariadení. The /dev/null je virtuálne zariadenie, ktoré odstráni všetko, čo je v ňom zapísané. Vo všeobecnosti sa používa na vyradenie výstupu z stdout a stderr.

Záver

Ak chcete natrvalo zakázať akúkoľvek službu, použite príkaz systemctl mask. Maskovanú službu nemôže povoliť ani systém. V tejto príručke som sa zaoberal tým, ako maskovať službu natrvalo a dočasne. Okrem toho sme spomenuli aj spôsob demaskovania služby a kľúčové rozdiely medzi maskovanou a zakázanou službou.