우분투 mount 명령어 완벽 가이드 - 디스크 연결부터 fstab 영구 마운트까지 실전 실습

개요

리눅스 시스템 운영의 핵심인 파일시스템 연결 원리와 mount 명령어의 실무 활용법을 직접 실습하며 학습합니다. 임시 루프백(loop) 디스크 이미지 생성부터 마운트 옵션 설정, 언마운트(umount), 그리고 부팅 시 자동 연결을 위한 /etc/fstab 등록 방법까지 단계별로 살펴봅니다.

현재 마운트된 파일시스템 확인과 마운트 포인트 준비

df 명령어는 현재 시스템에 마운트된 전체 파일시스템의 디스크 공간 사용량을 확인합니다.
-h 옵션으로 용량을 사람이 읽기 쉬운 단위(GB, MB 등)로 변환하고, -T 옵션으로 각 파일시스템의 종류(ext4, tmpfs, overlay 등)를 함께 출력합니다.

df -hT

findmnt 명령어는 현재 마운트된 파일시스템 트리를 정밀하게 조회합니다.
-t ext4,xfs 옵션을 사용하여 가상 파일시스템을 제외하고 실제 물리 디스크에서 주로 사용되는 ext4 및 xfs 파일시스템만 필터링하여 표시합니다.

findmnt -t ext4,xfs

새로운 저장 장치를 연결할 마운트 지점으로 사용할 디렉터리를 생성하기 위해 sudo mkdir -p /mnt/mydisk 명령어를 실행합니다.

sudo mkdir -p /mnt/mydisk

가상 디스크 이미지 생성 및 ext4 파일시스템 포맷

가상 디스크 마운트 실습을 안전하게 진행할 전용 디렉터리를 생성하고 이동하기 위해 mkdir -p ~/disk-test && cd ~/disk-test 명령어를 실행합니다.

mkdir -p ~/disk-test && cd ~/disk-test

실제 보조 디스크 대신 실습용으로 사용할 100MB 크기의 빈 가상 디스크 이미지를 생성하기 위해 dd if=/dev/zero of=testdisk.img bs=1M count=100 명령어를 실행합니다.

dd if=/dev/zero of=testdisk.img bs=1M count=100

생성한 가상 디스크 이미지 파일을 마운트하여 사용할 수 있도록 ext4 파일시스템으로 포맷하기 위해 sudo mkfs.ext4 -F testdisk.img 명령어를 실행합니다.

sudo mkfs.ext4 -F testdisk.img

루프 장치로 디스크 마운트 및 읽기/쓰기 테스트

생성한 가상 디스크 이미지 파일을 마운트 포인트에 연결하기 위해 sudo mount -o loop ~/disk-test/testdisk.img /mnt/mydisk 명령어를 실행합니다.
-o loop 옵션을 지정하면 일반 파일 형태의 디스크 이미지를 가상 블록 장치(루프 디바이스)로 에뮬레이션하여 파일시스템에 정상적으로 마운트할 수 있습니다.

sudo mount -o loop ~/disk-test/testdisk.img /mnt/mydisk

가상 디스크가 지정한 경로에 정상적으로 마운트되었는지 확인하기 위해 df -h | grep /mnt/mydisk 명령어를 실행합니다.
출력 결과가 나타나지 않거나 마운트 상태를 확인할 때 해당 경로 필터링을 통해 연결 여부와 사용 가능한 공간을 점검할 수 있습니다.

df -h | grep /mnt/mydisk

마운트된 디스크에 실제 파일 쓰기 및 읽기가 정상적으로 동작하는지 검증하기 위해 sudo touch /mnt/mydisk/test_file.txt && ls -l /mnt/mydisk 명령어를 실행합니다.
테스트용 빈 파일(test_file.txt)이 정상적으로 생성되고 파일 목록에 표시되는 것을 통해 마운트된 파일시스템에 읽기/쓰기 작업이 성공적으로 이루어짐을 확인할 수 있습니다.

sudo touch /mnt/mydisk/test_file.txt && ls -l /mnt/mydisk

안전한 언마운트(umount)와 읽기 전용(ro) 옵션 재마운트

마운트되어 있던 가상 디스크 파일시스템을 안전하게 분리하기 위해 sudo umount /mnt/mydisk 명령어를 실행합니다.
작업이 끝난 저장 장치는 언마운트를 수행하여 버퍼에 남아 있는 데이터를 디스크에 완전히 기록하고 연결을 안전하게 해제해야 데이터 손상을 방지할 수 있습니다.

sudo umount /mnt/mydisk

가상 디스크 이미지 파일을 읽기 전용 모드로 다시 마운트하기 위해 sudo mount -o loop,ro ~/disk-test/testdisk.img /mnt/mydisk 명령어를 실행합니다.
-o 옵션에 loop와 함께 ro(read-only)를 지정하면 파일시스템이 쓰기 금지 상태로 연결되어 임의의 데이터 변경이나 삭제를 방지할 수 있습니다.

sudo mount -o loop,ro ~/disk-test/testdisk.img /mnt/mydisk

읽기 전용으로 마운트된 디스크에 새 파일 생성을 시도하여 쓰기 제한 동작을 검증하기 위해 sudo touch /mnt/mydisk/error_file.txt || echo 'Read-only mount confirmed' 명령어를 실행합니다.
쓰기 권한이 차단되어 파일 생성이 실패하면서 뒤이어 지정한 확인 메시지가 정상적으로 출력되는 것을 통해 읽기 전용 보호 상태가 적용되었음을 확인할 수 있습니다.

sudo touch /mnt/mydisk/error_file.txt || echo ‘Read-only mount confirmed’

읽기 전용 테스트를 완료한 가상 디스크의 연결을 완전히 해제하기 위해 sudo umount /mnt/mydisk 명령어를 실행합니다.
사용이 끝난 마운트 포인트를 언마운트하여 파일시스템 연결을 깔끔하게 정리합니다.

sudo umount /mnt/mydisk

UUID 확인과 /etc/fstab을 활용한 영구 마운트 설정 원리

가상 디스크 파일의 고유 식별자(UUID) 및 파일시스템 정보를 조회하기 위해 sudo blkid ~/disk-test/testdisk.img 명령어를 실행합니다.
장치 경로명(/dev/sda1 등)은 부팅 환경이나 포트 연결 순서에 따라 변경될 수 있으므로, 영구 마운트 설정 시에는 고유한 UUID 값을 확인하여 활용하는 것이 안정적입니다.

sudo blkid ~/disk-test/testdisk.img

시스템 부팅 시 자동으로 마운트할 파일시스템 목록이 정의된 설정 파일의 내용을 확인하기 위해 tail -n 5 /etc/fstab 명령어를 실행합니다.
/etc/fstab 파일은 장치 식별자, 마운트 포인트, 파일시스템 종류, 마운트 옵션, 덤프 설정, 파일시스템 검사 순서의 6개 필드로 구성되어 부팅 시 자동 연결 규칙을 제어합니다.

tail -n 5 /etc/fstab

지금까지 우분투에서 mount 명령어로 디스크를 연결하는 방법부터 /etc/fstab을 활용한 영구 마운트 설정까지 간단하게 정리해보았습니다.
서버 재부팅 시에도 스토리지가 안정적으로 연결되도록 안내해 드린 절차를 차근차근 적용해보시기 바랍니다.