TGViewer
Channel Public Channel
WindowsITPro - winitpro.ru

WindowsITPro - winitpro.ru

@winitpro_ru

Канал сайта winitpro.ru для системных администраторов. Настройка и оптимизация Windows, Active Directory, GPO, Exchange, PowerShell, Linux. Виртуализация Hyper-V, VMware, Proxmox.
Чат: @winitpro_chat
Контакт: @DmitriyKB
Subscribers
9.31K
Photos
560
Videos
0
Links
880
Recent Posts 18 shown
Post #1168 2.61K
📚Новая статья: Используем легкую утилиту Simplewall для тотального контроля сетевой активности приложений в Windows

🧱 Если вы хотите досконально контролировать, какие приложения и службы Windows выходят в сеть с вашего компьютера, вместо встроенного брандмауэра Windows Firewall можно использовать Simplewall, бесплатную open-source утилиту, которая, как и Windows Firewall, является управляющей надстройкой над встроенным набором служб фильтрации трафика Windows Filtering Platform (WFP).

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

Например, можно:
✅ Полностью запретить приложению доступ в сеть или разрешить только определенные подключения по отдельным портам/адресам.
✅ Ограничить браузер протоколом HTTPS (TCP 443).
✅ Блокировать телеметрию Windows и доступ к Windows Update.
✅ Просматривать активные соединения, IP-адреса, хосты, порты и протоколы.
✅ Экспортировать правила и переносить конфигурацию на другие компьютеры.

Установка через Winget:
winget install Henry++.simplewall

По умолчанию, при включении фильтрации любые подключения блокируются, пока для них не будет задано разрешающее правило. Когда любое приложение или служба пытается подключиться к внешнему ресурсу, simplewall обнаруживает эту активность и выводит всплывающее уведомление о наличии сетевой активности. Вы решаете, разрешить или запретить это подключение, или можете создать кастомное правило для приложения/адреса/порта/протокола.
⚠️ Правила Simplewall применяются через WFP и продолжают работать, даже когда сама программа закрыта. При этом правила встроенного Windows DefenderFirewall автоматически в Simplewall не переносятся.

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

✅ Как ограничить сетевую активность приложений в Windows с помощью Simplewall
  • 👍 65
  • 👎 3
Post #1167 4.44K
🔑 Пользователи, работающие удаленно с ресурсами в корпоративной сети через RDP/RDS сервера, могут столкнуться со сложностями, когда нужно выполнить такую простую операцию, как смена пароля для своего аккаунта.

⚠️ Дело в том, что нажатие стандартного сочетания клавиш CTRL + ALT + DEL в RDP сессии откроет окно Безопасности Windows (с которого можно сменить пароль) не удаленного, а локального компьютера (на котором работает пользователь).
🛠 Есть несколько способов, которые позволят сменить пароль в RDP сессии:

✅Использовать сочетание CTRL+ALT+END. Эта комбинация клавиш является аналогом CTRL + ALT + DEL, но работает только в окне RDP подключения.

✅Если вы подключены к RDP хосту через несколько промежуточных RDP сессий, сочетание CTRL+ALT+END работать не будет. Нажатие этой комбинации будет перехвачено первым RDP сеансом (окном). В этом случае сменить пароль в конечном RDP окне можно с помощью экранной клавиатуры. Запустите osk.exe (On-Screen Keyboard), зажмите CTRL+ALT на физической клавиатуре, а затем щелкните по кнопке Del на экранной клавиатуре. Это выведет окно Windows Security.

✅Чтобы сделать смену пароля более удобной для терминальных пользователей, можно создать на рабочем столе в Public профиля ярлык для вызова скрипта смены пароля.

🔹Это может быть shell – команда:
explorer.exe shell:::{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}

🔹Файл с VBS скриптом:
Set objShell = CreateObject("Shell.Application")
objShell.WindowsSecurity

🔹Или PowerShell команда:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noprofile -nologo -noninteractive -command "(new-object -ComObject shell.application).WindowsSecurity()" 

Как поменять пароль своей учетной записи из RDP сессии
  • 👍 112
Post #1165 5.25K
📚 Настраиваем Rclone в Windows для автоматизации резервного копирования/синхронизации в Яндекс Диск или другие облачные хранилища

