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

Чат: @winsiders
Блог: outsidethebox.ms
Oбратная связь: @vsterkin
Поддержать ₽: boosty.to/sterkin
Download Telegram
⚙️ Новое в блоге: Как удалить последнее накопительное обновление, если Windows 10 не загружается

В Windows 10 1809 появилась возможность удалить последнее накопительное обновление из среды восстановления. Ее добавили без фанфар – я не нашел упоминаний в инсайдерском списке изменений и прочей документации.

Новая функция полезна, но на отдельную статью в блоге она бы не тянула, если бы не терминологические изыски Microsoft (мои подписи на картинке не случайны).

➡️ Читать дальше: https://www.outsidethebox.ms/19622/
🧭 Карта среды восстановления в #Windows10

#Классика блога про Windows RE потихоньку превращается в музей навигации. Там есть карты от Windows 8.1 и Windows 10 времен 1511.

Текущая картинка актуальна для версии 1809 и новее (см. предыдущий пост) при загрузке в среду, размещенную на локальном диске.

Если грузиться с флэшки, порядок плиток другой и нет опции "Параметры загрузки", где вход в безопасный режим и прочее.
✌️
⚙️ Новое в блоге: Как грамотно настроить язык интерфейса Windows 10, магазинных приложений и ввода по умолчанию

Статья призвана ответить на вопрос, который зачастую всплывает в постановке «почему у меня в русском интерфейсе магазинные приложения на английском».

Заодно появляется повод поговорить о движухе в параметрах и "дублировании" настроек.

➡️ Читать дальше: https://www.outsidethebox.ms/19635/
​​⚙️ В конце июня Microsoft начала проталкивать установку Teams владельцам Office 365 ProPlus and Microsoft/Office 365 Business/Business Premium.

Выражается это во внезапном появлении окна Teams с предложением выполнить вход. Адский UX на этом не заканчивается, потому что после удаления приложения оно восстает как Феникс из пепла 🙉

Избавиться от Teams можно двумя способами:
1. При установке или конфигурации Office использовать файл ответов, исключающий приложение из набора: <ExcludeApp ID="Teams" />

2. В appwiz.cpl удалить приложения Teams, а также Machine wide teams installer, чтобы предотвратить повторные установки.
Upd. Этот способ лично мне не помог - в августе Teams протолкнули снова. Тестирую первый способ...

Teams недавно обошло Slack по количеству активных пользователей и продолжает закреплять успех...
​​🧩 Загадка про переключатели в Параметрах

В чате хорошо зашли загадки - вы просили еще. Получите и распишитесь!

Посмотрите на картинку↓ На ней кнопка Изменить открывает маленькое всплывающее окошко с единственным переключателем.

При этом на странице есть такие же переключатели (один показан), доступ к которым предоставлен напрямую.

Нажатие кнопки выглядит лишним действием, не правда ли? Вопросы:
1. Из-за чего так сделано?
2. Почему сделано именно так?

Честно говоря, я не знаю точного ответа на второй вопрос, но у меня есть обоснованное предположение, исходя из ответа на первый ;)

😎 Я специально замазал содержимое страницы, чтобы вы не бежали сразу в интерфейс в поисках подсказок. Впрочем, даже если вы найдете такую страницу в параметрах, далеко не факт, что это приблизит вас к разгадке.

Свои варианты решения доставляйте в чат. Ответы я опубликую в канале, конечно.
✌️
​​🧩 Решение загадки про переключатели в Параметрах

Первый вопрос был "Из-за чего так сделано?" Ответ: из-за контроля учетных записей!

Если найти страницу, об этом можно легко догадаться, если у вас установлен верхний уровень контроля. Он призван всегда уведомлять, в т.ч. при изменении параметров Windows. В этом случае появляется запрос #UAC.

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

