น่าเศร้าที่ฉันไม่มีข่าวดีสำหรับคุณ อาจเป็นเพียงคำแนะนำเมื่อติดตั้งใหม่ซึ่งหวังว่าจะป้องกันไม่ให้เกิดขึ้นอีก
อันดับแรก รีเซ็ต ตัวเลือกในภาพหน้าจอที่คุณโพสต์ระบุอย่างชัดเจนว่า:
หากแอปนี้ทำงานไม่ถูกต้อง ให้รีเซ็ตแอป ข้อมูลของแอพจะถูกลบ
ใช่แล้ว รีเซ็ต กำจัดข้อมูล Ubuntu WSL ทั้งหมด (ระบบไฟล์และข้อมูลรีจิสตรี)
ก ซ่อมแซมในทางกลับกัน ทำให้การแจกจ่าย WSL Ubuntu ไม่เปลี่ยนแปลง
โน๊ตสำคัญ: ตัวเลือกเหล่านี้และข้อความในการตั้งค่าจะเหมือนกันสำหรับแอพ Store ทั้งหมด ฉันรู้ว่า ถอนการติดตั้ง ถ้อยคำ พูดว่า:
เอกสารของคุณจะไม่ได้รับผลกระทบ
อย่างไรก็ตาม วิธีจัดการกับการติดตั้ง WSL การถอนการติดตั้ง ทำ ลบอินสแตนซ์ทั้งหมด เอกสารเป็นส่วนหนึ่งของระบบไฟล์ ซึ่งจะถูกลบออกเมื่อถอนการติดตั้ง
ฉันเคยเห็นกรณีที่แอป Store ถูกรีเซ็ตด้วยเหตุผลอื่น ส่งผลให้ข้อมูล WSL สูญหาย ด้วยเหตุผลดังกล่าว (และอื่น ๆ ) ฉันขอแนะนำดังต่อไปนี้ ...
ป้องกันการถอนการติดตั้งและรีเซ็ตจากการลบข้อมูล WSL
ฉันกำลังคิดอย่างจริงจังเกี่ยวกับการสร้างวิดีโอ YouTube แรกของฉันในเร็วๆ นี้ เมื่อติดตั้ง Ubuntu (หรือการกระจายอื่น ๆ ) ใน WSL สิ่งแรกที่ฉันทำคือ "ตัดการเชื่อมต่อ" อินสแตนซ์จากการติดตั้ง Store โดย "ย้าย" ไปยังไดเร็กทอรีของตัวเอง
ตามค่าเริ่มต้น การกระจาย WSL จะถูกติดตั้งใน:
%UserProfile%\AppData\Local\Packages\<DistributionPackage>\
ซึ่งรวมถึงระบบไฟล์เสมือนอย่างใดอย่างหนึ่ง:
- WSL2:
..\<DistributionPackage>\LocalState\ext4.vhdx
- WSL1:
..\<DistributionPackage>\LocalState\rootfs\
สำหรับ Ubuntu นั่น <DistributionPackage>
ชื่อจะขึ้นต้นด้วย เป็นที่ยอมรับ
และรวมถึง อูบุนตู
ในชื่อ (พร้อมกับตัวระบุอื่น ๆ )
คุณควรตรวจสอบเพื่อดูว่าไดเร็กทอรีนั้นยังคงอยู่หรือไม่ หากเป็นเช่นนั้น ข้อมูลของคุณสามารถกู้คืนได้ อย่างไรก็ตาม ฉันไม่เชื่อว่าเป็นไปได้ มีโอกาสมากกว่านั้นหากคุณเรียกใช้ซ้ำ ubuntu.exe
หลังจากที่ทำการ Reset ไปแล้วนั้นก็คือ ใหม่ การติดตั้งที่นั่น
อย่างไรก็ตาม ฉันขอแนะนำขั้นตอนนี้สำหรับการ "ตัดการเชื่อมต่อ" การติดตั้ง Store เพื่อไม่ให้สิ่งนี้เกิดขึ้นอีก:
เมื่อคุณติดตั้ง Ubuntu และกำหนดค่าชื่อผู้ใช้และรหัสผ่านของคุณแล้ว
ออกจากอูบุนตู
จาก PowerShell:
#ยืนยันรายชื่อผู้จัดส่ง
wsl -l -v
# ชื่อการแจกจ่ายอาจเป็น "Ubuntu" หรือ "Ubuntu-20.04" - ปรับบรรทัดต่อไปนี้ให้เหมาะสม:
wsl -- ปิดเครื่อง
ซีดี ~ \ เอกสาร
mkdir WSL\images
mkdir WSL\instances\MyUbuntu
wsl --export Ubuntu WSL\images\ubuntu_clean.tar
wsl --import MyUbuntu WSL\instances\MyUbuntu WSL\images\ubuntu_clean.tar -- เวอร์ชัน 2
โปรดทราบว่าไดเร็กทอรีและชื่อไฟล์ส่วนใหญ่ด้านบน (และชื่ออินสแตนซ์) ขึ้นอยู่กับคุณ
ตอนนี้คุณควรมีการติดตั้ง Ubuntu สองครั้งตามที่คุณยืนยันได้ wsl -l -v
.
เปิดตัวใหม่กับ wsl -d MyUbuntu
--นำเข้า
ed อินสแตนซ์ไม่ "จำ" ชื่อผู้ใช้เริ่มต้นของคุณ (แม้ว่าผู้ใช้จะยังคงอยู่) ตั้งชื่อผู้ใช้เริ่มต้นในอินสแตนซ์นั้นผ่าน /etc/wsl.conf
ไฟล์ต่อ คำตอบนี้. โดยเฉพาะ:
sudo -e /etc/wsl.conf
และเพิ่มบรรทัดต่อไปนี้:
[ผู้ใช้]
ค่าเริ่มต้น=<ชื่อผู้ใช้ของคุณ>
ออกจากอินสแตนซ์
อีกครั้งจาก PowerShell:
wsl -- ยกเลิก MyUbuntu
wsl --set-default MyUbuntu
ตอนนี้อินสแตนซ์เริ่มต้นคือ มายอูบุนตู
. เป็นสิ่งที่จะเปิดตัวเมื่อใดก็ตามที่คุณเริ่ม WSL ด้วย wsl
สั่งการ.
ถอนการติดตั้ง Store Ubuntu คุณไม่ต้องกังวลว่าจะถูกรีเซ็ตอีกครั้ง
หากคุณจำเป็นต้องลองบางอย่างใน Ubuntu ที่คุณรู้สึกว่าอาจทำให้เกิดปัญหา ให้ทำในอินสแตนซ์ชั่วคราวใหม่:
อีกครั้งใน PowerShell:
ซีดี ~\Documents\WSL
อินสแตนซ์ mkdir\UbuntuTest
wsl -- ส่งออกอิมเมจ MyUbuntu \current_ubuntu.tar
wsl --import UbuntuTest instances\UbuntuTest images\current_ubuntu.tar --version 2
wsl -d Ubuntuทดสอบ
นั่นเป็นอินสแตนซ์แยกต่างหากที่คุณสามารถติดตั้ง เปลี่ยนการกำหนดค่า ใช้งานได้จริง เมื่อคุณดำเนินการให้ออกและ:
wsl -- ยกเลิกการลงทะเบียน UbuntuTest
การดำเนินการนี้จะลบอินสแตนซ์ทดสอบนั้นทิ้งไป มายอูบุนตู
ไม่บุบสลาย
โปรดทราบว่าทั้งหมด ทดสอบ Ubuntu
อินสแตนซ์จะหายไป ดังนั้นตรวจสอบให้แน่ใจว่าคุณไม่ได้สร้างเอกสารหรือข้อมูลใดๆ ที่คุณต้องการในระยะยาว