ขนาดของภาพ WSL VHDX ที่เพิ่มขึ้นอย่างปลอดภัย
(คุณชอบยูทิลิตี้นี้ไหมให้มันและแบ่งปัน)
ระบบย่อย Windows สำหรับ Linux (WSL) ใช้ไฟล์รูปภาพ VHDX เพื่อจัดเก็บระบบไฟล์ ext4 แต่ไม่มีวิธีที่มีประสิทธิภาพในการหดภาพเมื่อไฟล์ถูกลบออก ยูทิลิตี้นี้ไม่จำเป็นต้องมีข้อมูลประจำตัวที่สูงขึ้นการบดอัดไดรฟ์เสมือน VHDX ของ Distros WSL2 และบรรลุขนาดที่เป็นไปได้ขั้นต่ำ โดยค่าเริ่มต้นจะดำเนินการในโหมดข้อมูลไม่มีการดำเนินการบนรูปภาพโดยให้ข้อมูลต่อไปนี้สำหรับ distros ทั้งหมดที่ติดตั้ง:
หากไม่ได้ระบุ distro มันจะกำหนดเป้าหมายรูปภาพที่ติดตั้งทั้งหมดตามลำดับ มันทำงานในเซฟโหมดในระหว่างกระบวนการขนาดกะทัดรัดป้องกันผลข้างเคียงที่ไม่พึงประสงค์ในกรณีที่เกิดความล้มเหลว นี่เป็นกรณีการใช้งานทั่วไป: ภาพ Ubuntu ที่กะทัดรัดพร้อมการยืนยัน:
PS> wslcompact -c Ubuntu
WSL compact, v5.0 2023.02.02 (Groundhog edition)
(C) 2023 Oscar Lopez
wslcompact -h for help. For more information visit: https://github.com/okibcn/wslcompact
Distro's name: Ubuntu
Image file: C:UsersOkiWSLUbuntuext4.vhdx
Current size: 12864 MB
Estimated size: 7700 ± 188 MB
The estimated process time using an SSD is about 2 minutes.
NOTE: You can safely cancel at any time by pressing Ctrl-C
Import in progress, this may take a few minutes.
The operation completed successfully.
New Image compacted from 12864 MB to 7728 MB
Do you want to apply changes and use the new image (y/N): y
Image replaced for distro: Ubuntu
ก่อนที่จะติดตั้ง WSLCompact ตรวจสอบให้แน่ใจว่าการติดตั้ง WSL ของคุณเป็นข้อมูลล่าสุด คุณสามารถทำได้โดยพิมพ์ wsl --update ใน PowerShell WSLCOMPACT ต้องการอย่างน้อย WSL เวอร์ชัน 1.0.0
มีสองวิธีในการติดตั้ง wslCompact เลือกที่คุณชื่นชอบ:
มันต้องมีการตั้งค่าพิเศษเพื่อเรียกใช้สคริปต์ระยะไกล หากคุณได้ตั้งค่าไว้ในอดีตคุณไม่ต้องการอีกต่อไป หากคุณไม่แน่ใจใน PowerShell เพียงพิมพ์:
Set-ExecutionPolicy RemoteSigned - Scope CurrentUserในการติดตั้งหรืออัปเดตยูทิลิตี้ให้ปิดอินสแตนซ์ PowerShell ทั้งหมดของคุณเปิดใหม่และพิมพ์ใหม่:
iwr - useb https: // raw.githubusercontent.com / okibcn / wslcompact / main / setup | iexหากต้องการลบยูทิลิตี้ให้ปิดอินสแตนซ์ PowerShell ทั้งหมดของคุณให้เปิดใหม่และพิมพ์:
Remove-Item " $ ( $ env: PSModulePath .split ( ' ; ' )[ 0 ] ) /WslCompact " - Recurse - Forceหากคุณใช้ Scoop Package Manager คุณสามารถเพิ่มยูทิลิตี้ WSLCompact โดยตรงจากถัง พิมพ์ PowerShell สองบรรทัดนี้:
scoop bucket add .oki https: // github.com / okibcn / Bucket
scoop install wslcompactเพื่ออัปเดตแอพเพียงแค่พิมพ์:
scoop update wslcompactเพื่อลบแอพเพียงแค่พิมพ์:
scoop uninstall wslcompactหลังจากการติดตั้งการใช้งานตรงไปตรงมา:
wslcompact โดยไม่มีอาร์กิวเมนต์แสดงรายการภาพและข้อมูล WSL ทั้งหมด จะไม่มีการดำเนินการเกี่ยวกับภาพwslcompact Ubuntu-c กะทัดรัด WSLCompact จะแก้ไขภาพหลังจากการยืนยัน-d อนุญาตให้พาร์ติชันข้อมูลขนาดกะทัดรัด ยูทิลิตี้ช่วยให้มั่นใจได้ว่ามีขนาดน้อยที่สุดและคุณจะได้รับไฟล์ที่ต่อเนื่องกันเพื่อการเข้าถึงที่เร็วขึ้นในระบบที่ใช้ HD แบบเก่า หากคุณต้องการรายชื่อชื่อ distros ของคุณสามารถเข้าถึงได้โดยพิมพ์ wsl -l
Usage: wslcompact [OPTIONS] [DISTROS]
wslcompact compacts the images of WSL distros by removing unsused space.
If no option is provided, it will default to info mode, without modifying any image.
If no distro is provided it will process all the installed images.
NOTE: WSL will be shutdown for compacting the images.
Options:
no opt. Provides name, image file path, current size, and estimated new size information.
-c Compacting mode: process the selected distros compacting the images.
-y replaces selected images without asking for confirmation.
-d Enable the processing of data images. Default is disabled.
-h Prints this help
Examples:
wslcompact
wslcompact -c -d
wslcompact -c -y Ubuntu Kali
หาก C: ไดรฟ์ของคุณไม่มีพื้นที่ว่างชั่วคราวเพียงพอโปรแกรมจะไม่กะทัดรัด เพียงเปลี่ยนโฟลเดอร์ TEMP ก่อนที่จะเรียกใช้ฟังก์ชัน ดังนั้นแทนที่จะเป็น wslcompact ง่าย ๆ เพียงแค่ทำ:
$ env: TEMP = " Z:your tempfolder "
wslcompactโฟลเดอร์ Temp ใหม่จะใช้งานได้เฉพาะสำหรับเซสชัน PowerShell Terminal ดังนั้นจึงไม่มีปัญหาเลยสำหรับส่วนที่เหลือของระบบและจะไม่ทิ้งขยะ
การดำเนินการทั่วไปคือ:
PS> wslcompact
WSL compact, v5.0 2023.02.02 (Groundhog edition)
(C) 2023 Oscar Lopez
wslcompact -h for help. For more information visit: https://github.com/okibcn/wslcompact
Distro's name: Ubuntu
Image file: C:UsersOkiWSLUbuntuext4.vhdx
Current size: 12864 MB
Estimated size: 7700 ± 188 MB
The estimated process time using an SSD is about 2 minutes.
Distro's name: Kali
Image file: C:UsersOkiWSLKaliext4.vhdx
Current size: 1579 MB
Estimated size: 723 ± 18 MB
The estimated process time using an SSD is about 1 minutes.
Distro's name: Arch
Image file: C:UsersOkiWSLArchext4.vhdx
Current size: 1075 MB
Estimated size: 860 ± 21 MB
The estimated process time using an SSD is about 1 minutes.
การบีบอัดภาพ Ubuntu ด้วยการยืนยัน:
PS> wslcompact -c Ubuntu
WSL compact, v5.0 2023.02.02 (Groundhog edition)
(C) 2023 Oscar Lopez
wslcompact -h for help. For more information visit: https://github.com/okibcn/wslcompact
Distro's name: Ubuntu
Image file: C:UsersOkiWSLUbuntuext4.vhdx
Current size: 12864 MB
Estimated size: 7700 ± 188 MB
The estimated process time using an SSD is about 2 minutes.
NOTE: You can safely cancel at any time by pressing Ctrl-C
Import in progress, this may take a few minutes.
The operation completed successfully.
New Image compacted from 12864 MB to 7728 MB
Do you want to apply changes and use the new image (y/N): y
Image replaced for distro: Ubuntu