Показать полную графическую версию : [решено] Папка winsxs в Windows 7
Страниц :
1
2
3
[
4]
5
6
7
8
9
10
11
Morphius71rus,
1. Разницы 0? Ну так то же самое происходит, если не сжимать :)
2. Фрагментация 5% - это, может, ерунда для общей производительности. Но лучше 0%, и это трудно оспорить :)
3. Вы ошибаетесь, думая, что снижена скорость обмена данными только в папке winsxs. Файловая система не мыслит категориями папок. Это вы видите несколько файлов в разных папках, а она видит только один. Поэтому нельзя говорить, что я сжал winsxs, а Windows не сжимал. Вы сжали все системные файлы, на которые есть жесткие ссылки в winsxs :)
Проверить это очень просто.
@echo off
:: Переходим на рабочий стол и создаем две папки
cd %userprofile%\desktop
md 1
md 2
:: Создаем произвольный текстовый файл в первой папке
cd 1
echo Hello, Hard Links! > 1.txt
:: Создаем жесткую ссылку на файл
cd ..\2
fsutil hardlink create 2.txt %userprofile%\desktop\1.txt
Теперь сжимаем папку 1 и видим, что файл 1.txt стал синим в проводнике. Идем в проводнике в папку 2. Внезапно! Файл 2.txt тоже синий, хотя папку 2 никто не сжимал.
Можно добавить столбец Атрибуты и увидеть там AC, где C означает Compressed, сжатый.
http://tools.oszone.net/Vadikan/img/compressed-files.jpg
Я уж извините практик, а не теоретик, и на практике я не увидел разницы! »
Знание теории позволяет избежать бессмысленных и негативно влияющих на производительность действий на практике :) В совокупности ваши действия не приносят никакой пользы системе. И говорить о разумности вашего способа.... мммм... наивно.
Ошибка-то в маленьком системном разделе, а все дальнейшие манипуляции - это нелепые попытки ее исправить. За сим позвольте мне не продолжать дальнейшую дискуссию на эту тему с вами. Я ведь пишу не для вас, а для тех, кто решит повестись на ваши советы.
Morphius71rus
24-01-2012, 18:44
Vadikan, ну во первых маленький системный раздел(30-50Гб) я считаю самым оптимальным для 7ки. вот больший - может ошибка?
мы уже беседовали по-этому поводу и насколько я помню в пользу БОЛЬШИХ сист разделов ничего конкретного не было сказано.
Лишь приведены аргументы для создание головной боли и лишних трат ресурсов
Цитата Vadikan: Системный он потому, что на него установлена ОС, а не потому, что только она может и должна там находится. »
можно напичкать чего угодно, вопрос в другом нужно ли это?
Цитата Vadikan: 1. Проблема с местом на разделе волнует только тех, у кого он маленький »
уважаемый, не заклицивайтесь на этом) эта проблема волнует и тех у кого ОН маленький и тех у кого ОН большой сейчас у большинства винты измеряются террабайтами, а инет по-прежнему забит ссылками "как уменьшить размер windows 7" так что многих это волнует, а конкретно тех кому ненужен мусор или если хотите файловый архив на системном диске!
Цитата Vadikan: - это единственный технический аргумент »
этого вполне достаточно! единственный аргумент перевесит сотню ваших "потому что Microsoft..." и "у кого ОН маленький" где более ничего вразумительного нет! при чем из единственного аргумента вытекает еще несколько не менее весомых , а именно сравните свои затраты времени и ресурсов с тем у кого ОН маленький, ваши "сюрпризы" это самоистязание как себя так и железа, вот уж действительно если придется восстанавливать систему из такого образа - это будет сюрприз так сюзприз! у меня как создание так и восстановление(при чем полное! в отличие от сомнительного стандартного Windows) занимает 5-10 мин , места - от 1 DVD ну максимум 7-10Гб на HDD кому нужна эта головная боль с копиями размер которых сотни Гб на остальные тезисы даже время не стоит тратить одно пустое словоблудство. если вас не затруднит...всетаки хотелось бы услышать что-то более-менее вразумительное а главное весомое в пользу огромных системных разделов? чес слово устал уже от "потому что Microsoft..." и "у кого ОН маленький" PS а если серьезно - пролистал всю тему и ничего кроме повышенного самомнения автора не увидел, к сожалению тут его пока больше чем чего-то полезного »
а во-вторых мой совет о сжатии winsxs тут исключительно по теме и касается тех кто пытается её чистить! ни к чему хорошему это не приводит, единственное что можно очистить так это \Backup.
PS Да и вообще пора бы уже завязывать назвать оптимальные размеры системного диска - ошибкой! В конце концов следуя вашей логике "Потому Microsoft..."
Именно он рекомендует, или он тоже совершает ошибку?
Добавлено кстати могу еще посоветовать удалить ненужные драйвера из набора что предлагает Windows , но просто удалить их их FileRepository мало что даст, они как раз все сидят в winsxs
тут надо использовать DISM.
makafecuk
12-02-2012, 21:53
Как уменьшить размер папки C:\Windows\winsxs
она у меня занимает 12гиг
места на диске хватает но все же 12 гиг как ни как
Morpheus
12-02-2012, 21:58
makafecuk, ответ в шапке темы.
RasKolbas
26-02-2012, 12:06
Воспользовался скриптом WinSxSlite.bat (описание тут (http://itsserios.blogspot.com/2012/01/winsxslite-windows.html) и тут (http://habrahabr.ru/blogs/microsoft/72427/)), уменьшающим размер папки Windows. На осзоне вроде ни разу не обсуждался, но дело не о совсем о нём, скрипт должен производить действия во время перезагрузки. При перезагрузке ничего не происходит, в корне диска C существует папка C$, я так понимаю именно она ответственна за действия производимые при перезагрузке. После нескольких перезагрузок папка не изчезает. Что с моей системой не так?
Что с моей системой не так? »
6 ошибок людей с маленьким системным разделом (http://www.oszone.net/go.php?url=http://www.outsidethebox.ms/13005/)
RasKolbas
26-02-2012, 13:00
Vadikan, прочитал. Я так понимаю мне следует увеличить акронисом ращмер диска C до 60-70 Гбайт?
А что со скриптом WinSxSlite.bat? Советуете вы им пользоваться или нет? Его же наверное тоже не дурак писал.
Я так понимаю мне следует увеличить акронисом ращмер диска C до 60-70 Гбайт? »
Я не советовал вам никаких конкретных программ для изменения размера раздела. Я лишь советую не экономить на спичках.
А что со скриптом WinSxSlite.bat? Советуете вы им пользоваться или нет? »
Нет. Еще раз по ссылке из шапки: Сколько места на диске занимают жесткие ссылки (http://www.outsidethebox.ms/12735/#_Toc307163312)
Его же наверное тоже не дурак писал. »
Не знаю, я с ним не знаком. Но вот что я по этому поводу написал в комментариях (http://www.outsidethebox.ms/12735/#comment-3543) к указанной записи.
Но я верю, когда разработчики говорят, что winsxs — это и есть ОС, ибо это единственное хранилище компонентов, от которого пляшет система. А то что вы видите в других папках — это жесткие ссылки. Те кто не верит, чистят папку дальше и курочат свою систему.
Кстати, автор того руководства по зачистке, на которое вы сослались в письме, примерно так и говорил: Да, в блогах разработчиков пишут, но это же обычное бла-бла майкрософта. А вот я вам сейчас покажу, как надо все чистить и как у вас будет все хорошо.
И люди ведутся, хотя если бы им предложили разбавить бензин ослиной мочой, они вряд ли поверили бы в то, что до 100 км/ч будут разгоняться в два раза быстрее :)
kakawkin
10-05-2012, 10:22
После обновлений каждый раз увеличивается в объемах.
Может они где то хранятся все ?
%windir%\softwaredistribution\download
Real Root
19-11-2012, 16:23
На практике практически каждый файл в папке WinSxS является «жесткой ссылкой» (hard link) на физически существующий файл, то есть все файлы находятся вне этой папки. »
Это совсем неправда.
По моим наблюдениям папка WinSxS - это своего рода распакованный полностью дистрибутив Windows - там есть все - драйверы, компоненты, библиоткеки (dllcache) разных версий и т.д. И действительно, часть файлов имет жесткие ссылки на System32 и другие папки, это в основном касается драйверов, и неизменяемых файлов. Но, это не касается библиотек и исполняемых файлов! Ну сами по-судите - папка WinSxS сделана в т.ч. и для восстановления Windows "на лету" - т.е. в ней всегда есть оригинальный файл. А если он будет жесткой ссылкой, скажем на Explorer.exe, то при заражении вирусом explorer.exe он также будет зараженным и в WinSxS. Кроме того, для меня остается непонятным для чего нужно держать в этой папке столько копий того же shell32.dll разных версий. Ведь это не msvcr**.dll, от версии и билда которого зависят многие программы. В моей свежеустановленной Win7 x64 SP1 с обнволениями по сей день в папке WinSxS есть аж 10 версий файлов shell32 - по 5 на каждую разрядность. В системе Shell32 имеет версию 7601-17859, а в WinSxS есть и более новые - 21890 и 22015 но по ветке ldr. Так что как видим, WinSxS выполняет однвоременно еще и функцию папок Reinstalled Backups и $hf_mig$ из 5,1 систем.
Короче говоря - очень даже по Майкросовтовски сложить в одну папку WinSxS все файлы из дистрибутива, dllcache, репозиторий драйверов, бекапы обновлений и др. библиотек.
Выскажу свое ФИ: Конечно, Win7 прекрасная система, но некоторые вещи прямо скажем нервируют (ну чем помешала возможность перехода на уровень вверх в проводнике, а также возможность его настройки - отключения строки адреса и т.д.), в особенности сборник хлама в лице WinSxS.
Да, к чему это я.
Размер систменого раздела БЕЗОПАСНО можно уменьшить на пару гиг следующим образом: Можно принудительно заменить файлы из папки System32 их жесткими ссылками на файлы в WinSxS. Но в таком случае, мы теряем возможность восстанавливать систему без дистрибутива Windows, ведь как я уже сказал выше, если вирус изменит к примеру explorer.exe в папке System32, о он тут же поломается и в WinSxS.
Также для освобождения места можно удалить exe файлы и библиотеки более старых весрий, нежели уже имеются в системе. Если с exe файлами все очевидно, то с библиоткеками не совсем так. Всевозможные mfc**, msxml**, msvcp**, vcomp*, GdiPlus*, comctl32, msvcirt, atl.dll, dxmrtp.dll, rtcdll.dll ни вкоем случае не трогаем. Остальные же библиотеки разных версий как правило не нужны. Также, если система уже перешла на ldr ветку, то можно удалить и все версии grd файлов. Тут одно НО - все это приходиться делать в ручную. И не всякому даже опытному пользователю это убдет по зубам. Да и ИМХО не стоит оно того для еденичного компа. Я лично сейчас занимаюсь это для корпортаивной среды, в которой у меня более 600 компов, у 80% из которых харды 80-160Гб.
P.S> Только одного mshtml.dll в WinSxS аж 244 метра!, и ни один из них по-умолчанию не является жесткой ссылкой ни на какой файл в системе
для чего нужно держать в этой папке столько копий того же shell32.dll разных версий. »
DLL Hell - Wikipedia, the free encyclopedia (http://en.wikipedia.org/wiki/Dll_hell)
Side-by-side assembly - Wikipedia, the free encyclopedia (http://en.wikipedia.org/wiki/Side-by-side_assembly)
Real Root
19-11-2012, 16:51
DLL Hell - Wikipedia, the free encyclopedia
Side-by-side assembly - Wikipedia, the free encyclopedia »
Проблема Dll hell благополучно решалась в XP. Здесь же мы имеем нечто иное, Майкрософт прикрываясь проблемой dll hell сложила в кучку все что можно. Т.е. сама идея Side by Side, реализовання в NT6 совсем иная нежели это описывалось изначально. Вы пробовали изучать содержимое этой папки (WinSxS). НЕТ? Тогда зачем говорить чего не исследовали? Майкрософт сказало... Ну оно много говорит. К тому же, каким образом по-вашему проблема dll hell может касаться Exe-файлов, inf-файлов драйверов и всего прочего из чего состоит Windows и валяется в нашей любимой WinSxS. Да и вообще, я в первую очередь опровергал вот это утверждение из шапки:
каждый файл в папке WinSxS является «жесткой ссылкой» (hard link) на физически существующий файл, то есть все файлы находятся вне этой папки.
Это утверждение ложно и его следует убрать из шапки!
Проблема Dll hell благополучно решалась в XP. »
Я лишь… дал ответ на заданный Вами вопрос, не более. Если Вам не подходят ответы (Вы их прочли, кстати?), либо Вы знаете ответ — к чему задавать вопросы таким:
для меня остается непонятным для чего нужно держать в этой папке столько копий того же shell32.dll разных версий. »
образом? Перефразируйте что-ли… Выставьте нужный акцент, наконец.
Real Root
19-11-2012, 18:39
образом? Перефразируйте что-ли… Выставьте нужный акцент, наконец. »
Хорошо, если с shell32 не все так для вас очевидно, то поставлю вопрос таким образом:
для чего нужно держать в этой папке столько копий того же explorer.exe разных версий?
Пройдитесь по этой папке поиском с маской *.exe - и посмотрите сколько там exe-файлов. По-вашему все они для решения проблемы dll hell? Может просто Майкрософт всем поморочил голову...
P.S> Wordpad.exe 2-х разных версий... наврное тоже dll hell.
Dzirt2005
19-11-2012, 19:22
По поводу так называемой "проблемы DLL-hell" у меня есть свое отдельное мнение. Лично я за свою долгую компьютерную жизнь встречался с ним только в древние 90-е когда системные DLL перетирались самопальными инсталляторами в основном игр на какие-то явно левые или патченные версии, с которыми даже сами устанавливаемые игрушки не работали. Решалось это очень просто - был набор системных DLL, которые тупо копировались в System32 (с переименованием занятой если надо или вообще из-под Дос в времена Windows 95). С появлением нормальных инсталляторов, в том числе бесплатных, проблема куда-то ушла сама собой.
Зато долбаные vcredist от каждой версии MSVC-2005/2008 с массой версий/вариантов в таких печенках сидят, что вот бы только встретить того у... нехорошего человека, который эту гадость придумал. Причем в лучших традициях МС - на сайте зачастую невозможно понять какую-же версию vcredist'а предлагают скачать и какая же собственно нужна конкретной программе. "Повбывабы..." (с) :(
И вот, встречайте! MSVC-2010. "Мы опять нашли виновного в вечной борьбе! Это Side-by-side, от которого наконец-то решено отказаться! Это так облегчит жизнь разработчикам программ!". Одни эмоции...
Real Root
12-05-2013, 22:51
Итак товарищи.
Делюсь опытом очистки WinSxS:
Имеем систему Win7 x64.
Как я уже писал ранее, Microsoft решила в папку записать все что только ей вздумается - тут есть и решение проблемы DLLHell, и весь дистрибутив винды (чтоб можно было изменить/восстановить компоненты без дистрибутива), и все обновы винды так же складываются сюда. Т.е. в XP WinSxS было решение проблемы DllHell, папка $hf_mig$ содержала в себе самые последние версии библиотек, идущие с обновами, папки вида $NtUninstallKBххххххх$ содержали инфу и файлы для отката обнов, папки дистрибутива вообще не было... Теперь же с приходом Vista и Win7 все это стало попадать в одну папку. По мнению Microsoft все системные файлы никогда не должны удаляться из системы, чтоб в любой момент можно было бы восстановить любую версию.
Тут уже отмечалось, что WinSxS состоит из хардлинков. Это так, но лишь примерно на половину. Все остальное - неиспользуемые фалйы для доустановки компонентов и файлы обновлений после SP1. К слову, таких обнволений после SP1 с учетом апгрейда до IE9 и далее до IE10 вышло более 500 штук!!! И в каждом апдейте может быть от 1 до 100 файлов (обновления IE). В итоге мы получаем кучу файлов разных версий которые вообще не могут быть причастны к решению проблемы dllhell - если в необходимости 10 версий shell32 (или imgres) некоторые люди еще убеждены, то как быть с 7-ю вариациями файлов explorer.exe и прочих exe-шников? Тут становится очевидным что все это - сохраненные и НЕ ИИСПОЛЬЗУЕМЫЕ файлы обновлений.
Как удалить только фалы обновлений я не знаю. Приходится действовать по-другому. В XP в папке WinSxS все папки начинаются на x86_Microsoft.БИБЛИОТЕКА.... Обратите внимание на точку перед названием библиотеки. В папке WinSxS Win7 абсолютное большинство папок имеют названия либо не имеющие точки перед конечным именем файла (amd64_fbrespub_...), либо имеют название amd64[x86]_microsoft-..... и т.д. Обратите внимание что после 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_...... и похожие.
Допускаю, что фалы, начинающиеся на wow64 и msil не относятся к проблеме dllhell, но они не так много весят и я все же стараюсь придерживаться какойто системы, так что не стал рисковать, удаляя их.
Теперь по итогам: Я имею собственное Интернет-кафе, поэтому для меня экономия 5Гб места весьма не маловажное занятие. Есть еще несколько способов освобождения заветного места (замена msi, msp файлов их символьными ссылками на сетевой ресурс - учитывая что стоит клон системы на всех компах, экономим еще 5 Гиг места), в итоге я выигрываю до 12 Гб места. Пока что за все время я не сталкивался с ситуацией чтобы что-то работало не так. Но, в основном люди игрыют в игры, сидят в интернете и используют офисные приложения. Т.е. в моем интернет-кафе не используются спцифичные приложения в стиле старых версий 1С. Скажу лишь одно - пока что отрицательных эффектов не замечено, но как всякая теория, моя - так же требует длительной проверки не одним человеком. И если вы собираетесь испытывать мой способ на рабочей системе, либо вы не обладаете большими знаниями в области устройства ОС, то лучше воздержитесь от этого. Но если все же решились - сделайте обязательный бекап всего системного раздела. Делать нужно именно бекап - не проканает просто скопировать папку в другое место, а в случае чего вернуть ее на мест (причина - хардлинки).
Так что жду отзывов.
К профессионалам этого сайта убедительная просьба - если вы не вникали в устройство этой самой папки WinSxS в Win7, а полагаетесь лишь на отмазки самой MS, и при этом не пытаясь проедлать что-либо из описанного - то воздержитесь от комментариев в стиле:
DLL Hell - Wikipedia, the free encyclopedia
Side-by-side assembly - Wikipedia, the free encyclopedia »
Avatar-Lion
13-05-2013, 00:02
Между прочим, у меня вопрос к тем, кто говорит что "папка winsxs не потребляет столько дискового пространства, как об этом сообщает Explorer". Как тогда объяснить это играм и программам, которые про это не знают и считают, что место занято на самом деле? И кстати да, скажите тогда уж заодно как узнать истинный размер этой папки.
Real Root
13-05-2013, 00:19
Между прочим, у меня вопрос к тем, кто говорит что "папка winsxs не потребляет столько дискового пространства, как об этом сообщает Explorer". Как тогда объяснить это играм и программам, которые про это не знают и считают, что место занято на самом деле? И кстати да, скажите тогда уж заодно как узнать истинный размер этой папки. »
Она действительно не потребляет столько места сколько показывает проводник. Точнее она потребляет ровно столько сколько показывает проводник, НО ссылки на файлы хранящиеся в этой папке есть и в других местах. А т.к. место на диске выделяется до тех пор пока не будут удалены все ссылки на него, то удаление всей папки WinSxS весом в 8Гб даст выигрышь лишь в 4-5Гб. Т.е. там примерно половина файлов имеет жесткие ссылки в другие места структры каталогов ОС.
Как узнать сколько там уникальных файлов, а сколько нет - не знаю. А какой смысл? По моим оценкам - в свежеустанволенной системе (без обнов) почти все что есть в winSxS - это ссылки. т.е. удалять ее нет вообще смысла - по-идее места не освободиться нисколько. Ну может быть метров 500 (не устанволенные компоненты). Но вот если вашей системе от года и более, и вы регулярно устанавливаете обновления (включен windows update) - то в таком случае уникальных файлов будет очень много.
Даже на только что установленной системе SP1 с устанволенными всеми обновами (а их на сегодня 119), удалив папку WinSxS по предложенной технологии вы выиграете около 1,5-2Гб.
В моем случае освободилось 3800Мб - тестовая система установлена была в июле 2012 года и ежемесячно пополнялась обновками.
Avatar-Lion
13-05-2013, 00:28
Так. Стоп. Потребляет, не потребляет... Меня не это волнует. Меня волнует другой момент. Простой пример: игра требует 20Гб свободного места, а у меня свободно только 17Гб. Папка winsxs занимает 9Гб. Вы пишете, что реальный объём ее меньше. Ну и? Установщик игры говорит что недостаточно места, как ему объяснить что на самом деле winsxs весит не 9Гб, а в два раза меньше? Или я чего-то не понимаю?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC