@matigo อาจถูกต้องกับความคิดเห็นเกี่ยวกับความเสียหายของระบบไฟล์ ฉันเห็นด้วยว่าการใช้ ext4 ของ WSL2 นั้นแข็งแกร่งกว่าอย่างแน่นอนหากเหมาะกับความต้องการของคุณ
หากคุณยังไม่ได้ทำ ให้ทำ wsl -- ปิดเครื่อง
(จาก PowerShell) เพื่อให้แน่ใจว่ามีการปลดแฮนเดิล/ล็อคใดๆ จากนั้นรีสตาร์ทและลองอีกครั้ง มีโอกาสทำงานค่อนข้างน้อย แต่ก็คุ้มค่าที่จะลองเพราะมันเร็วมาก
หากไม่ได้ผล ฉันขอแนะนำสิ่งต่อไปนี้เพื่อพยายามซ่อมแซมอินสแตนซ์ WSL1
โดยทั่วไปไปกลับอินสแตนซ์ WSL1 ผ่าน wsl -- ส่งออก
/wsl -- นำเข้า
. เดอะ น้ำมันดิน
ไป-กลับที่กระบวนการนี้ดำเนินการ ควร (หวังว่า) จะลบไฟล์ที่เสียหายออกเมื่อทำการเก็บถาวรหรือยกเลิกการเก็บถาวร อย่างใดอย่างหนึ่ง
จาก PowerShell:
#ยืนยันรายชื่อผู้จัดส่ง
wsl -l -v
# ชื่อการแจกจ่ายอาจเป็น "Ubuntu" หรือ "Ubuntu-20.04" - ปรับบรรทัดต่อไปนี้ให้เหมาะสม:
wsl -- ปิดเครื่อง
ซีดี ~ \ เอกสาร
mkdir WSL\images
mkdir WSL\instances\UbuntuRecovery
wsl --export Ubuntu WSL\images\ubuntu.tar
wsl --import UbuntuRecovery WSL\instances\UbuntuRecovery WSL\images\ubuntu.tar --version 1
wsl -d การกู้คืน Ubuntu
ดูว่าไฟล์หายไปหรือสามารถลบได้ในอินสแตนซ์ใหม่นั้น
ถ้าใช่ และถ้าทุกอย่างดูโอเคในอินสแตนซ์ใหม่ ให้ทำดังนี้
อินสแตนซ์ใหม่จะเป็นค่าเริ่มต้นเมื่อใดก็ได้ wsl
กำลังทำงานอยู่
สุดท้าย ลบอินสแตนซ์ดั้งเดิมที่เสียหายด้วย:
wsl --unregister อูบุนตู
สิ่งสำคัญ: มันคือ ทำลายล้าง การดำเนินการ. ตรวจสอบให้แน่ใจว่าทุกอย่างทำงานได้ตามที่ตั้งใจไว้ ในด้านสว่างเราได้ทำการสำรองข้อมูลแล้ว ...
คุณยังสามารถถอนการติดตั้ง "App" ของ Ubuntu ที่ติดตั้งจาก Store ได้ในตอนนั้น
คุณจะเปิดตัวผ่าน wsl
(หากยังไม่เคยใช้) หรือ Windows Terminal ตั้งแต่ ubuntu.exe
(หรือ ubuntu2004.exe
) คำสั่งจะหายไป