PDA

Показать полную графическую версию : [решено] Папка winsxs в Windows 7


Страниц : 1 2 3 4 [5] 6 7 8 9 10 11

Real Root
13-05-2013, 00:36
Вообще, все мои догадки оказывается были уже изветсны интернет-сообществу. На форуме хобота чел еще в августе прошлого года вычислил замысел МС: (http://forum.ixbt.com/topic.cgi?id=22:69116-7#212)
На самом деле DIR/Explorer показывает правильное потребление дискового пространства папкой WinSxS. Все файлы в ней являются физически существующими. И лишь на один из этих многочисленных файлов в другом месте (например в System32) расположена ссылка.

Например в данный момент у меня 28 файлов mshtml.dll общим объемом 337 Мб.
Лишь на один из этих файлов (последней версии) размером 11.7 Мб в другом месте ОС стоит ссылка

Если посмотреть размер всей папки Windows - то DIR/Explorer покажет завышенный размер 348.7 Мб, потому что один из 28 файлов (действующий) он посчитал дважды. Размер WinSxS будет подсчитан абсолютно корректно - честные физические 337 Мб

В данный момент WinSxS занимает у меня 7,95 ГБ.
Это реальный размер реальных физических 58 811 файлов в 15 664 папках.

SysWow64 и System32 занимают 1.1 Гб (6401 файл) и 2.08 Гб (13 461 файл)
Большинство (почти все) из этих файлов уже учтены при подсчете папки WinSxS.

Реальный размер папки Windows = 7.95 Гб (по WinSxS).
DIR/Explorer покажет 11.13 Гб и 80к файлов, потому что посчитал дважды.

Из 58.8К файлов на 8 Гб реально система использует только 20К файлов на 3.18 Гб

Остальные 40К файлов на 4.77 Гб это версионный мусор для возможности отката любого из установленных патчей.
В Windows XP эти старые версии файлов хранились в папках %windir%\$KBxxxxx и их легко было удалить.
В Windows7 эти старые версии файлов физически дальше хранятся в WinSxS и никогда не будут удалены.

Avatar-Lion
13-05-2013, 00:39
Эм... Ну это всё, конечно, очень интересно, но вопрос по-прежнему открыт: как объём-то сократить?

Real Root
13-05-2013, 00:42
Ну и? Установщик игры говорит что недостаточно места, как ему объяснить что на самом деле winsxs весит не 9Гб, а в два раза меньше? Или я чего-то не понимаю? »

Вы действительно не понимате.
Установщику игры фиолетово сколько места потребляет ссистема или какая-то там папка. Ему интересно сколько есть свободного места. А места свободного есть ровно столько сколько написано в свойствах диска.
Т.е. если в вашем случае у вас сейчас свободно 17Гб, и вы удалите WinSxS (полностью через другую систему - так делать не надо) размером в 9Гб, то получите в итоге не 26Гб свободного места, как кажется, а всего лишь 21Гб. Так понятнее?
Т.е. жесткие ссылки позволяют 1 файл отразить в разные места ФС хоть 100 раз, но при этом фактически места будет занято как на 1 файл. Разрастется лишь MFT, размер которой, кстати тоже, влияет на производительность.

Эм... Ну это всё, конечно, очень интересно, но вопрос по-прежнему открыт: как объём-то сократить? »
Пока что воздержитесь от этого.
Я написл, если будут желающие - пусть проверят мои догадки сначала профессионалы своего дела. На данном этапе, людям, плохо разбирающимся в устройстве ОС лучше этого не делать.

Avatar-Lion
13-05-2013, 00:51
Ну, эксперименты я буду проводить пока что только на домашнем компьютере. И смерть ОС меня не пугает абсолютно. Итак, что надо сделать, чтобы winsxs перестала жрать место гигабайтами?

Real Root
13-05-2013, 01:05
Ну, эксперименты я буду проводить пока что только на домашнем компьютере. И смерть ОС меня не пугает абсолютно. Итак, что надо сделать, чтобы winsxs перестала жрать место гигабайтами? »
Что можно удалять, а что нет - я уже написал выше. Прочитайте внимательно.
+Ни в коем случае не трогайте папки Manifest, Catalogs, ManifestCache, FileMaps.

Avatar-Lion
13-05-2013, 01:08
Т.е. можно грохнуть весь тот мусор, что валяется в папках, начинающихся с amd64..., msil..., wow64..., x86?

Real Root
13-05-2013, 01:39
Т.е. можно грохнуть весь тот мусор, что валяется в папках, начинающихся с amd64..., msil..., wow64..., x86? »
НЕТ! Не весь, я же написал:
Обратите внимание что после microsoft, вместо точки стоит тире! В то же время, есть и папки вида amd64[x86]_microsoft...... И обратите внимание на то что, именно второй тип папок полностью содержит в себе список таких же, что и были в XP. И помимо их есть еще некоторое колличество новых.
Мое предположение - к реальной проблеме dllhell относятся лишь папки вида amd64[x86]_component. Т.е. после типа библиоткеи, через нижний слешь идет класс либы и после обязательно точка. Пример: amd64_microsoft.vc80.atl......, amd64_microsoft.windows.gdiplus_....., msil_mscorlib.resources_........, wow64_microsoft.windows....., x86_microsoft.vc90.mfc_...... и похожие.
Т.е. нельзя удалять папки вида amd64[x86]_component. Т.е. после типа библиоткеи, через нижний слешь идет класс либы и после обязательно точка.
В приложении список папок которые остались у меня в системе. Но нельзя его придерживаться строго. На мой взгялд нужно ориентироваться по точке.

Real Root
13-05-2013, 01:41
+к списку нельзя удалять папки Manifest, Catalogs, ManifestCache, FileMaps.

Avatar-Lion
13-05-2013, 09:27
Уф... Так... А нет какого-нибудь скрипта, который автоматом проделывал бы эту работу? Чтобы дважды кликнул мышкой - и все ненужное поудалялось. А то часто доводится с компами различными ковырятся.

Real Root
13-05-2013, 19:38
Нет - такого нет. Зачем автоматизировать то, что требует проверки в действии?

kaizer64
21-08-2013, 19:06
А если прогнать этот каталог программами типа noclone и действительно заменить все дубликаты на хардлинки?
Я пробовал получалось сократить от 20 до 30%.
А еще можно сжать там все файлы не являющиеся хардлинками.
Для людей, делающих контрольные полные образы системного раздела, гарантировнно считающие данную копию эталоном,можно из winsxs удалять все откаты обновлений сделанных до даты эталонного образа.

ps и кстати "каждый файл в папке WinSxS является «жесткой ссылкой» (hard link)" - абсолютно неверно для того чтоб увидеть сколько хардлинков имеет файл можно воспользоваться например фаром, выбрав режим показа на панели связей, там, где количество связей равно 1 нет никаких хардлинков

Vadikan
21-08-2013, 20:32
А еще можно сжать там все файлы не являющиеся хардлинками. »
Это единственный способ, имеющий право на жизнь без последствий.

ps и кстати "каждый файл в папке WinSxS является «жесткой ссылкой» (hard link)" »
Там написано "практически каждый", и это цитата разработчиков. Да, она не совсем верна, но все же с точки зрения "объема" большая часть приходится на жесткие ссылки.

Vadikan
10-10-2013, 10:30
Буквально вчера участник форума OSZone с громким ником xaker7 убил свою Windows 7 безграмотной очисткой папки WinSxS. Он не знал, что в тот день Microsoft порадовала владельцев Windows 7 новым безопасным способом сокращения размера этой злосчастной папки...http://feeds.feedburner.com/~r/outsidethebox/windows-7/~4/OCcqRfvLCmc

Читать дальше в блоге... (http://feedproxy.google.com/~r/outsidethebox/windows-7/~3/OCcqRfvLCmc/)

Это сообщение создано автоматически.

Elven
10-10-2013, 18:53
Выжимка для ленивых

0. Все действия от админа (особенно п.5).
1. Установить обновление KB2852386
2. Добавить в реестр вот ето
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Service Pack Cleanup]
"StateFlags0100"=dword:00000002

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Update Cleanup]
"StateFlags0100"=dword:00000002

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Temporary Setup Files]
"StateFlags0100"=dword:00000002

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Upgrade Discarded Files]
"StateFlags0100"=dword:00000002

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Previous Installations]
"StateFlags0100"=dword:000000023. Запустить cleanmgr /sagerun:100
4. Ребут
5. С радостныцм лицом наслаждаемся освобождением нескольких сотен Mb из нескольких десятков Gb.

Подчищает:
- предыдущие обновление SP ныне не используемые
- папку WinSxS
- временные файлы установки обновлений которые по непонятным причинам не удалились сами
- файлы оставшиеся после неудачного обновления
- предыдущие установки обновлений ныне не используемые
з.ы. Для подчистки папки WinSxS обязательно только то, что указано жирным шрифтом, то что указано курсивом является необязательным и каждый это может использовать на свой страх и риск.

v-valgan
11-10-2013, 11:36
Только не понял, это тема для обсуждения, или носит только информационный характер. Ну да ладно. Утилита пришла с плановыми обновлениями. Провел проверку у себя, результат положительный:Ноутбук ASUS N73JF, Windows 7×64 Pro SP1, KIS 2014. До очистки: 15,4 ГБ(72652 файла и 18 386 папок), после очистки 10,7 ГБ(61465 файлов и 15597 папок), ощутимо. Система работает стабильно, никаких проблем не возникало, хорошая утилита. Удачи всем.

Vadikan
11-10-2013, 17:21
Elven, ваш список перекрывает описанное в статье. В частности из перечисленных пяти пунктов только два имеют отношения к очистке файлов Windows Update. Это:

Service Pack Cleanup, который не сделал только ленивый в случае с 7
Update Cleanup - очистка winsxs

При этом не исключено, что пользователь все еще не готов удалить windows.old (Previous Installations), т.к. там что-то нужное осталось (пример (http://www.outsidethebox.ms/15311/#_Toc366274334), хотя и из 8).

Да, возможно, ничего из этого уже не нужно. Но те же временные файлы удалять имело бы больше смысла, ввиду копирования папки DISM в %temp% при каждом запуске утилиты.

Так что я бы не стал изобретать очередной чистильщик, а ограничился конкретной темой.

Elven
14-10-2013, 12:59
Vadikan, ведь никто не мешает снести ненужные параметры, как и добавить еще несколько.
В любом случае использовать любые твики и очистки лучше в купе с настроенной архивацией, и это не мое мнение, а веление здравого смысла.

Vadikan
14-10-2013, 13:07
Elven, не мешает, но зачем добавлять в инструкции что-то, чтобы потом читатели удаляли кое-что из добавленного :)

В данном случае операция очистки вполне безопасна, т.к. используемые файлы не затрагиваются. Это не твик.

Elven
14-10-2013, 17:05
Vadikan, я думаю не будем флудорастию разводить, сообщение подправил, думаю так всем всё будет понятно.

vasa760
17-05-2014, 15:23
у меня папка winsxs занимает 8.5 гб.может можна там что-то удалить? :help: :help: :help: :help:




© OSzone.net 2001-2012