Linux ETC

ramdisk 사용하기

2008.05.19 20:11

호스트웨이 조회 수:28222

[ramdisk 사용하기]



일반적으로 memory는 harddisk 보다 속도가 빠르다.

harddisk의 속도가 많이 빨라지긴 했지만, 아무리 빨라졌다고 해도 memory에 비해서 약 1000배 정도 속도가 느리다.

그렇다면 이렇게 빠른 속도를 내는 memory를 harddisk 처럼 사용한다면?

그렇다! 매우 높은 퍼포먼스 향상을 기대할수 있을것이다.

어떻게하면 memory를 harddisk 처럼 사용할수 있을까?

이를 ramdisk 라고 부르며, 그 사용 방법은 간단하다.

먼저 ramdisk로 만들 디렉토리를 하나 생성한다.

*)여기에서는 ramdisk 라는 이름으로 생성을 하겠다.
---------------------------------
[root@manpage root]# mkdir -p /ramdisk (/ 디렉토리에 ramdisk라는 디렉토리 생성)

[root@manpage root]# mount -t tmpfs -o size=10000k /ramdisk /ramdisk *) 10M 크기의 ramdisk를 생성한다.

[root@manpage root]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda5 2016016 1371640 541964 72% /
/dev/hda1 46636 19314 24914 44% /boot
none 252464 0 252464 0% /dev/shm
/dev/hda6 703596 16420 651436 3% /tmp
/dev/hda3 3020172 2534104 332648 89% /usr
/dev/hda2 3020172 1364616 1502136 48% /var
/dev/hda8 28629084 8761736 18413068 33% /home
/ramdisk 10000 0 10000 0% /ramdisk

*) 10M의 ramdisk가 생성된것을 확인
-----------------------------------
위와 같은 순서를 통해서 10M의 ramdisk를 생성하였다.

*) 10M라는것은 실제 물리적인 ram의 10M 공간을 사용하게 되는것이므로, 메모리가 충분히 있는지 확인후에 생성하기 바란다.

이제 이곳에 data를 옮겨보자!

이곳에 있는 data는 모두 실제 메모리에 올라가 있게 되므로, ramdisk안에 있는 data를 cpu가 호출하게 된다면, disk에 있을때보다 훨씬 빠른 응답속도를 받을수 있을 것이다.

reboot을 할때에도 ramdisk가 생성되게 할려면 /etc/fstab을 아래와 같이 수정해주면 된다.
-------------------------------------
/ramdisk /ramdisk tmpfs default 0 0
-------------------------------------
추가를 해주었다면 reboot이 되어도 ramdisk를 다시 사용할수 있을 것이다.

간단하게 ramdisk를 사용하는 방법을 알아 보았다.

이제 빠른 응답속도를 기대하는 곳을 ramdisk를 사용해보자.

(특히 php나 mysql의 접속이 많은 system이라면, /tmp, /var/tmp등 ramdisk로 운영을 하면 시스템 성능의 개선 효과를 기대할수 있다.)

단 주의할것은, ramdisk는 휘발성공간인 memory를 사용하기 때문에, 시스템의 전원이 공급이 되지 않으면 (reboot이나, system 전원 off) 해당 공간의 자료가 모두 사라지게 된다.

항상 ramdisk를 사용할때에는 모든 자료가 없어져도 되지만, 사용빈도가 높은 data를 위해서 사용하도록 한다.
번호 제목 글쓴이 날짜 조회 수
386 scp 명령어를 이용한 파일 복사 및 전송 호스트웨이 2012.03.16 219244
385 ls 명령어의 파일 사이즈 쉽게 확인하기 호스트웨이 2012.10.23 91971
384 리눅스 서버 누가 언제 무슨 작업을 했는지 확인 방법 호스트웨이 2012.03.09 77465
383 Linux Charset 확인 및 변경 file 호스트웨이 2012.03.30 71435
382 ulimit 설정 관련 호스트웨이 2015.07.29 66351
381 Swap 메모리 늘리기 file 호스트웨이 2012.03.30 61060
380 비대해진 로그 파일 내용을 비우는 방법 - /dev/null 호스트웨이 2012.03.16 54455
379 서비스 이름으로 포트 번호 확인하기 호스트웨이 2012.04.13 53801
378 국가명 약어 (국가코드) 호스트웨이 2012.04.13 50312
377 xinetd 소개 및 설정 호스트웨이 2012.06.29 49605
376 top 명령어 및 옵션 설명 file 호스트웨이 2012.03.27 46961
375 Kernel Parameters HOSTWAY 2008.06.04 43593
374 ssh-key를 생성하여 서버에 패스워드 없이 접속하는 방법 jook 2008.06.25 43299
373 강제 umount 방법 (umount : device is busy 발생시) 호스트웨이 2012.11.30 42449
372 openssl 간단 사용법 호스트웨이 2008.12.10 39523
371 tcpdump 기본 사용 sylee 2008.07.02 39322
370 fdisk 명령어를 이용하여 수동으로 파티션 나누기 file 호스트웨이 2015.11.30 39299
369 시스템 시간 확인 및 동기화 하기 sylee 2008.05.15 37474
368 특정 계정만 su 명령어 사용 file 호스트웨이 2012.05.05 36905
367 터미널 창으로 메시지 보내기 호스트웨이 2008.05.19 36886