Wisdom’s Cloud

[Linux] [CentOS] ConditionFileIsExecutable=/etc/rc.d/rc.local was not met 본문

LINUX/Advanced

[Linux] [CentOS] ConditionFileIsExecutable=/etc/rc.d/rc.local was not met

지혜로운지혜쓰 2022. 9. 4. 16:30

 

 

 

rc-local이란?

 

rc-local는 부팅 시 자동으로 스크립트를 수행하는 역할을 한다.

따라서 부팅할 때마다 자동으로 실행되기를 원하는 스크립트를 /etc/rc.d/rc.local 파일에 작성하여, 부팅 시 가장 나중에 적용하도록 한다.

 

 

먼저 rc-local 서비스의 상태를 확인해보자.

CentOS 7부터 rc-local 서비스가 기본적으로 비활성화되어 있기 때문에 ConditionFileIsExecutable=/etc/rc.d/rc.local was not met이라는 에러가 뜨면서 동작하지 않는다.

 

 

/etc/rc.d/rc.local 파일을 확인해보면, 부팅 시 자동으로 /etc/rc.d/rc.local 파일을 실행하려면 실행 권한을 추가해야 한다고 나와있기 때문에 실행 권한을 추가하자.

그리고 부팅 시 자동으로 /var/lock/subsys/local 파일을 생성하고, 로그 메시지를 기록하도록 설정하였다.

[root@test-node-1 ~]# chmod +x /etc/rc.d/rc.local

 

 

다음으로 재부팅 후에도 rc-local 서비스가 활성화될 수 있도록 설정하자.

[root@test-node-1 ~]# systemctl enable rc-local

 

 

그리고 재부팅을 한 후, rc-local 서비스의 상태를 확인해보면 잘 동작하고 있다.

 

 

부팅 시에 자동으로 /var/lock/subsys/local 파일을 생성하였고, 로그 메시지도 잘 기록된 것을 확인할 수 있다. 😃