마운트

마운트(Mount)는 저장 장치의 파일 시스템을 운영체제의 디렉터리 트리에 연결하여 접근할 수 있게 하는 작업입니다.
즉, 하드디스크, SSD, USB, CD-ROM, 네트워크 드라이브와 같은 저장 장치나 그 안의 파일 시스템을 현재 사용 중인 디렉터리 구조에 편입시키는 작업입니다.

좁은 의미로는 리눅스/유닉스 운영체제에서 mount명령어 또는 명령어를 사용하는 것을 말합니다.

윈도우 운영체제의 경우 대부분의 장치가 시스템 부팅 시 자동으로 마운트되며, 사용자는 드라이브 문자(C:\, D:)를 통해 접근합니다.
새로운 장치도 PnP(Plug and Play)라는 기능으로 자동 인식되기 때문에, 일반적인 사용자가 직접 마운트 작업을 하는 경우가 거의 없습니다.

필요한 이유

마운트가 필요한 이유는 다음과 같습니다.

  • 하나의 컴퓨터에서 여러 저장 장치나 파티션을 사용하기 위해 사용합니다.
  • 저장 장치를 단순한 하드웨어 블록이 아닌 파일과 디렉터리 형태로 접근하기 위해 사용합니다.
  • 운영체제는 모든 파일 접근을 동일한 인터페이스로 제공해야 하므로, 추가 장치를 트리에 붙이는 과정이 필요합니다.
  • 서로 다른 기기/파티션/네트워크 리소스를 하나의 통일된 네임스페이스로 제공하기 위해 필요합니다.
    • 파일 시스템의 종류가 달라도 가상 파일 시스템(VFS)를 통해 공통 인터페이스로 다룰 수 있습니다.
  • 네트워크 파일 시스템(NFS, SMB)을 로컬에 마운트하여 로컬처럼 접근할 수 있습니다.

리눅스 예시

리눅스에서 mount 명령어를 사용하는 예시는 다음과 같습니다.

# USB를 /mnt/usb에 마운트
mount /dev/sdb1 /mnt/usb

# 마운트 해제
umount /mnt/usb

/dev/sdb1는 USB 장치의 첫 번째 파티션을 의미합니다.
/mnt/usb는 마운트 지점을 의미합니다.

언마운트 시 해당 장치에서 파일을 열거나 프로세스가 사용 중이면 언마운트가 불가능합니다.
이때 해제하려면 umount -l로 지연 해제를 하거나 umount -f를 사용해 강제 해제를 할 수 있습니다.

ComputerScience 카테고리 내 다른 글 보러가기

댓글남기기