Скрипты для Windows

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

Управление реестром из командной строки

REG ADD

Команда добавляет в выбранный раздел реестра указанные пользователем параметры:

REG ADD <Раздел> [\\<компьютер>\]<путь> [/v <параметр> | /ve] [/t <тип>] [/s <разделитель>] [/d <данные>] [/f]

  • Раздел — полный путь к редактируемому разделу реестра в формате [\\<компьютер>\]<путь>, где <компьютер> — имя компьютера в локальной сети, если директива предназначена для обработки на удаленном компьютере. В случае, если этот параметр опущен, команда выполняется на локальном компьютере. Путь — полный путь к целевому разделу реестра в виде корень\ключ\подраздел, где корень — сокращенное обозначение ветви реестра (HKLM, HKCU, HKCR, HKU или HKCC), а ключ\подраздел — полный путь к искомому подразделу в иерархии реестра, включая все вложенные подразделы. На удаленном компьютере возможно обращаться только к разделам реестра HKLM и HKU.
  • /v <параметр> — имя параметра, добавляемого в указанный раздел.
  • /ve — добавить пустой параметр (параметр по умолчанию) в указанный раздел.
  • /t <тип> — явное указание на тип данных добавляемого в указанный раздел реестра параметра. Может принимать одно из следующих значений: REG_SZ, REG_MULTI_SZ, REG_DWORD_BIG_ENDIAN, REG_DWORD, REG_BINARY, REG_DWORD_LITTLE_ENDIAN, REG_NONE или REG_EXPAND_SZ. Если тип параметра не указан, по умолчанию для данного параметра определяется тип REG_SZ.
  • /s <разделитель> — тип разделителя значений для разграничения данных, хранящихся в многострочных параметрах типа REG_MULTI_SZ. По умолчанию разделитель имеет вид «\0».
  • /d <данные> — значение, присваиваемое добавляемому параметру реестра.
  • /f — перезаписывать уже существующие в реестре параметры и значения, замещая их указанными в командной строке, без демонстрации предупреждений.

Источник (содержит полное описание остальных команд REG)

Общие свойства системы

 Время и Дата

Сервер обновления времени клиентом NTP системной службы времени  W32Time определяется ключами реестра:

reg add HKLM\SOFTWARE\Windows\CurrentVersion\DateTime\Servers /v 0 /t REG_SZ /d pool.ntp.org /f
reg add
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters /v NtpServer /t REG_SZ /d pool.ntp.org,0x1 /f

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

reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient /v SpecialPollInterval /t REG_DWORD /d 3600 /f

Измененные параметры службы W32Time вступают в силу после перезапуска службы:

w32tm /config /update

Восстановление запуска приложений Metro

После обновления приложения Metro (Edge, Калькулятор и др.) при запуске в сеансе Администратора выдают ошибку «…невозможно открыть, используя встроенную учетную запись администратора…»

appcbo

Для исправления необходимо внести исправление в реестр:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"FilterAdministratorToken"=dword:00000001
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v FilterAdministratorToken /t REG_DWORD /d 1 /f

*) Также существуют рекомендации повысить уровень уведомлений UAC до 2-3 уровня

Панель управления\Все элементы панели управления\Учетные записи пользователей
или
Панель управления\Учетные записи пользователей\Учетные записи пользователей
> Изменить параметры контроля учетных записей

Службы

Утилита SC представляет собой программу командной строки, используемую для связи со службами и диспетчером управления службами.

Перезапуск службы печати:

sc stop spooler
sc start spooler

Отключение запуска службы Автоматического обновления:

sc config wuauserv start= disabled
Param Описание REG
boot Specifies a device driver that is loaded by the boot loader 0
system Specifies a device driver that is started during kernel initialization 1
auto Specifies a service that automatically starts each time the computer is restarted and runs even if no one logs on to the computer 2
demand Specifies a service that must be started manually. This is the default value if start= is not specified 3
disabled Specifies a service that cannot be started. To start a disabled service, change the start type to some other value 4
delayed-auto Specifies a service that starts automatically a short time after other auto services are started 1,2*

Удаление службы MySQL:

sc delete mysql

Назначение процессу службы (спулера) запуска в изолированном режиме

sc config spooler type- own

И другие команды в описании на support.microsoft.com

Оптимизация служб Windows 10

Источники: Какие службы Windows 10 можно отключать

Электропитание

Режим Гибернации Windows 10

Включение и выключение доступности гибернации Windows 10 выполняется командами:

powercfg -h on
powercfg -h off

или состоянием ключа HibernateEnabled в реестре:

reg add HKLM\System\CurrentControlSet\Control\Power /v HibernateEnabled /t REG_DWORD /d 1 /f

Режим уменьшения файла hiberfiil.sys для быстрого запуска без ручной гибернации включается и включается командами:

powercfg /h /type reduced
powercfg /h /type full

.

Кнопка Сон/Hibernate Windows XP

Для появления четвертой кнопки Спящий/Ждущий режим необходим Windows XP SP3 и манипуляции с реестром.

Ключ ShowHibernateButton управляет появлением четвертой кнопики

reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\System\Shutdown /v ShowHibernateButton /t REG_DWORD /d 1 /f

Если компьютер входит в состав домена или используется классическое меню Завершение работы,  то необходим дополнительно ключ HibernateAsDefault:

reg add HKLM\SOFTWARE\Policies\Microsoft\Windows\System\Shutdown /v HibernateAsDefault /t REG_DWORD /d 1 /f

Общий reg-файл:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\Shutdown]
"HibernateAsDefault"=dword:00000001
"ShowHibernateButton"=dword:00000001

Источник: support.microsoft.com

Устройства

Использование мыши PS/2 под Windows 8/10

Если система Windows 8/10 была установлена без мыши PS/2, то при подключении такой мыши поздней система не будет ее находить и использовать. Это связано с отключением соответствующей службы i8042prt. Для восстановления работы службы следует настроить ее запуск и параметры в системном реестре.

Скрипт:

reg add HKLM\SYSTEM\CurrentControlSet\Services\i8042prt /v Start /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters /v OverrideKeyboardSubtype /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters /v OverrideKeyboardType /t REG_DWORD /d 1 /f
reg add HKLM\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters /v StartOverride /t REG_DWORD /d 1 /f

reg-файл:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt]
"Start"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters]
"OverrideKeyboardSubtype"=dword:00000001
"OverrideKeyboardType"=dword:00000001
"StartOverride"=dword:00000001

Управление пользователями

Активация записи Администратор

Системная запись Администратор в системах Windows 7/8/10 после установки отключена. Для использования ее надо активировать:

net user Администратор /activ:yes

важно сразу после активации записи Администратор установить пароль:

net user Администратор <password>

также можно создать дополнительную запись в группе Администраторы:

net user Admin <password> /add
net localgroup Администраторы Admin /add
net localgroup Пользователи Admin /delete

Скрытие пользователя в окне приветствия

Скрыть (или отобразить) пользователя можно, если в реестре в разделе SpecialAccounts создать ключ с именем пользователя типа DWORD со значением 0 (или 1). В Windows 7/8/10 соответсвующая ветка реестра исчезла, но ее можно создать.

Сокрытие записи Администратор:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList]
"Администратор"=dword:00000000
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /v Администратор /t REG_DWORD /d 0 /f

Сокрытие записи User:

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /v User /t REG_DWORD /d 0 /f

Политика паролей

Минимальная длина пароля

net accounts /minpwlen:8

Максимальный срок действия пароля до изменения

net accounts /maxpwage:30
net accounts /maxpwage:unlimited
wmic UserAccount set PasswordExpires=False

Контроль уникальности пароля в серии

net accounts /uniquepw:5

Профили пользователей

Профиль пользователя в системе определяется кодом Security Identifier (SID). Получить коды SID всех пользователей системы можно командой:

wmic useraccount get name,sid

В реестре список профилей по SID находится в ветке:

[HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList]

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

Свойства профиля пользователя

Закладка Безопасность в Свойствах файлов

Закладка Безопасность отсутствует по умолчанию в окне свойств файлов и папок. Отображение закладки определяется ключом в ветке пользователя:

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoSecurityTab"=dword:00000000
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer /v NoSecurityTab /t REG_DWORD /d 0 /f

Управление правами на запуск приложений

Для каждой пользовательской учетной записи Windows позволяет включить один из трех режимов запуска приложений. Выбранный режим определяется значениями двух ключей реестра RestrictRun и DisallowRun.

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
 "DisallowRun"=dword:00000000
 "RestrictRun"=dword:00000001
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\DisallowRun]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\RestrictRun] 
 "1"="notepad.exe"

(читать подробнее)

Местоположение файлов профиля

[HKEY_USERS\<SID>\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]

Перечень доступных принтеров

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Providers\Client Side Rendering Print Provider\<SID>\Printers\Connections]

Аппаратные средства

Управление сетевыми com-портами

Отобразить доступные порты:

change port /query

дает результат вида:

AUX = \DosDevices\COM1
COM1 = \Device\RdpDrPort\;COM1:38\tsclient\COM1
COM2 = \Device\RdpDrPort\;COM2:38\tsclient\COM2

для назначение com-порта доступного из терминального подключения:

net use com5: /d
net use com5: \\tsclient\com3 /persistent:yes

источник

Подключение беспроводных сетей Wi-Fi

Операции с беспроводными сетями появились в netsh начиная с Windows 7.

Получение списка доступных сетей:

netsh wlan show networks

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

netsh wlan show profiles

Подключение сети:

netsh wlan connect name="ReKS"

Отключение сети

netsh wlan disconnect interface="WIFI"

Файловая система

Управление режимом разметки

Режим разметки дискового устройства MBR или GPT следует выбрать до создания разделов.

diskpart
list disk
select disk <disk number>
clean
convert gpt
exit

или

...
convert mbr
exit

Активация раздела:

list partition
select partition <partition number>
active

При установке систем Windows в окне разметки диска командная строка может быть вызвана горячей комбинацией Shift+F10.

Пример GPT разметки вручную
rem == CreatePartitions-UEFI.txt == rem == These commands are used with DiskPart to rem    create four partitions rem    for a UEFI/GPT-based PC. rem    Adjust the partition sizes to fill the drive rem    as necessary. == select disk 0 clean convert gpt rem == 1. System partition ====================== create partition efi size=100 rem ** NOTE: For Advanced Format 4Kn drives, rem change this value to size = 260 **  format quick fs=fat32 label="System" assign letter="S" rem == 2. Microsoft Reserved (MSR) partition ==== create partition msr size=16 rem == 3. Windows partition ===================== rem ==  a. Create the Windows partition ========= create partition primary  rem ==  b. Create space for the recovery tools == shrink minimum=500 rem       ** NOTE: Update this size to match the rem                size of the recovery tools  rem                (winre.wim) plus free space                   ** rem ==    c. Prepare the Windows partition ======  format quick fs=ntfs label="Windows" assign letter="W" rem === 4. Recovery tools partition ============= create partition primary format quick fs=ntfs label="Recovery tools" assign letter="R" set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac" gpt attributes=0x8000000000000001 list volume list par exit

Управление атрибутами

Установка владения файлом группой Администраторы

takeown  /f  <имя/маска файла> /A

Поддержка TRIM

Статус поддержки команды Trim:

fsutil behavior query DisableDeleteNotify
  • DisableDeleteNotify = 0 —  поддержка команды TRIM включена
  • DisableDeleteNotify = 1 —  функция TRIM выключена.

Включать TRIM можно командой

fsutil behavior set DisableDeleteNotify 0

Кэширование Prefetch и Superfetch

Prefetch и Superfetch – это компоненты Windows, предназначенные для ускорения загрузки данных и приложений. Данные компоненты кэшируют часто используемый программы и данные в кэш, тем самым запуск таких программ осуществляется намного быстрее.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters 
EnableSuperfetch=0 (по-умолчанию 3), 
EnablePrefetcher=0 (по-умолчанию 3)
EnablePrefetcher=0 (по-умолчанию 3)

Сортировка чисел в именах файлов

Способ сортировки чисел в именах файлов зависит от значения ключа NoStrCmpLogical, который может быть определен для всех пользователей системы или для каждого отдельно:

  • при 0 (по умолчанию) числа сортируются как числа
  • при 1 числа сортируются как строки

Установка строковой сортировки для текущего пользователя:

reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer /v NoStrCmpLogical /t REG_DWORD /d 1 /f

У

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\Currentversion\Policies\Explorer]
"NoStrCmpLogical"=dword:00000001

Установка строковой сортировки для всех пользователей:

reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer /v NoStrCmpLogical /t REG_DWORD /d 1 /f

Отметка последнего доступа

Отключение отметки Last Access Time Stamp:

fsutil behavior set disablelastaccess 1

Управление журналированием NTFS

Отключить журналирование NTFS на системной разделе:

fsutil usn deletejournal /d C:

Оптимизация SSD

Источник: windows.net.ru

Точки соединения NTFS (символические ссылки)

Windows Vista/7/8/10

Создание ссылки:

mklink [[/d] | [/h] | [/j]] <ссылка> <назначение>
  • /D Создание символической ссылки на каталог. По умолчанию создается символическая ссылка на файл.
  • /H Создание жесткой связи вместо символической ссылки (может создаваться только в пределах одного логического раздела и только для файлов)
  • /J Создание соединения для каталога (junction point, символьная связь — доступна начиная с Windows 2000 NTFS 5, может указывать только на каталоги)
  • Ссылка Имя новой символической ссылки.
  • Назначение  Путь (относительный или абсолютный), на который ссылается новая ссылка.

Удаление ссылки без удаления содержимого:

rmdir <ссылка>

Windows XP / Server 2003

linkd c:\linkedname c:\realdir

Источники

В статье «Ссылки NTFS» РеКС описывает это подробней.
Создание точек соединения NTFS и управление ими.
Загрузить в составе Windows Server 2003 Resource Kit Tools
Утилита Марка Руссиновича Junction

Сеть

Устройства сети

Устройства обнаруженные в локальной сети из таблицы ARP:

arp -a

Активные соединения

Прослушиваемые порты и активные соединения:

netstat -a

WINDOWS\system32\drivers\etc\HOSTS

CorelDraw

?

Сервер проверки Windows XP VL

127.0.0.1 mpa.one.microsoft.com

Тип сети

Изменить тип сетевого подключения адаптера в Microsoft Windows Server 2012,  Windows 8 и некоторых случаях Windows 7 через Центр управления сетями и общим доступом (Network and Sharing Center) невозможно.

Тип сетевого подключения определяется в реестре для каждого адаптера (сетевого профиля) ключом Category:

Windows Registry Editor Version 5.00 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles\{<профиль>}
"Category"=dword:00000001
  • 0 — Общественная сеть (Public Network)
  • 1 — Частная сеть (Private Network)
  • 2 — Доменная сеть (Domain Network)

Источник: комментарий к вопросу на social.technet.microsoft.com

Брандмауэр Windows

Отключение/включение брандмауэра

netsh advfirewall set allprofiles state off
netsh advfirewall set allprofiles state on

Создание правила входящих соединений на порт MS SQL :1433

netsh firewall set portopening protocol=TCP port=1433 name=SQLPort mode=ENABLE scope=SUBNET profile=CURRENT

тоже  для модуля поддержки повышенной безопасности:

netsh advfirewall firewall add rule name=SQLPort dir=in protocol=tcp action=allow localport=1433 remoteip=localsubnet profile=DOMAIN

Источник: go.microsoft.com

Выявление снифера

Работа снифера требует использования неразборчивого режима сетевой карты (promiscuous mode), который может выдать себя ошибочным ответом на ping с правильным ip, но неправильным mac.

Для этого добавляем заведомо неверные данные в ARP таблицу и пингуем подозреваемый хост:

arp -s hackerhost 00:11:22:33:44:55
ping hackerhost

Если ответ получен, значит, с большой долей вероятности можно сказать, что узел находится в режиме прослушивания.

Неправильную запись ARP после проверки необходимо удалить:

arp -d hackerhost 00:11:22:33:44:55

Источник: xakep.ru

Процессы

Завершение процессов

Удаление процессов (блокнота)

taskkill /f /im notepad.exe

.

За пределами системы

Управление загрузкой системы

Включение безопасного режима загрузки:

bcdedit /set {current} safeboot minimal

и выключение безопасного режима загрузки:

bcdedit /deletevalue {default} safeboot

Текстовое меню загрузки F8 (Shift+F8):

bcdedit /set {default} bootmenupolicy legacy

и отключение текстового меню:

bcdedit /set {default} bootmenupolicy standard

Восстановление загрузчика Windows

Скрипт для консоли восстановления:

bcdboot c:\windows

Источник: BCDBoot Command-Line Options на docs.microsoft.com

Восстановление стандартных прав доступ к объектам

Для восстановления нарушенных прав доступа необходима утилита SubInACL.exe от Microsoft.

chcp 1251

cd "%ProgramFiles%\Windows Resource Kits\Tools"

subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=администраторы=f /grant=system=f

subinacl /subkeyreg HKEY_CURRENT_USER /grant=администраторы=f /grant=system=f

subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=администраторы=f /grant=system=f

subinacl /subdirectories %SystemDrive% /grant=администраторы=f /grant=system=f

subinacl /subdirectories %windir%\*.* /grant=администраторы=f /grant=system=f

secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose

Опции:

  • для английских версий следует использовать administrators вместо администраторы
  • для систем x64 ProgramFiles на ProgramFiles(x86)

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

Источник: data8.ru

Источники.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *