14 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Восстановление Windows 7 при помощи командной оболочки PowerShell 2.0

1.5 Введение – Установка Git

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

В этой книге используется Git версии 2.8.0. Хотя большинство команд, рассматриваемых в книге, должны корректно работать и в более ранних версиях Git, некоторые из них могут действовать несколько по-иному при использовании старых версий. Поскольку Git довольно хорош в вопросе сохранения обратной совместимости, примеры книги должны корректно работать в любой версии старше 2.0.

Установка в Linux

Если вы хотите установить Git под Linux как бинарный пакет, это можно сделать, используя обычный менеджер пакетов вашего дистрибутива. Если у вас Fedora (или другой похожий дистрибутив, такой как RHEL или CentOS), можно воспользоваться dnf :

Если же у вас дистрибутив, основанный на Debian, например, Ubuntu, попробуйте apt :

Чтобы воспользоваться дополнительными возможностями, посмотрите инструкцию по установке для нескольких различных разновидностей Unix на сайте Git http://git-scm.com/download/linux.

Установка на Mac

Существует несколько способов установки Git на Mac. Самый простой — установить Xcode Command Line Tools. В версии Mavericks (10.9) и выше вы можете добиться этого просто первый раз выполнив git в терминале.

Если Git не установлен, вам будет предложено его установить.

Если Вы хотите получить более актуальную версию, то можете воспользоваться бинарным установщиком. Установщик Git для OS X доступен для скачивания с сайта Git http://git-scm.com/download/mac.

Вы также можете установить Git при установке GitHub для Mac. Их графический интерфейс Git также имеет возможность установить и утилиты командной строки. Скачать клиент GitHub для Mac вы можете с сайта https://desktop.github.com.

Установка в Windows

Для установки Git в Windows также имеется несколько способов. Официальная сборка доступна для скачивания на официальном сайте Git. Просто перейдите на страницу http://git-scm.com/download/win, и загрузка запустится автоматически. Обратите внимание, что это отдельный проект, называемый Git для Windows; для получения дополнительной информации о нём перейдите на https://gitforwindows.org.

Для автоматической установки вы можете использовать пакет Git Chocolatey. Обратите внимание, что пакет Chocolatey поддерживается сообществом.

Другой простой способ установки Git — установить GitHub для Windows. Его установщик включает в себя утилиты командной строки и GUI Git. Он также корректно работает с Powershell, обеспечивает надёжное сохранение учётных данных и правильные настройки CRLF. Вы познакомитесь с этими вещами подробнее несколько позже, здесь же отметим, что они будут вам необходимы. Вы можете загрузить GitHub для Windows с вебсайта GitHub Desktop.

Установка из исходников

Многие предпочитают устанавливать Git из исходников, поскольку такой способ позволяет получить самую свежую версию. Обновление бинарных инсталляторов, как правило, немного отстаёт, хотя в последнее время разница не столь существенна.

Если вы действительно хотите установить Git из исходников, у вас должны быть установлены следующие библиотеки, от которых он зависит: autotools, curl, zlib, openssl, expat, and libiconv. Например, если в вашей системе используется dnf (Fedora) или apt-get (системы на базе Debian), вы можете использовать одну из следующих команд для установки всех зависимостей, используемых для сборки и установки бинарных файлов Git:

Для того, чтобы собрать документацию в различных форматах (doc, html, info), понадобится установить дополнительные зависимости:

Пользоватли RHEL и производных от неё (таких как CentOS или Scientific Linux) должны подключить репозиторий EPEL для корректной установки пакета docbook2X

Если вы используете систему на базе Debian (Debian/Ubuntu/Ubuntu-производные), вам так же понадобится установить пакет install-info :

Если вы используете систему на базе RPM (Fedora/RHEL/RHEL-производные), вам так же понадобится установить пакет getopt , который уже установлен в системах на базе Debian:

К тому же из-за различий имён бинарных файлов вам понадобится сделать следующее:

Когда все необходимые зависимости установлены, вы можете пойти дальше и скачать самый свежий архив с исходниками из следующих мест: с сайта Kernel.org https://www.kernel.org/pub/software/scm/git, или зеркала на сайте GitHub https://github.com/git/git/releases. Конечно, немного проще скачать последнюю версию с сайта GitHub, но на странице kernel.org релизы имеют подписи, если вы хотите проверить, что скачиваете.

Затем скомпилируйте и установите:

После этого вы можете получать обновления Git по средством самого Git:

Основы PowerShell: требования к системе

Как нет двух одинаковых операционных систем Windows, так и нет двух одинаковых версий оболочки Windows PowerShell. Шаги, которые нужно предпринять для запуска оболочки PowerShell 2.0 в системе Windows 8 (http://windowsitpro.com/windows-client/windows-8) заметно отличаются от действий, необходимых для запуска версии PowerShell 3.0 на сервере Windows Server 2008. При этом обилие документации по оболочке PowerShell может усложнить поиск точных сведений о том, что именно следует сделать для настройки определенной версии PowerShell в конкретной операционной системе

Я попытаюсь упростить информацию о системных требованиях, разделив ее в соответствии с используемой операционной системой. Точнее, я затрону те операционные системы, в которых могут быть запущены обе версии оболочки PowerShell (2.0 и 3.0): Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2 и Server 2008. Для каждой операционной системы я подробно расскажу о запуске обеих версий PowerShell, а также среды разработки PowerShell Integrated Scripting Environment (ISE). Иногда отличий между операционными системами с точки зрения запуска оболочки PowerShell будет немного, но даже в этих случаях я постараюсь четко их обозначить, чтобы вы ясно понимали, как развернуть оболочку PowerShell в своем окружении.

Windows 8

Если вы уже используете систему Windows 8, вам повезло. Ядро PowerShell 3.0 и среда ISE в ней установлены и активированы. Вы можете запустить любое из этих двух решений, как и любое другое приложение, из меню Start, с рабочего стола или из командной строки Windows. Оболочка PowerShell 3.0 готова к запуску и ждет только вашего решения использовать ее.

К сожалению, сказанное не распространяется на оболочку PowerShell 2.0. Хотя ядро PowerShell 2.0 является частью пакета, то есть установлено в системе Windows 8, необходимо сначала активировать компонент Microsoft. NET Framework 3.5. И на то есть причина. Так как ядро PowerShell 2.0 скомпилировано в среде Common Language Runtime (CLR) 2.0, ему требуется платформа. NET версии 3.5 или ниже (назад к. NET 2.0). Оболочке PowerShell 3.0 необходимы версии. NET 4.0 или. NET 4.5, каждая из которых построена на основе CLR 4.0. В системе Windows 8 компоненты. NET 4.5 установлены и активированы по умолчанию, и именно по этой причине вы можете задействовать оболочку PowerShell 3.0 без предварительной настройки.

Если вам необходима возможность использовать как версию PowerShell 3.0, так и версию PowerShell 2.0, вы должны сначала активировать компонент. NET Framework 3.5 (включает версии. NET 2.0 и 3.0) в окне Windows Features. Это шаг активирует платформу.NET 3.5 и позволяет запускать версию PowerShell 2.0 наравне с PowerShell 3.0. Однако вы не найдете пункт меню Start, запускающий оболочку PowerShell 2.0. Для запуска потребуется выполнить следующую команду из командной строки системы Windows или оболочки PowerShell:

После запуска этой команды все последующие команды, запущенные в рамках текущей сессии, будут обработаны ядром PowerShell 2.0. Однако имейте в виду, что оболочка PowerShell 3.0 обратно совместима с командами, провайдерами, сценариями, модулями и привязками из версии PowerShell 2.0. Поэтому единственный случай, когда вам может понадобиться использовать ядро PowerShell 2.0, это если вы хотите проверить совместимость сценария или основной программы, написанной специально для оболочки PowerShell 2.0 и среды CLR 2.0.

Также будьте готовы к тому, что вы не сможете запустить среду PowerShell 2.0 ISE, если установлена оболочка PowerShell 3.0. При таких условиях вам удастся запустить версию PowerShell 2.0 только из командной оболочки. Однако вы можете использовать среду PowerShell 3.0 ISE для создания сценария, и потом запустить созданный сценарий в оболочке PowerShell 2.0 для проверки совместимости. Может быть это и не оптимальное, но все же решение.

Windows Server 2012

Если говорить об оболочке PowerShell, то система Server 2012 во многом похожа на Windows 8. По умолчанию установлены, активированы и готовы к использованию ядро и среда ISE версии PowerShell 3.0. Вы можете запустить их из меню Start, с рабочего стола или из командной строки Windows. Кроме того, вы можете запустить оболочку PowerShell 3.0 из окна Server Manager.

Однако для работы оболочки PowerShell 2.0 требуется немного другой подход к подготовке системы, чем при работе с Windows 8. Для начала вы должны добавить компонент. NET 3.5, а не просто включить его. Для этого используйте функцию Add roles and Features в окне диспетчера сервера, чтобы добавить в систему компонент. NET Framework 3.5 (включающий версии 2.0 и 3.0). Чтобы получить доступ к этому компоненту, выберите тип установки Role based или Feature based, когда попадете на страницу выбора типа установки.

Следующий шаг в подготовке к PowerShell 2.0 — это добавление актуального ядра. Снова используйте функцию Add Roles and Features в окне Server Manager, выберите тип установки Role-based или Feature-based и компонент Windows PowerShell 2.0 Engine.

Читать еще:  Таймер выключения Windows

После того как вы добавили возможности пакета. NET 3.5 и ядра PowerShell 2.0, вы сможете запустить ядро PowerShell 2.0. Для этого введите следующую команду в командной строке Windows или PowerShell:

Windows 7

В отличие от систем Windows 8 и Server 2012, в состав системы Windows 7 не входят предустановленные ядро PowerShell 3.0 Engine и среда ISE. Наоборот, в состав Windows 7 входят установленные, активированные и готовые к запуску ядро PowerShell и редактор ISE версии 2.0.

Имейте в виду, что если вы щелкаете правой кнопкой мыши на значке PowerShell в меню Start и выбираете пункт Properties, то в строке Target может быть прописана версия v1.0, как показано на приведенном экране. Однако при этом оболочка PowerShell остается работоспособной и вы можете проверить данное утверждение, открыв окно PowerShell и запустив команду Get-Host.

Экран. Свойства PowerShell

Вы можете запустить оболочку PowerShell или редактор ISE из меню Start или командной строки. Чтобы запустить оболочку PowerShell 2.0 с помощью командной строки, введите команду:

Чтобы запустить редактор PowerShell 2.0 ISE из командной строки, введите команду:

Система Windows 7 поддерживает использование версии PowerShell 3.0, но для ее запуска вам нужно будет выполнить несколько шагов.

  1. Установите пакет обновления Windows 7 SP1 (http://www.microsoft.com/en-us/download/details.aspx?id=5842), если еще не сделали этого.
  2. Выполните полную установку компонентов. NET 4.0 (http://www.microsoft.com/en-us/download/details.aspx?id=17851) или. NET 4.5(http://www.microsoft.com/en-us/download/details.aspx?id=30653).
  3. Удалите все предыдущие сборки Windows Management Framework (WMF) 3.0.
  4. Установите последнюю сборку WMF 3.0 (http://www.microsoft.com/en-us/download/details.aspx?id=34595).

Вдобавок к ядру PowerShell 3.0 и среде ISE пакет WMF 3.0 включает и другие компоненты, необходимые для запуска оболочки PowerShell 3.0.

  • WS-Management 3.0. Этот компонент поддерживает работу службы Windows Remote Management (WinRM) и протокола WSMan, которые делают возможным использование компонентов PowerShell, связанных с дистанционным управлением.
  • Windows Management Instrumentation (WMI) 3.0. Этот компонент поддерживает функции, которым необходим инструментарий WMI, например команды Common Information Model (CIM).

Установка пакетов. NET и WMF представляет собой интуитивно понятные процессы, но убедитесь, что вы прочитали все инструкции на странице загрузки, перед тем как установить пакеты в своей системе. Еще одна важная деталь заключается в том, что пакет WMF несовместим с некоторыми приложениями:

  • Microsoft System Center 2012 Configuration Manager;
  • Microsoft System Center 2012 Virtual Machine Manager;
  • Microsoft Exchange Server 2012;
  • Microsoft Exchange Server 2007;
  • Microsoft SharePoint 2010;
  • Windows Small Business Server 2011;
  • Windows Small Business Server 2008.

Если в вашей системе были установлены приложения из приведенного списка, вам не следует устанавливать пакет WMF 3.0, а следовательно обновление до версии PowerShell 3.0 становится невыполнимой задачей (если только вы не найдете обходной путь).

Однако если рассматривать вариант, в котором вы сможете выполнить установку пакета WMF 3.0, то оболочка PowerShell 3.0 и среда ISE будут готовы к запуску, как только закончится установка. В системе Windows 7 запуск ядра PowerShell выполняется точно так же как запуск оболочки PowerShell и редактора ISE версии 2.0 (то есть из меню Start или из командной строки). Если вы хотите запустить ядро оболочки PowerShell 2.0, введите в командную строку следующую команду:

Однако имейте в виду, что после установки пакета WMF 3.0 вы сможете получить доступ к ядру оболочки PowerShell 2.0 только через эту команду. Кроме того, вы больше не сможете использовать редактор PowerShell ISE и запускать ядро PowerShell 2.0 из оболочки PowerShell 3.0. Вам придется задействовать командную оболочку PowerShell, чтобы выполнять операции версии 2.0. Однако, как и при работе с системами Windows 8 и Server 2012, вы сможете использовать редактор PowerShell 3.0 ISE, чтобы создавать свои сценарии и запускать их на ядре PowerShell 2.0 для проверки совместимости.

Windows Server 2008 R2

Система Server 2008 R2 очень похожа на Windows 7 с точки зрения настройки PowerShell. По умолчанию ядро PowerShell 2.0 и редактор ISE установлены в системе. Однако, в отличие от системы Windows 7, на платформе Server 2008 R2 активировано ядро, но не среда ISE. Вам придется установить ее вручную при помощи функции Add Features в окне Server Manager, позволяющей добавить компонент Windows PowerShell Integrated Scripting Environment (ISE). Как только этот компонент будет добавлен, вы сможете запускать и оболочку PowerShell 2.0, и ISE, точно так же, как в системе Windows 7 (с помощью меню Start или командной строки).

Процесс обновления оболочки PowerShell 2.0 до версии Powershell 3.0 похож на процесс обновления в системе Windows 7. Вы устанавливаете пакет обновления SP1, загружаете компоненты. NET 4.0 или. NET 4.5, удаляете все предыдущие сборки WMF 3.0 и устанавливаете самую последнюю сборку WMF 3.0, соблюдая все предосторожности, описанные в разделе, посвященном системе Windows 7. Однако если вы хотите использовать редактор РоwerShell 3.0 ISE после обновления, вы должны быть уверены, что редактор PowerShell 2.0 ISE был активирован до установки пакета WMF 3.0.

После установки пакета WMF 3.0 вы сможете запустить ядро PowerShell 3.0 и редактор ISE, точно так же, как вы запускали их в системе Windows 7 (то есть с помощью меню Start или командной строки). Чтобы получить доступ к ядру PowerShell 2.0, нужно ввести следующую команду в командной строке системы Windows или оболочки PowerShell:

Windows Server 2008

Когда дело дойдет до настройки PowerShell, вы увидите, что платформа Windows Server 2008 действительно отличается от других систем. Эта операционная система не включает в себя предустановленных компонентов PowerShell 2.0 или PowerShell 3.0. В результате вам придется проделать больше работы, чтобы запустить какую-либо из этих версий в своей системе.

Если вы хотите установить ядро PowerShell 2.0 и редактор ISE на компьютер с системой Server 2008, сначала придется удалить все предыдущие версии служб PowerShell или WinRM. Затем, вам нужно установить пакет WMF Core (http://support.microsoft.com/kb/968929/en-us), включающий в себя ядро PowerShell 2.0, среду ISE, а также пакет WinRM 2.0. Теперь вы сможете запускать компоненты PowerShell точно так же, как вы запускали их в системах Windows 7 или Server 2008 R2.

Процесс установки ядра PowerShell 3.0 и ISE не так прост и требует дополнительных шагов.

  • Установите пакет обновления Server 2008 SP2 (http://www.microsoft.com/en-us/download/details.aspx?id=16468), если он еще не был установлен.
  • Установите пакет WMF Core (http://support.microsoft.com/kb/968929/en-us), если он еще не был установлен. Наличие компонента WMF Core — это предварительное условие для установки пакета WMF 3.0 на компьютерах с системой Server 2008.
  • Полностью установите компоненты. NET 4.0 (http://www.microsoft.com/en-us/download/details.aspx?id=17851) или. NET 4.5 (http://www.microsoft.com/en-us/download/details.aspx?id=30653).
  • Установите компонент Extended Protection for Authentication (http://support.microsoft.com/kb/968389). Этот компонент защищает вашу систему от возможных атак и позволяет использовать параметр UseSSL при создании удаленной сессии.
  • Удалите все предыдущие сборки WMF 3.0.
  • Установите самую последнюю сборку WMF 3.0 (http://www.microsoft.com/en-us/download/details.aspx?id=34595).

После завершения процесса установки вы можете обратиться к ядру PowerShell и редактору ISE, как при запуске в системах Windows 7 или Server 2008 R2 (то есть из меню Start или командной строки). Вы можете получить доступ к ядру PowerShell 2.0 так же, как и в других системах, с помощью следующей команды в командной строке системы Windows или оболочки PowerShell:

Игра в PowerShell

Установка PowerShell может быть похожа на игру «в наперстки» — вам нужно угадать, где спрятан шарик. Если вы точно знаете, какую версию PowerShell и в какой операционной системе хотите использовать, весь вопрос заключается лишь в выборе правильного набора инструкций.

Помните, что вы можете запустить ядро PowerShell 3.0 и среду ISE в любой из перечисленных здесь операционных систем. С версией PowerShell 3.0 вы не только получаете несколько важных новых команд, но и такие компоненты как Windows PowerShell Web Access, интеграцию с моделью Common Information Model (CIM), отключенные сессии и поддержку для Windows Workflow Foundation. Редактор PowerShell 3.0 ISE был значительно расширен с добавлением поддержки таких технологий как IntelliSense, автоматическое сохранение, копирование блока, сопоставление с эталоном и раскрывающиеся-закрывающиеся разделы. И самое главное, что вы по-прежнему можете получить доступ к ядру PowerShell 2.0.

Даже если вы решили работать только с версией PowerShell 2.0, вы все равно должны убедиться в том, что работаете с правильной версией PowerShell и что она запускается в нужной вам системе. В связи с этим у вас должна быть вся необходимая информация для настройки окружения PowerShell 2.0.

Поделитесь материалом с коллегами и друзьями

Repair — bde Repair-bde

Возможно, у вас возникла проблема, из-за которой вы повреждаете область жесткого диска, на которой BitLocker хранит важную информацию. You may experience a problem that damages an area of a hard disk on which BitLocker stores critical information. Эта проблема может возникать из-за сбоя жесткого диска или неожиданного выхода Windows. This kind of problem may be caused by a hard disk failure or if Windows exits unexpectedly.

Средство восстановления BitLocker (Repair-bde) можно использовать для доступа к зашифрованным данным на жестком диске, если диск был зашифрован с помощью BitLocker. The BitLocker Repair Tool (Repair-bde) can be used to access encrypted data on a severely damaged hard disk if the drive was encrypted by using BitLocker. Repair-bde может восстановить критические части диска и восстановить данные, которые будут восстановлены, пока для их расшифровки используется допустимый пароль восстановления или ключ восстановления. Repair-bde can reconstruct critical parts of the drive and salvage recoverable data as long as a valid recovery password or recovery key is used to decrypt the data. Если данные метаданных BitLocker на диске повреждены, необходимо указать пакет ключа резервного копирования в дополнение к паролю восстановления или ключу восстановления. If the BitLocker metadata data on the drive has become corrupt, you must be able to supply a backup key package in addition to the recovery password or recovery key. Этот ключевой пакет архивирован в доменных службах Active Directory (добавляет), если вы использовали параметр по умолчанию для добавления резервной копии. This key package is backed up in Active Directory Domain Services (ADDS) if you used the default setting for ADDS backup. С помощью этого ключевого пакета и либо пароля восстановления, либо ключа восстановления можно расшифровывать части диска, защищенного BitLocker, если диск поврежден. With this key package and either the recovery password or recovery key, you can decrypt portions of a BitLocker-protected drive if the disk is corrupted. Каждый пакет ключей будет работать только на диске с соответствующим идентификатором диска. Each key package will work only for a drive that has the corresponding drive identifier. Вы можете использовать средство просмотра паролей восстановления BitLocker, чтобы получить этот ключевой пакет от добавления. You can use the BitLocker Recovery Password Viewer to obtain this key package from ADDS.

Совет. Если вы не собираетесь выполнять резервное копирование данных для восстановления или хотите сохранить ключевые пакеты, вы можете использовать команду manage-bde -KeyPackage для создания ключевого пакета для тома. Tip: If you are not backing up recovery information to ADDS or if you want to save key packages alternatively, you can use the command manage-bde -KeyPackage to generate a key package for a volume.

Программа командной строки Repair-bde предназначена для использования в случаях, когда операционная система не запускается или не запускается консоль восстановления BitLocker. The Repair-bde command-line tool is intended for use when the operating system does not start or when you cannot start the BitLocker Recovery Console. Repair-bde следует использовать при соблюдении указанных ниже условий. You should use Repair-bde if the following conditions are true:

  1. Вы зашифровали диск с помощью шифрования диска BitLocker. You have encrypted the drive by using BitLocker Drive Encryption.
  2. Windows не запускается или вы не можете запустить консоль восстановления BitLocker. Windows does not start, or you cannot start the BitLocker recovery console.
  3. У вас нет копии данных, содержащихся на зашифрованном диске. You do not have a copy of the data that is contained on the encrypted drive.

Примечание. Повреждение диска не может быть связано с BitLocker. Note: Damage to the drive may not be related to BitLocker. Поэтому мы рекомендуем попробовать другие средства для диагностики и устранения неполадок с диском перед использованием средства восстановления BitLocker. Therefore, we recommend that you try other tools to help diagnose and resolve the problem with the drive before you use the BitLocker Repair Tool. Среда восстановления Windows (WindowsRE) предоставляет дополнительные возможности восстановления компьютеров. The Windows Recovery Environment (WindowsRE) provides additional options to repair computers.

Для Repair-bde существуют следующие ограничения: The following limitations exist for Repair-bde:

  • Средству командной строки Repair-bde не удается восстановить диск, который завершился сбоем при шифровании или шифровании. The Repair-bde command-line tool cannot repair a drive that failed during the encryption or decryption process.
  • Средство Repair-bde в командной строке предполагает, что если на диске есть шифрование, то диск полностью зашифрован. The Repair-bde command-line tool assumes that if the drive has any encryption, then the drive has been fully encrypted.
Читать еще:  Тормозит жесткий диск

Дополнительные сведения об использовании Repair-bde можно найти в разделе Repair-bde. For more information about using repair-bde, see Repair-bde.

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

Нужно попасть на сервер, где установлена система, открыть каталог программы (по умолчанию он называется Consultant), по следующему пути, например: X:ConsultantADM

где Х — имя диска на котором установлена программа;

Consultant — основной каталог программы.

В директории ADM нужно найти файл EXITUSER.NET и удалить его. После удаления файла перегрузить систему. Все. Проблема решена!

PowerShell в сравнении с bat

Иногда задачу можно решить как старым дедовским методом, так и при помощи PowerShell. Я рекомендую не лениться и использовать PS, хотя бы просто потому, что так ты его быстрее изучишь и сможешь применять в более сложных ситуациях. К тому же ты постепeнно оценишь его синтаксис — более элегантный и консистентный. Вот несколько примеров, как вещи делались раньше и как их можно сделать при помощи PowerShell.

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

На PowerShell это будет выглядеть вот так:

Вот так через bat можно перезагрузить службу dnscache (или любую другую):

В PowerShell это будет так:

Мап диска в bat:

Да, иногда приходится печатать чуть больше букв, но читаются команды PS гораздо лучше. И это не говоря уже про разные новые возможности.

Windows PowerShell 2.0 преподносит сценарии для Active Directory — и не только для Windows Server 2008 R2

Иногда, кажется, что для создания необходимого решения Microsoft может потребоваться целая вечность. Я имею в виду, десятки тысяч сотрудников по всему миру, а “Halo 4” нет до сих пор? Но иногда, ждать не сложно, потому что Microsoft пытается создать правильное решение — и в случае сценариев и автоматизации Active Directory ожидания оправдались. Windows Server 2008 R2 поставляется с модулем Windows PowerShell 2.0, позволяющим создавать фантастические сценарии и автоматизацию для Active Directory.

Системные требования: правда и мифы

Для работы новых команд Active Directory для Windows PowerShell потребуется Windows PowerShell v2. Команды распространяются в новом модуле для 2.0, не как PSSnapin. Модули легко распространяются и не требуют установки или регистрации — вы просто копируете файлы модуля в папку оболочки Modules и используете команду Import-Module для импортирования модуля в оболочку.

Windows PowerShell 2.0 предустановлен в Windows 7 и Windows Server 2008 R2; он будет доступен для Windows Server 2008, Windows Vista, Windows XP и Windows Server 2003 где-то в конце 2009 или начале 2010 года. Модуль Active Directory поставляется с Windows Server 2008 R2, но для использования этих команд не обязательно иметь контроллер домена (DC) в среде этой ОС. Фактически, команды будут работать хорошо вместе с Windows Server 2003 DC и Windows Server 2008 (не-R2). Вместе с DC для них вы установите бесплатную службу Active Directory Management Gateway Service (можно загрузить с microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=008940c6-0296-4597-be3e-1d24c1cf0dda). Служба шлюза обеспечивает работу с Active Directory, и может быть установлена на Windows Server 2003 R2 SP2 и более позднюю версию, или Windows Server 2008 SP2 и более позднюю версию.

Сейчас на вашем клиентском компьютере нужна функционирующая система Windows 7 или Windows Server 2008 R2, поскольку в настоящее время невозможно установить модуль на что-то постарше.

Проверка подлинности

Одна из сложнейших частей работы с Active Directory является проверка подлинности: вам может понадобиться управлять не только тем доменом, в который вы вошли, но вы можете не иметь доверия в доменах, которыми хотите управлять. В некоторых случаях у вас могут быть административные права в другом домене, но только через альтернативную учетную запись пользователя. Windows PowerShell 2.0 не предоставляет встроенный механизм для сохранения всех этих полномочий. Поэтому люди, писавшие модуль Active Directory, должны были внести новую идею. Их разработка проста и элегантна: модуль Active Directory включает поставщика Windows PowerShell PSDrive. Это означает, что вы можете “прокладывать путь” к домену Active Directory. Этот путь содержит ваши полномочия и позволяет продлить эти полномочия в течении всей сессии оболочки. Когда модуль загружается в оболочку, он автоматически передает ваше имя учетной записи в домене, используя некоторые полномочия, необходимые для работы Windows PowerShell 2.0 (внимание: будет работать Контроль учетных записей, поэтому убедитесь, что запускаете оболочку “под Администратором”, если это необходимо). Что-бы сопоставить новые домены, используйте командлет New-PSDrive, который поддерживает параметры командной строки для указания полномочий.

Что-бы изменить каталоги в подключенном домене, используйте привычную команду Cd: Cd AD:, например, меняет фокус оболочки на отображаемый домен по умолчанию. Изменения в домене важны, поскольку все команды Active Directory по умолчанию будут использовать полномочия какого-либо домена, на котором сфокусирована оболочка на данный момент. Это действительно ловкий трюк, позволяющий запускать команды Active Directory каждый раз, не указывая вручную полномочия. Нужно ли запускать одни и те же команды на другом домене? Только зайдите на этот домен, нажмите пару раз стрелку вверх, что бы обратно вызвать команду Active Directory и нажмите Ввод, для повторного запуска в новом домене.

Читать еще:  Как найти файл на компьютере

Необязательно работать таким способом с командами Active Directory, но тем не менее: каждая из них так же поддерживает параметры командной строки необходимые для указания полномочий в зависимости от случая. Таким образом, вы можете работать каким угодно способом. Такую гибкость я очень ценю. Команда продукта могла бы легко выбрать ту или иную технологию. И фактически они включают обе технологии, таким образом, учитывая разнообразие своей аудитории.

Команды

Все говорят, что модуль Active Directory дает 82 новые команды в оболочке, начиная от очевидных, таких как New-ADUser до более изотерических, как Install-ADServiceAccount. Все эти командлеты имеют приставку “AD”, которая выполняет две важные функции. Первая, помогает различить похожие командлеты, — New-ADUser создает нового пользователя AD. Она не создает нового локального пользователя или нового пользователя SQL Server, или какого-нибудь еще. Во-вторых, приставка помогает легко найти все командлеты: ведите Help *-AD* и вы получите список всех 82 команд.

У каждой команды Active Directory есть параметры командной строки — в некоторых случаях множество параметров. New-ADUser, например, имеет несметное количество параметров и позволяет устанавливать справочные атрибуты, такие как Office, Organization и так далее, без необходимости запоминать внутреннюю схему имен атрибутов (Я никогда не смогу запомнить что в схеме “Last Name” — это “sn”). В этих командах есть один изящный момент:

они защищают вас от глупостей, которые вы можете совершить. Например, если вы запустите Get-ADUser, вы будете ждать список всех пользователей в алфавитном порядке. В большом домене это не только займет некоторое время, но и может сильно воздействовать на ваш DC. Что-бы предотвратить это, есть принудительный параметр команды -filter, позволяющий задавать точку отсчета (такую, как организационная единица) или другие критерии. При помощи -filter *фактически вы получите каждого пользователя в алфавитном порядке. Однако команда не будет автоматически получать каждый атрибут этих пользователей — поскольку это, опять же, может немного понизить работоспособность DC. Дополнительные параметры, такие как -ResultPageSize (предлагает указать, сколько результатов будет показано за раз) и -Properties (предлагает указать, какие атрибуты получать), помогают регулировать баланс между выполнением и получением необходимой информации.

Это похоже на серьезную работу

Я не очень нежно вспоминаю те дни, когда создание и заполнение нового пользователя в Active Directory занимало два десятка строк VBScript. Теперь это просто:

PS AD:> new-aduser -name DonJ -CannotChangePassword $True -Department IT -DisplayName ‘Don Jones’ -EmployeeNumber 42 -GivenName Don -Office ‘Las Vegas’ -Organization ‘Concentrated Technology’ -PasswordneverExpires $True

Ловкий трюк: после создания нового пользователя, может понадобиться сделать что то еще с пользовательским объектом. Если вы добавите переключатель -PassThru в команду, только что созданный объект пользователя будет выведен на конвейер, где другой командлет сможет принять его как входной параметр. Это позволит сделать что-то вроде этого:

New-ADUser . -passThru | Set-ADAccountPassword . -passThru | Enable-ADAccount

Я сократил синтаксис, понятно что — “. ” это место для нормальных параметров. Пример показывает, как -passThru позволяет продолжить вывод объекта пользователя в другой командлет. Эта технология позволяет невероятно эффективно использовать однострочные выражения — команды в одну строчку, а не сценарий — что позволяет работать более эффективно.

Подождите … Это еще не все

Вот здесь я создал небольшой храм, прямо в своем офисе, для парней и девчонок, которые пишут эти команды Active Directory: я обнаружил маленькое чудо под названием конвейерное связывание параметров. И эти люди использовали его в полную силу. Выполните Help New-ADUser -full, и посмотрите помощь для каждого отдельного параметра. Вы заметите, что многие из них соответствуют атрибутам Active Directory, таким как City, Office и Department — принимают входной конвейер “ByPropertyName”. Это и означает, что вы можете передавать входной конвейер командлета New-ADUser. И если входные параметры содержат свойства, которые соответствуют по имени параметра, то они будут согласованы автоматически. Поэтому, если ввод содержит свойство “City”, то оно прикрепится к параметру -City. Если ваш входной конвейер содержит свойство “Department”, оно подключится к параметру -Department.

Если вы знаете, как работает командлет Import-CSV, то вы, наверное, уже взволнованы. Представьте, что файл .CSV содержит такие колонки:

Каждая строка файла содержит информацию для этих колонок. Вы можете легко создать эти структуры в Microsoft Office Excel, Microsoft Office Access, Microsoft SQL Server, или где-нибудь еще, и затем выгрузить свои данные в формат CSV. Если вы сделаете это учитывая соответствие имен колонок и имен параметров New-ADUser, то вы можете создать новых пользователей так:

Import-CSV c:new-users.csv | New-ADUser

Да, это все что вам придется набрать. Если ваш файл .CSV содержит все необходимые колонки — -Name (параметр -Name задается принудительно) — то New-ADUser волшебным образом правильно свяжет.CSV колонки с правильными параметрами. Вы можете импортировать сотни новых пользователей за секунды, вводя не больше 50 символов. Если вы не хотите изучать Windows PowerShell 2.0… то, я думаю, что вы должны просто нажать “Далее, Далее, Готово”.

Управление AD сделано правильно

Один из основных принципов Windows PowerShell это то, что программисты должны написать все административные функции для управления Active Directory — в командлетах оболочки. Любой GUI должен быть, по сути, внешним интерфейсом для этих командлетов. Microsoft Exchange Server 2007 предоставляет нам такую систему, и работает великолепно. Вы получите прекрасный графический пользовательский интерфейс и всегда будете иметь возможность перемещения в командную строку, если этот интерфейс не будет удовлетворять вашим нуждам. Таким способом Microsoft перезаписывает пользователей и компьютеры Active Directory?

Ну, нет. Но если честно, это довольно старый инструмент. Тем не менее, есть еще одна инновационная технология в Windows Server 2008 R2. Это Центр администрирования Active Directory, еще более новый графический интерфейс для управления Active Directory. И угадайте, что находится под Центром администрирования? Да, это командлеты Active Directory. Это означает, что те вещи, которые вы делаете в графическом интерфейсе, вы можете сделать и из оболочки.

В итоге, практически после десятилетия, Active Directory действительно преуспел. Теперь у нас есть возможность простого интуитивного управления через графический интерфейс. Или более мощного автоматизированного управления через полнофункциональную командную строку — что, откровенно говоря, не намного сложнее, чем использование графического интерфейса. Вам не придется ждать Windows Server 2008 R2, потому что с правильными дополнениями ваши домены Windows Server 2003 могут позволить себе такую же управляемость.

Запуск из меню быстрого доступа Win+X

Окно командной строки с повышенными привилегиями также можно открыть с помощью меню быстрого запуска, для этого, находясь на начальном экране, нужно нажать Win+X. В появившемся меню выберите пункт «Командная строка (администратор)» («Command Prompt (Admin)»). Аналог Win+X — правая кнопка мыши в левом нижнем углу

Немного о Powershell

Powershell – расширяемое средство автоматизации от Microsoft, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев.
PowerShell версии 2.0 – неотъемлемый компонент в составе Windows 7, Windows 8 и Windows Server 2008 R2 и др. Т.е. доустанавливать обычно ничего не надо – все уже есть в системе.
Требуемую функциональность для своих задач можно наращивать при помощи уже готовых скриптов-командлетов. Базовых операций очень много, изобретать велосипеды не обязательно. В открытом доступе можно найти множество готовых решений, созданных другими пользователями, не только Microsoft (кстати, тоже бесплатно).

Другие способы открыть PowerShell

Выше перечислены далеко не все способы открытия Windows PowerShell, но, уверен, что их будет вполне достаточно. Если же нет, то:

  • Можно найти PowerShell в меню пуск. Для запуска от администратора используйте контекстное меню.
  • Можно запустить файл exe в папке C:WindowsSystem32WindowsPowerShell. Для прав администратора, аналогично, используем меню по правому щелчку мышью.
  • Если ввести powershell в командной строке, также будет запущен нужный инструмент (но в интерфейсе командной строки). Если при этом командная строка была запущена от имени администратора, то и PowerShell будет работать от имени администратора.

Также, бывает, спрашивают, а что такое PowerShell ISE и PowerShell x86, которые находятся, например, при использовании первого способа. Отвечаю: PowerShell ISE — «Интегрированная среда сценариев PowerShell». По сути, с её помощью можно выполнять все те же команды, но, помимо этого, в ней присутствуют дополнительные возможности, облегчающие работу со скриптами PowerShell (справка, инструменты отладки, цветовая разметка, дополнительные горячие клавиши и т.п.). В свою очередь версии x86 нужны в случае, если вы работаете с 32-битными объектами или с удаленной системой x86.

А вдруг и это будет интересно:

  • Windows 10
  • Настройка роутера
  • Всё про Windows
  • Загрузочная флешка
  • Лечение вирусов
  • Восстановление данных
  • Установка с флешки
  • В контакте
  • Одноклассники
  • Android

Почему бы не подписаться?

Рассылка новых, иногда интересных и полезных, материалов сайта remontka.pro. Никакой рекламы и бесплатная компьютерная помощь подписчикам от автора. Другие способы подписки (ВК, Одноклассники, Телеграм, Facebook, Twitter, Youtube, Яндекс.Дзен)

21.07.2018 в 20:26

14.03.2020 в 16:55

На моём РС (ноут- Винд 10) не было Power Shell. Сделал по Вашему совету: вставил «powershell» в комстроку Админа и… всё получилось.
Спаси,БО!

голоса
Рейтинг статьи
Ссылка на основную публикацию
Статьи c упоминанием слов: