답변:
이 기술은 커널에 내장되어 있으므로 추가 도구가 필요하지 않습니다. 실제로, 당신은 이미 몇 개의 RAM 디스크를 가지고 있습니다 (사용해서는 안되며, 시스템 용으로 예약되어 있습니다).
grep -w tmpfs /proc/mounts
에 마운트 된 2GB RAM 디스크를 설정하려면 /ramdisk
다음 행을 추가하십시오 /etc/fstab
.
ramdisk /ramdisk tmpfs mode=1777,size=2g
그런 다음 명령을 사용하여 디스크를 마운트하십시오 mount /ramdisk
(다시 부팅하면 자동으로 수행됨).
표시된 크기는 최대 값이며 디스크는 디스크에있는 파일만큼의 메모리 만 사용합니다.
/tmp
RAM 디스크로 변경할 수 있습니다 . 에 /etc/fstab
넣어 위의 라인 /tmp
보다는 /ramdisk
다음 재부팅.
/tmp
RAM 디스크로 변경 한 후 처음으로 다시 부팅하면 있던 파일이 /tmp
숨겨집니다. 그들이 작은 디스크 공간을 낭비한다는 것을 제외하고는 무해합니다. RAM 디스크에서 재부팅 한 후 정리하여 정리할 수 있습니다./tmp
mount --bind / /mnt
rm -r /mnt/tmp/* /mnt/tmp/.*
umount /mnt
이 mount --bind
명령은 /mnt
루트 파일 시스템을 복제하여 보여 줍니다 . 그러나 RAM 디스크가 이제 /tmp
루트보기에서 가려 지지만 아무것도 가리지 않습니다 /mnt/tmp
.
추가 : /tmp
재부팅하지 않고 RAM 디스크로 전환 할 수 있습니다 . 조금 더 복잡합니다. /etc/fstab
위와 같이 행을 추가 한 후 다음 명령을 실행하십시오.
mkdir /tmp.old
mount --bind /tmp /tmp.old
mount /tmp
cd /tmp
ln -s /tmp.old/* /tmp/.* .
/tmp.old
다음에 다시 부팅 한 후 삭제 하십시오.
파일을 다른 곳 /tmp.old
으로 옮길 수없는 이유 /tmp
는 일부 중요한 프로그램에 파일이 열려 있기 때문입니다. /tmp
예를 들어 /tmp/.X11-unix/X0
X 서버가 수신 대기하고 모든 GUI 프로그램이 시작될 때 열립니다. 파일을 다른 파일 시스템으로 이동한다는 것은 파일을 복사하고 이전 파일을 삭제하는 것을 의미하므로 X 서버는 계속 듣지만 /tmp.old/.X11-unix/X0
X 클라이언트 /tmp/.X11-unix/X0
는 헛된 접촉을하게 됩니다. 서버에서 조심하면 움직일 수 있습니다.
/tmp
됩니다 tmpfs
. 필요하지 않으며 수행 방법을 설명하기 위해 답변을 편집했지만 더 복잡합니다. 더이있어 mkfs
준비 할 기본 스토리지, 커널 핸들의 모든 없기 때문에 참여하지 않습니다.
/tmp
있고 디스크에서 동기화 빈도가 증가 하기 때문에)에서 눈에 띄는 속도를 올렸다고 생각 하지만 이것은 신뢰할 수없는 주관적인 인상입니다. 나는 벤치마킹을 시도한 적이 없다.