Можно ли использовать PowerShell в среде восстановления Windows?

Я попытался получить доступ к PowerShell из командной строки в среде восстановления Windows без успеха. Я могу запускать VBScripts там без проблем, и теперь мне интересно, есть ли какой-то способ запускать мои команды PowerShell оттуда.

можно ли использовать PowerShell в WinRE, или я застрял с поддержкой VBScript/JScript в лучшем случае?

пожалуйста заметьте что это о WinRE и не ОС!

EDIT

EBGreen заметил о добавлении дополнительных компонентов в WinPE это позволит использовать PowerShell в этой среде. Можно ли использовать тот же подход с WinRE?

5
задан Riaan
09.05.2023 17:24 Количество просмотров материала 3171
Распечатать страницу

3 ответа

вы можете сделать это, но вам нужно установить Windows 8 и Windows 8 ADK С Windows PE (загрузка довольно большая). Я уверен, что вы можете использовать этот образ Win RE на установке Windows 7, Как только вы его запустите, но я не уверен на 100%.

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

найти свой WinRE.wim

Я все, чтобы найти свою. Он прятался в C:\Recoveryc45205-df4a-11e1-8fd9-9103ad6af7ef. Это может быть верно и для вас. Чтобы взглянуть, вам придется отключить Hide Protected System Files. Этот параметр скрывается в Проводнике под View, Options, Change Folder and Search Options, View tab.

Unhide the goodies

изменить разрешения

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

щелкните правой кнопкой Recovery, выберите Свойства

Open properties

откройте вкладку Безопасность

Click the security tab

клик Продвинутый

Ya know, if you need this much help you probably shouldn't be doing this actually...

Нажмите Add

Messing with security permissions can cause serious pain

Выберите Основные

But screenshots are fun and give me all teh rep

добавьте свое имя пользователя (или администратора, если вы хотите работать с ним в качестве администратора)

Now you know my super secret real name, zomg!

Копировать WinRE.wim

я решил скопировать .wim, чтобы я мог работать с ним, но я полагаю, что вы могли бы работать с ним напрямую. Если вы решили работать с оно сразу, дорабатывает команду соотвественно. Я скопировал свой C:\winre\.

добавить PowerShell в образ

теперь у нас есть .для работы с wim мы можем добавить необходимые компоненты для PowerShell. Вам понадобятся соответствующие компоненты Windows ADK, включая Windows PE.

смонтировать образ

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

Seriously, if you couldn't find this on your own turn back now

создать папка для монтирования образа

At least I'm not letting people copy and paste this stuff

выполните эту команду для монтирования образа: Screenshots are great for preventing copy and paste!

добавить необходимые пакеты

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

  • WinPE-WMI
  • WinPE-NetFX4
  • ОС-Скрипта
  • WinPE-PowerShell3
  • ОС DismCmdlets
  • ОС StorageWMI
  • WinPE-HTA

мы также должны установить пакеты en-us (заменяющие предпочитаемый язык) для каждого из вышеперечисленных пакетов.

начать с этого:

dism /image:C:\winre\mount /add-package /packagepath:"C:\Program Files (x86)\Windows Kits.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-WMI.cab

затем запустите это:

dism /image:C:\winre\mount /add-package /packagepath:"C:\Program Files (x86)\Windows Kits.0\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\en-us\WinPE-WMI_en-us.cab

Теперь нажимаем до дважды, чтобы вызвать первую команду и заменить WMI на NetFX4. Повторяйте это до тех пор, пока не будут установлены все необходимые компоненты вместе с требуемым языком. Не забудьте сделать это по порядку.

завершить образ

теперь, когда все пакеты на месте, нам нужно зафиксировать наши изменения и закончить наш WinRE.Вима. Оттуда мы можем построить .iso, протестируйте его в Hyper-V и скопируйте WinRE.wim к нашему файл восстановления, поэтому у нас есть доступ к PowerShell в следующий раз, когда система аварийно завершает работу.

отключить и совершать

выполните следующую команду, чтобы отключить изображение и применить изменения: The above command sucked to type, so I'll let C+P slide on that one...

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

заменить оригинальный WinRE.wim и тест

сделайте резервную копию вашего оригинального WinRE.wim и заменить его на новый. Теперь запустите msconfig и откройте вкладку "Загрузка". Проверка Safe Boot и выберите Alternate Shell. Перезагрузитесь и попробуйте.

TROLOLOL You're stuck in safe boot now! I restarted three times before I realized this setting sticks...

бум! PowerShell в среде восстановления Windows

Start PowerShell и наслаждайтесь!

Ahh, the beautiful blue PowerShell... Sweet victory.

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

6
отвечен Tanner Faulkner 2023-05-11 01:12
  1. для Windows PowerShell требуется платформа Microsoft .NET Framework. [source]
  2. среда восстановления Windows основана на среде предустановки Windows. [source]
  3. среда предустановки Windows не поддерживает .NET Framework. [источник]

таким образом, PowerShell не может быть использован в файл WinRE.

2
отвечен William Jackson 2023-05-11 03:29

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


я записал, где находится powershell. На моей машине это в c:\windows\system32\windowspowershell\v1.0\powershell.exe и c:\windows\syswow64\windowspowershell\v1.0\powershell.exe.

ярлык в администрировании указывает на syswow64.

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

первое, что я заметил, что я не могу добраться до c drive.

Итак, я побежал diskpart затем введите команду list vol, чтобы получить список доступных дисков. На моей машине диск C назывался диск D в консоли восстановления.

так я вышел diskpart введя exit, затем в командной консоли набрал d:, следовал по cd\windows\syswow64\windowspowershell\v1.0.

обратите внимание, что если делать это поэтапно, используя dir для подтверждения имен папок он не показывает все (а именно v1.0 папка.)

однажды я скрестил пальцы и напечатал powershell, только чтобы получить сообщение:

The subsystem needed to support the image type is not present

я немного погуглил сообщение об ошибке выше, но не смог найти ничего, что указывало бы, что powershell может работать.


я также пробовал другой powershell.exe в system32, но не получил никакого сообщения на всех (нет didn't recognise the command или что-нибудь.

enter image description here

0
отвечен George Duckett 2023-05-11 05:46

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх