OS/Linux

[Linux 서버] 디스크 추가 및 마운트 설정

JooRi 2025. 8. 29. 17:44
728x90
반응형
SMALL

 

실습 내용

  • ESXi VM에 디스크 추가 → 리눅스에서는 /dev/sdb로 인식됨
  • fdisk로 새 파티션 /dev/sdb1 생성
  • mkfs.ext4로 파일시스템 생성
  • /mydata 디렉토리에 마운트
  • 파일 생성 테스트로 정상 동작 확인
  • /etc/fstab 등록으로 자동 마운트 설정 완료
  • (추가) CD-ROM 장치 자동 마운트 추가

 

 

디스크 1개를 추가한 시스템 구조도

디스크 1개를 추가한 시스템 구조도

- 메인 보드

  • SATA 0:1 → /dev/sr0 (CD-ROM 장치)
  • SCSI 0:0 → /dev/sda (80GB 디스크)
    • /dev/sda1 → 4GB (swap 공간)
    • /dev/sda2 → 76GB (루트 / 공간)
  • SCSI 0:1 → /dev/sdb (1GB 추가 디스크)
    • /dev/sdb1 → 1GB (새로 만든 파티션, /mydata 마운트용)

즉, 원래 있던 시스템 디스크 외에 /dev/sdb라는 새 디스크를 장착한 구조이다.

 

 

 

디스크 1개를 추가할 때 전체 흐름도

디스크 1개를 추가할 때 전체 흐름도

  1. 하드디스크 장착
    • SCSI 0:1 위치에 /dev/sdb 디스크 추가
  2. fdisk로 파티션 생성
    • /dev/sdb → /dev/sdb1
  3. 파일시스템 생성
    • mkfs.ext4 /dev/sdb1 → ext4 파일시스템 포맷
  4. 마운트
    • /dev/sdb1을 /mydata 디렉토리에 연결
  5. fstab 등록
    • /etc/fstab 파일에 /dev/sdb1 → /mydata 등록
    • 재부팅 후에도 자동으로 마운트되도록 설정

 

 

마운트 전/후/해제 시 구조

1) 마운트 전

마운트 전

  • /dev/sda : 기존 운영체제 디스크 (80GB)
    • /dev/sda1 → 4GB (swap 공간)
    • /dev/sda2 → 76GB (/ 루트 파티션)
  • /dev/sdb : 새로 추가한 디스크 (1GB) → 아직 마운트 되지 않음

이 상태에서 /mydata 디렉토리에 저장한 파일(test1)은 실제로는 /dev/sda2 (루트 디스크) 안에 저장된다.
즉, 마운트 전에는 디렉토리만 존재할 뿐 새로운 디스크와는 연결되지 않은 상태이다.

 

 

2) 마운트 후

마운트 후

/dev/sdb1 파티션을 /mydata 디렉터리에 마운트 하면 /mydata는 새로운 디스크(/dev/sdb1)를 바라보게 된다.

즉, 마운트 후 새로 만든 파일(test2)은 /dev/sdb1에 저장된다.

 

반대로, 마운트 전에 /mydata 안에 있던 기존 파일(test1)은 가려지게 된다.

즉, 마운트 후에는 루트 디스크(/dev/sda2)의 /mydata 내용은 보이지 않고, 새로운 디스크 내용만 보이게 된다.

 

 

3) 언마운트 후

마운트 해제 시

/dev/sdb1을 언마운트하면, 다시 /mydata 디렉터리는 원래대로 /dev/sda2 공간을 바라보게 된다.
따라서 예전에 보이지 않던 test1 파일이 다시 나타나고, 마운트된 디스크의 내용(test2)은 볼 수 없게 된다.

 

 

정리하자면,

  • 마운트 전: /mydata 는 단순히 루트 디스크(/dev/sda2) 내의 디렉터리
  • 마운트 후: /mydata는 새 디스크(/dev/sdb1)와 연결 → 새 파일은 이곳에 저장됨
  • 언마운트 후: 다시 루트 디스크로 돌아가 기존 파일들이 보이게 됨

즉, 마운트란 디렉터리와 디스크를 연결하는 작업이며, 연결되는 순간 그 디렉터리는 새로운 디스크의 입출구 역할을 하게 된다.

 

 

 

1. ESXi 가상머신 설정에서 디스크 추가 

5GB 새 하드디스크 추가 (씬 프로비저닝)

  • /dev/sda : 기존 OS 설치용 디스크
  • /dev/sdb : 새로 추가한 5GB 디스크

추가한 디스크는 리눅스에서 /dev/sdb로 인식된다.

 

 

 

ls -l /dev/sd*

  • 추가된 하드디스크 확인 → /dev/sdb

 

 

2. fdisk로 새 파티션 생성

추가된 디스크(/dev/sdb)는 아직 파티션이 없기 때문에, fdisk를 이용해 파티션을 생성해야 한다.

 

 

fdisk /dev/sdb

  • n : 새 파티션 생성
  • p : Primary partition 선택 (default)
  • 1 : 파티션 번호 1 선택 (첫 번째 파티션)
  • 디폴트 시작/끝 섹터 선택 → 5GB 전체 용량 할당됨
  • t : 파티션 타입 설정 → 83 (Linux 파티션)
  • w : 저장 후 종료

결과: /dev/sdb1 이 생성됨

 

 

 

ls -l /dev/sd*

  • 추가된 하드디스크 확인 → /dev/sdb1

 

 

3. 파일시스템 생성

생성된 파티션은 단순한 공간일 뿐이므로, 파일시스템을 만들어야 데이터 저장이 가능하다.
ext4 파일시스템을 사용했다.

ext4는 리눅스에서 가장 널리 사용되는 파일시스템이며, 안정성과 성능이 좋아 일반적인 데이터 저장에 적합하다.

 

 

mkfs.ext4 /dev/sdb1

 

 

 

4. 마운트 작업

이제 생성한 파티션을 특정 디렉터리에 연결(마운트) 해야 한다.

 

 

mkdir /mydata

mount /dev/sdb1 /mydata

  • /mydata라는 디렉터리를 생성하고, 여기에 /dev/sdb1을 마운트

df -k로 /dev/sdb1 이 /mydata에 정상적으로 마운트 된 것까지 확인.

 

 

 

touch test.txt
touch test2.txt

mkdir work3

  • test.txt, test2.txt 파일 생성
  • work3 디렉터리 생성

새로 마운트 한 /mydata 디렉터리가 정상적으로 읽기/쓰기 가능한지 테스트.

 

 

 

스냅숏 생성하고 마운트 작업 끝내기.

 

 

 

5. 자동 마운트를 위해 fstab 설정 추가

현재는 수동으로 마운트 했기 때문에 서버를 재부팅하면 연결이 해제된다.
이를 방지하려면 /etc/fstab 파일에 등록해야 한다.

 

 

gedit으로 /etc/fstab 파일을 열어서 16행 추가

  • 컴퓨터를 켤 때 /dev/sdb1 장치가 항상 /mydata에 마운트 되도록 설정

 

fstab은 리눅스가 부팅될 때마다 자동으로 읽는 중요한 파일이다.

이 파일에는 마운트 정보가 수록되어 있으며 글자가 틀릴 경우 아예 부팅이 되지 않을 수 있으므로 수정 시 주의해야 한다.

 

이렇게 하면 서버 재부팅 시 /dev/sdb1이 /mydata에 자동으로 마운트 된다.

 

 

 

잘 설정되었는지 저장된 파일 내용 확인하고 reboot

 

 

 

재부팅 후 df -k 명령으로 /dev/sdb1의 /mydata 확인.

정상적으로 마운트 된 것 확인.

 

 

 

7. ISO 파일이 들어있는 CD-ROM(/dev/sr0)도 자동 마운트하도록 설정

 

끝.

 

 

728x90
반응형
LIST