USB외장 HDD를 물려놓고 부팅 할 경우 동일한 디바이스로 올라오지 않는다.
예를들어 160G, 80G의 HDD가 각각 /home2, /home3로 마운트 되어야 하는데 항상 동일한 장치명으로 올라온다는 보장이 없어 fstab에서 잡아 쓸수 없다.
아래는 장치명대신 UUID를 이용해 fstab를 설정하여 원하는 장치가 원하는곳에 마운트 되도록 하는 방법이다.
fdisk -l을 이용해 어떤 HDD가 /dev/sdb, /dev/sdc인지 알아낸다.
다음으로 UUID를 알아낸다.(vol_id가 사용되지 않는다는 이야기도 있고 제대로 동작이 안됨으로 blkid를 이용해서 알아낸다)
# blkid
/dev/sda1: UUID="a50d8d66-b46a-4464-b09f-c4a9d0d9d394" TYPE="ext2"
/dev/sda2: UUID="6w5Hqt-ERrE-RMLm-60wT-QBQJ-XYyN-o6uAzm" TYPE="lvm2pv"
/dev/dm-0: UUID="c39a0095-7a92-4ca2-a988-f4590a794dfd" TYPE="ext3"
/dev/dm-1: UUID="b21b71e0-bb45-436e-b488-cbd7ebb83809" TYPE="ext3"
/dev/dm-2: UUID="536e8ed7-dccb-419e-88ed-a97be8dac836" TYPE="ext3"
/dev/dm-3: TYPE="swap"
/dev/dm-4: UUID="14b772bc-992d-49f4-8150-3cc32ec8db2b" TYPE="ext3"
/dev/dm-5: UUID="ac04df9d-3cfe-445e-848b-79d1719fe67c" TYPE="ext3"
/dev/sdb: UUID="b700e3bd-fc0d-4a67-b7d3-a313e2128c99" TYPE="ext3"
/dev/sdc: UUID="a7fbdd2e-b95a-4907-b943-c2b565f16d9c" TYPE="ext3"
|
fstab를 수정한다.
# vi /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
/dev/mapper/nas-root / ext3 errors=remount-ro 0 1
/dev/sda1 /boot ext2 defaults 0 2
/dev/mapper/nas-home /home ext3 defaults 0 2
/dev/mapper/nas-tmp /tmp ext3 defaults 0 2
/dev/mapper/nas-usr /usr ext3 defaults 0 2
/dev/mapper/nas-var /var ext3 defaults 0 2
/dev/mapper/nas-swap_1 none swap sw 0 0
UUID=b700e3bd-fc0d-4a67-b7d3-a313e2128c99 /home2 ext3 defaults 0 0
UUID=a7fbdd2e-b95a-4907-b943-c2b565f16d9c /home3 ext3 defaults 0 0
|
여기까지 하면 부팅시 /home2와 /home3로 마운트가 된다.
/home2는 ftp,SVN으로 사용하고 있고 /home3는 다운로드용으로 사용되고 있다.
init.d에 스크립트를 작성. 이용하여 부팅시 각기 적절한 디렉토리에 마운트 해준다.
# vi /etc/init.d/bindums
#!/bin/sh
### BEGIN INIT INFO
# Provides: bindums
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: S
# Default-Stop:
# Short-Description:
### END INIT INFO
case "$1" in
start)
echo "Start bind ums"
mount --bind /home2/mongin/ /home/mongin/home2
mount --bind /home2/jeremy/ /home/jeremy/home2
mount --bind /home3/mongin/ /home/mongin/home3
;;
stop)
echo "Stopping bind ums"
umount /home2/mongin
umount /home2/jeremy
umount /home3/mongin
;;
*)
echo "Useage: /etc/init.d/bindums {start|stop}"
exit 1
;;
esac
exit 0
|
실행 속성으로 변경
update-rc.d로 스크립트 추가
# chmod 755 /etc/init.d/bindums |
update-rc.d로 스크립트 추가
# update-rc.d -f bindums defaults |
이것이 제대로 동작 하려면 부팅전 HDD가 USB에 연결이 된 상태여야 한다.
'작업일지 > Linux' 카테고리의 다른 글
파티션 타입 알아내기 (0) | 2011.01.30 |
---|---|
리눅스에서 디스크 단편화 처리방법 (0) | 2010.12.19 |
dev의 UUID 알아내기 (0) | 2010.11.18 |
vsftp에서 "550 Failed to change directory" 에러에 대한 내용 (0) | 2010.06.16 |
패키지 설치시 에러날 경우 (0) | 2010.05.20 |