Запустить gui из консоли windows

Обновлено: 04.07.2024


Когда появилась самая первая версия Server Core многие администраторы избегали его по той причине, что они могли использовать исклюительно возможности командной строки, а это не всегда удобно. Однако, в Windows Server 2012 ситуация поменялась, теперь стало возможным использовать гибридный режим, т.е. возможно как отключение, так и включение графического интерфейса.

В Windows Server 2012 GUI последовал примеру общей архитектуры интерфейса управления и работы операционной системы и стал «фичей». Это в свою делает процесс удаления графического интерфейса простым до невозможности. Для начала необходимо запустить «Server Manager».


Нажмите «Manage», а затем выберите пункт «Remove Roles or Features» из меню.


Далее нажмите «Next» для того, чтобы проскочить предварительные пункты мастера настройки, далее выберите необходимый вам сервер из доступного пула (в нашем случае это сервер DC1) и нажмите «Next».


Так как GUI не является ролью, нажмите «Next», чтобы пропустить мастер ролей и перейти к следующей секции.


Когда вы дойдете до мастера фич, вам будет необходимо снять галочку с чек-бокса «User Interfaces and Infrastructure», а затем нажать «Next».


Поставьте отметку на «Restart Destination Server» и нажмите «Remove».


После этого действия GUI будет удален.


После удаления всех необходимых данных сервер будет автоматически перезагружен.


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


После того как мы успешно удалили GUI, было бы очень неплохо знать как же все-таки его вернуть обратно. Для этого мы используем утилиту «SConfig» — так что просто наберите в командной строке «sconfig» и нажмите Enter.


В самом низу экрана можно увидеть пункт меню 12, который как раз отвечает за восстановление графического интерфейса – все что нам остается сделать, это набрать 12 и нажать «Enter».


На экране появится уведомление о том, что в случае включения GUI потребуется перезагрузка сервера – смело нажимаем «Yes» для завершения операции восстановления графического интерфейса.


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


После окончания вышеуказанного процесса вам будет предложено перезагрузить сервер, наберите «y» и нажмите для перезагрузки.

Также мы можем осуществить все вышеперечисленный операции как по удалению, так и по возвращению GUI гораздо быстрее, если воспользуемся командами PowerShell. Для этого необходимо открыть «Server Manager», нажать на «Tools» и запустить PowerShell.


Remove-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra

В свою очередь Remove-WindowsFeature является просто алиасом команды, а значит мы вполне можем также использовать следующие команды:

Uninstall-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra


После ввода команды и нажатия клавиши «Enter» начнется процедура удаления графического интерфейса.


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

Shutdown –r -t 0


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


Первое что нам нужно сделать, это попасть в PowerShell, набираем из командной строки PowerShell и нажимаем «Enter».


Теперь нам понадобится командлет Add-WindowsFeature для того чтобы вернуть GUI обратно:

Add-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra

Это также является алиасом для следующих команд:

Install-WindowsFeature Server-Gui-Shell, Server-Gui-Mgmt-Infra


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

Shutdown –r -t 0


После перезагрузки сервера графический интерфейс будет снова доступен.

P.S> Загрузить Windows Server 2012 RC можно здесь.

С уважением,
Георгий А. Гаджиев
Эксперт по информационной инфраструктуре,
Microsoft

В первую очередь необходимо установить Linux Bash в Windows 10. Инструкция по установке Linux Bash описана в следующей статье:

Для установки Ubuntu из Microsoft Store предлагаем выбрать версию Ubuntu 18.04 LTS в операционной системе Windows 10 May 2019 Update (версия 1903).

Ubuntu 18.04 в Windows 10, версия 1903

Параметры установленного дистрибутива Linux расположены в меню Windows Параметры > Приложения > Приложения и возможности. Из списка установленных программ выберите Ubuntu 18.04 и нажмите на Дополнительные параметры.

Ubuntu 18.04 в Windows 10, версия 1903

Так же открыть параметры Ubuntu 18.04 можно нажав правой кнопкой мыши по значку Ubuntu 18.04 в меню Пуск, в открывшемся меню выбираем Дополнительно > Параметры приложения.

Ubuntu 18.04 в Windows 10, версия 1903

Параметры установленного Линукс дистрибутива в Windows 10 (версия 1903):

Параметры установленного Линукс дистрибутива в Windows 10 (1903)

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

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

Таким образом можно получить доступ к нужным файлам и папкам Linux.

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

Обновление системы и установленных пакетов:

Обновление системы и установленных пакетов

Установка рабочего окружения и пакета программ Ubuntu (Gnome):

Меняем права доступа к папке кэша:

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

VcXsrv Windows X Server

Таких программ несколько. Предлагаем выбрать активно развивающуюся программу VcXsrv Windows X Server. Устанавливаем с настройками по умолчанию.

После запуска программы VcXsrv Windows X Server в окне Display Settings есть выбор отображения интерфейса оконной системы Linux. В нашем случае отлично работал вариант с большим оконным режимом (One large window). Там же в настройках Display number выставляем значение 0 (если возникнут проблем с запуском интерфейса, то значение нужно изменить, кроме того нужно будет изменить и значение в команде запуска).

