Files
kui-vault/content/03.Note/리눅스에 Nginx를 설치할 때 일어나는 일들.md
2026-04-09 10:48:09 +09:00

3.6 KiB

id, created, tags, aliases
id created tags aliases
리눅스에 Nginx를 설치할 때 일어나는 일들 20260403 2026-04-03 11:14

Nginx는 어디에 흩어져 있나요?

Nginx를 설치하면 보통 다음과 같이 각기 다른 폴더에 파일들이 들어갑니다.

파일 종류 위치 (경로) 설명
실행 파일 (Binary) /usr/sbin/nginx 실제 프로그램을 돌리는 "근육"입니다. /etc가 아니라 여기에 있습니다.
설정 파일 (Conf) /etc/nginx/ nginx.conf 등이 위치하는 "두뇌"입니다.
기본 웹 콘텐츠 /var/www/html 웹사이트에 보여줄 HTML 파일들이 있는 "창고"입니다.
로그 파일 /var/log/nginx/ 접속 기록이나 에러가 쌓이는 "일기장"입니다.
FHS(Filesystem Hierarchy Standard) 참고

/etc/nginx가 눈에 잘 띌까요?

우리가 Nginx를 다룰 때 가장 많이 수정하고 접근하는 곳이 /etc/nginx이기 때문입니다.

실행 파일인 /usr/sbin/nginx는 우리가 직접 건드릴 일이 거의 없습니다. 하지만 "포트 번호를 바꾼다", "도메인을 연결한다" 같은 작업을 할 때는 무조건 /etc/nginx 안에 있는 텍스트 설정 파일들을 편집해야 하죠. 그래서 마치 Nginx가 거기 설치된 것처럼 느껴질 수 있습니다.

리눅스의 '관습' (설정과 실행의 분리)

리눅스에서 /etc는 **"시스템의 상태를 결정하는 텍스트 데이터"**만 담기로 약속되어 있습니다.

  • 이유 1 (백업): 서버를 옮길 때 /usr(프로그램)는 새로 설치하면 되지만, /etc(내 설정)는 백업하지 않으면 다 날아갑니다. 그래서 설정만 따로 모아두는 거죠.

  • 이유 2 (보안): 실행 파일이 있는 곳은 읽기 전용으로 보호하고, 설정 파일이 있는 곳만 관리자가 수정할 수 있게 권한을 나누기 위함입니다.

💡 확인해보기

궁금하시다면 터미널에 아래 명령어를 입력해 보세요. Nginx 실행 파일이 어디 있는지 바로 알려줄 거예요.

which nginx

아마 /usr/sbin/nginx라고 답할 겁니다.

[!question] Q. 아.. /usr 가 사용자 관련 모든 프로그램과 데이터가 있는 폴더고 거기의 system binary sbin 아래에 설치가 된거구나? A. 정확합니다! 이해력이 정말 빠르시네요. 리눅스의 설계를 완벽하게 꿰뚫어 보셨습니다.

방금 말씀하신 내용을 조금 더 구체적으로 연결해 보면 리눅스의 구조가 더 선명해질 거예요.

🏗️ /usr 디렉토리의 논리적 구조

리눅스에서 /usrUser System Resources의 약자로, 시스템 운영에 필수적인 최소한의 도구(루트 폴더의 /bin)를 제외한 나머지 모든 응용 프로그램이 거주하는 거대한 도시와 같습니다.

/usr/bin vs /usr/sbin

두개의 sbin의 차이는 누가 실행하는가에 있습니다.

  • /usr/bin (User Binaries): 일반 사용자가 일상적으로 쓰는 프로그램들입니다. (예: python, git, curl 등)

  • /usr/sbin (System Binaries): 시스템 관리자(Root) 권한이 필요한, 시스템 전체에 영향을 주는 프로그램들입니다.

    • Nginx는 웹 서버라는 시스템 서비스를 제공하기 때문에 관리자 권한이 필수적이고, 그래서 sbin에 위치하게 됩니다.