콘텐츠로 건너뛰기

apache 데몬 실행 권한 설정

apachectl 은 httpd 데몬을 띄우는 일종의 alias로 작동한다.

apachectl 에서 옵션(-k)가 없을 경우 디폴트 옵션으로 적용한다.

그래서 apachectl start 를 실행하면 내부적으로는 httpd -k start 로 동작한다.

그런데 아래와 같은 오류가 발생한다.

Permission denied: make_sock: could not bind to address [::]:80
Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs

apache 데몬을 root 권한이 아닌 사용자 계정으로 로딩하기 위해서 소유권을 바꿨더니 발생한다.

기본적으로 예약된 포트는 root 권한 이외의 계정으로는 오픈할 수 없기 때문이다.

이럴 때는,

chown root.root httpd
chmod +s httpd

를 해주면, httpd의 권한이 -rwsr-sr-x 로 변경된다.

그리고 freeism(사용자 계정)으로 소유권이 지정된 ( 즉, chown freeism.freeism apachectl )

apachectl 을 통해서 httpd 데몬을 로딩하면,

사용자 계정으로 마치 root 처럼 데몬을 띄워준다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다