VcXsrv Windows X Server

Далее оставляем настройки по умолчанию. По окончанию настройки у нас запустится пустое окно.

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

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

VcXsrv Windows X Server

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

Также создайте сценарий оболочки start-ubuntu (имя файла необязательно):

Сделайте скрипт оболочки исполняемым:

Запустить скрипт оболочки:

VcXsrv Windows X Server

Известные проблемы и их решения

Из недостатков, с которыми столкнулись, отметим следующие: проблема с правами доступа различных приложений и системных функций. В качестве решения можно систему запустить с правами root. В целях безопасности не рекомендуется запускать систему с полными правами администратора, но если есть в этом необходимость, то запустить можно следующим образом: после того как открыли приложение VcXsrv и Linux систему, которая открылась в виде командной строки, нужно ввести команду: sudo su , затем вводим команду для запуска графического окружения:

Теперь нам будут доступны ранее неработающие функции системы, например, русификация и работа некоторых расширений Gnome.

Так же мы столкнулись с тем, что предустановленный браузер Firefox не устанавливает дополнения. Можно воспользоваться другим браузером, например, браузером Opera. В режиме суперпользователя запускать его нужно с помощью терминала командой: opera --no-sandbox.

браузер Opera

Система установится на английском языке, установка другого языка доступна только под системой с правами администратора (sudo su). Установить русский язык в систему можно следующими командами:

После этого в настройках системы Ubuntu нужно выбрать и активировать установленный русский язык.

date

24.05.2020

directory

Windows Server 2012

comments

комментария 3

Server Core – особый режим установки Windows Server, это среда, в которой отсутствует графический интерфейс и средства управления, а также некоторые серверные роли и компоненты. Управление Windows Server Core предполагается из командной строки, с помощью PowerShell, или же с других серверов/рабочих станций с установленным RSAT (RSAT для Windows 7, RSAT для Windows 10). Впервые Core-режим работы серверной ОС Microsoft появился еще в Windows Server 2008. Основные преимущества Server Core перед полными инсталляциями Windows Server: экономия системных ресурсов, повышенная стабильность и безопасность за счет меньшего количества компонентов, упрощение обслуживания, меньший даунтайм при установке обновлений, сокращение поверхности атаки злоумышленниками.

Одним из главных недостатков в Windows Server 2008 Core являлась невозможность переключение в режим с графической оболочкой (GUI) или в обратную сторону (из GUI в Core режим). В случае возникновения такой необходимости приходилось целиком переустанавливать ОС.

В Windows Server 2012 теперь можно установить и настроить сервер в знакомом администраторам GUI, после чего перевести сервер в Core режим. Этот подход упрощает процедуру настройки сервера, не вынуждая администраторов разбираться в подчас достаточно сложных консольных командах и командлетах PoSh.

Итак, в Windows Server 2012 возможна работа в нескольких режимах, между которыми в процессе эксплуатирования и настройки сервера может переключаться администратор.

  • Full Server with GUI – полноценный сервер с GUI
  • Server Core with GUI Management (Minimal Server Interface) – минимальная интерфейс сервера с Windows Server 2012, включающий графические утилитаты управления сервером
  • Server Core – режим командной строки
Отметим, что в режиме Minimal Server Interface система занимает примерно на 400 мб меньше места, чем полноценная ОС с GUI. В случае с Server Core экономия достигает порядка 4Г дискового пространства.

Далее мы разберем способы переключения между данными режимами работа новой серверной платформы от Microsoft

Переключение из режима Server Core в GUI

В том случае, если сервер был установлен в режиме Windows Server 2012 Core, в установленных компонентах отсутствуют необходимые файлы для установки GUI (концепция минимизации занимаемого места на диске в Core режиме). По умолчанию, если нужные компоненты отсутствуют на диске, система пытается скачать их с сайта Windows Update. Если доступ в интернет у сервера отсутствует, нам придется указать альтернативные источник установки (с помощью команды powershell Install-WindowsFeature с параметром -Source).

Для установки графического интерфейса нам понадобится дистрибутив Windows Server 2012. Допустим, мы вставили (смонтировали iso образа) дистрибутив Windows Server 2012 в устройство, которому назначена буква D:\.

Далее нужно определить индекс установленной версии Windows Server 2012 в установочном wim образе. Для этого наберите команду, отображающую информацию о содержимом установочного образа:

Т.к. на сервере установлен Windows Server 2012 Datacenter, нас интересует дистрибутив SERVERDATACENTER, индекс которого 4.

Далее нужно установить недостающие компоненты (Server GUI) из wim файла командой:

Процедура установки займет порядка 5-10 минут. В том случае если при установке будут наблюдаться проблемы, попробуйте отключить сетевые карты, чтобы Windows не пыталась скачать файлы с сайта Windows Update.

После выполнения команды сервер автоматически перезагрузится и загрузится уже в графическом режиме.

