Найти в Дзене
Т.Е.Х.Н.О Windows & Linux

Windows 11 под скальпелем: как превратить скрипт деблоатинга из врага в союзника

Есть в жизни IT-специалиста и энтузиаста моменты, когда хочется взять свою операционную систему и вычистить её до блеска. Не просто отключить пару назойливых уведомлений, а провести полноценную «хирургическую операцию»: удалить всё лишнее, отключить ненужное, оставив лишь lean and mean основу. Windows 11, особенно в своей текущей итерации 25H2, с её облачными интеграциями и предустановленными сервисами — идеальный кандидат для такой процедуры. И первый инструмент, который приходит в голову, — это готовые скрипты деблоатинга. Но здесь нас ждёт классическая дилемма: мощный инструмент в неопытных руках из помощника моментально превращается в разрушителя. Запустил скрипт с GitHub, перезагрузился, а вместо рабочего стола — чёрный экран и чувство глубокого уныния. Знакомо? Чтобы этого не произошло, давайте не будем слепо доверять магии чужих строк кода, а разберёмся, как заставить эту магию работать на нас. Когда погружаешься в тему, быстро понимаешь, что сообщество разделилось на два условн
Оглавление

Есть в жизни IT-специалиста и энтузиаста моменты, когда хочется взять свою операционную систему и вычистить её до блеска. Не просто отключить пару назойливых уведомлений, а провести полноценную «хирургическую операцию»: удалить всё лишнее, отключить ненужное, оставив лишь lean and mean основу. Windows 11, особенно в своей текущей итерации 25H2, с её облачными интеграциями и предустановленными сервисами — идеальный кандидат для такой процедуры. И первый инструмент, который приходит в голову, — это готовые скрипты деблоатинга.

Но здесь нас ждёт классическая дилемма: мощный инструмент в неопытных руках из помощника моментально превращается в разрушителя. Запустил скрипт с GitHub, перезагрузился, а вместо рабочего стола — чёрный экран и чувство глубокого уныния. Знакомо? Чтобы этого не произошло, давайте не будем слепо доверять магии чужих строк кода, а разберёмся, как заставить эту магию работать на нас.

Философия чистоты: две школы одной цели

Когда погружаешься в тему, быстро понимаешь, что сообщество разделилось на два условных лагеря. Их подходы — как два разных пути к одной вершине.

Лагерь первый: Прагматики.

Их девиз — «Работать должно всё, что нужно для работы и игр». Представьте себе опытного системного администратора, который настраивает парк офисных компьютеров. Его цель — стабильность, производительность и отсутствие звонков от пользователей в духе «у меня тут кнопка пропала». Он безжалостно удалит Candy Crush и Disney+, но десять раз подумает, прежде чем тронуть службы, связанные с обновлениями или сетевым стеком. Классический пример — скрипты от Chris Titus Tech. Они эффективны, относительно безопасны и отлично подходят для повседневного использования.

Лагерь второй: Максималисты (или «цифровые аскеты»).

Их кредо — «Любая необязательная телеметрия — угроза, любой фоновый процесс — растрата ресурсов». Этот пользователь видит в Windows не столько продуктивную среду, сколько потенциального шпиона, которого нужно обезвредить. Его инструменты, вроде наработок TairikuOokami, лезут глубоко в системные службы, планировщик заданий, отключают всё, что хоть как-то связано со сбором данных. Риск сломать систему после следующего крупного обновления здесь в разы выше, но и результат — система, которая ведёт себя максимально предсказуемо и тихо.

Какой путь выбрать? Вопрос не столько технический, сколько мировоззренческий. Но истина, как всегда, где-то посередине. И она заключается не в выборе чужого скрипта, а в создании своего.

От потребителя к создателю: анатомия PowerShell-команды

Прежде чем писать свой скрипт, нужно научиться читать чужие. Давайте разберём стандартный блок, который есть почти в каждом таком скрипте.

Get-AppxPackage -AllUsers *Microsoft.YourPhone* | Remove-AppxPackage

Для непосвящённого это просто «магия». На самом деле — чёткая последовательность действий:

  1. Get-AppxPackage -AllUsers — команда говорит системе: «Найди мне все установленные UWP-пакеты для всех пользователей на этом компьютере». Ключ -AllUsers критически важен. Без него изменения затронут только вашу учётную запись.
  2. *Microsoft.YourPhone* — это шаблон поиска. Звёздочки означают «любые символы до и после». Система найдёт пакет, даже если его полное имя будет «Microsoft.YourPhone_1.2345.678.90_neutral_~_8wekyb3d8bbwe».
  3. Символ | (пайп) — это конвейер. Он передаёт результат работы левой команды (найденный пакет) на вход правой команде.
  4. Remove-AppxPackage — собственно, команда удаления, которая получает пакет и ликвидирует его.

Когда вы понимаете каждую часть, вы перестаёте бояться. Вы начинаете видеть не магическую incantation, а логичную инструкцию. И вот тут-то и рождается желание сделать свою.

========================

✅ Подпишитесь на канал - (это бесплатно и очень помогает алгоритму)
❤️ Поставьте лайк - (это один клик, а нам очень важно)
🔄 Репостните друзьям - (которые играют в танки и жалуются на FPS)
💰 Задонатьте (Даже 50 руб. - это топливо для новых статей, скриптов и пошаговых инструкция для Вас. Большое Спасибо понимающим! 🙏
-2
💰ПОДДЕРЖАТЬ КАНАЛ МОЖНО ТУТ ( ОТ 50 РУБЛЕЙ )💰
Или сделать любой перевод по ССЫЛКЕ или QR-коду через СБП. Быстро, безопасно и без комиссии. ( Александр Г. ) "Т.Е.Х.Н.О Windows & Linux".

=========================

Собираем свой инструментарий: принцип модульности

Главная ошибка новичка — создать один гигантский файл debloat_all.ps1, который делает всё и сразу. Потом этот файл падает с ошибкой на 150-й строке, и ты не понимаешь, что именно пошло не так.

Правильный путь — модульный. Разбиваем большую задачу на маленькие, понятные шаги.

Шаг 1: Чистка предустановленного ПО.

Создаём файл 01_remove_uwp.ps1. Его задача — только удалять UWP-пакеты. И делаем это с умом: разделяем пакеты на те, что можно удалять смело, и те, что требуют осторожности.

# То, что можно удалять почти вслепую
$SafeToRemove = @(
"*Microsoft.BingNews*",
"*Microsoft.BingWeather*",
"*Microsoft.Getstarted*",
"*Microsoft.MicrosoftSolitaireCollection*",
"*Microsoft.People*"
)

# То, что лучше проверить
$CheckBeforeRemove = @(
"*Microsoft.YourPhone*", # Полезно для связи со смартфоном
"*Microsoft.WindowsCalculator*" # Да, некоторые удаляют даже калькулятор
)

Write-Host "Начинаю чистку UWP-приложений..." -ForegroundColor Cyan
foreach ($App in $SafeToRemove) {
$Package = Get-AppxPackage -AllUsers $App
if ($Package) {
Write-Host "Удаляю: $($Package.Name)"
$Package | Remove-AppxPackage
}
}

Профессиональный лайфхак:

Удаление пакета для текущих пользователей — это только половина дела. Чтобы Windows не переустановила его для нового пользователя, нужно удалить пакет из провизионинга системы:
Get-AppxProvisionedPackage -Online | Where-Object {$_.DisplayName -like "*YourPhone*"} | Remove-AppxProvisionedPackage -Online

Шаг 2: Настройка служб.

Второй файл — 02_tweak_services.ps1. Здесь не менее важно. Помните золотое правило: не просто ставим Disable, а сначала смотрим, что делает служба.

# Службы, которые чаще всего отключают
$Services = @(
@{Name="DiagTrack"; Description="Сбор диагностических данных"; Action="Disable"},
@{Name="dmwappushservice"; Description="Push-уведомления"; Action="Disable"},
@{Name="MapsBroker"; Description="Обновление карт"; Action="SetManual"}
)

foreach ($svc in $Services) {
try {
Set-Service -Name $svc.Name -StartupType $svc.Action -ErrorAction Stop
Write-Host "Служба '$($svc.Name)' ($($svc.Description)) установлена в '$($svc.Action)'" -ForegroundColor Green
}
catch {
Write-Host "Не удалось изменить службу $($svc.Name). Возможно, она уже удалена или отсутствует." -ForegroundColor Yellow
}
}

Именно так, шаг за шагом, вы создаёте не «чёрный ящик», а понятный, прозрачный набор инструкций, которые вы в любой момент можете проверить, поправить или откатить.

Канал «Каморка Программиста» — это простые разборы программирования, языков, фреймворков и веб-дизайна. Всё для новичков и профессионалов.
-3
Каморка Программиста | Дзен
Присоединяйся прямо сейчас.

Тестирование: ваша страховка от катастрофы

Любой уважающий себя хирург не станет оперировать без предварительной диагностики. С вашей системой — та же история.

  1. Виртуальная машина — ваш полигон. Первый запуск любого, даже самого простого скрипта, должен происходить не на рабочей машине, а в виртуалке с такой же версией Windows 11 25H2. Hyper-V, VMware Player — не важно. Это ваша песочница, где можно без последствий увидеть синий экран.
  2. Построчное выполнение. В PowerShell ISE или современном терминале Windows есть возможность выполнять скрипт построчно (F8). Используйте это. Увидели, что команда Get-AppxPackage *Something* вернула пустоту — значит, пакета уже нет, и Remove-AppxPackage на него не среагирует. Это экономит кучу времени на отладке.
  3. Логи — ваша память. Всегда добавляйте в начало скрипта команду логирования:

Start-Transcript -Path "$env:USERPROFILE\Desktop\MyDebloatLog_$(Get-Date -Format 'yyyyMMdd_HHmm').txt"

  1. После выполнения скрипта на рабочем столе появится текстовый файл, в котором будет подробно расписано, что и когда выполнялось, и какие были ошибки. Бесценно для анализа.

Что в сухом остатке? Таблица изменений

После грамотно проведённой процедуры система меняется. Иногда изменения заметны невооружённым глазом, иногда они скрыты глубоко внутри.

-4

Инструкция по выживанию: когда что-то пошло не так

Даже при идеальном планировании что-то может пойти не так. Главное — не паниковать и действовать по плану.

Сценарий 1: Система загружается, но что-то сломалось.

  • Первое действие — попробовать откатиться через созданную вами же точку восстановления. Запускаете rstrui.exe, выбираете точку с понятной датой и описанием (например, «До чистки 24.01.2026»).
  • Если не помогло — попробуйте вручную восстановить критичный компонент. Допустим, перестал работать поиск. Есть шанс, что проблема в пакете Microsoft.Windows.Search. Его можно попробовать переустановить из Store или с помощью PowerShell, если сохранился его исходный установочный файл.

Сценарий 2: Система не загружается (чёрный/синий экран).

  • Ваш лучший друг — загрузочная флешка с Windows 11.
  • Загружаетесь с неё, на экране установки жмёте «Восстановление системы».
  • Далее «Поиск и устранение неисправностей» → «Дополнительные параметры» → «Восстановление системы». Здесь вы снова увидите список ваших точек и сможете откатиться.

Важный совет: Перед любыми серьёзными экспериментами не поленитесь сделать полный образ системного диска с помощью инструментов вроде Macrium Reflect Free или Veeam Agent. Восстановление из такого образа — самый быстрый и чистый способ вернуть всё как было.

Вопросы, которые возникают у всех

Вопрос: Правда ли, что деблоатинг может «разорвать цепочку обновлений»?
Ответ: Не совсем. Критические обновления безопасности устанавливаются почти всегда. Проблемы возникают с крупными функциональными обновлениями (смена билда, например, с 23H2 на 24H2). Если скрипт удалил системные компоненты, которые новый билд считает обязательными, установка может завершиться ошибкой. Решение — всегда делать откат к чистой точке перед таким обновлением.

Вопрос: Можно ли слепо доверять скриптам с GitHub, у которых много звёзд?

Ответ: Нет. Много звёзд означает, что скрипт популярен, а не что он безопасен или актуален для Windows 11 25H2. Автор мог перестать его поддерживать два года назад. Вы должны читать код, который выполняете. Это аксиома.

Вопрос: Чем опасна команда Get-AppxPackage -AllUsers | Remove-AppxPackage?

Ответ: Это командлет-убийца. Он возьмёт и удалит все UWP-пакеты для всех пользователей, включая критически важные для работы интерфейса, вроде Microsoft.UI.Xaml или Microsoft.Windows.ShellExperienceHost. После этого вы получите нерабочий интерфейс. Всегда удаляйте пакеты выборочно, по списку.

Вопрос: Что делать, если после скрипта пропал звук или Wi-Fi?

Ответ: Скорее всего, была отключена связанная системная служба. Для Wi-Fi это может быть WlanSvc (Служба автонастройки WLAN), для звука — Audiosrv. Нужно через консоль управления службами (services.msc) или PowerShell (Set-Service -Name WlanSvc -StartupType Automatic) вернуть тип запуска в «Автоматически» и перезапустить службу.

Послесловие

Работа со скриптами деблоатинга — это путь от пользователя к архитектору своей системы. Это непростой путь, требующий внимательности, терпения и готовности разбираться в последствиях. Но награда того стоит: вы получаете не просто ОС, а инструмент, который ведёт себя именно так, как вы этого хотите. Меньше шума, меньше отвлечений, больше контроля.

Это не конец, а начало глубокого погружения в настройку Windows. Впереди — тонкая работа с реестром, настройка политик безопасности, построение изолированных сред. Если этот материал был вам полезен и вы хотите видеть больше такого контента — поддержите наш канал. Ваши лайки, подписки и репосты помогают развиваться. Отдельная благодарность тем, кто поддерживает проект ДОНАТАМИ — это позволяет уделять подготовке статей ещё больше времени.

-5

#Windows11 #деблоатинг #PowerShell #скрипты #оптимизацияWindows #Windows25H2 #системноеадминистрирование #ITэнтузиаст #тонкаянастройка #UWP #удалениеприложений #отключениеслужб #конфиденциальность #производительность #гейминг #виртуальныемашины #восстановлениесистемы #точкавосстановления #безопасность #технологии #инструкция #гайд #кастомизация #чистаяWindows #WindowsБезЛишнего #скриптинг #автоматизация #администрирование #ITсоветы #компьютернаяграмотность