FreeBSD에는 vnode 라는게 있다. 파일을 device 로 취급하는 기능으로,
man vnode, man vnconfig 하면 설명을 볼 수 있다.
커널에
pseudo-device vn # Vnode driver (turns a file into a device)
이줄을 넣은 음에 커널을 다시 빌드하면 vnconfig 를 통하여 이미지 파일을
/dev/vn0a , /dev/vn0b, /dev/vn0c 등등 디바이스에 연결해준다.
이렇게 생성한 device 들을 mount 을 통하여 마운트할 수 있다.
가령 CD이미지인 .iso 파일의 경우,
vnconfig vn0c /home/byung/cdimage.iso
mount_cd9660 /dev/vn0c /cdrom
또는 vnode를 사용해서 swap 추가도 할 수 있다. 아래는 128M의 스왑을
/tmp/swapfile에 만들어 추가하는 경우이다.
dd if=/dev/zero of=/tmp/swapfile bs=1m count=128
vnconfig -e vn0c /tmp/swapfile swap
성공적이었는지는 다음 명령으로 알 수 있다.
swapinfo
dd 는 스왑파일로 쓸 파일을 만들어주는데 쓰였다. vnconfig는
그 파일을 device 로 연결해 스왑에 더해주는데 쓰였다.
커널에 pseudo-device vn 5 와 같이 번호를 뒤에 써주면 동시에
쓸수있는 vnode device 가 그 번호만큼 늘어난다(/dev/vn1, /dev/vn2...)
번호를 써주지 않았을경우엔 /dev/vn0만 사용할 수 있다.
원문은 http://nowcool.dhs.org/freebsd/read.php3?num=2&id=76&thread=75& jbkb, cjh |