일부 RAM + 일부 SSD를 사용하여 임시 가상 RAM 디스크 만들기

일부 RAM + 일부 SSD를 사용하여 임시 가상 RAM 디스크 만들기

읽기/쓰기 집약적인 프로세스를 수행하기에 충분한 RAM(추가 200GB)과 SSD가 거의 충분한 이상한 상황에 처해 있습니다. "시스템님께, RAM과 SSD가 결합된 임시 가상 드라이브를 생성하여 SSD가 지원하는 특정 읽기/쓰기 작업이 조금 더 빨라지고 다른 작업은 "정말 빠르게 실행될 수 있도록 해주세요"라고 말할 수 있는 방법이 있습니까? RAM 지원"?

답변1

네, 하지만 실제로는 아닙니다.

가상 디스크는 RAM에 생성될 수 있지만 다른 디스크와 다르게 처리됩니다. 특히 여기에는 장치 노드가 없으므로 /dev"LVM" 또는 "mdadm"(두 개의 서로 다른 디스크를 하나의 큰 가상 디스크로 결합하는 데 사용됨)과 같은 기능에 표시되지 않습니다.

요구 사항을 충족하는 한 가지 방법은 SSD를 스왑 공간으로 전환한 다음 대용량 RAM 디스크를 만드는 것입니다. 하지만 RAM 디스크이기 때문에 SSD에서 직접 데이터를 읽을 수는 없습니다. 각 블록은 프로그램이 액세스를 시도할 때 자동으로 RAM에 복사되며, 실행 중인 프로세스의 정확한 특성에 따라 스래싱으로 인해 달성하려는 성능 향상이 무산될 가능성이 높습니다.

이 일을 완수해야 한다는 강박감과 결심이 든다면 다음 단계를 따르십시오. (참고 1: SSD는 이라고 가정합니다 /dev/sdb. 이를 SSD 드라이브의 실제 이름으로 바꾸십시오. 참고 2: 이렇게 하면 SSD가 지워집니다. 시작하기 전에 모든 중요한 데이터의 사본이 있는지 확인하십시오. 참고 3: 우리는 시스템을 지울 수 있는 도구를 사용할 때 루트 권한을 사용하므로 매우 주의하고 사소한 문제라도 있으면 즉시 중지하십시오.

  1. 교체를 위해 SSD를 포맷하세요: sudo mkswap /dev/sdb.
  2. (선택 사항이지만 권장됨) swapon -s현재 활성화된 모든 스왑 영역 목록을 가져오고 sudo swapoff [device]이를 닫는 데 사용됩니다.
  3. SSD 교체 활성화: sudo swapon /dev/sdb.
  4. RAM 디스크를 마운트할 디렉터리를 만듭니다.mkdir /tmp/ramdisk
  5. 실제 RAM 디스크 생성 및 마운트: ( 스왑이 사용되지 않으므로 이를 사용해야 sudo mount -t tmpfs -o size=[size] myramdisk /tmp/ramdisk합니다 .)tmpfsramfs

그게 다야. 이제 작성한 모든 내용은 /tmp/ramdiskRAM에 저장되고, RAM에 비해 너무 큰 내용은 SSD로 교체됩니다. 완료되면 간단한 재부팅만으로 수행한 모든 작업(SSD 포맷 제외)이 취소됩니다.

관련 정보