☁️ С 3 июня 2026 года Яндекс отключил бесплатную синхронизацию файлов в десктопном клиенте Яндекс Диска. В результате для бесплатного аккаунта уже нельзя использовать привычный GUI клиент для автоматического фоновой синхронизации между папками в   Windows и облаком.

В качестве альтернативы для части сценариев можно использовать консольную утилиту Rclone (которую называют rsync для облака). Rclone поддерживает Яндекс Диск (и множество других облачных хранилищ) и позволяет автоматизировать синхронизацию папок с компьютера в облако с помощью скриптов.

Установка Rclone:
winget install Rclone.Rclone

Запуск интерактивного консольного мастера настройки подключения к Yandex Disk:
rclone config

Например, для одностороннего копирования папки:
rclone copy "C:\Backup" ydisk:Backup --progress

Для полноценного зеркалирования папки:
rclone sync "C:\Backup" ydisk:Backup --progress

⚠️ Но с sync нужно быть осторожным: если вы удалите файл в исходном каталоге, после синхронизации он буде удален и в облаке. Поэтому, если кроме синхронизации, вы хотите использовать облачное хранилище в качестве резервной копии, лучше использовать опцию --backup-dir, которая позволит автоматически перемещать в архив версии файлов, которые были изменены или удалены.


В отличии от официальных облачных клиентов различных платформ, Rclone не висит в трее, не отъедает память, более универсален (вы с минимум проблем сможете переехать с одного облачного хранилища на другое) и отлично подходит для задач скриптования.

В каких еще сценариях можно использовать rclone:
🔹 Автоматический бэкап в облако простыми скриптами
🔹 Монтирование облачного хранилища как обычного сетевого диска (потребуется дополнительно установить WinFSP)
🔹 Удобный перенос данных (миграции) с одного облачного провайдера в другой
🔹 Встроенная возможность прозрачно шифровать данные перед отправкой в облако (rclone crypt)
 
📚 В статье разбираем установку и настройку Rclone в Windows, подключение облачного хранилища, команды для копирования и синхронизации, автоматический запуск резервного копирования и шифрование данных. Также рассмотрен пример простого PowerShell скрипта, который:
🔹 синхронизирует несколько выбранных папок с Яндекс Диском
🔹 сохраняет удаленные и измененные файлы в архив
🔹 автоматически удаляет старые версии
🔹 запускается по нужному расписанию через Task Scheduler.

✅ Используем консольный Rclone в Windows для резервного копирования/синхронизации в облако
  • 👍 59
Post #1163 4.59K
📚 MeshCentral - сервер для удаленного управления компьютерами и оказания ИТ-поддержки, как self-hosted альтернатива TeamViewer / AnyDesk

🛠 Если требуется организовать удаленный доступ к компьютерам пользователей, но не хочется передавать управление через сторонние облачные сервисы вроде TeamViewer или AnyDesk, можно развернуть собственный сервер MeshCentral.

MeshCentral – это бесплатный open-source продукт, позволяющий достаточно быстро и просто развернуть собственный сервер для организации удаленной ИТ поддержки внутренних пользователей, или внешний заказчиков/подрядчиков, в том числе находящихся за NAT или огороженных файерволами. Удаленный доступ и управление выполняется через браузер, без чужих облаков и проприетарного софта. На клиентском устройстве должен быть запущен агент MeshCentral, настроенный на ваш сервер. Агент можно запустить как разово для оказания однократного сеанса поддержки, так и в виде фоновой службы. Сервер можно развернуть на слабом VPS или внутреннем сервере организации, а легкие агенты доступны для Windows, Linux, macOS и Android.

MeshCentralпозволяет :

🔹 удаленно подключаться к рабочему столу пользователя
🔹 открывать CMD/терминал, в том числе с правами SYSTEM
🔹 получить доступ к файлам и реестру удаленного компьютера
🔹 получать инвентаризацию и сведения о компьютере
🔹 управлять службами, выключать, перезагружать, будить ПК
🔹организовать многопользовательский доступ с разграничением прав и логированием подключений
🔹включить двухфакторную 2FA в виде кодов TOTP через любое приложение-аутентификатор

В статье показано практическое развертывание MeshCentral на Debian VPS: установка Node.js, и MeshCentral через NPM, запуск через systemd, публикация через Nginx с Let's Encrypt и установка Mesh Agent на Windows и Linux.


✅ Установка и настройка open-source платформы удаленного управления компьютерами MeshCentral
  • 👍 79
Post #1161 4.29K
🖴 При активном использовании Windows Subsystem for Linux (WSL2), файл виртуального диска дистрибутива Linux (ext4.vhdx) может вырасти до десятков гигабайт. При этом, удаление файлов внутри Linux дистрибутива не приводит к автоматическому уменьшению размера VHDX файла на файловой системе в Windows. Динамические VHDX-файлы могут увеличивать свой размер по мере записи в них новых данных, но такие не умеют сжиматься автоматически после удалении данных внутри них.  

⚠️ То есть может быть ситуация, когда файл ext4.vhdx на системном диске Windows занимает 50 ГБ, хотя внутри WSL фактически используется всего 3 Гб. Такие VHDX файлы можно сжать в оффлайне режиме вручную.

📌 Проверить фактически занятое место внутри WSL можно командой:
df -h /
Чтобы найти путь к VHDX файлу вашего дистрибутива WSL, сначала выведите список всех установленных WSL:
wsl.exe --list --verbose
Затем извлеките информацию о виртуальном диске указанного WSL образа из реестра:
$distro='Ubuntu-24.04'
$vhdx=(Get-ChildItem -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | Where-Object { $_.GetValue("DistributionName") -eq $distro}).GetValue("BasePath") + "\ext4.vhdx"
Останавливаем запущенный образ:
wsl --shutdown
Сжимаем VHDX командой PowerShell:
Optimize-VHD -Path "C:\...\ext4.vhdx" -Mode Full
Или с помощью diskpart:
select vdisk file="C:\...\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk

Аналогичным образом можно сжать VHDX файл Docker Desktop после удаления неиспользуемых образов и контейнеров:
Optimize-VHD -Path "$env:LOCALAPPDATA\Docker\wsl\disk\docker_data.vhdx" -Mode Full

📚 В статье разбираем, где хранятся VHDX диски WSL и Docker Desktop, как определить фактическое использование места, очистить данные и уменьшить размер виртуального диска через Optimize-VHD или diskpart. Также рассмотрен экспериментальный sparse-режим WSL2, который позволяет автоматически возвращать свободное место хостовой системе.

Как сжать виртуальный диск WSL2 или Docker Desktop в Windows?
  • 👍 57
Post #1156 7.32K
⚠️ Вышедшие в сентябре 2026 обновления для Microsoft Excel могут сломать базовый функционал копирования и вставки, автозаполнения протягиванием или перетаскиванием ячеек, а также приводит к невозможности скопировать листы в пределах одной книги Excel. Проблеме подвержены как классические MSI версии Microsoft Excel (2016 и 2019), так и Click-to-Run (C2R) версии Excel 2019,2021 и 2024.

В MSI версиях Microsoft Excel 2016 проблема появляется после установки обновления безопасности KB5002914 (от 8 сентября 2026). Официального исправления пока нет, поэтому для восстановления работоспособности пока помогает только удаление этого обновления;
wusa /uninstall /kb:5002914 /quiet /norestart
Или командой:
msiexec.exe /package Product_GUID /uninstall Update_GUID /qn
Например, Product_GUI
Office 2016 Professional x64 - {90160000-0011-0000-1000-0000000FF1CE}
Office 2016 Professional x86 - {90160000-0011-0000-0000-0000000FF1CE}
Office 2016 Standard x64 - {90160000-0012-0000-1000-0000000FF1CE}

Update_GUID
-{27882596-A8ED-4382-9C71-6CD2DD19F732}

Целиком строку удаления (uninstallstring) установленного обновления Office можно извлечь из реестра:
Get-ItemProperty `
"HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*" ,
"HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" `
-ErrorAction SilentlyContinue |
Where-Object { $_.DisplayName -like "*KB5002914*" } |
Select-Object DisplayName, UninstallString


В Click-to-Run версиях Office нельзя удалить KB5002914 как отдельный патч в MSI версиях. В Office C2R для отката к предыдущей версии используется команда officec2rclient.exe.

Сначала, чтобы обновление не приехало опять, временно блокируем обновление версии в C2R из интерфейса приложения File -> Account -> Update Options -> Disable Updates или так:
reg add "HKLM\SOFTWARE\Policies\Microsoft\office\16.0\common\officeupdate" /v "EnableAutomaticUpdates" /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Policies\Microsoft\office\16.0\common\officeupdate" /v "HideEnableDisableUpdates" /t REG_DWORD /d 1 /f
reg add "HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" /v "UpdatesEnabled" /t REG_SZ /d "False" /f

Для удаления обновления используется команда:
officec2rclient.exe /update user updatetoversion=<build number> (список номеров билдов можно посмотреть на сайте Microsoft в разделе update history продукта).
Например, "C:\Program Files\Common Files\microsoft shared\ClickToRun\officec2rclient.exe" /update user displaylevel=true updatetoversion=16.0.14334.20848
После того, как Microsoft отзовет обновление или выпустит патч, нужно включить получение обновлений.
reg delete "HKLM\SOFTWARE\Policies\Microsoft\office\16.0\common\officeupdate" /v "EnableAutomaticUpdates" /f 
reg delete "HKLM\SOFTWARE\Policies\Microsoft\office\16.0\common\officeupdate" /v "HideEnableDisableUpdates” /f
reg add "HKLM\SOFTWARE\Microsoft\Office\ClickToRun\Configuration” /v "UpdatesEnabled" /t REG_SZ /d "True" /f

 
✅ Как отменить (откатить) обновление Microsoft Office
  • 👍 78
Post #1155 5.61K
📚 Архив сайта: Команды DISM /Cleanup-Image /RestoreHealth и SFC: Проверка и восстановление системных файлов и хранилища компонентов Windows
 
DISM и SFC - две штатные утилиты для исправления множества проблем с системными файлами Windows, если что-то сломалось или работает не так.

⚠️ Порядок команд здесь важен: сначала проверяем и при необходимости восстанавливаем хранилище компонентов с помощью DISM, а затем запускаем SFC, который использует хранилище компонентов в качестве источника оригинальных файлов. Если хранилище повреждено, SFC может не найти исправные копии системных файлов для восстановления.


Проверить состояние хранилища компонентов:
DISM /Online /Cleanup-Image /ScanHealth
Восстановить его:
DISM /Online /Cleanup-Image /RestoreHealth
По умолчанию DISM использует Windows Update как источник необходимых файлов (требуется подключение к интернету). Если Windows Update не доступен, в качестве источника оригинальных файлов для восстановления можно указать установочный образ install.wim/install.esd с соответствующей версией Windows:
DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:D:\sources\install.wim:6 /LimitAccess

После восстановления хранилища компонентов запускаем проверку системных файлов:
sfc /scannow

SFC проверяет защищенные системные файлы и при необходимости заменяет поврежденные или отсутствующие файлы эталонными копиями из хранилища компонентов.

✅ В статье подробно разбираем использование DISM и SFC, проверку и восстановление хранилища компонентов, восстановление Windows из локального WIM/ESD-образа и сценарии оффлайн восстановления.

Команды DISM и SFC: проверка и восстановление системных файлов Windows 11 и 10
  • 👍 88
Post #1153 6.63K
🌐 MikroTik RouterOS можно использовать не только на физических роутерах, но и на виртуальных машинах. Для этого MikroTik предлагает специальную версию Cloud Hosted Router (CHR), оптимизированную для x64 архитектуры и работы в виртуальной среде.

Такая ВМ может пригодиться для тестовых стендов и homelab, если вы хотите поэкспериментировать с RouterOS, VLAN, маршрутизацией, NAT, firewall, VPN и другими сетевыми настройками, не затрагивая рабочую инфраструктуру. Бесплатной лицензия (Free tier) ограничивает скорость каждого интерфейса до 1 Мб/с, что конечно недостаточно для сколь нибудь продуктивных задач, но как тестовый стенд – вполне себе. С минимальной P1 лицензий за 45$ (ограничение 1 Гбит/с на интерфейс) можно уже строить реальные сценарии с полноценным облачным роутером на MikroTik.

✅ В статье мы рассмотрели установку MikroTik CHR на виртуальную машину и базовую настройку виртуального роутера в качестве шлюза между LAN и Интернетом. Для примера используется хост с Proxmox с двумя физическими сетевыми интерфейсами (по аналогии можно использовать любой другой гипервизор), а настройка MikroTik выполняется через CLI.

📚 Установка MikroTik RouterOS (CHR) в виртуальную машину Proxmox
  • 👍 47
  • 👎 6
Post #1151 7.44K
⚠️ Бывает, что после установки очередного обновления Windows некоторые программы или какой-то функционал ОС перестают работать корректно или выдают ошибки. В этой случае для быстрого исправления проблемы нужно удалить проблемное обновление. После этого, чтобы предотвратить его автоматическую установку при следующем цикле сканирования нужно либо временно поставить установку обновлений на паузу (до 35 дней), либо запретить повторную установку только одного обновления, скрыв его.

✅ Ранее Microsoft предлагала использовать специальную графическую утилиту wushowhide.diagcab, которая позволяет скрыть (или отменить скрытие) определенного обновления от локальной службы Windows Update. Страница KB3073930 на данный момент удалена с сайта microsoft.com, но пока ещё можно загрузить файл по прямой ссылке wushowhide.diagcab

✅ Также для скрытия обновлений можно использовать PowerShell модуль PSWindowsUpdate:
Вывести доступные обновления:
Get-WindowsUpdate


Скрыть обновление по KB ID:
Hide-WindowsUpdate -KBArticleID KB5048652 

Если нужно скрыть обновление драйвера (у которых в Windows Update нет привычных номеров KB), нужно получить его ID:
$Updates = Get-WindowsUpdate -WindowsUpdate -UpdateType Driver
$Updates | Select Title,Description -Expand Identity

Затем скрыть обновление драйвера по его ID:
Hide-WindowsUpdate -UpdateID "3f6ba9a7-b031-4990-808f-69a9e1ef6a91" 


Как скрыть (заблокировать установку) отдельные обновлений в Windows
  • 👍 78
Post #1149 6.62K
⌨️Встроенный в Windows компонент Keyboard Filter позволяет администратору запретить использование определенных сочетаний клавиш. Это может пригодиться на киосках, операторских рабочих станциях, терминалах и других компьютерах с ограниченным пользовательским интерфейсом.

Например, можно заблокировать как стандартные сочетаний Alt+Tab, Alt+F4, Ctrl+Alt+Del, Ctrl+Shift+Esc, Ctrl+C/Ctrl+V , так и произвольные комбинации клавиш или отдельные символы.
Компонент устанавливается командой:
Enable-WindowsOptionalFeature -Online -FeatureName Client-KeyboardFilter

В ветке реестра HKLM\SOFTWARE\Microsoft\Windows Embedded\KeyboardFilter уже есть список предопределенных (стандартных) сочетаний клавиш Windows. Чтобы заблокировать одно из них, достаточно изменить значение соответствующего параметра на Blocked. Например, чтобы запретить Alt+F4:
reg add "HKLM\SOFTWARE\Microsoft\Windows Embedded\KeyboardFilter" /v "Alt+F4" /t REG_SZ /d "Blocked" /f

Произвольное сочетание можно добавить в CustomFilters:
reg add "HKLM\SOFTWARE\Microsoft\Windows Embedded\KeyboardFilter\CustomFilters" /v "Ctrl+C" /t REG_SZ /d "Blocked" /f

Отдельную клавишу можно заблокировать по ее сканкоду. Например, левую клавишу Win:
reg add "HKLM\SOFTWARE\Microsoft\Windows Embedded\KeyboardFilter\CustomScancodes" /v "E05B" /t REG_SZ /d "Blocked" /f


📚 В статье также показано, как создавать собственные фильтры для отдельных клавиш и комбинаций, блокировать клавиши по scan code и проверять активные политики через Event Viewer и PowerShell.

⚠️ Ложка дегтя - Keyboard Filter поддерживается только в редакциях Enterprise, Education, IoT Enterprise и LTSC. В RDP-сессиях фильтр не работает.

Как запретить некоторые сочетания клавиш в Windows с Keyboard Filter
  • 👍 78
