|
Á¦ ¸ñ : FreeBSD¿¡¼ ramdisk »ç¿ë
ÀÛ¼ºÀÚ : ÁÁÀºÁøÈ£(truefeel, http://coffeenix.net/ )
ÀÛ¼ºÀÏ : 2007.3.19(¿ù)
FreeBSD¿¡¼ ¸®´ª½ºÀÇ tmpfs ÆÄÀϽýºÅÛ, ramdiskó·³ ¸Þ¸ð¸®¸¦ ÆÄÀϽýºÅÛÀ¸·Î »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù. ramdisk´Â ¸Þ¸ð¸®¸¦ »ç¿ëÇϹǷΠ¼¹ö°¡ ºÎÆýà ±ú²ýÇÏ°Ô Áö¿öÁö¸ç, µð½ºÅ© ¾×¼¼½º°¡ ºó¹øÇÏ°Ô ÀϾ´Â °æ¿ì¿¡ È¿°ú¸¦ º¼ ¼ö ÀÖ´Ù. FreeBSD 5.x, 6.x ±âÁØ ramdisk »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÑ´Ù.
1. mdconfig ¸í·É ÀÌ¿ë
| # mdconfig -a -t swap -s 512M -u 1
# newfs -U /dev/md1
# mount /dev/md1 /var/tmp
| |
mdconfigÀº ¸Þ¸ð¸® µð½ºÅ©(md)¸¦ ¼³Á¤ÇÏ°í enableÇÏ´Â ¸í·ÉÀÌ´Ù.
-a : ¸Þ¸ð¸® µð½ºÅ©¸¦ attachÇÑ´Ù. -d´Â ¹Ý´ë·Î detachÇÑ´Ù.
-t : ¸Þ¸ð¸® µð½ºÅ©ÀÇ À¯ÇüÀ» ¼±ÅÃÇÑ´Ù.
-s : ¸Þ¸ð¸® µð½ºÅ©ÀÇ Å©±â¸¦ ¼³Á¤ÇÑ´Ù. ¼ýÀÚµÚ¿¡ b(Byte), k(KByte), m(MByte), g(GByte), t(terabyte) ´ÜÀ§ ¼³Á¤ °¡´É
-u : md(memory disk) deviceÀÇ unit ¹øÈ£¸¦ ÁöÁ¤ÇÑ´Ù. ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÀÚµ¿À¸·Î ÇÒ´çÇÑ´Ù.
¸Þ¸ð¸® µð½ºÅ© À¯Çü¿¡´Â swap°ú malloc 2°¡Áö°¡ ÀÖ´Ù. º¸Åë swap À¯ÇüÀ» »ç¿ëÇϸç, ¿©±â¼ swapÀº ¸Þ¸ð¸®°¡ ºÎÁ·ÇÑ °æ¿ì¿¡ disk·Î swapµÉ ¼ö ÀÖ´Â ¸Þ¸ð¸® ¿µ¿ªÀ» ÇÒ´çÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÏ´Â °ÍÀÌÁö, ±âº»ÀûÀ¸·Î disk·Î swapµÊÀ» ÀǹÌÇÏ´Â °ÍÀÌ ¾Æ´Ï´Ù. malloc À¯ÇüÀº malloc() function À¸·Î ÇÒ´çÇÏ´Â °æ¿ì·Î, ¸Þ¸ð¸®°¡ ºÎÁ·ÇÒ ¶§ ½Ã½ºÅÛ ÆдÐÀÌ »ý±æ ¼ö ÀÖ´Ù.
newfsÀÇ -U´Â soft-updates¸¦ enableÇÏ´Â ¿É¼ÇÀ¸·Î µð½ºÅ©ÀÇ ¾²±â ¼Óµµ¸¦ Çâ»ó½ÃŲ´Ù. ¸Þ¸ð¸® µð½ºÅ©¸¦ attachÇß´Ù¸é md device ¸ñ·ÏÀ» È®ÀÎÇغ¸ÀÚ. (mount¿©ºÎ¿Í ¹«°üÇÏ°Ô attachÇß´Ù¸é ¸ñ·Ï¿¡¼ º¼ ¼ö ÀÖÀ½)
¸Þ¸ð¸®´Â ½ÇÁ¦ »ç¿ëÀ» ÇÒ ½ÃÁ¡¿¡ ÇÒ´çÀÌ µÈ´Ù. mount¸¦ ÇßÁö¸¸ ¸Þ¸ð¸® µð½ºÅ©¿¡ ÆÄÀÏÀÌ ¾øÀ» ¶§ÀÇ ¸Þ¸ð¸® »óÅÂÀÌ´Ù.
100MBytes ÆÄÀÏÀ» Çϳª ¸¸µé¾îº¸ÀÚ.
| # dd if=/dev/zero of=foobar.img bs=1024k count=100 | |
free ¸Þ¸ð¸®°¡ ÁÙ¾îµé¾úÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ÆÄÀÏÀ» »èÁ¦ÇÏ¸é ´Ù½Ã ¸Þ¸ð¸®´Â ¹ÝȯµÈ´Ù.
¸Þ¸ð¸® µð½ºÅ©°¡ ´õ ÀÌ»ó ÇÊ¿ä°¡ ¾ø´Ù¸é detach¸¦ ÇÑ´Ù.
| # umount /var/tmp
# mdconfig -d -u 1
| |
2. mdmfs ¸í·ÉÀ» »ç¿ëÇÏ¿© Çѹ濡
mdmfs´Â mdconfig, newfs, mount ¸í·ÉÀ» Çѹ濡 ó¸®ÇØÁÖ´Â ¸í·ÉÀÌ´Ù. ±âº»À¸·Î soft-updates°¡ enableµÈ »óÅÂÀÇ swap±â¹Ý(swap-based) µð½ºÅ©¸¦ »ç¿ëÇÑ´Ù. swap backing´ë½Å malloc backing µð½ºÅ©¸¦ ¿øÇϸé -M ¿É¼ÇÀ» »ç¿ëÇÏ¸é µÈ´Ù.
| # /sbin/mdmfs -s 512M md1 /var/tmp
# mount
... »ý·« ...
/dev/md1 on /var/tmp (ufs, local, soft-updates)
| |
3. /etc/fstab ¼³Á¤
|
/dev/md1 /var/tmp mfs rw,-s512M 2 0
| |
4. Âü°íÀÚ·á
* RAMdisks, creating under FreeBSD 5.x
http://freebsdwiki.net/index.php/RAMdisks,_creating_under_FreeBSD_5.x
* FreeBSD Handbook (Chapter 17 Storage)
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/disks-virtual.html
|