เหตุใดโฟลเดอร์ / winsxs จึงมีขนาดใหญ่ขึ้นและทำให้เล็กลงได้?


174

เครื่องเสมือน Vista ที่ฉันใช้มีฮาร์ดดิสก์เสมือน 10 GB เท่านั้นและฉันกังวลเกี่ยวกับพื้นที่ว่างในช่วงเวลาหนึ่ง

ฉันใช้TreeSizeเพื่อตรวจสอบผู้ร้าย ..

ป้อนคำอธิบายรูปภาพที่นี่

และการกระทำผิดหลักคือว่า/winsxsหรือ "Windows Side-by-Side" โฟลเดอร์

ป้อนคำอธิบายรูปภาพที่นี่

โฟลเดอร์ Windows Side By Side คืออะไร มันอธิบายได้ดีตรงนี้

ส่วนประกอบทั้งหมดในระบบปฏิบัติการพบได้ในโฟลเดอร์ WinSxS อันที่จริงเราเรียกตำแหน่งนี้ว่าที่เก็บส่วนประกอบ แต่ละองค์ประกอบมีชื่อที่ไม่ซ้ำกันซึ่งรวมถึงเวอร์ชั่นภาษาและสถาปัตยกรรมตัวประมวลผลที่สร้างขึ้น โฟลเดอร์ WinSxS เป็นตำแหน่งเดียวที่พบส่วนประกอบในระบบอินสแตนซ์อื่น ๆ ทั้งหมดของไฟล์ที่คุณเห็นในระบบนั้น“ ฉาย” โดยการเชื่อมโยงอย่างหนักจากที่เก็บส่วนประกอบ ให้ฉันทำซ้ำที่จุดสุดท้าย - มีเพียงหนึ่งอินสแตนซ์ (หรือคัดลอกข้อมูลเต็ม) ของแต่ละรุ่นของแต่ละไฟล์ในระบบปฏิบัติการและอินสแตนซ์นั้นอยู่ในโฟลเดอร์ WinSxS เมื่อมองจากมุมมองนั้นโฟลเดอร์ WinSxS เป็นระบบปฏิบัติการทั้งหมดที่สมบูรณ์ซึ่งเรียกว่า "แบน" ในระบบปฏิบัติการระดับล่าง

นั่นอธิบายว่าทำไมโฟลเดอร์เริ่มใหญ่ แต่ไม่ใช่สาเหตุที่ขยายใหญ่ขึ้นเมื่อเวลาผ่านไป - คำตอบสำหรับคำถามนั้นคือการให้บริการ ใน Windows รุ่นก่อนหน้าหน่วยอะตอมมิกของการบริการเป็นไฟล์ใน Windows Vista เป็นส่วนประกอบ เมื่อเราอัปเดตไบนารี่โดยเฉพาะเราจะปล่อยเวอร์ชั่นใหม่ของส่วนประกอบทั้งหมดและเวอร์ชั่นใหม่นั้นจะถูกจัดเก็บไว้ข้างๆต้นฉบับในที่เก็บส่วนประกอบ ส่วนประกอบที่สูงกว่าถูกฉายเข้าสู่ระบบ แต่ไม่ได้สัมผัสรุ่นที่เก่ากว่าในร้าน เหตุผลที่เป็นส่วนที่สามของสาเหตุที่เก็บส่วนประกอบมีขนาดใหญ่มาก

คนอื่น ๆ จำนวนมากบ่นเกี่ยวกับขนาดของโฟลเดอร์ / winsxs เช่นกัน:

ผู้ร่วมงานเพิ่งได้รับการรีเฟรชแล็ปท็อปการทำงานทุก ๆ สองปีและอยู่ในระหว่างการโหลดแล็ปท็อปเครื่องใหม่ของเขาด้วย Vista ด้วยเหตุผลบางอย่างฮาร์ดไดรฟ์ C: ถูกแบ่งพาร์ติชั่นเป็น 25GB เท่านั้นและพื้นที่ส่วนที่เหลือสงวนไว้สำหรับไดรฟ์ที่มีขนาดใหญ่กว่ามาก D:

อย่างไรก็ตามหลังจากโหลดการอัปเดต Windows หลายครั้งเขาก็เหลือพื้นที่บนฮาร์ดไดรฟ์เหลือเพียงเล็กน้อยใน C: และด้วยเหตุผลบางอย่างไดเรกทอรี WinSxS ก็เพิ่มขึ้นเป็น 8GB

ในขณะที่ฉันรู้ว่าไดเรกทอรี WinSxS (Windows Side-by-Side) มีอะไรบ้างฉันไม่แน่ใจว่าทำไมไดเรกทอรีดังกล่าวจะขยายขนาดอย่างรวดเร็วด้วยการอัปเดตระบบปฏิบัติการปกติ

ฉันไม่ได้จริงๆดูแลเกี่ยวกับการมีไฟล์ที่ซ้ำกันเหล่านี้ทั้งหมดเพื่อความปลอดภัย แต่ฉันทำดูแลเกี่ยวกับ VM ระเบิดเนื่องจากจากข้อผิดพลาดของพื้นที่ดิสก์ ดังนั้น .. สามารถ / winsxs ถูกตัดลงอย่างปลอดภัยหรือไม่? ดูเหมือนจะไม่เป็นเช่นนั้น ..

ผู้ดูแลระบบไม่ควรใช้เหตุผลด้วยตนเองเพื่อกำจัดไดเรกทอรี / winsxs การทำเช่นนั้นอาจทำให้ Windows Update และ MSI ทำงานได้อย่างถูกต้องในภายหลัง การป้องกันการลบโดยไม่ตั้งใจจากไดเร็กตอรี่นั้นทำได้โดยการใส่ตัวบอกความปลอดภัยที่รัดกุมบนไดเร็กตอรี่ที่สืบทอดมาให้กับลูก ๆ ของมัน

หากนี่ / winsxs โฟลเดอร์ได้รับใด ๆ ที่มีขนาดใหญ่กว่าที่ฉันจะต้อง re-ภาพเครื่องเสมือนนี้ .. ซึ่งผมจริงๆไม่ต้องการที่จะทำ!


24
TreeSize ฟรี ... ฉันใช้windirstat.infoเพื่อจุดประสงค์นี้ ;-)
สตีฟ Schnepp

6
คุณไม่สามารถขยาย VM และขยายพาร์ติชันหลักได้หรือไม่
Sam Saffron

1
คุณสามารถใช้สิ่งนี้: windowsfixup.com/2009/05/…เป็นการส่วนตัวฉันจะอยู่ห่างจากมันถ้าฉันไม่สามารถหารหัสแหล่งที่มา
Sam Saffron

11
มีฮาร์ดลิงก์จำนวนมากใน winsxs ดังนั้นขนาดจึงมักถูกรายงานมากเกินไป
46499 Greg D

4
คำถามแรกใน SuperUser
puretppc

คำตอบ:


101

มีคำสั่งที่ดีที่ทำความสะอาดหลังจากการติดตั้ง Windows 7 SP1 (มันช่วยฉันได้ประมาณ 3 GB):

DISM /online /cleanup-Image /spsuperseded

ต้องดำเนินการจากพรอมต์คำสั่งที่ยกระดับ


2
ยอดเยี่ยมฉันแค่คิดถึงการล้าง Windows 7 SP1
Jeff Atwood

6
มีคำสั่งอื่นสำหรับ Windows 7 ที่สามารถลบการสำรองข้อมูลอัพเดตที่ไม่ใช่ SP ได้หรือไม่
galacticninja

8
หรือคุณสามารถใช้ตัวเลือก "ไฟล์ระบบการล้างข้อมูล" ในเครื่องมือ Disk Cleanup และลบไฟล์สำรองข้อมูล Service Pack
Michał T

5
@Pies ฉันเรียกใช้ Disk Cleanup ก่อนและ DSIM ยังคงกำจัดพิเศษ ~ 3GB (วัดพื้นที่ว่างในดิสก์%% ไม่ใช่ขนาดโฟลเดอร์) ดังนั้นจึงควรทำทั้งสองอย่าง
matt wilkie

3
@UpTheCreek คุณแน่ใจหรือไม่ หลังจากทำการล้างข้อมูลบนดิสก์ล้างไฟล์ระบบฉันจะได้รับC:\Windows\system32>DISM /online /cleanup-Image /spsuperseded Deployment Image Servicing and Management tool Version: 6.1.7600.16385 Image Version: 6.1.7600.16385 Service Pack Cleanup can't proceed: No service pack backup files were found. The operation completed successfully.
Cees Timmerman

44

TL; DR

WinSxS จริงมีการเชื่อมโยงอย่างหนัก มันไม่ใช้ข้อมูลเพิ่มเติมมากเท่าที่คุณคิด

