본문 바로가기
[GPUaaS]/GPUmgt

[마운트] /etc/fstab vs /etc/rc.local 차이 !!

by METAVERSE STORY 2026. 2. 27.
반응형

 

 

둘 다 부팅 시 실행되는 설정이긴 한데, 역할이 완전히 다릅니다.
특히 “마운트” 관점에서 보면 차이를 확실히 알아두는 게 좋아요.


✅ 핵심 한 줄 정리

  • /etc/fstab → 마운트 전용 설정 파일 (자동 마운트 표준 방법)
  • /etc/rc.local → 부팅 시 실행하는 사용자 스크립트 (임의 명령 실행)

둘 다 재부팅 후 동작할 수 있지만
👉 목적 / 실행 방식 / 권장 여부가 완전히 다릅니다.


✅ 1. /etc/fstab 역할 (정식 자동 마운트 설정)

✔ 무엇인가?

파일 시스템을 부팅 시 자동으로 마운트하도록 정의하는 표준 설정 파일

Linux 부팅 과정에서 systemd / mount 서비스가 읽어서 실행합니다.


✔ 주요 목적

  • 디스크 / 파티션 / NFS / Lustre 등 자동 마운트
  • swap 활성화
  • 마운트 옵션 관리

👉 즉 마운트만을 위한 공식 설정


✔ 예시

 
UUID=xxxx-xxxx /data ext4 defaults 0 2
192.168.1.10:/share /mnt/nfs nfs defaults 0 0
 

부팅하면 자동으로:

 
/data 마운트
/mnt/nfs 마운트
 

✔ 특징

✅ 부팅 초기에 실행됨
✅ 실패 시 부팅 영향 가능
✅ mount -a 로 테스트 가능
✅ 가장 표준적인 방식
✅ systemd가 관리

👉 운영 서버는 대부분 fstab 사용


✅ 2. /etc/rc.local 역할 (부팅 후 사용자 명령 실행)

✔ 무엇인가?

부팅이 거의 끝난 후 실행되는 사용자 정의 스크립트

옛날 SysV init 방식에서 많이 사용했고
요즘은 systemd 서비스로 대체하는 추세.


✔ 주요 목적

  • 커스텀 스크립트 실행
  • 서비스 수동 실행
  • 설정값 변경
  • 네트워크 튜닝
  • 특별한 마운트 (비표준 방식)

👉 마운트도 가능하지만 본래 목적은 아님


✔ 예시

 
#!/bin/bash
mount -t lustre 10.0.0.1@o2ib:/fs /mnt/lustre
echo 1 > /proc/sys/net/ipv4/ip_forward
 

✔ 특징

✅ 부팅 거의 마지막에 실행
✅ 실패해도 부팅 영향 적음
✅ 순수 쉘 스크립트
✅ systemd 환경에서는 기본 비활성인 경우 많음
✅ legacy 방식

👉 요즘은 systemd service 권장


✅ 질문 핵심 답변

❓ 둘 다 리부팅 후 마운트 올라오나?

👉 가능은 하지만 의미가 다름

구분 자동 마운트 권장
fstab YES ⭐⭐⭐⭐⭐
rc.local 스크립트로 가능

❓ 마운트 용도로 뭐 써야 하나?

👉 무조건 fstab

rc.local 은 예외 상황만 사용

예:

  • fstab 으로 안 되는 특수 mount
  • mount 전에 특정 명령 필요
  • 조건부 mount
  • 인증 처리 필요

✅ 실행 순서 차이 (매우 중요)

Linux 부팅 흐름 (단순화)

 
1. systemd 시작
2. 파일 시스템 mount (fstab 처리)
3. 서비스 시작
4. rc.local 실행 (거의 마지막)
 

👉 즉

fstab 마운트가 먼저
rc.local 은 나중


✅ 운영 기준 추천 (실무)

상황 추천
일반 디스크 fstab
NFS fstab
Lustre fstab (가능하면)
iSCSI fstab
복잡한 mount logic systemd service
임시 테스트 rc.local

✅ 실무에서 자주 발생하는 실수

❌ rc.local 에 mount 넣음
→ mount 타이밍 늦음
→ 서비스 먼저 실행됨
→ 장애 발생

❌ fstab network mount without _netdev
→ 부팅 멈춤


✅ 한 줄 결론 (운영자 기준)

👉 마운트는 fstab
👉 rc.local 은 임시 또는 특수 목적
👉 요즘은 rc.local 대신 systemd service

 

 

 

반응형

댓글