Linux ETC

ramdisk 사용하기

2008.05.19 20:11

호스트웨이 조회 수:30073

[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 264513
385 ls 명령어의 파일 사이즈 쉽게 확인하기 호스트웨이 2012.10.23 176779
384 리눅스 서버 누가 언제 무슨 작업을 했는지 확인 방법 호스트웨이 2012.03.09 93421
383 sar 명령 옵션 호스트웨이 2012.06.15 92950
382 Linux Charset 확인 및 변경 file 호스트웨이 2012.03.30 85038
381 ulimit 설정 관련 호스트웨이 2015.07.29 77633
380 Swap 메모리 늘리기 file 호스트웨이 2012.03.30 67207
379 국가명 약어 (국가코드) 호스트웨이 2012.04.13 64984
378 head 와 tail 사용하기 sylee 2008.05.14 63481
377 비대해진 로그 파일 내용을 비우는 방법 - /dev/null 호스트웨이 2012.03.16 61413
376 서비스 이름으로 포트 번호 확인하기 호스트웨이 2012.04.13 57719
375 fdisk 명령어를 이용하여 수동으로 파티션 나누기 file 호스트웨이 2015.11.30 57711
374 강제 umount 방법 (umount : device is busy 발생시) 호스트웨이 2012.11.30 55453
373 top 명령어 및 옵션 설명 file 호스트웨이 2012.03.27 52549
372 xinetd 소개 및 설정 호스트웨이 2012.06.29 51909
371 history 조회시 '날짜,시간' 표시하기 호스트웨이 2012.03.16 49450
370 시스템 시간 확인 및 동기화 하기 sylee 2008.05.15 46977
369 /bin/false, /sbin/nologin 의 차이점 호스트웨이 2012.08.10 45747
368 Kernel Parameters HOSTWAY 2008.06.04 45457
367 ssh-key를 생성하여 서버에 패스워드 없이 접속하는 방법 jook 2008.06.25 44752