In RHEL7, RHEL8
systemctl mask ctrl-alt-del.target
# Disable CAD
readlink /etc/systemd/system/ctrl-alt-del.target
ls -l /etc/systemd/system/ctrl-alt-del.target
# /etc/systemd/system/ctrl-alt-del.target -> /dev/null
원본 파일은 /usr/lib/systemd/system/ctrl-alt-del.target 이고, custom 파일이 /etc/systemd/system/ 에 생성된다.
원본 파일은 reboot.target 을 link 하고 있으나, mask 를 씌우면 /etc/systemd/system/ctrl-alt-del.target 이 생성되어 /dev/null 을 가리키게 된다.
그럼에도 불구하고, Ctrl-Alt-Delete 를 2초 안에 7번 이상 누르면 reboot 된다.
이를 막으려면 아래 파일에 다음 내용을 작성하여 방지할 수 있다.
/etc/systemd/system.conf
CtrlAltDelBurstAction=none
systemd 의 설정을 reload 한다.
systemctl daemon-reexec
# systemctl daemon-reexec 는 systemd 자체의 설정에 적용
# systemctl daemon-reload 는 unit file 을 reload
In RHEL6
/etc/init/control-alt-delete.conf 을 수정하거나 /etc/init/control-alt-delete.override 를 생성해서, CAD 키를 다르게 동작하게 할 수 있다.
CAD 키가 눌린 경우 init 프로세스의 동작을 설정한 파일이 control-alt-delete.conf 파일이다.
이 파일을 수정하여, reboot 되지 않도록 할 수 있다.
만약 initscripts 패키지를 업데이트하게 되면, .conf 파일에 수정해 놓은 내용이 덮어씌워져, 설정이 사라지게 된다.
그런 이유로 /etc/init/*.override 파일을 생성해서, 기본 설정을 덮어쓰게 해서 유지하는 방법이 있다.
(override 는 6.3 버전에서의 upstart 패키지 기능으로 적용되었다. upstart-0.6.5-12.el6 이상부터 적용)
cp -v /etc/init/control-alt-delete.conf /etc/init/control-alt-delete.override
# conf 파일을 활용하여, override 파일을 만든다.
/etc/init/control-alt-delete.conf 의 원래 내용은 아래와 같다.
exec /sbin/shutdown -r now "Control-Alt-Delete pressed"
/etc/init/control-alt-delete.conf 파일을 직접 수정하거나, .override 파일을 만들어서 아래와 같이 수정한다.
exec /usr/bin/logger -p authpriv.notice -t init "Ctrl-Alt-Del was pressed and ignored"
아래 명령으로 conf or override 파일을 수정하자. (override 파일을 안 만들고, conf 에 직접 수정해 적용할 수도 있다.)
sed -i 's,^exec.*,exec /usr/bin/logger -p authpriv.notice -t init "Ctrl-Alt-Del was pressed and ignored",' /etc/init/control-alt-delete.conf
# or
sed -i 's,^exec.*,exec /usr/bin/logger -p authpriv.notice -t init "Ctrl-Alt-Del was pressed and ignored",' /etc/init/control-alt-delete.override
In RHEL5 and before
초기 스크립트인 /etc/inittab 파일에서 제어할 수 있다.
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
이 부분을 삭제 또는 주석처리하거나,
또는 다른 명령을 동작하게 할 수도 있다.(로깅하기 위해)
ca::ctrlaltdel:/bin/logger -p authpriv.warning -t init "Console-invoked Ctrl-Alt-Del was ignored"
init 프로세스가 /etc/inittab 을 다시 읽어들이도록 한다.
init q
'Linux & Unix' 카테고리의 다른 글
linux command - stat , statx (file timestamps) (0) | 2020.06.16 |
---|---|
linux 로그 - Permanent journal (systemd-journald) (0) | 2020.06.16 |
Linux cockpit (RHEL8, CentOS8 - 관리툴) (0) | 2020.02.13 |
chage 명령 (Linux) (0) | 2020.02.13 |
Linux NetworkManager ( nmcli 를 활용한 bonding 구성) (0) | 2019.07.15 |