Графические компоненты Windows Server 2012 можно также установить и с помощью DISM, ту же самую операцию выполним с помощью двух команд:

В том случае, если сервер изначально был установлен в GUI режиме, который затем отключили, его можно вернуть командой:

Переключение из GUI режима в Core

Удалить GUI режим в Win Server 2012 в Core можно несколькими способами:

  • С помощью Powershell
  • Из графического интерфейса консоли Server Manager

Запустите строку PoSh и выполните команду

Windows Server 2012 удалить GUI powershell

После выполнения команды сервер автоматически перезагрузится и загрузили уже в Core-режиме.

Аналогом командлета remove-WindowsFeature является Uninstall-WindowsFeature команда, и чтобы перейти из режима Server with GUI в режим Server Core воспользуйтесь командами:

Если вам удобнее пользоваться графическими утилитами, откройте консоль Server Manager:

Переключение из Windows Server 2012 GUI в Minimal Server interface

В режиме работы Minimal Server Interface в системе присутствуют все базовые графические инструменты управления сервером (оснастки MMC, консоль Server Manager, элементы панели управления), однако такие компоненты как Windows Explorer, Internet Explorer 10, рабочий стол, начальный экран Start screen отсутствуют.

С помощью Powershell переключиться в режим Minimal Server Interface можно с помощью команды:

windows server 2012 minimal server interface

Тоже самое в графической консоли Server Manager:

В данном примере мы используем PowerShell 3.0+ (я буду писать скрипт в PowerShell ISE в Windows 10).

Add-Type -assembly System.Windows.Forms

Теперь создадим графическую форму (окно):

$window_form = New-Object System.Windows.Forms.Form

Установим заголовок и размеры окна формы (в пикселях):

$window_form.Text ='Пример графического интерфейса для скрипта PowerShell'
$window_form.Width = 500
$window_form.Height = 200

Чтобы форма автоматически растягивалась, если элементы расположенные на форме выйдут за границы, нужно включить атрибут AutoSize:

Теперь можно отобразить форму на экране.

вывод графической формы в скрипте powershell

Как вы видите, на экране появилась пустая форма указанных размеров. Чтобы добавить не нее различные графические диалоговые элементы, перед строкой $window_form.ShowDialog() добавим следующие строки.

Создадим на форме надпись:

$FormLabel1 = New-Object System.Windows.Forms.Label
$FormLabel1.Text = "Выберите пользователя домена AD"
$FormLabel1.Location = New-Object System.Drawing.Point(0,10)
$FormLabel1.AutoSize = $true
$window_form.Controls.Add($FormLabel1)

Создадим выпадающий список и заполним его списком учетных записей из домена, полученных с помощью командлета Get-ADuser (входит в модуль ActiveDirectory для PowerShell).

$FormLabel2 = New-Object System.Windows.Forms.Label
$FormLabel2.Text = "Последняя смена пароля:"
$FormLabel2.Location = New-Object System.Drawing.Point(0,40)
$FormLabel2.AutoSize = $true
$window_form.Controls.Add($FormLabel2)
$FormLabel3 = New-Object System.Windows.Forms.Label
$FormLabel3.Text = ""
$FormLabel3.Location = New-Object System.Drawing.Point(140,60)
$FormLabel3.AutoSize = $true
$window_form.Controls.Add($FormLabel3)

Теперь поместим на форму кнопку действия с надписью «Проверить»:

$FormButton = New-Object System.Windows.Forms.Button
$FormButton.Location = New-Object System.Drawing.Size(400,10)
$FormButton.Size = New-Object System.Drawing.Size(100,20)
$FormButton.Text = "Проверить"
$window_form.Controls.Add($FormButton)

Теперь к созданной кнопке привяжем скрипт проверки, которые должен вызываться при щелчке на кнопке (событие Add_Click). Для преобразования даты из формата TimeStamp в нормальный вид воспользуемся функцией [datetime]::FromFileTime.

$FormButton.Add_Click(
$FormLabel3.Text = [datetime]::FromFileTime((Get-ADUser -identity $FormComboBox.selectedItem -Properties pwdLastSet).pwdLastSet).ToString('dd mm yy : hh ss')
>
)

Запустите PowerShell скрипт. Как вы видите, он заполняет выпадающий список именами учётных записей из AD. Если вы выберите нужную учетную запись пользователя и нажмите на кнопку, в поле отобразится время последней смены пароля данного пользователя в Active Directory.

простой GUI для скрипт powershell

Аналогичным образом вы можете создать следующие графические элементы на форме:

  • CheckBox
  • RadioButton
  • TextBox
  • ChekedListBox
  • GroupBox
  • ListBox
  • TabControl
  • ListView
  • TreeView
  • DateTimePicker
  • TrackBar
  • PictureBox
  • ProgressBar
  • HScrollBar
  • VScrollBar
  • ContextMenu
  • Menu

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

[System.Windows.Forms.MessageBox]::Show("Запущен процесс расчета","Предупреждение",0)

poshgui - онлайн генератор редактор графических форм для powershell

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

Читайте также: