В один прекрасный (или печальный, кому как) день мне надоело, что у меня периодически заканчивается место на ноутбуке. Да, я в курсе, что жёсткие диски сейчас дешевы, но это для меня не выход, потому что:
Если у Вас эта папка занимает много-много места, а читать весь пост неохота - пожалуйте в самый его конец, там есть ссылки на github, откуда можно взять готовый результат моих изысканий и попробовать выжать (или отжать) немного места у винды.
Приведу немного теории с того самого MSDN:
Starting with Windows Vista, the driver store is a trusted collection of inbox and third-party driver packages. The operating system maintains this collection in a secure location on the local hard disk. Only the driver packages in the driver store can be installed for a device.When a driver package is copied to the driver store, all of its files are copied. This includes the INF file and all files that are referenced by the INF file. All files that are in the driver package are considered critical to the device installation. The INF file must reference all of the required files for device installation so that they are present in the driver store. If the INF file references a file that is not included in the driver package, the driver package is not copied to the store.
The process of copying a driver package to the driver store is called staging. A driver package must be staged to the driver store before the package can be used to install any devices. As a result, driver staging and device installation are separate operations.
A driver package is staged to the driver store by being verified and validated
В моём вольном переводе получится что-то вроде:
В Windows Vista и позднее, хранилище драйверов используется как сборник доверенных предустановленных и сторонних драйверов. Операционная система поддерживает этот сборник в безопасном месте на локальном диске. Только те драйвера, которые лежат в хранилище, могут быть установлены.Когда драйвер копируется в хранилище, туда попадают все его файлы, включая.INF файл и все файлы, на которые этот.INF ссылается. Все файлы, составляющие драйвер, считаются необходимыми для работы устройства. INF файл должен ссылаться на все файлы, необходимые для работы устройства, для того, чтобы они все попали в хранилище. Если.INF файл ссылается на файл, не входящий в драйвер, этот драйвер не копируется в хранилище.
Процесс копирования драйвера в хранилище называется staging (не стал пытаться выдумать термин, оставил английское слово - прим.пер. ). Для того, чтобы драйвер мог быть использован для какого-либо устройства, он должен пройти процесс staging, таким образом, установка устройства и staging драйвера - отдельные операции.
Перед попаданием в хранилище драйвер проверяется на действительность подписи и целостность файлов.
Тут надо упомянуть, что я не первый такой умный, кто думал над этой проблемой, на codeplex есть проект по GUI приложению DriverStore Explorer , но он фактически является только графической обёрткой вокруг pnputil и никак не анализирует драйвера, предоставляя полную свободу своему пользователю.
Мне же, во-первых, искать вручную устаревшие версии драйверов было не очень охота, а во-вторых хотелось понять, что я выиграю от удаления того или иного драйвера (в смысле места на диске). Так что тут был синдром в полный рост.
Поэтому я взял в руки Python и понеслось.
Теперь дело оставалось за малым - обернуть всё это в скрипты для удобного исполнения.
По дороге, правда, лежала подстава в виде UAC - pnputil работал только с администраторскими правами, а значит, надо было повышать привилегии из Питона. Беглое гугление дало несколько рецептов, которые говорили что-то вроде «можно сделать так, но вывода (и уж тем более ввода) не будет, как будете отлаживаться - без понятия», и меня это не устроило, так что я чуть-чуть доработал примеры.
Правда, моя реализация на данный момент неидеальна - она упадёт при попытке перенаправить stdout или stderr, потому что внутри я использую виндовое понятие консоли, а для перенаправленных потоков это не работает…
Но я пока закрыл на это глаза, потому что для починки надо городить чуть более сложный механизм, чем вызов FreeConsole/AttachConsole, т.е. заниматься перенаправлением всех потоков вручную.
Сам лично я это проверял на двух компьютерах с Windows 7, в теории должно работать на Vista и 8. На WinXP должно быть (вроде) бесполезно.
Скрипт проанализирует хранилище драйверов, постарается найти устаревшие версии драйверов (т.е. такие, для которых одновременно в staging находится более новая версия) и предложит их удалить, выдав оценку занимаемого драйверами места (и оценку выигрыша, разумеется, тоже).
Оба ноутбука с тех пор живут полной жизнью, в смысле никаких проблем от очистки я не заметил.
Там мы их устанавливали. Здесь разберемся как удалить драйвер . Итак, драйвер — это программа посредник между оборудованием и операционной системой, помогающая последней корректно использовать все функции устройства. Сам драйвер для операционных систем Windows состоит из двух частей: файл inf, и системные файлы dll, sys и другие. INF файл текстового типа и содержит инструкцию о том, какие файлы и как необходимо использовать.
Вся эти система работает стабильно, пока не возникают ситуации с переустановкой драйвера. Обычно это происходит при обновлении драйвера или при установке другого оборудования. Например видеокарты . В этих ситуациях необходимо сначала удалить старый драйвер полностью, и установить другой или более новую версию. Программы типа CCleaner и подобные нам не помогут, так как не обладают необходимыми функциями. В этой статье мы расскажем как удалить драйвер с помощью специально-предназначенной для этого утилиты — Driver Sweeper. Утилита уже не поддерживается производителем, но по прежнему остается лучшей в своем деле. Мы так же рассмотрим ее приемника, по обещаниям, не менее эффективной программы — Driver Fusion
Как уже говорилось производитель не поддерживает данную утилиту и скачать ее с официального сайта не получится. Установщик весит 5.2 MB. Предлагаю скачать ее быстро по ниже приведенной ссылке
Скачиваем и устанавливаем программу. Установка простая. Необходимо только в окошке ниже отказаться от установки Instagrille и нажать Далее >
Программу установили. Теперь необходимо стандартными средствами Windows удалить программное обеспечение, например драйвер для видеокарты. (Как выбрать графический адаптер можно прочитать .) Осуществляется это в разделе «Удаление программ» панели управления.
После того как драйвера удалены, приступаем к очистке.
В данном режиме программы из папочки и многие драйвера не загружаются, следовательно, возможность полного удаления драйверов повышается. Для загрузки в безопасном режиме после нажатия на кнопку включения компьютера необходимо нажимать клавишу F8 . Появится окно с выбором вариантов загрузки. Необходимо выбрать самый верхний безопасный режим и нажать Enter.
Запускаем программу для удаления драйверов Driver Sweeper.
Программа по умолчанию на английском языке. Переключим на русский. Для этого в поле Options выбираем раздел Language . Далее справа, из выпадающего списка выбираем необходимый язык. Для изменения настроек нажимаем внизу кнопку Apply
Затем, слева выбираем Анализ и очистка . Справа выделяем флажками драйвера, которые необходимо удалить, и нажимаем внизу справа кнопку Анализ . В моем случае буду удалять старые драйвера видеокарты AMD
Программа произведет поиск оставшейся информации и покажет нам ее. От нас требуется нажать на кнопку Очистка
Driver Sweeper выдаст предупреждение. Нажимаете ОК
Необходимо немного подождать. Затем программа предложит перезагрузить компьютер. Нажимаете ОК и перезагружаетесь.
На этом процедура удаления драйвера закончена.
Иногда при исправлении каких либо ошибок в операционной системе Windows нужно удалить драйвер определенного устройства из системы. К примеру, скачали Вы и установили драйвер на, скажем, видеокарту, однако качали Вы не с официального сайта, а с другого источника. Вследствие чего возникли проблемы в работе системы в целом (тухнет экран, компьютер виснет, не запускаются игры и пр.) Чтобы исправить такую ситуацию необходимо удалить фатальный драйвер и установить родной. В этой статье мы с Вами и рассмотрим, как удалить драйвер в Windows 7, 8 или 10.
Ниже мы рассмотрим три самых эффективных способов для удаления драйверов с операционной системы. Все действия я буду осуществлять в Windows 7, однако данные методы подойдут также как для «восьмерки», так и для «десятки».
Перед Вами самый простой способ избавления от драйверов устройства. Итак, перейдем в "Панель управления"
Выставляем Мелкие значки и переходим в "Программы и компоненты",
Откроется специальная утилита, предназначенная для деинсталляции (удаления) драйвера и программы для работы с устройством. Через некоторое время Вам останется нажать лишь кнопку "Close" или "Finish".
Если первый способ не помог либо в списке программ Ваш драйвер отсутствует, то используйте данный способ. В первую очередь необходимо попасть в "Диспетчер устройств",
Windows 7
Теперь выбираем необходимое устройство, драйвер которого нужно удалить, кликаем по нему ПКМ и выбираем пункт "Удалить",
Появится окошко, в котором отметим пункт "удалить программы драйверов для этого устройства". Ведь если решили удалить, так удалим все компоненты.
После таких манипуляций драйвер будет удален, и после этого можно приступать к установке нового.
Друзья, существует очень полезная программа Driver Sweeper, с помощью которой можно удалить ненужные драйвера в два клика. Эта утилита очень проста, можете сами убедиться. Скачиваем ее с интернета.
Запускаем и первым делом изменим язык
Специализированное программное обеспечение, выполняющее роль промежуточного звена в общении между операционной системой и внутренними или периферийными аппаратными компонентами, называется драйвером. Получая команду от ОС, драйверы преобразуют ее в понятный конкретному устройству набор инструкций, а получив отчет о выполнении - транслируют его назад. Изменения в аппаратной конфигурации или некорректная работа могут стать причиной, по которой требуется удалить драйверы. Рассмотрим возможности, предоставляемые пользователю для выполнения данной операции.
Производитель может обновить инструкции устройства, а разработчик ОС - внедрить новые функции. В результате драйвер, как и любое ПО, со временем устаревает. Пользователь, получая автоматические обновления, даже не замечает, как происходит замена. Идеальная картина взаимодействия портится за счет того, что система «аккуратно» складирует, а не удаляет ненужное. Microsoft отдала решение этой проблемы в руки пользователя.
Никаких специальных инструментов, предусматривающих удаление старых драйверов, здесь не предусмотрено. Тем не менее, у пользователя такая возможность имеется. Отправимся в панель управления.
Отмеченный на скриншоте пункт открывает меню управления установленным программным обеспечением и компонентами системы. Во вторую категорию как раз и попадают драйверы устройств.
Упростить поиск можно, выполнив сортировку по издателю. Когда вы знаете производителя ненужного более устройства, его можно найти и отметить в выпадающем списке. Система оставит в окне только выпущенное им ПО.
После того как вы определились с компонентами, можно начинать удаление драйверов из системы Windows 7. Воспользовавшись указанной кнопкой, вы получите предупреждение о последствиях своих действий.
Подтверждая свое решение, проходим «последнюю линию обороны». Выбранный компонент будет удален, а соответствующее устройство станет недоступно для использования.
В последней версии ОС Microsoft сделала шаг навстречу пользователям и предусмотрела специальные инструменты, позволяющие удалить ненужные драйверы в Windows 10. Располагаются они в меню очистки диска.
Открыв его, выбираем отмеченный пункт, позволяющий работать с файлами системы.
После того как будет выполнена проверка компонентов на актуальность, мы получим следующее окно. Как видите, система неспособна сама удалить ненужные драйверы, но может определить устаревшие версии и предложить пользователю от них избавиться.
С ненужным и устаревшим ПО мы разобрались. Однако ситуация может сложиться так, что при наличии актуальных версий программного обеспечения устройство безнадежно выходит из строя. В ряде случаев чтобы обеспечить корректную работу нового, старое нужно полностью удалить из системы. Снова отправляемся в панель управления.
Выбираем отмеченный пункт и переходим в меню управления устройствами ПК.
Здесь все сгруппировано по областям применения. Соответственно, можно найти и удалить драйвер устройства, которое больше не нужно или некорректно работает. Выберем «жертву» и посмотрим, что необходимо делать в этом случае. Попробуем, к примеру, удалить драйвер звуковой карты.
Разворачиваем группу устройств и выбираем подлежащее деактивации. Вызываем контекстное меню и находим пункт, позволяющий его удалить. Система выдаст диалоговое окно с предупреждением.
Проставляем галочку в указанном месте и подтверждаем сделанный выбор. В результате устройство будет полностью удалено из списка используемого оборудования, а система очистит управляющее им ПО.
В особо запущенных случаях удалить драйвер с компьютера на Windows 7 или 10 можно с помощью командной строки. К примеру, когда устройства уже нет, а описанными способами избавиться от управляющих им компонентов не получается. Этот метод официально документирован Microsoft и разрешен для применения пользователям с административными правами. Воспользовавшись им, можно полностью удалить драйвер из системы.
Windows, заботясь о пользователях, сохраняет «память» обо всех подключаемых к компьютеру устройствах. Драйверы помещаются в специальное хранилище и ждут своего часа, который наступит при повторном использовании. Для начала создадим удобный для изучения список отправленных на хранение компонентов.
С помощью приведенной команды мы заставим службу PnP сохранить перечень драйверов в текстовый файл и разместить его на рабочем столе пользователя. Теперь пользователь может просматривать его в Блокноте, чтобы найти подлежащий удалению компонент.
Продолжим бороться с аудиосистемой ПК и рассмотрим, как удалить звуковой драйвер, обнаруженный в списке. Теперь, когда нам известного его имя, опубликованное в системе, снова воспользуемся командной строкой в режиме администратора.
На скриншоте показано, что делать в том случае, когда ОС отказывает в удалении, ссылаясь на использование устройства. Добавляем параметр «-f», означающий выполнение команды в принудительном порядке и добиваемся желаемого результата.
Когда Microsoft не желает или забывает дать пользователю в руки инструмент для выполнения каких-либо действий, эту нишу тут же занимают производители стороннего ПО. В нашем случае речь идет о программах для удаления драйверов или их автоматического обновления. Выпущено их много, поэтому остановимся на трех, достаточно популярных среди пользователей.
Распространяется бесплатно и поддерживает полтора десятка языков, в число которых входит и русский.
Как видно на скриншоте, последняя версия выпущена в 2011 году. Говорить об актуальности базы устройств даже не стоит. Запустив Driver Sweeper, выбираем известных программе производителей и запускаем анализ системы.
В результате непродолжительных поисков получаем список драйверов, предлагаемых к удалению.
При попытке запустить обновление, уведомление о котором появляется в верхней строке, мы попадаем на домашнюю страницу следующего «кандидата» - Treexy Driver Fusion.
Такое интересное поведение, с которым мы столкнулись, заставляет, установив программу, проверить версию и лицензионное соглашение.
Версия свежая, а вот кнопка «Хорошо» - смущает. Посмотрим, что предлагает нам данное ПО, изучив настройки.
Почти все проверенные пункты поиска «водителей» ни к чему не приводят. При этом нам откровенно и навязчиво указывают на ограниченность бесплатной версии.
Тягостное впечатление от возможностей данной программы приводит к мысли, что опыт, о котором говорят разработчики, будет напрямую связан с установкой Windows.
Производитель Driver Genius русским языком нас не балует. Интерфейс в свежей версии ПО полностью на английском.
Предложения по очистке диска от «неверных» драйверов сводятся к сканированию хранилища. Список его содержимого мы создавали в командной строке.
В результате действий программы нам предлагается освободить «целых» девять мегабайт дискового пространства.
Возможностей, которые предоставляет Windows для работы с драйверами, вполне должно хватить пользователю для выполнения задуманных им операций. Применение стороннего ПО вряд ли может дать вам больше, чем разумное использование командной строки. Поэтому если не желаете «улучшить опыт», не стоит вмешиваться в работу ОС радикальными способами с непредсказуемым результатом.
Продолжаем своеобразную очистку системы от накопившегося мусора. Сегодня затронем тему драйверов. В статье я лишь немного в конце показал как можно удалить драйвера. А в статье дело в "дровах" и нужно было их удалять. Там я расписал более подробно.
Поэтому, если хотите удалить или откатить драйвера, почитайте одну из статей выше. А ещё лучше обе.
Теперь ближе к сути. Нижеописанный способ поможет Вам увидеть и удалить все драйвера, которые находятся в системе и не используются. Какие это дрова? Да всякие. Это и те, которые установились когда Вы "втыкнули" какую-то чужую флешку единожды. Это и дрова, которые установились вместе с какой-нибудь программой для обработки видео или звука, а так же антивирусы и т.п. программное обеспечение. Впоследствии Вы уже удалили эти программы, а хвосты в виде драйверов могут остаться. Так же этот хлам может остаться после неправильной переустановки "винды".
Сейчас мы будем их удалять стандартным способом систему Windows.
Открываем Свойства системы . Это можно сделать тремя способами:
1) Win + Break/Pause
2) ПКМ по значку Моего компьютера и в контекстном меню выбираем Свойства
3) Пуск -> Панель управления -> Система
В Windows 7 и 8 нужно ещё слева выбрать Дополнительные параметры системы
Остаётся только открыть этот самый Диспетчер.
Либо в этом самом окне Свойств системы выбрать вкладку Оборудование
:
Так же все эти действия можно упростить (до открытия Диспетчера), введя в командную строку Set devmgr_show_nonpresent_devices=1
Тогда можно открыть диспетчер, поставить отображение скрытых и удалять.
Здесь следует учитывать то, что после перезагрузки эта опция пропадёт.
На этом всё. И в качестве заключения хотелось бы дать несколько примечаний:
1) Если не получается - попробуйте делать под Админом
2) Если не отображается - нажмите на кнопку "Обновить конфигурацию оборудования" или перезапустите Диспетчер
3) Смотрите внимательно что удаляете. Если что-то потом не запустится - я не виноват.
4) В списке не всегда отображаются не нужные. Там могут присутствовать всё, что было установлено. Поэтому ещё раз подумайте нужно ли его удалять и точно ли больше не будет использоваться. Хотя дрова потом снова установятся заново, но не для всех устройств.
Создано по мотивам