![]() |
Предлагаю обсудить WinSxS в Vista
Идея WinSxS отличная и отлично работает в Windows XP. Размер этой папки при установке тонн разнообразного софта составляет от 15 до 50 Мб (обычно 20 Мб) и хранится там 100-200 файлов в 30-50 папках, и это обычно версии пары Microsoft библиотек (msvcrt, gdiplus, mfc, msvcm и т.д.) В Windows Vista папка WinSxS выполняет другие функции чем в XP и/или делает это по другому. По ходу на эту папку возложены также функции %windir%\$NtUninstallKBxxxxxx$\ в XP Любое установленное обновление существенно увеличивает папку WinSxS - похоже что бросает старые версии обновленных файлов. Для примера установка SP1 увеличивает папку WinSxS на +1.5 Gb Сейчас на свежем ноутбуке после установки всех обновлений и набора софта папка WinSxS: - 31 000 файлов - 7800 папок - 4.9 Гб места По отзывам на иностранных сайтах эта папка обычно разрастается до 15-17 Гб Также большинство *.exe/*.dll файлов в папке System32 являются линками на реальные файлы в WinSxS Бесконтрольное и неумерное разрастание этой папки говорит о том, что при установке новых версий файлов (или даже повторной установки одной и той же версии) старые файлы не удаляются. Соответственно есть идея: можно написать winsxs-clener: каждый файл проверяется на наличие каких-либо ссылок на него, если файл мертвый - удаляем. Если папка остается пустой - тоже удаляем. |
Интересно и мне об этом узнать. У меня винде полтора года, папка занимает 7.7 Гб. Подозреваю, что большинство этих файлов можно удалить, только я не знаю, какие именно.
|
|
Большинство дублей являются системными и служат для совместимости старых программ и Висты. Наглядный пример - скрытая и системная папка Documents and Settings в корне системного диска, которую нельзя ни открыть, ни удалить. Она служит для того, чтобы проги, использовавшие "Мои документы" в ХР, нормально работали с изменившимися путями в Висте.
Насчет прочего - сам не знаю. |
Так каковы же функции WinSxS в Windows Vista?
|
Котяра, хранить полный набор модулей для установки/удаления функций
|
Цитата:
|
Котяра, нет
|
Котяра А тут об этом:
Аргументирую почему я тоже так считаю. C:\Windows\WinSxS\backup\ папка содержит копии старых библиотек после установки патчей. Все файлы из неё я удалил - полет нормальный. Цитата:
DiMMMm Котяра, хранить полный набор модулей для установки/удаления функций Т.е. функциональность папки C:\Windows\Installer? Или удаляемых Windows компонентов? Так их немного, копейки в общей массе. Так каковы же функции WinSxS в Windows Vista? Гремучая смесь из .NET и механизма WinSxS. Значительная часть Vista - сборки .NET, платформеннозависимыми они становятся после конечной компиляции. Одних папок IL (intermediate language) - несколько тысяч. Т.е. механизм примерно таков: - вы скачали и запустили обновление Windows (.NET в своей массе) или установку 3rd party софта .NET - .NET Framework в кооперации с ОС распихает IL по новосозданных папках и запускает компиляцию бинаринков с ракладыванием по опять же новосозданных папка - обновить хардлинк в system32 на новую подпапку winsxs |
Цитата:
|
Цитата:
|
Котяра, да (turn windows features on or off). На самом деле ничего не удаляется, а только выключается
|
идея написания winsxs клинера очень интересная, кто бы воплотил ее в жизнь ? самому как то страхово что либо там чистить.
|
Прошу всех, выскажите своё мнение об этом способе снять жирок с WinSxS :)
How to move the WinSxS directory in Vista |
Немного информации по сабжу (на Английском)
What is the WINSXS directory in Windows 2008 and Windows Vista and why is it so large? The Secret Of Windows Vista Winsxs Folder |
Цитата:
|
Vadikan, :blush: зря при переводе убрали версии "Виста и 2008м", сразу так и не бросилось в глаза. Зато теперь будет и первоисточник в теме указан.
А можно в первый пост и скрин (такой или подобный по данной папке) разместить, что б всю величину папки были видно сразу? |
Занимаемое дисковое пространство
Цитата:
|
Тоже читал, но что-то все равно не так, вот пример есть файл
C:\Windows\System32\urlmon.dll - 1139 K в WinSxS - есть несколько каталогов x86_microsoft-windows-i..._none_b532d724f011e424 в зависимости от версии обновления или установленного файла urlmon.dll - 1139 K или ..._none_b2d49a63d9c1162b - urlmon.dll - 1132 K (всего каталогов 5 шт.) или C:\Windows\System32\inetcpl.cpl - 1785 K в WinSxS - есть несколько каталогов x86_microsoft-windows .... - inetcpl.cpl - 1788 K, x86_microsoft-windows .... - inetcpl.cpl - 1788 K Так что не все так просто, как кажется, и если это ссылка то куда указывают файлы в других каталогах например от urlmon.dll укоторых даже разные размеры. |
Папка с Windows
![]() Папка Winsxs ![]() Многовато будет! :aggressiv |
Я пытался чистить эту папку,давно правда,сократил ее до 1.8гига,была до этого где то 5.5
,принцип очистки таков-включить все службы которые вам необходимы(чтобы работали)и включить все компоненты которые хотите использовать(в компонентах поставить галки) у меня галок всего 3 было,остальные мне не нужны,и приступаем-делаем себе полный доступ к этой папке и ее подпапкам, и начал удалять из этой папки все что не оспользуется в данный момент,система то что работает недолжна дать удалить,выскочит предупреждение что удалить невозможно-я жал пропустить и отметил галочку Для всех это конечно рискованный вариант и я его никому и не советую но у меня после этого все работало как и обычно. А можно вообще все службы включить и только после этого производить очистку Безопасная очистка это помоему просто удаление дубликатов-ищем дубликаты файлов например с помощью того же тотал командера я нашел их около 500 мегов,их можно удалить помоему ничего не опасаясь |
|
Короче убито 5 часов почти но победа за нами.
Удалось корректно переместить папку WINSXS на другой раздел. Если тема еще актуальна опишу весь процесс подробно. 5 часов ушло на догадки и ковыряние, у вас по написанному пройдет максимум за минут 40-час. |
Цитата:
|
Скажите, а Windows 7 тоже страдает подобными проблемами?
|
Внимание!!! Предупреждаю сразу - сначала внимательно читаем, потом только делаем. Лучше распечатать на бумагу если нет другого компа с подключенным инетом под рукой.
Дано : Компьютер в домене Active Directory. ![]() Диски (скрин после переноса папки WinSxS): ![]() Состояние после переноса WinSxS ![]() Делал по материалам сайтов (не спешите сразу делать как там описано, дочитайте до конца): http://aspoc.net/archives/2007/12/05...tory-in-vista/ http://technet.microsoft.com/ru-ru/s.../bb897556.aspx http://www.vistax64.com/tutorials/67...ship-file.html Процедура :) Как рекомендует Мэт Вэйд (Matt Wade) почти Дарт Вейдер :) Вам понадобится две утилиты: PendMoves and MoveFile. Поместите их в \Windows\System32 директорию для быстрого доступа. (Хотя они вряд ли вообще понадобятся, не рекомендую) 1. Если вы в домене то войдите в компьютер под учеткой ЛОКАЛЬНОГО Администратора. 2. С помощью Windows Explorer найдите папку \Windows\WinSXS. Клик правой кнопкой мыши на папке, в быстром меню выбираем "Свойства" (Properties). Выберите вкладку "Безопасность" (Security)для просмотра разрешений на папку. Меняем владельца с TrustedInstaller на Администратора и даем полный доступ группе Администраторов на всю папку и вложенные файлы WinSxS. !!! на этом советы Мэта можно больше не слушать поэтому переводить не буду. Копирнул As Is. Кому интересно почитайте но не повторяйте моих ошибок. Переходим к пункту 3. Open an administrator command prompt, and create a dummy directory. Execute “mkdir c:\windows\winsxs.moved“ Next, create a junction (like a Symbolic link for Vista). Execute “mklink /J c:\windows\winsxs.link winsxs.moved“ Now delete the winsxs.moved directory. Execute “rmdir c:\windows\winsxs.moved“ Now we will use MoveFile to schedule renaming of the WinSXS directory at reboot. This is the magic that will give us control over the directory. From the administrator command prompt, execute “movefile c:\windows\winsxs c:\windows\winsxs.moved“. As you can see, this is renaming the WinSxS directory before Vista can get a lock. From the command prompt, run “movefile c:\windows\winsxs.link c:\windows\winsxs“. This puts a winsxs directory back (as far as Vista is concerned), so everything doesn’t collapse in a heap. From the command prompt, run “pendmoves“. It will show the two pending moves you’ve entered above, with NO ERRORS. If it all looks good, REBOOT! (На этом моменте при стандартной загрузке Vista грузиться отказалась напрочь, в безопасном режиме только BSOD ) On reboot the critical renames/moves will execute, and the WinSxS directory will be unlocked and able to be moved in the next steps. Open an administrator command prompt, and execute “dir c:\windows\winsxs*“. If you performed the previous steps correctly, you’ll see a WinSxS.moved directory and the WinSxS junction. If it did not work, repeat the above steps. Our next step is to relocate the WinSXS directory and amend the junction. Using Windows Explorer, COPY the entire WinSxS.moved directory to a \Windows directory on another partition or drive. When the copy is finished, rename the new directory from WinSxS.moved to WinSxS. Go to an administrator command prompt and execute “rmdir c:\windows\winsxs“. Then, execute “mklink /J c:\windows\winsxs d:\windows\winsxs“. To be sure everything is happy, in Windows Explorer browse to c:\windows\winsxs. You will see all of the files. (Even though they are actually on your other partition or drive) Reboot After reboot, you should be able to delete c:\windows\winsxs.moved and FINALLY liberate all that disk space. Whew! Now take a bow. This process can also be applied to the Windows Updates directory. When you download Windows Updates etc., the files get placed into C:\Windows\SoftwareDistribution, and this will quickly become huge. It is easier though… stop the Automatic Update service, move directory, create junction, restart service, DONE! Ага, DONE! Щассс... 3. Загрузитесь с установочного диска Vista. 4. После выбора языка установки на следующем окне есть кнопка "Установить", не нажимать, в самом внизу ссылка на восстановление системы, идем туда. Пройдет поиск установленных систем, если диски в рэйде можно там же подгрузить драйвера если потребуется. 5. После того как пройдет попытка автоматического восстановления выбрать "Выбор вариантов восстановления" , внизу будет "Командная строка". Выбираем запускаем консоль CMD. 6. Копируем полностью папку WinSxS на d:\windows\winsxs или другой раздел следующей командой: (внимание!!! если у вас много разделов и много винтов то проверьте буквы дисков, остались они прежними или поменялись, как было у меня- диск D при установке стал E и наоборот, т.е. папку winsxs я копировал на Е диск, потом они вернутся на свои места) xcopy c:\windows\winsxs\* d:\windows\winsxs /h/i/c/k/e/y/x У меня копирнулось что то около 79000 файлов, процедура достаточно долгая, минут 20-30. 7. Запускаем “rmdir /s/q c:\windows\winsxs” и линкуем “mklink /J c:\windows\winsxs d:\windows\winsxs” 8. Выполним “dir c:\windows\winsxs*” и проверим связь папки winsxs к d:\windows\winsxs. 9. Вводим exit и перегружаемся. После перегрузки, если все прошло нормально проверяем свободное место на дисках. У меня освободилось гигов 5. Почему так - не знаю. Ведь папка занимает места почти 12 гиг. Теперь вкратце опишу мои попытки и методы: После того как система перестала грузиться, выдавать BSOD даже в безопасном режиме, у меня ушло много времени на борьбу с утилитой movefile. Загрузившись с дистрибутива Висты в командной консоли запускаем c:\windows\regedit там уже выделяем ветвь HCLM - далее меню файл - загрузить куст- И ВОТ ОН ! Проводник! Куст не грузим а пользуемся окном выбора как проводником. Только Total Commander привычней, удобней и безопасней. Ищем на дисках папку с любимым тоталом, Правой кнопкой - Запуск от имени Администратор на екзешнике. Все! Диски и файлы в нашем распоряжении. Проблема была в том, как выяснилось, что утилита movefile, предназначенная для переноса системных файлов и папок на этапе загрузки системы и до применения параметров безопасности, исправно шедулила при каждом запуске мой линк c:\windows\winsxs изменяя его в c:\windows\winsxs.moved . Естественно оставляя винду без папки winsxs. Утилита movefile прописывает задания в ветку реестра HKLM\System\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations . Загрузившись с дистрибутива Висты в командной консоли запускаем c:\windows\regedit там выделяем ветвь HCLM - далее меню файл - загрузить куст- выбираем на диске c:\Windows\System32\config\SYSTEM , тот который без расширения и побольше размером, сохраняем куст под любым именем и лезем в HCLM\(имя загруженного куста)\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations . Два раза кликаем на параметре PendingFileRenameOperations и видим наши назначенные задания внизу списка. Удаляем, закрываем, выгружаем куст. Перегружаемся. Все работает. Будут вопросы пишите, отвечу. После переноса система работает уже сутки , весь софт носится нормально. Глюков нет. |
доброго времени суток. вот я наткнулся тут на утилитку в виде bat файла для очистки этой самой папки, но запустить пока не решился. видимо сперва нужно сделать бэкап. тут я вижу храбрецов достаточно, кто испытает на себе и опишет результаты? вот ссылка http://windowsfixup.com/2009/05/wins...isk-space-fix/
|
Неочень то и получается с этим bat файлом ..
Было 7,3 Гига стало 7,2.... :sorry: |
Только открыл батник почитать, сразу предупрежу сторонников FAT fs на домашних компах -
Код:
echo The filesystem on drive %rootd% isn't NTFS. |
На FAT можно и не пытаться, а на NTFS толку нет.
Таким макаром папка вновь жрёт место на диске. ждём новых идей....... |
Интересно...как то и не замечал того, до момента прочтения сей статьи...а заметив,офигел...Папка та,у меня 10 гиков отьела .А что мелкомягкие по сему поводу говорят?Ведь это трабл не детский...Этак через год,папка эта WinSxS,весь сис раздел съест...
|
жаль, что шедевр не удался. хотя, версия то 1.86! следовательно, обновляется и, значит, толк есть? ничего не понимаю. по идее, в правильно спроектированной системе продолжительность её работы не должна проводить к коллапсу. или висту выпустили "на время", пока не выйдет 7ка? :-D
|
Опробовал рискованный вариант очистки этой папки, было 9.3 гига, стало 5, собсно пока полёт нормальный, побочных эффектов не замчено, единственное что похоже часть приложений использовали эти библиотеки, при их первом запуске после очистки немного дольше думают.
Похоже я поспешил с выводами папка sysWOW64 разрослась до 10 гигов :( |
что вы думаете на счет этой статьи ?
Кто нибудь пробовал эту тулзу? http://bazikyan.ru/vista-winsxs-fix/ |
я вроде бы об этой же утилите и писал несколько месяцев назад..
|
Народ я попытался очистить эту папку через TuneUp, половину очистил и у меня игры перестали запускаться
|
Посмотрел на виртуалке. Не добавили очистку системных файлов как в 7. Видать не хотят заморачиваться. Хотя ещё прилично ноутов с Вистой.
|
Господа. В папке WINSXS находятся 4 версии CbsCore.dll, а в папке SYSTEM32 нет CbsCore.dll. Как скопировать туда указанный файл из WINSXS. Вопрос связан с тем, что при попытке отключить компонент Конференц-зал зависает TrustedInstaller-ветка CbsCore.dll. CbsCore Shutdown Processing находится в состоянии-Ready. Приходится Убивать процесс и снимать задачу.
|
Прошу прощения что тревожу старую тему.
Сделал все по инструкции ewgen86. Проблемы стали возникать при получение новых обновлений. Не могут установиться, журнал обновлений пишет отказ, код ошибки 80070011. Кто ни будь подскажет, как можно это исправить? |
nikmedber, переустановите Windows, сохранив настройки и установленные программы.
А еще лучше, обновитесь до более новой ОС, где есть годные инструменты очистки. https://www.outsidethebox.ms/15272/ |
Простите, не понял на счет переустановки. После переустановки папка winsxs вернется на тот же раздел что и система, или просто пропишутся правильно пути для папки winsxs на другом разделе?
|
Цитата:
|
Цитата:
Жёсткие ссылки не занимают на диске места вообще: это просто вторая (третья, ..., десятая, ...) запись, ссылающаяся на файл, уже имеющийся на этом диске; причём каждая из этих жёстких ссылок может иметь имя вообще никак не связанное с именем других жёстких ссылок на этот же файл. Т.е. реальный объём, занимаемый папкой WinSxS, существенно меньше того объёма, который показывает Проводник. |
Реальный объём можно увидеть загрузившись с Лайв СД с Линукс, типа Ubuntu или KRD 10. В ней пустота. Чистить самому можно только C:\Windows\winsxs\backup\.
|
Время: 05:26. |
Время: 05:26.
© OSzone.net 2001-