Post #1147 6.2K
📝 В сложных PowerShell/BAT-скриптах помимо текстового логирования часто имеет смысл записывать ключевые события непосредственно в Windows Event Log. Собственные события Event Viewer можно использовать для мониторинга, запуска задач по триггеру в Task Scheduler или централизованного сбора журналов.
  
Для записи событий в Windows Event Log можно использовать встроенный PowerShell командлет Write-EventLog.

🔹 Чтобы записать простое событие в стандартный журнал Application, выполните:
Write-EventLog -LogName Application -Source "Application" -EntryType Information -EventID 1001 -Message "DB backup script completed successfully"
 

🔹 Можно создать отдельный кастомный источник для более удобной фильтрации событий по источнику:
New-EventLog -LogName Application -Source "MyScript"

Записать информационное событие в журнал Application с собственным источником:
Write-EventLog -LogName Application -Source "MyScript" -EntryType Information –EventID 1 –Message "Запущен PowerShell cкрипт опроса состояния сервера "

Событие будет добавлено в журнал.

🔹 Либо можно создать отдельный EVTX журнал для ваших событий:
New-EventLog -LogName CustomPSLog -Source PS1Script


✅ В BAT скриптах для отправки событий в журнал Event Viewer используется команда eventcreate:
eventcreate /t information /l application /id 1 /d "BAT script started"


Запись событий в журнал Event Viewer из PowerShell/CMD
  • 👍 76
Post #1145 5.41K
⚠️ После июльского Patch Tuesday многие администраторы начали массово жаловаться на многократное увеличение времени синхронизации WSUS, ошибки таймаута и рост нагрузки на IIS. 
Причина: ошибочная публикация Microsoft большого количества тестовых Detectoid-объектов в каталоге WSUS. Из-за резкого увеличения объема метаданных существенно выросло время синхронизации и обработки каталога обновлений. На клиентах Windows Update могут появляться ошибки 0x80244010 (WU_E_PT_EXCEEDED_MAX_SERVER_TRIPS), 0x80244022, 0x80072EE2, HTTP 503 и другие проблемы при поиске обновлений.

 
⚙️ Microsoft уже устранила проблему на стороне серверов обновлений, поэтому новые WSUS-серверы ей не подвержены. Однако существующие серверы, успевшие синхронизировать ошибочные метаданные, необходимо очистить вручную. Подробно шаги исправления описаны в статье базы знаний KB5121986

✅ Краткий порядок действий:

1️⃣ Подключаемся к базе SUSDB через  SQL Server Management Studio
2️⃣ Делаем бэкап базы данных WSUS
3️⃣ Снимаем ограничение на MaxXMLPerRequest: UPDATE tbConfigurationC SET MaxXMLPerRequest = 0;  (убирает 5 Мб лимит на размер XML данных, которые клиент может получить от сервера обновлений за один запрос)
4️⃣ Выполнить опубликованный SQL-скрипт для удаления ошибочно опубликованных Detectoid-объектов (полный скрипт приведен в статье KB5121986).
5️⃣ Вернуть исходное значение MaxXMLPerRequest: UPDATE tbConfigurationC SET MaxXMLPerRequest = 5242880;
6️⃣ Перезапустить пул WsusPool или IIS IISReset
7️⃣ При необходимости выполнить переиндексацию SUSDB и запуск WSUS Server Cleanup Wizard.
  
Процедуру рекомендуется выполнить на всех WSUS-серверах инфраструктуры, включая upstream/downstream-серверы и реплики, которые успели получить проблемные метаданные.
  • 👍 43
Post #1144 5.73K
⚡️ Каналы для вашего развития в IT и DevOps

Рекомендуем качественный контент знакомого ИТ-сообщества с 15-летним стажем:

⚪️ ITKB_channel (в MAX 📲 IT-KB) — бесплатное обучение по Windows, Linux, DevOps, Security, Network, программированию.

⚪️ ITKB_Archive — цифровая библиотека (книги, курсы, ИТ литература по Windows, Linux, сети, программирование, Project, DevOps)
  • 👍 13
  • 👎 1
Post #1141 5.79K
📚 В групповых политиках Windows есть раздел для централизованной установки приложений на компьютеры пользователей Computer/User Configuration -> Policies -> Software Settings -> Software installation. Однако пользуются этой фичей редко, т.к. она умеет работать только с приложениями, упакованными в MSI установщики, а если вам нужно задать определенные параметры установки пакета, придется пилить свой файл трансформации MST для MSI пакета.

❓ Однако мало кто помнит, что кроме MSI формата инсталляторов, через групповые политики Windows можно устанавливать произвольные EXE приложения. Для этого достаточно создать текстовый конфигурационный файл с расширением ZAP (Zero Administration Package, пакет нулевого администрирования), в котором указать команду запуска установки приложения из EXE файла. По сути, ZAP файлы имеют структуру INI файла.

1️⃣ Например, для установки клиента Obsidian, создадим такой ZAP файл: 
[Application]
FriendlyName = "Obsidian - Notes and knowledge-base editior for Markdown files"
SetupCommand = "\\s-fs01\Install\Obsidian-1.13.4.exe" /S
DisplayVersion = 1.13.4
Publisher = "Dynalist"

 
2️⃣ Здесь указано, в какой сетевой папке хранится установщик приложения и с какими параметрами его нужно установить. В данном случае опция /S указывает, что нужно выполнить установку программы в "тихом" режиме без вывода графического интерфейса.
3️⃣ Затем путь к ZAP файлу указывается в GPO и назначается на OU с пользователями.
4️⃣ Пользователи в классической панели управления (control appwiz.cpl,,1) увидят это приложение, как доступное для установки из сети (Install a program from the network) и могут запустить его установку в любой момент. В новую панель Параметры этот пункт не перенесли, видимо считая ZAP файлы древним legacy (хотя, наверное, так и есть🤷‍♂️).
 
Важный нюанс – установка запускается с правами текущего пользователя, и если приложение потребует прав администратора, то появится запрос повышения привилегий UAC. Таким образом этот способ установки преимущественно подходит для приложения, который ставятся в профиль пользователя (AppData) и не требуют прав администратора (таких сейчас много на самом деле).

В общем, довольно интересный и простой способ создать такой себе список установки приложения “по требованию”, когда любой пользователь может выбрать из коллекции опубликованных программ и установить себе нужные.  👌
 
✅ Установка программ (MSI и EXE) с помощью групповых политик в домене Active Directory
  • 👍 76
Post #1139 6.68K
🍺 Сегодня последняя пятница июля, а это значит, с днем Системного Администратора, дорогие друзья и коллеги😎!

✅ Всех причастных с праздником! 🎉
Тех, кто легко может починить то, что не ломал сам, чье любимое правило “Работает? Не трогай!”, кто сначала читает документацию и только потом щелкает далее-далее, тех из чьих нервов можно плести канаты,.
 
Пусть баги обходят Вас стороной, дашборды мониторинга остаются зелёными, пользователи - благодарными, а терпение и кофе в кружке- бесконечными☕️

Сисадмин это состояние души! 👨🏻‍💻
  • 👍 151
Post #1138 6.98K
WindowsITPro - winitpro.ru 📦 В WIM образе среды WinPE содержаться только базовые универсальные драйвера, необходимые для корректного обнаружения основного оборудования компьютера. Поэтому случается, что установщик Windows, загрузочный диск на базе WinPE или среда восстановления WinRE…
⚙️ Кстати, для упрощения миграции Windows машин в Proxmox (как для P2V, так и для V2V сценариев) нашел полезный PowerShell скрипт, который нужно запускать на исходной машине перед миграцией: https://github.com/croit/load-virtio-scsi-on-boot

Скрипт подготавливает Windows к миграции в среды KVM/Proxmox без необходимости лишних перезагрузок и предотвращения BSOD INACCESSIBLE_BOOT_DEVICE при попытке загрузить систему с диска на нативном контроллере VirtIO SCSI:

powershell.exe -ExecutionPolicy Bypass -File .\Downloads\load-virtio-scsi-on-boot.ps1
 
⚠️ Как это работает: Скрипт через Win32 API создает временное программное (фантомное) устройство и затем pnputil ставит для него дрйвер из INF-файла. Windows связывает драйвер с железом, разворачивает службы в реестре и переводит тип запуска драйвера в Boot Start. Поддерживаются как VirtIO SCSI (vioscsi), так и VirtIO Block (viostor).

