Windows 11, 10, etc - Вадим Стеркин
13.4K subscribers
275 photos
4 videos
8 files
1.02K links
Авторский канал. Windows, безопасность, мобильный мир:
• тайное знание
• профессиональный ликбез
• гадание по логам
• срыв покровов
• доставка пруфов

Чат: @winsiders
Блог: outsidethebox.ms
Oбратная связь: @vsterkin
Поддержать ₽: boosty.to/sterkin
Download Telegram
​​▶️ Новое в блоге: sudo и resudo в #PowerShell

Тот случай, когда пост удобнее публиковать в блоге, нежели в канале: http://www.outsidethebox.ms/20532/
😎 PowerToys для #Windows10
https://github.com/microsoft/PowerToys

Недавно мне понадобилось визуально сравнивать отчеты ETL, записанные в Windows Performance Recorder. Конкретнее, нужно было разместить три окна друг над другом во всю ширину экрана. Задача легко решилась с помощью утилиты FancyZones из комплекта PowerToys.

ℹ️ Проект с открытым исходным кодом вдохновлен одноименным набором из 90х, широкую известность которому принес твикер TweakUI, мастхэв в те времена 💪

Сейчас в #PowerToys входят несколько полезных утилит, в том числе:
🔹 PowerRename - GUI для переименования файлов, когда лень делать это с PowerShell
🔹 Image Resizer - то, чего нет и видимо никогда не будет в Фотографиях 🙊
🔹 PowerToys Run - лончер приложений, этакий Win+R на стероидах
🔹 Keyboard Manager - переназначение клавиш
🔹 FancyZones - диспетчер окон
🔹 Color Picker - "пипетка"

Я не могу сказать, что пользуюсь PowerToys регулярно, но время от времени применение утилитам находится. Возможно, они войдут и в ваш арсенал ✌️

👍 - о, что-то новенькое!
👌 - я все это знаю и пользуюсь
- мне это не нужно
▶️ Автоматизация перезапуска устройств с #PowerShell

В чате в очередной раз возник вопрос на тему автоматического перезапуска устройств в проблемных ситуациях, и я привычно кинул ссылку на классический пост про devcon. На что товарищ Piter Pen резонно заметил, что в #Windows10 можно обойтись командлетами встроенного модуля PnPDevice.

Подход такой.
1. Посмотрите список устройств:
Get-PNPDevice

2. Используйте FriendlyName для вывода ИД устройства в удобной форме:
Get-PNPDevice -FriendlyName '*intel*6205*' | fl FriendlyName,InstanceID

3. Задействуйте InstanceID для отключения и включения устройства:
$id = 'PCI\VEN_8086&DEV_0085&SUBSYS_13118086&REV_34\4&CE97950&0&00E1'
Disable-PnpDevice -InstanceId $id -Confirm:$false
Enable-PnpDevice -InstanceId $id -Confirm:$false


4. Сохраните код из п.3 в файл .ps1 и запускайте, например, из планировщика по событию в журнале. Команда: powershell, аргументы: -ExecutionPolicy Bypass -file C:\path\Script.ps1.

См. также Запуск без моргания окон PowerShell.
🎦 О записи экрана в GIF

На днях команда PowerToys в опросе твиттера предложила выбрать две главные утилиты для разработки в 2021 году (прочие фичи в списке будут реализованы). В голосовании за явным преимуществом победила программа для записи экрана в GIF.

👉 С учетом ограниченных ресурсов команды, со стороны это видится спорной затеей при живой и замечательной ScreenToGif (доступна в Магазине), которая тоже с открытым исходным кодом.

Но у разработчиков свое видение, которое они подробно изложили в спецификации. Их утилита будет быстрой, легкой и простой. Последнее как-то слабо сочетается с идеей Power Toys для опытных и требовательных пользователей 🤔

Да, такая утилита очень нужна в #Windows10 из коробки (все-таки Win+Alt+R - совсем другое). Но пилят ее в рамках #PowerToys, которые для меня мало отличаются от стороннего ПО. Разработчики из Microsoft с таким тезисом не согласятся, конечно.

ℹ️ Ключевые сценарии - создание GIF для багов GitHub (принадлежит Microsoft) и видео для обучающих инструкций.