ฮาร์ดลิงก์เหมือนกับ 'ทางลัด' หรือ 'ตัวชี้' ไปยังไฟล์จริงซึ่งอยู่ที่ใดที่หนึ่งบนดิสก์ของคุณ ฮาร์ดลิงก์ไม่ได้ใช้พื้นที่ฮาร์ดไดรฟ์ด้วยตัวเองเพียง แต่ทำหน้าที่เป็นการเปลี่ยนเส้นทาง

เนื่องจาก winsxs ประกอบด้วยฮาร์ดลิงก์การลบลิงก์เหล่านี้จะไม่เพิ่มพื้นที่ว่าง ไฟล์จริงจะยังคงอยู่ในตำแหน่งต่างๆบนดิสก์ของคุณ


winsxs ไม่ใช่ปัญหา

... มันเป็นทางออก! ( ส่วนใหญ่ )

สรุป "ทำเครื่องหมายว่าเป็นคำตอบโดย Ronnie Vernon, MVP, ผู้ดำเนินรายการ" กล่าวว่าที่นี่ :

ว้าวอภิปรายอย่างยาวเกี่ยวกับ hardlinks และ winsxs อย่างไรก็ตามนี่คือบางจุดสรุปของสิ่งที่ฉันเข้าใจเกี่ยวกับการทำงานทั้งหมด

ในการเริ่มต้นด้วยการตอบคำถามของ OP ด้วยคำตอบที่สมบูรณ์แบบที่โพสต์ไว้ด้านบนโดย Andre.Ziegler คุณไม่ต้องสัมผัส winsx บางทีบางส่วนของไฟล์ที่สามารถตัดแต่งเช่น MP3 ของ, AVI ของ ฯลฯ แต่ส่วนที่เหลือของไฟล์ระบบที่ควรจะเหลือเพียงอย่างเดียว ฉันก็ใช้ Link Shell Extension ดังที่โพสต์ไว้ข้างต้นโดย Ronnie Vernon วิธีง่ายๆในการดูว่ามีการเชื่อมโยงแบบใด (ลูกศรสีแดง) และไฟล์ใด

ก่อนที่จะมาที่นี่ฉันเห็นสถานที่ต่างๆมากมายที่ผู้คนถามหาเครื่องมือล้างข้อมูลหลังจากติดตั้ง SP1 สำหรับ Windows 7 เช่น vsp1cln ไม่มีเครื่องมือเฉพาะมันทั้งหมดรวมเข้ากับบริการล้างข้อมูลบนดิสก์ สิ่งหนึ่งที่ฉันจะทำให้ที่นี่คือแม้ว่าตัวเลือกบอกว่ามันจะลบไม่กี่ร้อย MB หลังจากที่ฉันทำความสะอาดไดรฟ์ของฉันบริการลบประมาณ 3GB ของไฟล์ส่วนเกินดังนั้นจึงแตกต่างจากระบบไปยังระบบ ขำ ๆ ตอนนี้ฉันมีพื้นที่มากกว่าที่ฉันเคยติดตั้ง SP1 นิสัยดี MS

เกี่ยวกับการเชื่อมโยงที่ยากฉันรู้สึกสนุกกับความสับสนที่เกิดขึ้นรอบตัวพวกเขา ฉันไม่ได้เป็น linux geek และฉันมักจะใช้ลิงค์นุ่ม ๆ เท่านั้น ... มันเพียงพอสำหรับฉัน แต่ผู้คนไม่เข้าใจว่าฮาร์ดไดรฟ์ทำงานได้อย่างไรและมีการนับขนาดอย่างไร

กลุ่มของไฟล์ลิงค์หรือไม่ที่เลือกจะถูกนับเป็นผลรวมเสมอ ซึ่งหมายความว่าหากฉันใช้ไฟล์ขนาด 10MB และสร้างฮาร์ดลิงก์ 2 รายการตัวเลือกทั้งสามนั้นจะมีขนาด 30MB และขนาดที่ถูกต้องเนื่องจากไม่เหมือนกับลิงก์นุ่มที่เกี่ยวข้องกับรายการตารางไฟล์ต้นแบบดั้งเดิมของไฟล์และ มี 0 ไบต์ฮาร์ดลิงก์เกี่ยวข้องกับข้อมูลของตัวเองมีรายการของตนเองใน MFT แต่ชี้ไปยังที่อยู่ข้อมูลเดียวกันเห็นได้ชัดว่ามีขนาดเท่ากับขนาดของข้อมูลจริงเวลาเดียวกันคุณลักษณะและอื่น ๆ ทำไมด้านล่าง

