power / knowledge
NUT 설정 파일의 소유권과 권한
NUT은 설치할 때 nut 이라는 사용자를 자동으로 만든다. 데몬들이 root가 아니라 이 사용자로 도는데, 그래서 파일 권한이 안 맞으면 서비스가 조용히 실패한다.
| 경로 | 소유 | 권한 | 이유 |
|---|---|---|---|
/etc/nut/nut.conf |
root:nut |
640 | 데몬이 읽어야 한다 |
/etc/nut/ups.conf |
root:nut |
640 | 데몬이 읽어야 한다 |
/etc/nut/upsd.conf |
root:nut |
640 | 데몬이 읽어야 한다 |
/etc/nut/upsd.users |
root:nut |
640 | 데몬이 읽어야 한다 |
/etc/nut/upsmon.conf |
root:nut |
640 | 데몬이 읽어야 한다 |
/etc/nut/upssched.conf |
root:nut |
640 | 데몬이 읽어야 한다 |
/etc/nut/ups_notify_telegram |
root:nut |
750 | nut 이 실행해야 한다 |
/run/nut/ |
root:nut |
770 | POWERDOWNFLAG와 pipe, lock 파일이 여기 생긴다 |
/usr/sbin/upssched |
root:root |
755 | NOTIFYCMD로 불린다 |
설정 파일은 640이면 된다. 읽기만 하면 되고, 비밀번호가 들어 있으니 others에게는 아무것도 주지 않는다.
두 군데가 다르다.
ups_notify_telegram 은 nut 이 실행해야 하므로 750이다. 640으로 두면 알림만 조용히 안 온다. upsmon 은 계속 잘 도니까 알아채기 어렵다.
/run/nut/ 은 쓰기가 필요해서 770이다. upssched 가 여기에 pipe와 lock 파일을 만들고, 종료 과정에서 POWERDOWNFLAG도 여기 생긴다. 이게 막히면 종료 절차 자체가 어긋난다.
$ chmod 750 <파일>
$ chown root:nut <파일>
$ chown -R root:nut <폴더>