Смена часового пояса в Windows Server 2019


В Windows Server 2019 RTM есть есть раздражающий баг: невозможно изменить часовой пояс через GUI остастки — ошибка «Permission denied». Это не работает как в новой оснастке Settings, так и в старой Control Panel.

В новых превью версиях баг исправлен.

Обсуждение https://social.technet.microsoft.com/Forums/en-US/5dd32886-56ec-433c-8168-78d8391dfa29/found-a-bug-already-unable-to-set-time-zone?forum=WinServerPreview

Обходные пути:

tzutil /l
tzutil /s "Select Your Timezone"
Get-TimeZone -ListAvailable
Set-TimeZone -Id "Ekaterinburg Standard Time"

Коротко о Delivery Optimization


Для Windows 10 компания Microsoft создала новый облачный сервис для оптимизации установки обновлений и соответствующую Windows службу Delivery Optimization.

С выходом Windows 10 Enterprise 2019 компании начали массовые миграции на Windows 10, и в корпоративной среде теперь нужно решить, как жить с Delivery Optimization.

Если корпоративные политики разрешают использовать облачные сервисы, то можно оставить настройки по умолчанию, тем более что это работает и с WSUS. Также можно подкрутить режим загрузки. В документации описано несколько доступных режимов https://docs.microsoft.com/en-us/windows/deployment/update/waas-delivery-optimization#download-mode.

Если корпоративные политики запрещают использование облачных сервисов, то включите с помощью политик режим Bypass. В этом случае у вас будет работать BranchCache и BITS. Скорее всего они у вас уже настроены. Есть нюанс: Delivery Optimization работает лучше с Distributed Cache mode, Hosted Cache mode не рекомендуется и тем более не работает с Configuration Manager. Подробности https://docs.microsoft.com/en-us/windows/deployment/update/waas-branchcache.

Почему стоит обратить внимание на открытые проекты


Открытые проекты, которых невообразимое множество на https://github.com, могут быть полезны не только тем, что мы можем получить бесплатное ПО.

  1. Приобретение персонального опыта

Выбрав интересный для вас проект, над которым работают высококлассные профессионалы, вы через некоторое время получите бесценный опыт, который вы не сможете получить нигде больше: ни в учебниках, ни на платных курсах, ни в блогах. Весь этот опыт распылен в дискуссиях (issue discussions), рецензиях на код (code reviews), в самом коде.

Общаясь с профессионалами, вы можете изучить новые технологии, языки, приобрести практические навыки – всё это увеличит вашу профессиональную ценность. Кроме того, работая над интересным проектом с интересными людьми, вы получите удовольствие, что не так уж и мало для счастья.

  1. Получение нужных возможностей в продукте

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

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

Важный нюанс: в открытом проекте вам никто ничего не должен – всё развивается на инициативе таких же людей как вы – объедините свои усилия с ними и получите выгоды от совместной работы.

  1. Получение выгод для бизнеса

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

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

Built-in OverUsed и остальное про лиценции Remote Desktop


Описано подробно в статье.

Собственно Built-in Overused напоминалка, что у вас есть пользователи, которые подключаются к серверам более низкой версии, чем версия установленных лицензий, и возможно вам нужно установить лиценции для серверов более низкой версии, хотя это необязательно.

PowerShell Core 6.1.1


В PowerShell Core 6 были обнаружены проблемы безопасности. В Windows PowerShell тоже, и исправления уже доступны в текущих ежемесячных обновлениях.

Что касается PowerShell Core 6, то его рекомендуется обновить до версии 6.1.1.

Подробности:

https://github.com/PowerShell/PowerShell/issues/8254

https://github.com/PowerShell/PowerShell/issues/8251

О чём это говорит? Хочется думать, что PowerShell Core стал достаточно популярным :-) Хотя по факту одна проблема приехала из Microsoft.PowerShell.Archive, а вторая исторически из Windows PowerShell. Пока инцидентов с новым кодом, созданным в рамках проекта с открытыми кодами, не зафиксировано: предыдущие обновления безопасности происходили из .Net Core.

PowerShell Core 6.1 Preview4


Вышла новая предварительная версия PowerShell 6.1 Preview4.

https://github.com/PowerShell/PowerShell/releases

RTM версия ожидается через несколько недель в августе.

На что стоит обратить внимание?

1. Add support to experimental features
https://github.com/PowerShell/PowerShell/pull/7242

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

2. Add ThreadJob module package and tests
https://github.com/PowerShell/PowerShell/pull/7169

Это ещё одна возможность распараллеливания выполнения скриптов. Рекомендую потестировать и написать отзывы, чтобы в августе получить обновленный вариант в RTM версии.

3. Enable UseShellExecute on all platforms
https://github.com/PowerShell/PowerShell/pull/7198

Теперь на Unix системах Invoke-Item будет работать как на Windows системах и запускать приложения в зависимости от расширения файла. Так Invoke-Item file.txt запустит текстовый редактор.

Остальное смотрите в Release Notes — ссылка выше.

О пользе скобок


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

Так что никогда не ленитесь писать:


if ( a == 1 )
{
   b = 2;
}

вместо опасного:

if ( a == 1 )
   b = 2;

А вы нигде не забыли скобки?