เหลือไดรฟ์เท่าใด ง่ายๆว่ามากที่สุดเท่าที่รายงานคุณสมบัติของตัวเองของไดรฟ์ อย่าไปเลือกไฟล์ทั้งหมดซ่อนและไม่ซ่อนใน C และทำการเปรียบเทียบหรือใช้เครื่องมือที่ทำโดยอัตโนมัติเพราะจะไม่แสดงการใช้งาน HDD ที่แท้จริง ทำไม? เพราะ:

  1. การดำเนินการนั้นทำให้รายการของไฟล์ที่เลือกทั้งหมดรวมถึงฮาร์ดลิงก์เป็นไฟล์แยกพาแต่ละไฟล์และเพิ่มขนาดคุณสมบัติของไดรฟ์นับข้อมูลที่จัดเก็บจริง
  2. ไม่ใช่ไฟล์ทั้งหมดที่จะถูกนับโฟลเดอร์ที่ป้องกันจากการข้ามเส้นทางและไฟล์จากการอ่านจะไม่ถูกนับและข้อมูลระบบปริมาณมักจะมีการป้องกันไฟล์ขนาดใหญ่มากในลักษณะนี้
  3. หมายเลขนั้นมีประโยชน์เฉพาะในกรณีที่มีการถ่ายโอนไฟล์หากไฟล์ลิงค์ ฯลฯ ต้องคัดลอกไปยัง DVD หรือ NAS นั่นคือจำนวนที่พวกเขาจะครอบครองและลิงก์จะไม่ถูกสงวนไว้เนื่องจากเป็นคุณสมบัติเฉพาะของ NTFS ไม่สามารถใช้ได้ หรือมีอยู่ในรูปแบบที่แตกต่างกันภายใต้ ISO, UDF, NFS และระบบไฟล์อื่น ๆ แต่จะถูกโคลน

ทำการทดสอบ ... คัดลอกไฟล์ขนาด 10MB a.exe จากไดรฟ์อื่นและสังเกตว่าพื้นที่ว่างลดลงถึง 10MB อย่างไร สร้างฮาร์ดลิงก์ (mklink / H b.exe a.exe) ตอนนี้ไฟล์ทั้งสองที่เลือกจะ "ใช้" 20MB ในคุณสมบัติการเลือกแต่จริงๆแล้วมีเพียง 10MB ที่ตรวจสอบที่คุณสมบัติของไดรฟ์ซึ่งจะมีพื้นที่ว่างเท่าเดิมกับที่ทำ / ทำหลังจากคัดลอกไฟล์ ลบอันใดอันหนึ่งพื้นที่ว่างจะยังคงเหมือนเดิม ตอนนี้ลบอันสุดท้ายและพื้นที่จะเพิ่มขึ้น 10MB มีอันตรายใด ๆ ที่ทำ? NO

winsxs คืออะไร dllcache ที่ดีกว่ามาก ที่ไหนกับ dllcache ใน XP เรามีสำเนาของไฟล์ที่เพิ่มเข้ามาในการใช้งานขนาดตั้งแต่ถูกโคลนนี่เป็นการปรับปรุงการใช้งานจริง แต่ไม่ใช่การป้องกันทั้งหมด (จากไวรัส) หากโปรแกรมถอนการติดตั้งปลอมคิดว่าต้องลบ libs รันไทม์บางตัวออกจาก System32 จะลบเฉพาะลิงก์ แต่ไม่ใช่ข้อมูลลิงก์จะถูกสร้างขึ้นใหม่ในขณะที่รักษาการใช้พื้นที่ข้อมูลให้น้อยที่สุดดีกว่าการเก็บ winsxs ใน cab และมี ห้องโดยสารด้านข้างไฟล์ต้นฉบับ winsxs ยังนำซีเรียลไลซ์เซชั่น, การแบ่งไฟล์ที่มีชื่อเหมือนกัน แต่เป็นเวอร์ชั่นที่แตกต่างกันเพื่อประโยชน์ของ dev ซึ่งเป็นสิ่งที่ดี / ไม่ดีมันทำให้พวกเขาขี้เกียจที่จะใช้โค้ดอย่างถูกต้อง

ฉันทำสิ่งนี้เพื่อช่วยให้ทุกคนที่มาที่นี่ด้วยเหตุผลเดียวกันกับที่ฉันทำ ... "การใช้พื้นที่" มากเกินไปโดย winsxs หลังจาก SP1 และฉันหวังว่ามันจะเป็นประโยชน์