🔒 Напомню, что в Windows Vista в панели управления приходилось одобрять все запросы, а в Windows 7 появились ссылки со щитом для автоматического повышения прав администратору (#классика блога Так ли страшен UAC? раскрывала этот аспект).

В параметрах Windows 8.х и #Windows10 на кнопках и ссылках нет щита, поэтому невозможно сказать заранее, понадобятся ли полные права для изменения той или иной настройки.

Более того, в данном случае у пользователя с обычными правами кнопка неактивна↓ Однако единства в этом вопросе нет. Так, на странице "Активация" при попытке изменить ключ продукта появляется запрос UAC, а на странице "О системе" кнопка переименования ПК отсутствует напрочь 🙉

Второй вопрос был "Почему сделано именно так?" Как я сказал, точный ответ мне неизвестен (например, в руководстве по дизайну UWP его нет).

Я полагаю, что вывод запросов UAC для переключателей не предусмотрен. Наверное, такое решение обусловлено философией UX, поскольку у переключателя нет промежуточного состояния для ожидания одобрения.
✌️
​​▶️ В форум пришел человек с проблемой - установленная из магазина игра занимает много места на диске, но удалить ее невозможно. Мол, в списке "Приложения и возможности" игры нет, а командлет #PowerShell Get-AppxPackage молчит.

На самом деле командлет надо спрашивать правильно. У него есть параметр -AllUsers, выводящий сведения о наличии пакетов у всех пользователей. И действительно, у автора вопроса игра скрывалась в одной из 6 учетных записей.

На примере Яндекс.Музыки поиск и удаление пакета выглядит так.

Get-AppxPackage -AllUsers | ? Name -Like *yandex.music* | Remove-AppxPackage -AllUsers -WhatIf

У командлета Remove-AppxPackage параметр -AllUsers работает в #Windows10 1803+, а в более старых версиях надо входить в конкретную учетную запись.

На картинке видно, что без этого параметра удаление происходит только в текущей учетной записи, а в учетной записи User пакет остается.

Это не новость, конечно, а матчасть. #Классика блога про удаление магазинных приложений описывает этот подход. Разве что удаляется все оптом, включая входящие в поставку и подготовленные к установке всем пользователям приложения.
⚙️ В интернетах бытует мнение, что файл подкачки (ФП) не нужен, если в системе установлено N GB RAM. В зависимости от фантазии и свежести утверждения, N принимает значение от 8 до 64.

Моя любимая ссылка в ответ - (решено) Out of memory, но свободной памяти ещё много.

Там как раз товарища с 64GB оперативной памяти и ФП в 256MB мы дружно уговариваем включить размер ФП по выбору системы. В итоге он разобрался сам ©

Ссылки по теме:
• Руссинович: Преодолевая ограничения Windows: виртуальная память (RU | EN)
• MSKB: Определение размера файла подкачки для 64-разрядных версий Windows

В статье KB есть полезная таблица стандартных размеров ФП в разных версиях Windows.
▶️ Сразу два человека доставили мне насчет #PowerShell касательно прошлого поста об удалении магазинных приложений.

Проничкин справедливо назвал тарабарщиной конструкцию на втором этапе конвейера
Get-AppxPackage -AllUsers | ? Name -Like *yandex.music*

Действительно, это упрощенный синтаксис новых версий PowerShell, а по классическим канонам это выглядит так
Get-AppxPackage -AllUsers | Where-Object {$_.Name -like '*yandex.music*'}

Гусев не менее справедливо заметил, что здесь это вообще не нужно :) Большинство командлетов Get- умеют фильтровать по имени.
Get-AppxPackage -AllUsers -Name *yandex.music*

А командлетов таких немало:
Get-Command -Name *get* -CommandType Cmdlet
✌️
​​🌐 Букмарклет для создания не зависящих от языка ссылок на ресурсы Microsoft

Когда вы открываете статью базы знаний или документации Microsoft, к ссылке добавляется идентификатор языка типа en-us или ru-ru. Он зависит от языка браузера, который может наследоваться из языковых настроек ОС.

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

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

В какой-то момент меня утомило вырезать en-us руками и я сделал простенький букмарклет. Добавьте любой сайт на панель закладок и в свойствах закладки замените ссылку (URL) на код ниже.
javascript:void(prompt("URL:", window.location.toString().replace('/en-us','')))

При желании идею можно развить под другие ресурсы, в т.ч. с помощью регулярных выражений.

В идеале хотелось бы сразу копировать полученную ссылку в буфер обмена, но я рабочего способа не нашел. Если знаете его, поделитесь в чате!

Upd. В чате предложили пару вариантов, этот сработал 👍

#bookmarklet
​​🧹 На этой неделе в топах Пикабу и Хабра была статья про тяжелую жизнь с ноутбуком, где Windows 10 установлена на диск объемом 32GB.

И как по заказу, в чат прилетел вопрос от девушки-линуксоида, которая взялась разобраться с полным отсутствием свободного места на чьем-то аналогичном устройстве с домашним изданием #Windows10 1511 🙉

Мы долго учились вводить в терминал команды dism и dir и показывать их результаты не словами, а фотографиями целиком. Но после всех очисток, сжатий и отключений гибернаций высвободили только 1GB.

Все оказалось намного прозаичнее, как только в дело вступила утилита dfp 👍

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

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

В общем, если поднапрячься, можно было высвободить десяток гигабайт. Но кмк автор вопроса уже очень хотела обратно в уютный линукс, поэтому удалением файлов обновления все и ограничилось.
✌️
​​🗒 Начиная со сборки #Windows10 18963 (20H1) блокнот обновляется через магазин. Одновременно это означает, что его можно удалить как и любое приложение из магазина.

Так что теперь, удаляя все магазинные приложения оптом с помощью #PowerShell, можно лишиться не только калькулятора, но и блокнота.

Чтобы сохранить желаемые приложения, их нужно явно перечислить при выборе объектов, а остальное пойдет под нож. В записи блога я добавил пример, в котором сохраняются магазин, калькулятор и блокнот.
✌️
📊 У вас отключена или контролируется вручную установка обновлений на основном личном устройстве с Windows 10?
anonymous poll

Нет, и мне это не нужно – 611
👍👍👍👍👍👍👍 63%

Ставлю вручную раз в месяц – 137
👍👍 14%

Моего варианта тут нет – 70
👍 7%

Ставлю вручную реже раза в месяц – 59
👍 6%

Отключена, не устанавливаю – 48
👍 5%

Нет, но лишь потому что попытки не удались – 32
▫️ 3%

Нет, попыток не было, но очень хочу – 17
▫️ 2%

👥 974 people voted so far. Poll closed.
​​⚙️ В сборке #Windows10 18965 (20H1) сделали отдельную настройку для автоматического перезапуска приложений после перезагрузки.

Напомню, что изначально ее вообще не было, но по отзывам инсайдеров контроль прилепили к автоматическому входу после установки обновлений. Теперь отзывами добились и отдельной настройки.

В результате на картинке ниже:
1. Перезапуск приложений после перезагрузки.

2. Автоматический вход в систему при перезагрузке после установки обновлений с немедленной блокировкой.
И да, именно включение этой опции связано с сообщением "Похоже, кто-то другой все еще использует этот компьютер...", когда вы выключаете или перезагружаете ПК с экрана входа в систему, даже если вы не создавали других учетных записей.
​​🔒 В Microsoft Authenticator для Android завезли облачный бэкап (в iOS он был относительно давно)

Это - очень ценная фича в случае покупки нового смартфона или полного сброса старого (и чем больше у вас сервисов с двухфакторной аутентификацией, тем она ценнее :)

Сам я давно пользуюсь Яндекс.Ключ, в первую очередь из-за бэкапа, а во вторую - потому что Яндекс изобрел для своей 2FA велосипед, несовместимый с другими приложениями.

Microsoft Auth у меня только для беспарольного входа в MSA. И не факт, что я побегу переезжать на него, ибо это займет время - у меня #2FA включена везде, где она есть.

Кстати, в этом году появились данные от Google и Microsoft, утверждающие фактически 100% эффективность 2FA против автоматизированных атак на аккаунт. Причем в исследовании Google рассматривался вариант с отправкой SMS на телефон нежели генерацией кода на устройстве.

Компания также раскрыла тему эффективности 2FA против целевых атак. В случае с отправкой SMS на телефон она составляет 66%, а при использовании запросов на устройстве (aka Google Prompt) - 90%.

2FA значительно укрепляет #безопасность ваших учетных записей. Если вы еще не используете ее, включите хотя бы на ключевых аккаунтах уже сейчас. #классика блога на тему 2FA и различных способах ее реализации:
А вы защищаете свои аккаунты двухфакторной или двухэтапной аутентификацией?
Двухфакторная аутентификация без SMS, одноразовых кодов и паролей
​​ℹ️ ️Microsoft выпустила интересное обновление для #Windows10
https://support.microsoft.com/help/4023057

Оно нацелено на предотвращение проблем в процессе установки обновлений в потребительских изданиях, т.е. Pro и ниже в классификации Microsoft.

Одно из направлений - борьба с недостатком свободного пространства. Тут предлагается комплекс из старых-новых мер, которые могут применяться (т.е. не факт, что будут). Мое внимание привлекли два момента.

1. Отображение в cleanmgr папки "Загрузки". Это появилось в 1809, а в 1903 добавили предупреждение. Однако статья применима ко всем версиям начиная с 1507 (хотя поддержка 1709 уже закончилась, а у 1803 завершится в ноябре).

Поэтому не исключено, что в 1803 фичу добавят задним числом (примеры есть, в том же cleanmgr).

2. Автоматическое сжатие NTFS для пользовательских файлов, результатом чего будут синие стрелки на значках. Это неизбежно вызывает вопросы у пользователей. Объяснение стрелок легко нагугливается, но не причина внезапного сжатия.

В конце статьи сказано, что обновление заменяет KB4022868 для 1507 и 1511. Но там подробностей не было, так что трудно сказать, что здесь нового, что было между этими версиями и текущими...

Но спасибо и на этом :)
​​⚙️ В сборке #Windows10 18970 (20H1) появилась возможность вернуть ПК к исходному состоянию с помощью облачной загрузки дистрибутива.

Сейчас сброс Windows 10 выполняется путем создания системы для отката из текущей установки ОС (берутся файлы старше 30 дней). Историю вопроса и подробности работы технологии раскрывает #классика блога Как восстановить Windows 10 к исходному состоянию, и почему для этого больше не нужен install.wim.

В 20H1 добавили альтернативный способ - загрузку дистрибутива из облака. Это работает при сбросе из Параметров или среды восстановления (на картинке). Во втором случае, очевидно, в RE должны быть драйверы сетевой карты.

В любом случае при сбросе сохраняются только личные файлы, а программы удаляются. Поэтому имеет смысл чинить загрузку в ОС, а дальше при необходимости переустанавливать поверх, сохраняя программы.
​​⚙️ Новое в блоге: FAQ | Зарезервированное пространство (Reserved Storage) в Windows 10

В #Windows10 1903 появилась новая технология – зарезервированное пространство. В новостях это нередко подавалось под соусом “Windows 10 украдет у пользователей 7GB”.

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

➡️ Читать в блоге: https://www.outsidethebox.ms/19657/

P.S. Не забудьте пройти важный опрос 📊
▶️ Прекращение разбора строки в PowerShell

При выполнении в #PowerShell сторонних команд и утилит может возникнуть ситуация, когда их аргументы неверно интерпретируются из-за различных символов в командах. Популярный пример в форумах - синтаксис bcdedit.

Неопытный пользователь хочеть запустить командную строку, но оказывается в PowerShell, потому что она заменяет CMD в оболочке, например, в меню Файл проводника или Win+X (да, в Win+X можно переопределить, но речь не об этом).

Дальше выполняется какая-нибудь команда с фигурными скобками {}, которая получает отлуп.

bcdedit /set {current} description "Windows 10"
The set command specified is not valid.
Run "bcdedit /?" for command line assistance.
The parameter is incorrect.

Во избежание таких ситуаций можно прекратить разбор строки в нужном месте вплоть до следущего элемента конвейера или новой строки. Зачастую это намного проще, чем экранировать все проблемные символы в строке.

Для этого в PowerShell 3.0+ есть символ --%. Продолжая пример выше:
bcdedit --% /set {current} description "Windows 10"
The operation completed successfully.

Подробности см. в man about_parsing
Это был привет от Василия Гусева ✌️
... и какие данные давать всем читателям канала @beardycast (и моего теперь) 😂
В сборке #Windows10 18985 (20H1) вернули необязательные обновления. Для их просмотра в параметрах в разделе Windows Update сделали специальную страницу.

Фактически, речь о новых версиях драйверов. В блоге утверждается, что теперь отпадает необходимость искать драйверы в диспетчере устройств.

Очевидно, это означает, что достаточно проверить обновления в параметрах, чтобы получить обновления сразу для всех устройств 👌

Наверное, оно когда-то так и работало. Но думаю, что многие все равно выполняли поиск из диспетчера в случае проблем с устройством.

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

На практике особой разницы нет - пример был в канале. Причем совсем недавно приключилась копия этой истории (привет, Хартля ;)

Так или иначе, стало больше контроля над установкой обновлений. И это надо приветствовать 👍