안녕하세요.
얼마 전 윈도우로 사용하던 회사 PC에 리눅스를 설치하였습니다.
윈도우를 지우지 않고, 하드디스크의 파티션만 분할하여 멀티부팅으로 사용중입니다.
윈도우에서 사용하던 디렉토리와 파일을 리눅스에서 사용하려면 해당 디렉토리, 파일이 있는 디스크 (파티션)을 마운트 해야합니다.
1회성으로 사용하고 말 것이라면 탐색기 (리눅스에선 이걸 뭐라고 하는지 모르겠네요;;;)에서 해당 디스크를 클릭만 해주면 자동으로 마운트가 됩니다.
사용을 다 하고 언마운트 버튼을 눌러 마운트를 해제해 주어도 되구요.
그런데 저는 윈도우에서 쓰던 Dropbox 폴더를 리눅스에서 그대로 사용하길 원해서 해당 디렉토리가 있는 윈도우의 E 드라이브를 부팅시 자동으로 마운트 되도록 설정하였습니다.
이 때 사용한 것이 'fstab' 입니다.
'fstab'은 부팅 시 자동으로 마운트 할 내용을 정의하고 있는 파일입니다.
정확한 경로는 /etc/fstab 입니다.
해당 파일에 자동으로 마운트 할 파티션 정보를 양식에 맞게 적어두면, 부팅 시 자동으로 마운트를 시킵니다.
실습(?)을 하듯 과정을 적어보도록 하겠습니다.
* 목표 : 윈도우에서 사용하던 C, D, E 드라이브를 부팅 시 마운트 시키기
1. 현재 파티션 구성 확인하기
다음의 명령어로 현재 파티션의 구성을 확인합니다.
$ sudo fdisk -l
저 같은 경우 이 명령어를 입력하면 다음과 같이 화면에 나옵니다.
parkch0708@chp-lab:~$ sudo fdisk -l Disk /dev/sda: 1000.2 GB, 1000204886016 bytes 255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk identifier: 0xe575b6e4 Device Boot Start End Blocks Id System /dev/sda1 * 2048 314572799 157285376 7 HPFS/NTFS/exFAT /dev/sda2 314574848 629147647 157286400 7 HPFS/NTFS/exFAT /dev/sda3 629147648 1468008447 419430400 7 HPFS/NTFS/exFAT /dev/sda4 1468010494 1953523711 242756609 5 Extended Partition 4 does not start on physical sector boundary. /dev/sda5 1468010496 1668007935 99998720 83 Linux /dev/sda6 1945524224 1953523711 3999744 82 Linux swap / Solaris /dev/sda7 1668009984 1945520127 138755072 83 Linux Partition table entries are not in disk order parkch0708@chp-lab:~$ |
제가 사용하고 있는 PC에는 1테라 짜리 하드디스크 한개 (/dev/sda)가 장착되어 있습니다.
총 7개의 파티션으로 나뉘어져 있고, 사용 할 수 없는 /dev/sda4를 제외하면 용도는 다음과 같습니다.
- sda1 : 윈도우 C 드라이브
- sda2 : 윈도우 D 드라이브
- sda3 : 윈도우 E 드라이브
- sda5 : 리눅스 /
- sda6 : 리눅스 SWAP
- sda7 : 리눅스 /home
이 명령어를 통해 자동으로 마운트 할 파티션이 어떤 파티션인지 확인하면 됩니다.
저 같은 경우엔 윈도우의 C, D, E 드라이브를 마운트 할 것이기 때문에 sda1, sda2, sda3를 마운트 해야 합니다.
2. 파티션의 UUID 확인
1에서 확인한 디바이스 명 (예 : /dev/sda1)을 fstab에 그대로 기록해도 되지만,
이렇게 할 경우 스토리지를 추가해서 디바이스 명이 바뀌게 되면 오류가 발생할 수도 있습니다.
그렇기 때문에 고유한 번호인 UUID를 사용합니다.
UUID 확인은 다음의 명령어를 통해 확인합니다.
$ blkid
저는 다음과 같은 결과를 얻었습니다.
parkch0708@chp-lab:~$ blkid /dev/sda1: UUID="F67409D174099591" TYPE="ntfs" /dev/sda2: UUID="602EC0692EC03A34" TYPE="ntfs" /dev/sda3: UUID="92C0FBC3C0FBAB9B" TYPE="ntfs" /dev/sda5: UUID="ebbffa53-8829-4a59-97e5-59e5a5c334d8" TYPE="ext4" /dev/sda6: UUID="8c66776b-d70b-433c-af64-4f627871759a" TYPE="swap" /dev/sda7: UUID="9190a1f5-01ab-462c-ac7d-3924cb1841fe" TYPE="ext4" parkch0708@chp-lab:~$ |
sda1, sda2, sda3의 UUID를 확인하였습니다.
파일시스템도 ntfs인 것을 확인하였습니다.
3. 마운트 할 디렉토리 생성
마운트를 하기 위해서는 마운트를 위한 디렉토리를 생성해 주어야 합니다.
보통 /mnt/ 디렉토리에 생성을 해줍니다.
저는 그냥 쉽게 c, d, e로 생성하였습니다.
경로나 디렉토리 이름은 마음대로 하셔도 됩니다.
$ sudo mkdir /mnt/c
$ sudo mkdir /mnt/d
$ sudo mkdir /mnt/e
4. /etc/fstab 파일 수정
root 권한으로 /etc/fstab 파일을 열어 내용을 추가해줍니다.
$ sudo vi /etc/fstab
fstab은 총 6개의 필드로 구성되어 있고, 각 필드의 의미는 다음과 같습니다.
1. 마운트 할 장치의 장치 파일 명 (2에서 확인한 UUID를 입력)
2. 마운트 포인트 (3에서 생성한 디렉토리)
3. 마운트 할 파일시스템 종류 (2에서 확인한 파일시스템을 입력)
4. 마운트 옵션
5. 해당 파티션을 백업할 지의 여부
6. fsck에 의한 파일시스템 검사 여부 (0 - 검사하지 않음, 1 - 파일 시스템, 2 - 이외)
각 필드는 띄어쓰기나 탭으로 구분하시면 됩니다.
저는 마지막 6줄을 추가하였습니다.
# <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sda5 during installation UUID=ebbffa53-8829-4a59-97e5-59e5a5c334d8 / ext4 errors=remount-ro 0 1 # /home was on /dev/sda7 during installation UUID=9190a1f5-01ab-462c-ac7d-3924cb1841fe /home ext4 defaults 0 2 # swap was on /dev/sda6 during installation UUID=8c66776b-d70b-433c-af64-4f627871759a none swap sw 0 0 # Windows C Drive UUID=F67409D174099591 /mnt/c ntfs defaults,locale=ko_KR.UTF-8 0 0 # Windows D Drive UUID=602EC0692EC03A34 /mnt/d ntfs defaults,locale=ko_KR.UTF-8 0 0 # Windows E Drive UUID=92C0FBC3C0FBAB9B /mnt/e ntfs defaults,locale=ko_KR.UTF-8 0 0 |
# 뒤에 있는 내용은 주석입니다.
마지막 2 줄만 분석해 보겠습니다.
# Windows E Drive
UUID=92C0FBC3C0FBAB9B /mnt/e ntfs defaults,locale=ko_KR.UTF-8 0 0
첫 줄은 확인을 위한 주석입니다. (주석은 달지 않으셔도 동작엔 큰 문제가 없습니다.)
두번째 줄은 위의 양식대로 작성한 것 입니다.
UUID가 92C0FBC3C0FBAB9B 인 장치를
/mnt/e에 마운트를 하고,
파일시스템은 ntfs이고,
default 옵션과 locale=ko_KR.UTF-8 옵션을 사용하고
백업은 하지 않으며
fsck로 체크도 하지 않는다.
란 뜻입니다.
기본적으로 윈도우에선 ntfs 파일시스템을 사용하기 때문에,
위의 내용에서 UUID 값과 마운트 포인트(/mnt/e) 내용만 바꿔주시면 됩니다.
내용을 추가하고, 파일을 저장한 다음에 닫습니다.
그리고 리부팅 하면 자동으로 마운트 되는 것을 확인할 수 있습니다.
5. 부팅 후 마운트 확인
$ mount
명령어를 이용해 마운트가 잘 되어 있는지 확인하시면 됩니다.
저는 다음의 내용이 추가가 되었습니다.
/dev/sda1 on /mnt/c type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096) /dev/sda2 on /mnt/d type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096) /dev/sda3 on /mnt/e type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096) |
'Computer System > Linux' 카테고리의 다른 글
[Linux] alias - 리눅스 별칭, 단축 명령어 (2) | 2015.12.02 |
---|---|
[Linux] scp - ssh를 사용하여 파일 전송하기 (2) | 2015.11.30 |
[Linux] 우분투 dpkg 관련 명령어 및 옵션 (0) | 2015.11.26 |
[Linux] rdesktop - 리눅스 우분투에서 윈도우 원격제어 하기 (0) | 2015.11.25 |
[Linux] 리눅스 우분투 한글, 한영키 사용 (6) | 2015.11.24 |