คำตอบนี้ไม่ใช่สิ่งสำคัญอย่างยิ่งที่ขาดหายไปในคำตอบที่ยอมรับหรือไม่?
mafu

33

รายการซ้ำและการสำรองข้อมูลเหล่านี้น่ารำคาญอย่างยิ่งเมื่อมีพื้นที่ดิสก์ จำกัด

การอยู่ในสถานที่ที่เป็นวิธีเดียวที่ฉันพบว่าจะไม่เป็นอันตรายต่อความเสถียรของระบบปฏิบัติการคือการเห็นแก่ตัวใช้"บีบอัดเนื้อหาเพื่อประหยัดเนื้อที่ดิสก์"การตั้งค่า

โดยการบีบอัดไดเรกทอรีสำรองทั้งหมดภายใต้ไดเรกทอรี Windows ฉันสามารถลดขนาดไดเรกทอรีจาก 6.5 GB เป็น 5 GB โดยไม่มีผลข้างเคียงที่รู้จักได้ การใช้งานบางอย่างกับสิ่งที่อยู่นอกไดเรกทอรี Window จะทำให้พื้นที่ของคุณเพิ่มขึ้นอีก 10 GB


2
ฉันพยายามบีบอัดมันและฉันบอกว่า "การเข้าถึงถูกปฏิเสธ" ไปยังโฟลเดอร์แล้ว poqexec.log สมมติว่ามันเป็นล็อคการอ่าน มีอะไรจะข้ามนี้
Quintin Par

1
ที่จริงแล้วคุณยังคงเสี่ยงต่อความเสถียรของระบบปฏิบัติการของคุณ ไม่ควรบีบอัดโฟลเดอร์ WinSxS ในความเป็นจริงมันเป็นความคิดที่ไม่ดี เพียง google 'บีบอัด winsxs' แล้วคุณจะพบ
Hello71

6
ฉันไม่แน่ใจว่าเทคนิคนี้เป็นความคิดที่ดี - ไฟล์จำนวนมากในแผนผัง winsxs เป็นฮาร์ดลิงก์ การเปิดใช้งานการบีบอัดไฟล์เหล่านี้จะบีบอัดไฟล์ทั้งหมดหรือไม่ อาจมีผลกระทบด้านประสิทธิภาพที่ไม่ได้ตั้งใจเกิดขึ้น
duffbeer703

3
@FiascoLabs คุณสังเกตเห็นว่านี่เป็นคำถามอายุ 4 ปีซึ่งหมายถึงไดรฟ์ 10GB โดยเฉพาะหรือไม่ คุณสามารถระบุด้วยว่า "ไม่มีใครใช้ Vista" อาจเป็นจริงในขณะนี้ แต่ก็ไม่เป็นเช่นนั้นในเวลาที่คำถามถูกถาม
eran

1
@eran แต่คำถาม Win7 ทั้งหมดเกี่ยวกับ winsxs ถูกปิดเหมือนสำเนาของคำถามนี้
Tobias Kienzler

27

หากคุณมี Vista และติดตั้ง SP2 คุณสามารถล้างไฟล์ระบบเก่าด้วยเครื่องมือService Pack Clean-upใหม่

  1. คลิกเริ่ม> โปรแกรมทั้งหมด> อุปกรณ์เสริม> พร้อมรับคำสั่งหรือคลิกเริ่ม> เรียกใช้แล้วพิมพ์ cmd เพื่อเปิด Windows พร้อมรับคำสั่ง
  2. ดำเนินการคำสั่ง“ Compcln.exe” เส้นทางคือ“ c: \ Windows \ System32 \ compcln.exe”
  3. ผู้ใช้จะได้รับคำถามว่าจะเก็บ Vista SP2 ไว้ในระบบอย่างถาวรหรือไม่
  4. พิมพ์“ Y” แล้วกด Enter ระบบจะเริ่มทำการทำความสะอาดส่วนประกอบของ windows

ฉันไม่พบสิ่งนี้ใน Vista SP1 ของฉัน
ดินสอเมื่อ

ใช่มันอาจจะใหม่ใน Vista SP2
Tomas Andrle

4
ไม่ได้ประหยัดมากนักสำหรับฉัน แต่ฉันสามารถยืนยันได้ว่ามีเครื่องมืออยู่และมันช่วยฉันด้วย G plus
itj

Compcln.exeไม่ได้อยู่ใน W10
Laurie Stearn

21

ในWindows 8คุณสามารถลดขนาดของโฟลเดอร์ WinSxS ได้โดยการลบคุณสมบัติของ Windows :

DISM.exe /Online /Disable-Feature /Featurename:<name> /Remove

สิ่งที่สำคัญคือ/ Removeพารามิเตอร์ซึ่งเป็นใหม่Windows 8

พื้นที่ส่วนใหญ่ใน WinSxS นั้นใช้ WindowsUpdates ซึ่งคุณติดตั้งเมื่อเวลาผ่านไป ในWindows 8 / Windows 10คุณสามารถตรวจจับและลบการอัปเดตที่แทนที่ด้วยการอัปเดตที่ใหม่กว่า (เช่นการอัปเดต IE แบบสะสมที่ใหม่กว่า) กำลังเรียกใช้คำสั่งนี้:

dism.exe /online /cleanup-image /startcomponentcleanup

หรือเรียกใช้ตัวช่วยสร้างการล้างข้อมูลบนดิสก์และเลือก"Windows Update Cleanup"

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

ยังให้แน่ใจว่าคุณได้ติดตั้งการปรับปรุงการให้บริการสแต็คhttp://support.microsoft.com/kb/2821895

การอัปเดตนี้เรียกใช้ WinSxS อย่างละเอียดและบีบอัดไฟล์ DLL / exe ทั้งหมดจาก WinSxS ซึ่งไม่ได้ใช้งานในปัจจุบันเป็นไฟล์เดลต้าที่เล็กลง:

ป้อนคำอธิบายรูปภาพที่นี่

ดูขนาดไฟล์ที่แตกต่างกัน

ของ Windows 8.1 เพิ่มคำสั่ง DISM ใหม่ /startcomponentcleanupรับพารามิเตอร์ใหม่/ResetBaseซึ่งจะทำให้การปรับปรุงครั้งล่าสุดของคุณถาวรและลบไฟล์เก่าทั้งหมดเพื่อประหยัดพื้นที่มากขึ้น

คุณยังสามารถเรียกใช้คำสั่งใหม่dism /online /cleanup-image /analyzecomponentstoreเพื่อวิเคราะห์โฟลเดอร์ WinSxS:

ป้อนคำอธิบายรูปภาพที่นี่

มันบอกคุณตอนนี้เมื่อคุณควรเรียกใช้การล้างข้อมูลเพื่อประหยัดพื้นที่


2
ตอนนี้มีให้สำหรับ Windows 7 SP1 เช่นกัน: support.microsoft.com/kb/2852386
ทำเครื่องหมายเฮนเดอร์สัน

ที่นี่มันคือ 12.4 Gb บนดิสก์มาก่อนStartComponentCleanupในปี 1809 6.54 GB บนดิสก์หลังจากStartComponentCleanupนั้นเป็นการปรับปรุงครั้งใหญ่ การลบที่รอดำเนินการ 92 รายการไม่มีการเปลี่ยนชื่อที่รอดำเนินการ จากไฟล์ 76812 ในWinSXSนั้น 21452 ใช้ดิสก์ 2.90 Gb โดยมีวันที่ตั้งแต่เดือนกันยายนถึงตุลาคมปีที่แล้วเมื่อคอมพิวเตอร์ได้รับการอัพเดตเป็น 1803 นี่เป็นเรื่องปกติของการติดตั้ง W10 ปัจจุบันหรือเรายังคงอุดตันอยู่หรือไม่?
ลอรีสเติร์น

1
@ LaurieStearn ฉันไม่มีความคิด ฉันรัน Win10 ใน VM และสร้าง VM ใหม่สำหรับ Win10 แต่ละรุ่นใหม่บนระบบโฮสต์ windows 8.1 ของฉันเท่านั้น
magicandre1981


9

ข่าวดี! ขณะนี้เป็นวิธีการตามทำนองคลองธรรมอย่างเป็นทางการจากไมโครซอฟท์, Windows 7 SP1 เพื่อทำความสะอาดออกจากโฟลเดอร์ winsxs ของคุณ

  1. ติดตั้ง HotFix 2852386 - คุณสามารถดาวน์โหลดด้วยตนเองหรือรอให้ผ่าน Windows Update ของคุณ
  2. สิ่งนี้จะเพิ่มตัวเลือกใหม่ให้กับตัวช่วยสร้างการล้างข้อมูลบนดิสก์ (ภายใต้ล้างไฟล์ระบบ) ที่คุณสามารถเปิดใช้งานสำหรับ "การล้างข้อมูลบน Windows Update" เลือกตัวเลือกนี้
  3. คลิกตกลง

