Скрипт при запуске системы windows

Как создать и запустить сценарий PowerShell в Windows 10 – инструкция по шагам

Windows 10 PowerShell – это средство командной строки, которое позволяет выполнять команды и сценарии для изменения параметров системы и автоматизации задач. Это похоже на командную строку, но PowerShell является более эффективным интерфейсом командной строки (CLI), который предоставляет широкий набор инструментов и обеспечивает большую гибкость и контроль (особенно для сценариев).

Скрипт – это просто набор команд, сохраненных в текстовый файл (с расширением .ps1), которые PowerShell может понять и выполнить в заданной последовательности. Единственное предупреждение заключается в том, что в отличие от командной строки, протокол безопасности по умолчанию предотвращает выполнение всех сценариев.

Это означает, что при двойном щелчке .ps1 файла в системе Windows 10 ничего не произойдёт, и если вы пытаетесь выполнить скрипт в PowerShell, вы получите сообщение об ошибке: «не может быть загружен, потому что запрещено выполнение сценариев в этой системе». Тем не менее, запускать сценарии на вашем устройстве довольно просто. Вам просто нужно включить правильную политику выполнения.

В этой версии урока по Windows 10 мы проведём вас шаг за шагом, чтобы вы смогли успешно запустить свой первый скрипт в PowerShell.

Создание файла сценария PowerShell

В Windows 10 файлы сценариев PowerShell можно создавать с помощью практически любого текстового редактора или консоли интегрированной среды сценариев (ISE).

Создание скрипта с помощью блокнота

Чтобы создать сценарий PowerShell с помощью блокнота, выполните следующие действия:

  1. Откройте приложение «Блокнот».
  2. Создайте или вставьте сценарий. Например: Write-Host ««Поздравляем! Ваш первый скрипт успешно выполнен»»

Вышеприведенный скрипт просто выводит на экране фразу «Поздравляем! Ваш первый скрипт успешно выполнен».

  • Сохраните файл под любым удобным названием, например, first_script.ps1
  • Создание сценария с помощью интегрированной среды сценариев

    Кроме того, консоль PowerShell ISE можно использовать для кодирования сценариев в Windows 10. Интегрированная cреда сценариев является сложным инструментом, но вы можете начать работу с помощью этих шагов:

      Откройте системный поиск и введите запрос Windows PowerShell ISE, щелкните правой кнопкой мыши верхний результат, и выберите Запуск от имени администратора или выберите соответствующий параметр в правой колонке.

    В PowerShell ISE создайте пустой файл .ps1, в котором можно создать или вставить скрипт. Например:

    Write-Host ««Поздравляем! Ваш первый скрипт успешно выполнен»»

  • Откройте меню Файл и нажмите кнопку Сохранить .
  • Введите название сценария. Например, first_script_ise.ps1
  • Сохраните скрипт.
  • Как только Вы выполнили эти шаги с помощью Блокнота или PowerShell ISE, сценарий готов к запуску, но он не будет выполнен. Это происходит потому, что параметры PowerShell по умолчанию всегда настроены на блокирование выполнения любого сценария.

    Читайте также:  Reimage repair как удалить windows 10

    Запуск файла сценария PowerShell

    Чтобы запустить файл сценария в PowerShell, необходимо изменить политику выполнения, выполнив следующие действия:

    1. Откройте поиск и введите PowerShell, щелкните правой кнопкой мыши в верхний результат и выберите Запуск от имени администратора.
    2. Введите следующую команду, чтобы разрешить выполнение скриптов и нажмите клавишу Enter :

    Укажите тип А и ещё раз нажмите клавишу Enter .

    Введите следующую команду для запуска скрипта и нажмите клавишу Enter :

    В приведенной выше команде обязательно измените PATH\to\SCRIPT на расположение вашего скрипта.

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

    PowerShell в Windows 10 включает четыре политики выполнения:

    • Restricted – останавливает выполнение скрипта.
    • RemoteSigned – запускает скрипты, созданные на устройстве. Однако, сценарии, созданные на другом компьютере, не будут запускаться, если они не содержат подписи доверенного издателя.
    • AllSigned – все скрипты будут работать до тех пор, пока они подписаны надежным издателем.
    • Unrestricted запускает любой скрипт без каких-либо ограничений.

    В приведенных выше шагах мы использовали команду, чтобы разрешить запуск локальных скриптов в Windows 10. Однако, если вы не планируете регулярно выполнять скрипты, можно восстановить настройки по умолчанию, используя те же инструкции, но на Шаге 4, обязательно используйте Set-ExecutionPolicy Restricted команду.

    Как запустить скрипт входа один раз при входе нового пользователя в Windows Server 2003

    В этой статье описано, как настроить сценарий или программу для первого запуска при первом запуске пользователя на компьютере.

    Исходная версия продукта: Windows Server 2003
    Исходный номер КБ: 325347

    Аннотация

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

    Эти действия применяются только к новым пользователям, которые никогда не вошел в систему на компьютере. Если у пользователя уже есть локальный профиль пользователя или перемещающийся профиль, сценарий или программа не запускаются.

    Настройка сценария для запуска один раз при под учетной записи нового пользователя

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

    При установке продукта на основе Windows Server 2003 создается профиль пользователя по умолчанию. При первом входе пользователя профиль пользователя по умолчанию копируется в профиль пользователя.

    Чтобы настроить сценарий или программу для запуска при входе нового пользователя в систему, выполните следующие действия:

    Нажмите кнопку Пуск и выберите пункт Выполнить.

    В поле «Открыть» введите regedit.exe и выберите «ОК».

    Найдите в реестре следующий поднайм:
    HKEY_USERS

    В меню «Файл» выберите «Загрузить hive».

    В диалоговом окне загрузки hive найдите файл Profilepath \Default User\Ntuser.dat, где Profilepath — это расположение файловой системы профиля пользователя по умолчанию. Выберите Открыть.

    В диалоговом окне «Загрузка улья» введите имя для улья и выберите «ОК».

    Файл Ntuser.dat скрыт. Если не удалось найти или загрузить файл Ntuser.dat, необходимо изменить параметры представления в проводнике Windows. Для этого выполните следующие действия:

    1. Выберите «Начните» и выберите проводник Windows.
    2. Выберите «Инструменты» и выберите «Параметры папки».
    3. Выберите вкладку «Вид».
    4. Щелкните, чтобы скрытие расширений для известных типов файлов.
    5. Выберите «Показать скрытые файлы и папки» и выберите «ОК».
  • Найдите в реестре следующий подмайк: HKEY_USERS\Test\Software\Microsoft\Windows\CurrentVersion\Runonce

    Где Test — это имя, которое вы дали улью Ntuser.dat на шаге 6.

    В меню «Правка» навести указатель на пункт «Новый» и выберите строку «Значение строки».

    В правой области дважды щелкните новое значение.

    В диалоговом окне «Изменение строки» введите полный путь и имя файла для программы или сценария для логотипа, а затем выберите «ОК».

    В левой области выберите «Тестовый улей».

    В меню «Файл» выберите «Выгрузить ульи».

    Выберите «Да» при запросе подтверждения выгрузки улья.

    Закройте редактор реестра. Этот сценарий выполняется для пользователя, у которого нет профиля пользователя. Чтобы просмотреть профили пользователей на локальном компьютере, выполните следующие действия.

    1. Выберите «Начните»,«На панели управления» и выберите пункт «Система».
    2. Выберите вкладку «Дополнительные».
    3. В области профилей пользователей выберите «Параметры».
      Профили пользователей перечислены в диалоговом окне профилей пользователей.
  • Читайте также:  Spooftooph kali linux ��� ������������

    —>

    Запуск PowerShell скриптов с помощью GPO

    Групповые политики Window позволяют запускать различные файлы скриптов при загрузке/ завершении работы компьютера, входе/выходе пользователя. С помощью GPO вы можете исполнять на компьютерах домена не только классические файлы скриптов (.bat, .cmd, ,vbs), но и Startup/Shutdown/Logon/Logoff скрипты PowerShell (.ps1)

    В современных операционных системах (Windows 10 / Windows Server 2016) вы можете настраивать запуск логон/логоф скриптов на PowerShell напрямую из редактора GPO.

    Запустите консоль управления доменными политиками — GPMC.msc (Group Policy Management сonsole), создайте новую политику и назначьте ее на нужный контейнер с пользователями или компьютерами (можно использовать WMI фильтры GPO для более тонкого нацеливания политики). Перейдите в режим редактирования политики.

    Вы должны выбрать раздел GPO для запуска PowerShell скрипта в зависимости от того, когда вы хотите выполнить ваш скрипт.

    • Если PS скрипт должен быть запущен при входе пользователя на компьютер (настройка параметров окружения пользователя, программ, например: вы хотите при входе пользователя автоматическое создавать подпись в Outlook на основе данных из пользователя AD, настроить параметры экранной заставки или стартового экрана) или при выходе пользователя, вам нужно перейти в раздел GPO: UserConfiguration-> Policies-> WindowsSettings-> Scripts(Logon/ Logoff);
    • Если вы хотите запускать скрипт PowerShell при загрузке компьютера (отключение устаревших протоколов: NetBIOS, SMBv1, настройка параметров безопасности компьютера и т.д.) или перед корректным выключением компьютера, вам нужно перейти в секцию GPO с настройками компьютера: Computer Configuration -> Policies -> Windows Settings -> Scripts (Startup / Shutdown).

    Запуск PowerShell скрипта при загрузке компьютера с помощью групповой политики

    Допустим, нам нужно запускать PowerShell скрипт при загрузке Windows. Для этого нужно выбрать Startup и в открывшемся окне перейди на вкладку PowerShell Scripts.

    Читайте также:  Windows command prompt configuration

    Теперь нужно скопировать файл с вашим PowerShell скриптом на контроллер домена. Нажмите на кнопку Show Files и перетяните файл с PowerShell скриптом (расширение ps1) в открывшееся окно проводника (консоль автоматически откроет каталог \\yourdomain\SysVol\yourdomain\Policies\<Здесь_GUID_вашей_GPO>\Machine\Scripts\Startup вашей политики в каталоге SysVol на ближайшем контроллере домена).

    Т.к. мы настраиваем запуск Startup скрипта PowerShell, нужно в разрешениях ps1 файла (или всего каталога Machine\Scripts\Startup) проверить NTFS права доступа на чтение и выполнение (Read & Execute) для группы Domain Computers .

    Теперь нужно нажать кнопку Add и добавить скопированный файл скрипта ps1 в список запускаемых политикой PowerShell скриптов.

    Если вы запускаете несколько PowerShell скриптов через GPO, вы можете управлять порядком из запуска с помощью кнопок Up/Down.

    Для корректного выполнения скриптов PowerShell при загрузке компьютера нужно настроить время задержки перед запуском с помощью политики в разделе Computer Configuration -> Administrative Templates -> System -> Group Policy. Включите политику Configure Logon Script Delay (Настроить задержку сценария входа в систему) и укажите задержку в минутах перед запуском логон-скриптов (достаточное для окончании инициализациии и загрузки всех необходимых служб). Обычно достаточно поставить здесь 1-2 минуты.

    По умолчанию в настройках безопасности Windows запрещен запуск PowerShell скриптов. Значение текущей настройки политики запуска сценариев PowerShell можно получить командой Get-ExecutionPolicy. Если политика не настроена, команда вернет Restricted (блокируются любые скрипты). Параметры безопасности запуска PowerShell скриптом можно настроить через политику “Включить выполнение сценариев” / “Turn On Script Execution” (в разделе GPO Computer Configuration -> Administrative Templates -> Windows Components -> Windows PowerShell). Возможные значения политики:

    • Allowonlysignedscripts (AllSigned)– можно запускать только подписанные скрипты PowerShell (“Как подписать скрипт PowerShell?”) –самый лучший сценарий с точки зрения безопасности;
    • Allowlocalscriptsandremotesignedscripts (RemoteSigned)– можно запускать любые локальные и подписанные удаленные скрипты ;
    • Allowallscripts (unrestricted) – самый небезоапасный вариант, т.к. разрешает запуск любых PowerShell скриптов.

    Если вам не подходит не один из предложенных сценариев настройки политики запуска PowerShell скриптов, вы можете запускать PowerShell скрипты в режиме Bypass (скрипты не блокируются, предупреждения не появляются).

    Для этого PowerShell скрипт нужно запускать из секции Startup -> Scripts. В этой секции вы можете настроить запуск ps1 сценария с помощью создания обычного Startup скрипта, запускающего исполняемый файл powershell.exe (по аналогии со сценарием, описанным в статье). Укажите:

    • Script name: %windir%\System32\WindowsPowerShell\v1.0\powershell.exe
    • Script Parameters: -Noninteractive -ExecutionPolicy Bypass –Noprofile -file %

    dp0 при запуске на клиенте автоматически преобразуются в UNC путь до каталога со скриптом на SYSVOL.

    В данном случае вы принудительно разрешили запуск любого (даже ненадежного) скрипта PowerShell с помощью параметра Bypass.

    Оцените статью