KVM의 Windows 10 스왑 영역(가상 스토리지)에서 호스트 측 Linux의 tmpfs 사용
특히 가상 머신에서는 메모리가 제한되는 경우가 많아 스왑 처리가 용이하다.
따라서 Windows 페이지 파일을 호스트의 RAM에 구성하여 실행 속도를 높일 수 있습니다.
차리다
NTFS 파티션을 포맷하려면 ntfs-3g이 필요합니다.
$ sudo dnf install ntfs-3g # Red Hat
$ sudo apt install ntfs-3g # Debian
호스트 설정이런 시나리오를 준비해.
/usr/local/bin/vmswap-attach
#!/bin/sh
if [ -e /tmp/vmswap ]; then
exit 1
fi
mkdir /tmp/vmswap
mount -o size=0,noatime -t tmpfs tmpfs /tmp/vmswap
truncate -s 8G /tmp/vmswap/disk.img
loop=$(losetup -b 4096 -Pf --show /tmp/vmswap/disk.img)
parted -s -a optimal ${loop} mklabel gpt mkpart Volume ntfs 0% 100%
mkfs.ntfs -s 4096 -p 256 -H 0 -S 0 -If "${loop}p1"
parted -s ${loop} set 1 msftdata on
losetup -d ${loop}
/usr/local/bin/vmswap-detach#!/bin/sh
if [ ! -e /tmp/vmswap ]; then
exit 1
fi
umount /tmp/vmswap
rm -rfv /tmp/vmswap
실행vmswap-attach
후/tmp/vmswap/disk.img
교환 구역이 생성되고 실행vmswap-detach
후가 삭제됩니다.더 자세히 설명하자면 tmpfs에 8GB의 스파 파일을 준비하고 거기서 GPT의 구역을 잘라 NTFS로 포맷한다.
마지막으로
set 1 msftdata on
Windows를 NTFS로 인식하지 못하는 것이 중요합니다.시스템에서 자동으로 시작할 수 있도록 단원 파일을 만듭니다.
/etc/systemd/system/vmswap.service
[Unit]
Description=Swap space for Windows on KVM
Before=libvirtd.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/local/bin/vmswap-attach
ExecStop=/usr/local/bin/vmswap-detach
[Install]
WantedBy=multi-user.target
$ sudo systemctl enable --now vmswap
게스트 설정생성된 스왑 영역을 VM 스토리지로 추가합니다.
더 이상 사용하지 않는 영역을 풀려면 Discard mode에서 unmap을 선택합니다.
XML을 편집하고 블록 크기를 4096바이트로 설정한 후 끝냅니다.
(논리적 섹터 크기는 페이지 크기에 따라 4096바이트로 포맷되며 그렇지 않으면 Windows에서 볼 수 없습니다.)
<disk type="file" device="disk">
<driver name="qemu" type="raw" cache="writethrough" io="io_uring" ioeventfd="on" discard="unmap" iothread="4" detect_zeroes="off" packed="on"/>
<source file="/tmp/vmswap/disk.img"/>
<backingStore/>
<!-- ブロックサイズを4096バイトに設定 -->
<blockio logical_block_size="4096" physical_block_size="4096"/>
<target dev="vdb" bus="virtio"/>
<address type="pci" domain="0x0000" bus="0x08" slot="0x00" function="0x0"/>
</disk>
그런 다음 페이지 파일을 배치할 설정을 지정합니다.Windows를 시작하면 시작 버튼→시스템→관련 설정의 시스템 세부 설정→고급 설정 탭→성능 설정→고급 설정 탭→가상 스토리지 수정을 마우스 오른쪽 버튼으로 클릭합니다.
가상 메모리 설정 창이 표시됩니다.
설정된 화면은 여기 있습니다.
D 드라이브는 방금 추가된 스토리지입니다.
사용자 정의 치수의 경우 빈 영역에서 5MB의 최대 8124MB를 빼면 더 이상 클 수 없습니다.
여기에는 처음부터 꽉 찬 저장 구역이 설정되어 있지만 통상적으로 시스템 관리 크기는 문제없다.
입력한 후 "설정"단추를 눌러야만 표시할 수 있으니, 누르는 것을 잊지 마십시오.
다시 시작하면 추가된 영역이 가상 메모리로 반영되었는지 확인할 수 있습니다.
Reference
이 문제에 관하여(KVM의 Windows 10 스왑 영역(가상 스토리지)에서 호스트 측 Linux의 tmpfs 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/aryta/items/2bebb90d5be276e414e3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)