ข้อแม้: คุณอาจไม่สามารถยกเลิกการติดตั้ง Windows Update บางตัวหลังจากเรียกใช้การล้างข้อมูลในโฟลเดอร์ WinSxS ของคุณ


6

ดูเหมือนว่ามีเป็นที่สุดวิธีที่จะทำเช่นนี้ในของ Windows 8.1 Service Pack 1 และ Windows Server 2012 R2

เครื่องมือวิเคราะห์การจัดเก็บส่วนประกอบ:

Dism.exe /Online /Cleanup-image /AnalyzeComponentStore

เมื่อสิ้นสุดการสแกนผู้ใช้จะได้รับรายงานผลลัพธ์ (ขนาดที่แท้จริงของโฟลเดอร์ winsxs) ดังนี้:

ผลลัพธ์ของ analyzecomponentstore

การทำความสะอาดที่เก็บชิ้นส่วน:

วันนี้การล้างข้อมูลบนที่เก็บชิ้นส่วนจะต้องทริกเกอร์ด้วยตนเองโดยผู้ใช้ขั้นปลายไม่ว่าจะโดยการเรียกใช้ DISM หรือโดยใช้ตัวช่วยสร้างการล้างข้อมูลบนดิสก์ เพื่อที่จะทำให้การล้างข้อมูลบนร้านค้ามีประโยชน์มากขึ้นสำหรับผู้ใช้ทั่วไปจะถูกเพิ่มเข้าไปในงานบำรุงรักษาโดยอัตโนมัติประหยัดพื้นที่ดิสก์สำหรับผู้ใช้ปลายทาง ในการเปิดใช้งานสิ่งนี้จะมีการเปลี่ยนแปลงเพื่ออนุญาตให้ถอนการติดตั้งไดรเวอร์กล่องขาเข้าที่ถูกแทนที่โดยไม่ต้องรีบู๊ต (วันนี้ไดรเวอร์ทั้งหมดที่ติดตั้ง / ถอนการติดตั้งโดย CBS ต้องรีบู๊ต)

  1. Dism.exe /online /Cleanup-Image /StartComponentCleanup

  2. เครื่องมือล้างข้อมูลบนดิสก์ปุ่มล้างข้อมูลระบบ

    เครื่องมือล้างข้อมูลบนดิสก์

  3. schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"


4
โพสต์แล้ววิธีที่ผ่านมา: superuser.com/a/594216/174557ไม่จำเป็นต้องโพสต์สิ่งเดียวกันสองครั้ง;)
magicandre1981

2

Dism ++คือสิ่งที่คุณกำลังมองหา ( https://www.chuyu.me/en/index.html )

คุณจะประหยัดพื้นที่กิกะไบต์ ...

คุณจะต้องเลือก "แทนที่ชุดประกอบ WinSxS" หากคุณทำเช่นนี้ - จะเป็นการเตือนคุณว่าไม่สามารถถอนการติดตั้งการปรับปรุงเหล่านี้ได้ คลิกตกลงจากนั้นสแกน

ป้อนคำอธิบายรูปภาพที่นี่

มันจะช่วยให้คุณทราบว่าคุณประหยัดพื้นที่ได้มากแค่ไหน Hit cleanup และควรล้างพื้นที่นั้น


1
ควรมีคำแนะนำเฉพาะเกี่ยวกับวิธีใช้โปรแกรมนี้ ฉันสามารถรับโปรแกรมจาก Github แต่ฉันไม่สามารถไปที่ลิงก์ที่คุณให้ไว้
Ramhound

1
ฉันได้ลองสิ่งนี้บน VM แล้ว - ดูเหมือนว่าจะเร็วและไม่แตกอะไรเท่าที่ฉันจะบอกได้ ฉันอาจเล่นกับสิ่งนี้เนื่องจากดูเหมือนว่าจะมีคุณสมบัติหลังการติดตั้งที่ดี (การสำรองข้อมูลไดรเวอร์ Ooh!) ฉันได้แก้ไขคำตอบของคุณด้วยขั้นตอนพื้นฐานและภาพหน้าจอ คุณควรจะหวังว่าจะได้เห็นความแตกต่างและ upvotes ในไม่ช้า
Journeyman Geek

เครื่องมือสุดยอด! ซึ่งแตกต่างจาก WinSXSLite มันทำงานและปลดปล่อยพื้นที่เกือบ 8Gb สำหรับฉัน
Suncatcher

1

หวังว่ามันจะมีประโยชน์หากมี oneliner ง่าย ๆ หนึ่งคำตอบที่ดีของ Jeff Atwood ที่ไม่ได้/ResetBaseใช้สวิตช์

ข้อควรระวัง : สวิตช์นี้ช่วยลดขนาดของโฟลเดอร์ WinSxS ได้อย่างมากแต่จะลบส่วนประกอบรุ่นก่อนหน้าอย่างสมบูรณ์ดังนั้นคุณจะไม่สามารถย้อนกลับการอัปเดตที่ติดตั้งไว้ก่อนหน้านี้ได้ แต่ถ้าระบบของคุณทำงานได้ดีคุณควรจะปลอดภัย (โดยเฉพาะถ้าคุณไม่ได้อยู่ในสภาพแวดล้อมการผลิต)

dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase

สามารถใช้งานได้ใน Windows 8.1 และใหม่กว่า


0

นอกเหนือจากวิธีแก้ไขปัญหาข้างต้นแล้ววิธีการหนึ่งที่จะได้รับพื้นที่สำคัญคือการบีบอัดเนื้อหาโฟลเดอร์ทั้งหมด อย่างไรก็ตามสิ่งนี้ไม่สามารถทำได้โดยใช้ Explorer (จำเป็นต้องมีสิทธิ์ที่เหมาะสม) อย่างน้อยเริ่มจาก Windows 7

คำแนะนำเหล่านี้แสดงวิธีการทำสิ่งนี้:

sc query msiserver 
sc query TrustedInstaller

sc stop msiserver
sc stop TrustedInstaller

sc config msiserver start= disabled
sc config TrustedInstaller start= disabled

icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS.acl" /t

takeown /f "%WINDIR%\WinSxS" /r

icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t

compact /s:"%WINDIR%\WinSxS" /c /a /i *

icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t

icacls "%WINDIR%" /restore "%WINDIR%\WinSxS.acl"
del "%WINDIR%\WinSxS.acl"

sc config msiserver start= demand
sc config TrustedInstaller start= demand

sc start msiserver
sc start TrustedInstaller

หมายเหตุ / เคล็ดลับ:

  1. การจัดกลุ่มทำเครื่องหมายวิธีที่แนะนำในการเรียกใช้คำสั่งเหล่านี้หากทำด้วยตนเอง โดยปกติแล้วจะไม่มีปัญหา (ยกเว้นจากไฟล์ที่ข้ามเพราะใช้งานอยู่) แต่ควรตรวจสอบผลลัพธ์สำหรับแต่ละกลุ่ม

  2. ฉันได้ทำตามขั้นตอนเหล่านี้ในการติดตั้งระบบปฏิบัติการต่าง ๆ ที่บ้านและที่ทำงาน: Win7x64, Win10x64, Windows Server 2008R2 และ Windows Server 2012 และฉันไม่เห็นปัญหาใด ๆ

  3. บางขั้นตอนใช้เวลาค่อนข้างนานโดยเฉพาะเวลาบีบอัด ขั้นตอนส่วนใหญ่จะวนซ้ำและแสดงไฟล์ที่ประมวลผล การย่อขนาดหน้าต่างคำสั่งอาจลดความเร็วลง


-4

คุณสามารถลบไฟล์เหล่านั้นได้อย่างปลอดภัย หากคุณต้องการมันอีกครั้งคุณจะต้องติดตั้งอีกสองสามอย่าง

ตอนนี้เพื่อแก้ไข!

  • เปิด Windows Explorer และไปที่ C: \ Windows \ System32 ค้นหาไฟล์ "vsp1cln.exe"
  • คลิกขวาที่ไฟล์นี้และเลือกตัวเลือก 'เรียกใช้ในฐานะผู้ดูแลระบบ'
  • เครื่องมือล้างข้อมูล Vista Service Pack 1 จะลบไฟล์ที่ซ้ำซ้อนทั้งหมดที่ถูกแทนที่

จำนวนเนื้อที่ดิสก์ที่คุณได้รับจะขึ้นอยู่กับระบบการติดตั้งโปรแกรมใด ฯลฯ


16
คุณสามารถลบไฟล์ winsxs อย่างปลอดภัยหรือไม่ คุณแน่ใจเกี่ยวกับสิ่งนั้น!
UpTheCreek
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.