С багами все понятно - видео всегда помогает при слабом текстовом описании. Но если вы хоть раз пытались сделать годную видео-инструкцию, то понимаете, что необходим хороший редактор, позволяющий как минимум убирать лишние фреймы. Однако в утилите планируется минималистичный редактор лишь с функцией обрезки.

Вреда от еще одной утилиты, конечно, нет. И вообще сплошная польза для предпочитающих ПО Microsoft всему остальному даже в ущерб функциональности. Но можно не ждать у моря погоды, а включить в арсенал ScreenToGif уже сейчас. Я пользуюсь, в т.ч. для видео в канале, и вам рекомендую 👍

Завтра продолжение темы полезных утилит, не переключайте каналы!
​​📋 Вставка текста без форматирования

Продолжая разговор о PowerToys, радует, что планируется утилита Paste as plaintext, т.е. вставка текста без форматирования.

Вообще, она должна входить в состав ОС! Годы идут, а мы так и вставляем текст кто в блокнот, кто в адресную строку браузера, кто в Win+R 🙈

Я в какой-то из приступов длительного копирования даже сделал себе ванлайнер на #PowerShell для очистки буфера обмена от форматирования.

powershell -noprofile -executionpolicy Bypass -command Get-Clipboard | Out-String | Set-Clipboard

Код в новый ярлык, на него сочетание клавиш. Но это полумера и тормозной костыль от безысходности в жестко ограниченной корпоративной среде. Решение должно быть в ОС из коробки.

👉 Сторонние же утилиты есть и без #PowerToys, например, PureText (доступна в Магазине), хотя исходный код закрыт. Сторонние менеджеры буфера обмена также могут решить эту задачу, #классика блога про Charu в помощь.

🤔 Я лично знаю несколько человек, которые на Windows принципиально избегают ПО не за авторством Microsoft. Однако движения компании в сторону открытого исходного кода размывают границы, а наличие многих популярных программ в Магазине повышает уровень доверия к ним.

Я подбираю набор ПО, обеспечивающий максимальную эффективность с учетом рабочей среды и соображений безопасности, не забывая при этом про Магазин. И я не считаю, что надо везде мучить себя аскетичным набором программ лишь потому, что кое-где придется страдать без привычных утилит ✌️

📊 А вы какое ПО предпочитаете на Windows? Ввиду многообразия предпочтений, выбирайте наиболее близкий себе вариант.

1️⃣ Стороннее отсутствует / ставлю в редких исключениях
2️⃣ Стороннее не смущает, предпочитаю открытый исходный код всему прочему
3️⃣ Стороннее не смущает, предпочитаю любое бесплатное взломанному
4️⃣ Ставлю любое, лишь бы решало задачу
5️⃣ Моего варианта тут нет

1️⃣ / 2️⃣ / 3️⃣ / 4️⃣ / 5️⃣
📣 Про обсуждение постов канала

TL;DR
Все обсуждения постов ведутся в чате @winsiders, комментариев к постам на постоянной основе не будет. К отдельным постам возможно включение комментариев до конца дня.

Long version
Вплоть до этой недели к каналу был привязан чат @winsiders. Как следствие:
1. Посты канала автоматически перенаправлялись в чат и закреплялись там.
2. В постах была кнопка для обсуждения, ведущая в чат.

ℹ️ На прошлой неделе в Telegram внедрили комментарии. П.1 остался без изменений, а вместо п.2 появилась кнопка для комментариев. Если жать ее из канала, попадаешь в некий обособленный мини-чат для обсуждения поста.

Однако де-факто эти посты являются либо ответом на закрепленный в связанном чате @winsiders пост, либо ответом на такой ответ. И все это отображается в чате.

😡 Такое близорукое решение команды Telegram породило две проблемы:
1. Читатели канала, не являющиеся участниками связанного чата, получили возможность писать в чат. Это неправильно политически, потому что в чате необходимо соблюдать его правила, с которыми предлагается ознакомиться, когда вы присоединяетесь к чату.

2. Даже являющиеся участниками чата читатели канала восприняли наличие комментариев в качестве возможности писать в комментарии к посту сообщения на любые не относящиеся к нему темы.

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

Хорошего решения у этих проблем нет. Можно включать модерацию @Combot различной степени жесткости, побеждая первую проблему. Но для второй кардинальное решение такое, что удаляются все комментарии на пост в канале, в т.ч. ответы в чате на закреп. Это плохо и вообще непонятно комментирующим.

👉 Поэтому мне пришлось отвязать чат от канала.

• Для участников чата ничего не меняется, поскольку я буду перенаправлять посты канала в чат вручную, раз все к этому привыкли.

• У читателей канала теперь нет удобной возможности перейти в чат из постов канала, но в закрепленном посте и описании канала чат @winsiders указан.

Павел Дуров пообещал в скором будущем реализовать возможность связи чата с каналом без включения комментариев. То есть фичу, которую нужно было сделать изначально 🤦‍♂️ Когда она появится, я включу связь чата с каналом обратно.

Спасибо, что читаете мой канал и участвуете в обсуждениях в чате 👍
🔒 В образы Windows 10 и Server 2016/2019 теперь можно интегрировать обновления клиента, движка и сигнатур Защитника Microsoft.

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

👉 В начале октября Microsoft опубликовала новую статью базы знаний KB4568292, в которой вы найдете:
• официальную рекомендацию обновлять образы
• прямые ссылки на актуальные пакеты: 32-bit | 64-bit
• скрипт #PowerShell для интеграции пакета в оффлайн образ

Отдельно сигнатуры можно скачать со страницы https://www.microsoft.com/en-us/wdsi/defenderupdates

Пользуясь случаем, напомню про канал с новыми и обновленными статьями MSKB по #Windows10 ✌️
▶️ 34 видео с PowerShell Conference EU 2020
https://www.youtube.com/playlist?list=PLDCEho7foSooQwf9xWeuY9P6ESfA7bJ5C

Для тех, кто предпочитает смотреть про #PowerShell в оригинале. В ролях Jeffrey Snover, Steve Lee, Adam Driscoll и другие 👌
🔒 Подробная документация по настройке защиты от эксплойтов в #Windows10
https://docs.microsoft.com/windows/security/threat-protection/microsoft-defender-atp/exploit-protection-reference

Защита от эксплойтов - это бывший #EMET, который воткнули в центр безопасности Windows еще в 2017 году. Интерфейс с тех пор не менялся и, откровенно говоря, выглядит инородно. Видимо, идея в том, что ИТ-специалистов это не смутит, поскольку они настраивают скриптами/политиками, а неопытные пользователи туда не полезут :)

Руководство для последней версии EMET 5.5 публиковалось в виде PDF, но для интегрированного решения документация до сих пор не отличалась глубиной.

Недавно Chris Jackson (aka The AppCompat Guy) решил исправить этот пробел и опубликовал более детальное руководство по каждому аспекту защиты. Он также рассказал про защиту от эксплойтов в контексте документа в выпуске подкаста RunAsRadio (EN) ✌️
​​🔍 Новое в блоге: Меню Пуск в #Windows10: отключение запросов к Bing и предложения поискать в интернете

Эта статья родилась из вопроса участника чата @winsiders. Само по себе решение тянуло максимум на маленький пост в канале, ибо легко набингивалось прямо из Пуска :)

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

➡️ Читайте в блоге http://www.outsidethebox.ms/20550/
ℹ️ Подборка ссылок по #Windows10 20H2 для ИТ-специалистов и опытных пользователей

🔷 Что нового в 20H2 для ИТ-специалистов и потребителей (спойлер: нового немного, ибо выпуск стабилизирующий).

🔷 Список известных проблем 20H2. См. также пост о диагностике причин, по которым вам не приходит новая версия в Windows Update.

🔷 Тумблер для включения 20H2 в организациях (вместо полного апгрейда с 20H1). Я разбирал аналогичный сценарий год назад на примере 1903→1909.

🔷 Файл XLSX с групповыми политиками и их значениями в реестре. Microsoft не выкладывала актуальный файл два года, хотя явно продолжала обновлять его (внутри есть расклад по версиям) 🤦‍♂️ История вопроса здесь, там же и ссылки на два удобных веб-сайта с политиками.

🔷 Административные шаблоны (ADMX).

🔷 Security baseline (черновой вариант).
​​⚙️ Новая групповая политика, снимающая блокировку доставки новых версий Windows 10

Надеюсь, вы не слишком устали от информации на тему "почему мне в Windows Update не приходит новая версия Windows 10": раз, два, три. На самом деле есть категория людей, которые желают непременно доставки в WU, не стремясь при этом к обновлению с MCT/ISO. Сегодня их счастливый день :)

По третьей ссылке разбирается диагностика блокировки, которую теперь можно снять политикой Disable safeguards for Feature Updates.

Политика доступна при наличии накопительного обновления, выпущенного в октябре 2020, в #Windows10 1809+ или 1903+ (в зависимости от того, верить ли доками или описанию на картинке). Поскольку политика относится к Windows Update for Business, она вряд ли работает в домашних изданиях.

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v DisableWUfBSafeguards /t REG_DWORD /d 1 /f

Разблокировка позволяет получить новую версию, но не гарантирует успешного обновления. А в случае проблем обновляться как раз лучше с дистрибутива, тем самым исключая WU из уравнения. За помощью с решением проблем при обновлении до новой версии обращайтесь в форум ✌️
📊 Сервис Microsoft Forms для опросов, викторин и т.д. доступен всем желающим.

До сих пор возможность была только у организаций в рамках Microsoft 365. Я пользовался MS Forms пару раз для опросов коллег, и меня все устроило.

Да, я знаю про Google Forms, именно в этом сервисе был опрос о ваших дисках и свободном пространстве на них (итоги в блоге).

Для базовых задач годятся оба сервиса, а нюансы в отличиях я предлагаю вам выявить самостоятельно ✌️
⚙️ Microsoft выпустила обновление, удаляющее Flash Player из #Windows10
https://support.microsoft.com/help/4577586

Flash Player поддерживается до конца 2020 года. Но уже сейчас можно протестировать жизнь без него в 2021. Откатиться можно будет только точкой восстановления или переустановкой ОС.

Обновление доступно для загрузки в каталоге WU http://www.catalog.update.microsoft.com/search.aspx?q=4577586 Во WSUS оно попадет в начале следующего года.
​​ℹ️ О версиях сборок и файлов #Windows10: 20H1 (19041) vs 20H2 (19042)

Я не раз писал в канале о том, что 20H2 доставляется на 20H1 накопительным обновлением, а новую версию включает #тумблер. Это следствие того, что у обоих версий одинаковая кодовая #база.

Да, в winver у 20H1 написано 19041, а у 20H2 - 19042. Но наряду с Win+Pause - это фактически единственное место в системе, где фигурирует 19042. Версии системных файлов - 19041. В чате этот вопрос уже обсуждался пару раз, и сейчас я покажу, как это быстро проверить ванлайнером #PowerShell:

Get-ChildItem c:\windows\system32\*.dll |
ForEach-Object {(Get-Item -Path $_.FullName).VersionInfo.Fileversion}|
Where-Object {$_ -like '*19042*'} | Measure-Object


В 20H2 не найдется ни одной библиотеки с такой версией. Но стоит вам сменить ее в команде на 19041 и... тысячи их! ✌️
​​😎 Пятничная байка о трудностях перевода

В чате инсайдеров время от времени критикуют переводы программных продуктов Microsoft и различных терминов. На мой взгляд, корень проблемы в том, что оригинальные названия зачастую с трудом поддаются адекватному переводу (про Focus Assist я даже в канале писал:). Но бывают и просто ошибки.

Восемь лет назад вышла Windows 8, и очень многих от нее бомбило. Поскольку я писал про эту ОС в блоге, в комментариях каждой записи появлялась мощная кладка кирпичей 🧱🧱🧱 Самый большой кирпич откладывали по поводу отсутствия кнопки Пуск, а дальше уже шли производные. Одной из них была невозможность выключить компьютер привычным способом.

Поэтому я решил написать статью "Знаете ли вы все эти способы выключения компьютера?" с девятью вариантами (ссылка будет в конце, а вы пока посчитайте известные вам). Один из способов описывал меню Win+X, но его пришлось выпилить немедленно после публикации статьи :)

Я тогда работал в русской ОС, потому что аудитория была крайне нетерпима к скриншотам английского UI, а показывать надо было реальную рабочую среду нежели рафинированную ВМ. И в русской версии Win+X был пункт Завершение работы (см. картинку). Я обычно все проверяю, но в данном случае этого не сделал 🙈

В комментариях тут же выяснилось, что пункт ведет в настройки электропитания классической панели управления, а в оригинале называется Power options 🤦‍♂️ Да, у переводчиков не было возможности проверить. Но одноименный пункт все-таки был в панели управления даже в Windows 7, поэтому стоило брать его перевод, а не придумывать новый.

Спустя какое-то время пункт в русской ОС переименовали, а варианты завершения работы добавили уже в Windows 8.1.

Обещанная ссылка на статью http://www.outsidethebox.ms/13744/ ✌️
▶️ О PowerShell, CheckBootSpeed и событии 100

Я никогда не был силен в скриптах, и хотя поглядывал на #PowerShell, дальше нескольких команд не продвигался. Реальный интерес пробудился после доклада Василия Гусева о диагностических пакетах на российской конференции Платформа 2009.

ℹ️ Желающих ускорить загрузку на HDD было примерно столько же, сколько отключавших системную оптимизацию этого процесса :) Мой диагностический пакет CheckBootSpeed, целиком построенный на PowerShell:
- анализировал событие 100 в журнале Microsoft-Windows-Diagnostics-Performance
- собирал основные сведения о системе
- восстанавливал к стандартным параметры SuperFetch, Readyboot и дефрагментатора

В дальнейшем утилита развивалась в сторону сбора сведений о дисках/разделах и журналов дефрага, что помогло в истории с дефрагом SSD.

Утилита и сейчас вполне пригодна и удобна для сбора информации, хотя скорость загрузки #Windows10 уже не волнует 90% читателей. Похоже, не волнует она и Microsoft, потому что начиная с версии 20H2 (в т.ч. Dev) событие 100 перестало создаваться в журнале после загрузки ОС 🤦‍♂️

🐞Наверняка это баг, потому что событие выключения (200) в журнал записывается. Дефект надо бы исправить, поэтому я занес проблему в центр отзывов. Все подробности здесь. Ваш голос важен! ✌️
🌐 Вчера на ноутбуке подключился к локальной ВМ → с нее под VPN на удаленный ПК → с него подключился к локальной ВМ → с нее под VPN к удаленной ВМ → и наконец с нее в Putty подключился к серверу!

А как проходит ваш день на удаленке? :)

👍 - удаленка - это прекрасно!
👎 - хочу в офис!
🤔 - устроило бы совмещение режимов
- эти истории не про меня
​​▶️ Новое в блоге: Как посмотреть дату установки Windows 10 и историю ее обновлений до новой версии

Начиная с осени 2019 года у ответов на эти вопросы появились нюансы, связанные с новым подходом Microsoft к выпуску осенних версий #Windows10.

Сегодня я покажу, как узнать дату первоначальной установки Windows 10 и распутать клубок истории обновлений ОС в новых реалиях.

➡️ http://www.outsidethebox.ms/20587/
​​🙈 Если вам показалась скучной история про событие 100, у меня есть про диспетчер задач :)

В 20H2 и Dev он не показывает влияние программ на автозагрузку. Происходит это потому, что служба Windows Diagnostics Infrastructure не создает XML файлы с измерениями.

ℹ️ Я подробно разбирал механизм в блоге почти 8 лет назад, поэтому лишь добавлю момент, который там не описан. На вкладке Автозагрузка можно отобразить больше столбцов, в т.ч. с раздельными данными по нагрузке на диск и ЦП. Щелкните ПКМ по заголовку любого столбца.

Вообще, очень хорошо, что сломалось еще и в диспетчере задач :) Так намного быстрее заметят и устранят проблему, чем какое-то там событие 100. Тем не менее, призываю вас внести свою лепту и поддержать баг-репорт в центре отзывов 👍

Подробные шаги по воспроизведению на русском языке см. в канале для гиков фидбэка ✌️