✅ В результате на этапе миграции отпадают лишние танцы с бубном вроде временного подключения диска через IDE/SATA контроллер или создания мусорных SCSI-дисков для подкладывания драйверов.
  
О миграции Windows хостов в гипервизор Proxmox
  • 👍 93
Post #1136 5.63K
📦 В WIM образе среды WinPE содержаться только базовые универсальные драйвера, необходимые для корректного обнаружения основного оборудования компьютера. Поэтому случается, что установщик Windows, загрузочный диск на базе WinPE или среда восстановления WinRE не видят локальных дисков или сетевые адаптеры.

⚠️ В моем примере после миграции виртуальной машины с ESXi на Proxmox, оказалось что в гостевой Windows отсутствуют драйвера VirtIO. В результате при загрузке гостевой Windows в ВМ появилась ошибка 0x0000007B: INACESSIBLE_BOOT_DEVICE. Для предотвращения таких ситуаций нужно устанавливать драйвера VirtIO в гостевую Windows до начала миграции ВМ.

✅ Либо можно динамически загрузить нужные драйвера прямо в среде WinPE. Для этого нужно смонтировать образ с драйверами VirtIO и установить драйвер SCSI адаптера с помощью команды drvload:
drvload d:\vioscsi\2k22\amd65\vioscsi.inf 

Проверьте, что драйвер SCSIAdapter VirtIO загружен в память среды WinPE:
pnputil /enum-drivers 

После того, как стал доступен локальный диск с установленной Windows, можно добавить драйвер паравиртуализированного контроллера SCSI в офлайн Windows образ на диске:
DISM /Image:C:\ /Add-Driver: /driver:D:\vioscsi\2k22\amd64\vioscsi.inf 

Загрузка драйверов из командной строки в среде WinPE
  • 👍 68
Post #1133 5.27K
🕐 При запуске ресурсоемких заданий через Task Scheduler можно заметить, что процесс, запущенный планировщиком, выполняется значительно медленнее, чем при ручном запуске. В моем случае на одном из довольно загруженных серверов задание резервного копирования с помощью robocopy не успевало завершиться за ночь при запуске через планировщик, тогда как при ручном запуске выполнялось всего за пару часов.

Причина в том, по умолчанию задания планировщика Windows создаются с приоритетом 7 (Below Normal). Поэтому процессы, запускаемые планировщиком, получают меньше процессорного времени, чем процессы с обычным приоритетом. На нагруженных серверах это может существенно увеличить время выполнения ресурсоемких задач.

⚙️ Традиционный способ изменения приоритета задания планировщика, который работает во всех версиях Windows, - экспорт, ручное редактирование и импорт XML файла с настройками задания. Задание экспортирует в XML файл, который нужно открыть в редакторе и увеличив значение Priority с 7 (значение по умолчанию для всех заданий Task Scheduler) до 5 (Above Normal) или 6 (Normal). После этого исходное задание нужно удалить и импортировать из XML файла уже с новыми настройками.
Однако, если кто-то в дальнейшем изменит настройки этого задания из графической консоли taskschd.msc, приоритет задания будет сброшен на исходный (7).

✅ Поэтому для изменения приоритета заданий в планировщике лучше использовать PowerShell командлеты из встроенного модуля ScheduledTasks.
Вывести текущий приоритет задания
$myTaskName=”py_Task_InspectResult”
(Get-ScheduledTask -TaskName $myTaskName).Settings.Priority

Увеличить приоритет:
Set-ScheduledTask -TaskName $myTaskName -Settings (New-ScheduledTaskSettingsSet -Priority 5)


Управление приоритетом задач в планировщике заданий Windows
  • 👍 85
Older posts →

About this channel

How can I read @winitpro_ru without a Telegram account?
TGViewer shows the public web preview Telegram publishes for WindowsITPro - winitpro.ru: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does WindowsITPro - winitpro.ru have?
WindowsITPro - winitpro.ru (@winitpro_ru) has 9.31K subscribers on Telegram, refreshed roughly every 30 minutes.
Does WindowsITPro - winitpro.ru know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →