서로 비슷한 서비스를 제공하는 프로그램이 설치가 되어있을 경우에 사용하지 않을 서비스를 사용못하도록 하는 건데
(대표적인 예가 network & networkmanager, iptables & firewalld)
이를 사용하는 가장 궁극적인 이유는 유사한 기능을 하는 서비스가 대치하여 설치된 상태에서 둘다 서비스가 올라간다면 문제를 야기할 수 있기 때문임
서비스가 active 상태인데 mask 가 되면 리붓 또는 서비스 재시작을 하기전까지는 계속 유지됨
근데 사실 mask 가 아니더라도 서비스가 기동안되게 하는 방법은 있음
systemctl disable 이나 systemctl stop 과 같은 방법이다.
mask가 자주 사용되지는 않을 것 같지만, mask 의 강점은 해당 서비스가 의존성에 의해 실행되는 일도 발생하지 않을 정도로 그냥 실행 불가 상태가 된다는 점
[root@localhost system]# systemctl mask network.target
Created symlink from /etc/systemd/system/network.target to /dev/null.
[root@localhost system]# ls -al *network*
lrwxrwxrwx. 1 root root 9 Aug 29 10:15 network.target -> /dev/null
[root@localhost system]# systemctl status network.target
* network.target
Loaded: masked (/dev/null; bad)
Active: active since Mon 2018-04-02 15:57:55 KST; 4 months 27 days ago
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
[root@localhost system]# systemctl unmask network.target
Removed symlink /etc/systemd/system/network.target.
[root@localhost system]# systemctl status network.target
* network.target - Network
Loaded: loaded (/usr/lib/systemd/system/network.target; static; vendor preset: disabled)
Active: active since Mon 2018-04-02 15:57:55 KST; 4 months 27 days ago
Docs: man:systemd.special(7)
http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget
명령어적으로만 생각해본다면
/etc/systemd/system 안에
mask 를 하게되면
ln -s /dev/null network.target 파일이 생성되고
unmask 를 하게되면 rm network.target 이 되는 샘
'IT > LINUX' 카테고리의 다른 글
ouput redriection operators (0) | 2019.05.22 |
---|---|
running commands as root with sudo (0) | 2019.05.22 |
managing user password aging (0) | 2019.05.22 |
UID ranges (0) | 2019.05.22 |
ss (0) | 2019.05.22 |