Удаленное управление процессами windows

Remote Process Explorer — управление процессами на локальном или удаленном компьютере в режиме реального времени. Можно завершать выбранные процессы, запускать новые или изменить приоритет процесса.

С помощью Remote Process Explorer вы сможете увидеть полную информацию о каждом запущенном процессе, включая время начала процесса, пользователя, запустившего процесс, путь к его исполняемому файлу, а также потребляемый объем памяти и процессора.

Эта информация доступна в диспетчере задач и может быть получена как для локального, так и для удаленного компьютера. Для управления удаленным компьютером Remote Process Explorer имеет встроенные инструменты, которые он использует.

Ключевые особенности Remote Process Explorer:

  • Мониторинг всех запущенных процессов на локальном и удаленном компьютере.
  • Отображение параметров запущенных процессов (ID процесса, PID родителя, CPU, Memory Usage, Priority, Handles, Threads и многое другое) в режиме реального времени.
  • Отображение дерева процессов.
  • Завершение выбранного процесса в любое время.
  • Изменение приоритета процесса на удаленном компьютере.
  • Запуск новых процессов на удаленном компьютере.
  • Выключение и перезагрузка удаленного компьютера.
  • Поиск информации о выбранном процессе в Интернете.
  • Мастер добавления компьютеров.
  • Группы в списке компьютеров.
  • Показ состояния компьютера в списке (включен/выключен).
  • Автоматическое обновление списка компьютеров.
  • Использование разных учетных записей для каждого компьютера.
  • Дополнительные инструменты администрирования.

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

ТОП-сегодня раздела «Мониторинг»

MSI Afterburner 4.6.5

MSI Afterburner — настоящая находка для истинного оверклокера, с помощью которой можно…

SpeedFan 4.52

SpeedFan — бесплатный и удобный в использовании инструмент для контроля за температурой и…

Speccy 1.33.079

Speccy — небольшая бесплатная программа, позволяющая узнать массу полезной информации об…

HWMonitor 1.57

HWMonitor — бесплатная утилита для мониторинга параметров работы различных компонентов ПК,…

Quick CPU 4.10.0

Бесплатная, но очень мощная программа, разработанная для настройки и мониторинга…

Отзывы о программе Remote Process Explorer

Admin

Отзывов о программе Remote Process Explorer 21.04 пока нет, можете добавить…

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

Оглавление:

Удаленное управление
Командлеты vs CIM/WMI
Управление процессами через CIM/WMI
Управление службами через CIM/WMI
Работа с реестром
Работа с журналами событий
Информация об ОС и оборудовании

Удаленное управление

PowerShell позволяет удаленно управлять одним или несколькими компьютерами. Для этого можно задействовать объекты .NET, CIM, WMI, поддерживающие соответствующую функцию командлеты, удаленный запуск команд или интерактивную удаленную сессию. Подключение осуществляется через PS remoting/WinRM по протоколу HTTP (порт 5985) или HTTPS (порт 5986, требуется сертификат SSL). По умолчанию соединение устанавливается по HTTP, но данные все равно шифруются с использованием симметричного ключа AES-256. Поддерживаются два способа аутентификации: NTLM и Kerberos (по умолчанию). Второй способ доступен, если удаленный компьютер входит в домен AD, а в Workgroup или если вместо доменного имени указан IP, применяется NTLM и требуется дополнительная настройка. На компьютере, к которому мы подключаемся, должен быть запущен сервис WinRM.

Если сервис не запущен, можно воспользоваться командлетом Enable-PSRemoting. Виртуальные машины RuVDS с Windows Server Core конфигурируются с настроенным из коробки удаленным доступом и никаких дополнительных действий не требуют. Для использования HTTP также придется добавить хост, к которому необходимо подключиться, в TrustedHost компьютера, с которого запускается команда. Если машина работает в глобальной сети, может потребоваться настройка брендмауэра. PS remoting/WinRM позволяет создавать удаленные сессии (New-PSSession, Get-PSSession, Enter-PSSession), выполнять команды и скрипты (Invoke-Command) на одном или нескольких компьютерах, а также использовать командлеты с параметром -ComputerName. Последнее справедливо и в отношении командлетов для работы с CIM/WMI. Более подробная информация доступна на сайте Microsoft.

Командлеты vs CIM/WMI

Хотя некоторые командлеты поддерживают параметр -ComputerName, возможности их применения для работы с хостами в сети ограничены. Создания сессий и удаленного выполнения команд PowerShell хватает не всегда, и тут нам помогут командлеты для работы с WMI или CIM (иногда можно обойтись и NET-объектами). Использование CIM предпочтительнее, поскольку дальнейшая разработка и поддержка WMI в Windows прекращена. В обоих случаях используется Common Information Model (CIM) и экземпляры соответствующих классов. При необходимости можно просматривать структуру результирующих объектов, фильтровать, сортировать и выделять их из коллекции, а также проводить другие действия над полученными результатами. При работе в интерактивном режиме текстовый вывод несложно отформатировать, а в скриптах обычно обращаются к свойствам и методам объектов. Хотя командлеты WMI и CIM похожи, в первом случае нетрудно получить ссылку на конкретный объект (экземпляр класса) и непосредственно вызвать один из его методов без использования Invoke-WmiMethod. Результирующие CIM-объекты методов класса не содержат, поэтому вызывать командлет Invoke-CimMethod для управления придется обязательно.

Управление процессами через CIM/WMI

В предыдущих статьях мы довольно часто использовали Get-Process, который возвращает соответствующие запущенным в системе процессам объекты типа System.Diagnostics.Process. С помощью этого командлета можно получать сведения только о локальном компьютере, а чтобы работать с удаленной машиной, нам снова понадобятся командлеты CIM/WMI и класс Win32_Process. Приведем примеры используемых для работы с ним команд.

Get-WmiObject Win32_Process

или

Get-CimInstance Win32_Process

Предыдущие примеры иллюстрируют получение информации о запущенных на локальной машине процессах, для работы с удаленными компьютерами используется параметр -ComputerName:

Get-WmiObject Win32_Process -ComputerName IP_ADDRESS
Get-WmiObject Win32_Process -ComputerName NAME

или

Get-CimInstance Win32_Process -ComputerName IP_ADDRESS
Get-CimInstance Win32_Process -ComputerName NAME

Управление службами через CIM/WMI

Командлет Get-Service в актуальных реализациях поддерживает параметр -ComputerName, но позволяет только получить информацию о статусе сервиса на удаленной машине — управлять им через свойства и методы результирующих объектов не получится. Более правильным в распределенной среде подходом также считается использование командлетов CIM и WMI. Как и для процессов, для служб в объектной модели CIM имеется специальный класс Win32_Service.

Get-WmiObject Win32_Service

или

Get-CimInstance Win32_service

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

Get-WmiObject Win32_Service -ComputerName IP_ADDRESS
Get-WmiObject Win32_Service -ComputerName NAME

или

Get-CimInstance Win32_service -ComputerName IP_ADDRESS
Get-CimInstance Win32_service -ComputerName NAME

Для уточняющих запросов используется параметр -Filter. Таким способом несложно выяснить, стартует служба автоматически или должна быть запущена вручную:

Get-Wmiobject Win32_service -Filter "StartMode <>'disabled'" | sort StartMode | format-table -GroupBy StartMode -Property Name,State,PathName -AutoSize

Аналогичным образом можно сгруппировать службы по учетной записи:

Get-Wmiobject Win32_service | group startname

Следующая команда возвращает все сервисы, запущенные от имени администратора:

Get-Wmiobject Win32_service -Filter "startname like '%administrator%'" | Select Name,startmode,state,startname,systemname

Для командлетов CIM фильтры работают аналогично:

Get-CimInstance Win32_service -filter "startmode='auto' AND state<>'Running'" | Select Name,State,Systemname

Для реальной работы важен не столько текстовый вывод командлетов, сколько сами бинарные объекты. С их помощью можно запускать и останавливать соответствующие службы, менять режим их запуска или устанавливать свойства. В случае с WMI методы объектов вызываются напрямую или через Invoke-WmiMethod. Для объектов CIM доступно только использование Invoke-CimMethod.

Работа с реестром

Системный реестр Windows — это имеющая древовидную структуру иерархическая база данных, содержащая информацию об аппаратной и программной конфигурации компьютера. Каждый ее узел — это содержащий другие узлы (записи базы данных) раздел либо имеющий некое значение ключ. Раздел может содержать вложенные подразделы: по структуре реестр напоминает файловую систему и для работы с ним в PowerShell есть виртуальные «диски». Просмотреть их можно с помощью командлета Get-PSDrive, а обратиться к соответствующему разделу — с помощью Set-Location (псевдоним cd).

«Диски» реестра содержат «каталоги» (разделы), подкаталоги «подразделы» и «файлы» (параметры). Для просмотра подразделов используется командлет Get-ChildItem (псевдоним dir), а для просмотра параметров: Get-ItemProperty. Разделы реестра представлены экземплярами .NET-класса Microsoft.Win32.RegistryKey, а параметры — System.Management.Automation.PSCustomObject. Чтобы получить доступ к системному реестру удаленной машины, придется напрямую использовать объекты .NET, WMI или CIM.

Работа с журналами событий

Журналы событий (Event logs) в Windows — важный для администратора инструмент, с помощью которого можно отслеживать состояние системы и приложений, а также оперативно анализировать возникающие проблемы. Обычно для работы нужны журнал безопасности (Security log), системный журнал (System log) и журнал приложений (Application log). В зависимости от установленных компонентов и настроенных ролей, на сервере могут быть и другие: журнал службы каталога (Directory service log), журнал службы каталога (Directory service log) или, например, журнал службы репликации файлов (File Replication Service log). Для их просмотра на локальной машине используется консоль управления MMC, а в PowerShell командлет Get-EventLog. Для работы с удаленными хостами можно воспользоваться соответствующими определенным журналам объектами CIM и WMI (экземплярами класса Win32_NTEventlogFile).

$Logs = Get-WmiObject Win32_NTEventlogFile 
$Logs | Format-List

или

$Logs = Get-CimInstance Win32_NTEventlogFile 
$Logs | Format-List

Пример иллюстрирует работу с локальными журналами, для подключения к удаленному компьютеру нужен параметр -ComputerName:

$Logs = Get-WmiObject Win32_NTEventlogFile -ComputerName NAME
$Logs | Format-List

или

$Logs = Get-CimInstance Win32_NTEventlogFile -ComputerName NAME
$Logs | Format-List

Информация об ОС и оборудовании

С помощью командлетов CIM и WMI можно получать разнообразную информацию от работающих в сети компьютеров, а также управлять ими. Для этих целей применяются командлеты CIM/WMI и соответствующие классы. Рассмотрим их использование на практических примерах.

Класс Win32_OperatingSystem решает множество разнообразных задач. С помощью его метода Win32Shutdown завершается сеанс пользователя:

(Get-WMIObject Win32_OperatingSystem).Reboot()

Для получения информации о BIOS потребуется класс Win32_BIOS

Get-WmiObject Win32_BIOS | Select-Object -Property * -ExcludeProperty __*

или

Get-CimInstance Win32_BIOS | Select-Object -Property * -ExcludeProperty __*

Вывод свойств операционной системы:

Get-WmiObject Win32_OperatingSystem | Select-Object –Property * -ExcludeProperty __*

или

Get-CimInstance Win32_OperatingSystem | Select-Object –Property * -ExcludeProperty __*

Класс Win32_QuickFixEngineering предназначен для получения списка установленных обновлений:

Get-WmiObject Win32_QuickFixEngineering

или

Get-CimInstance Win32_QuickFixEngineering

Завершая цикл публикаций, мы хотим напомнить, что PowerShell — нечто большее, чем просто командная оболочка. Скорее она напоминает гибрид Bash и SSH/SSHD с возможностью использования объектов .NET и объектной модели CIM. Это позволяет решать сложные задачи управления распределенной ИТ-средой, хотя и требует иногда громоздких синтаксических конструкций. Без знания PowerShell сегодня не обойдется ни один грамотный системный администратор Windows.


Часть 1: Основные возможности Windows PowerShell
Часть 2: Введение в язык программирования Windows PowerShell
Часть 3: Передача параметров в скрипты и функции, создание командлетов
Часть 4: Работа с объектами, собственные классы
Часть 5: Доступ к внешним объектам

Иногда возникает вопрос как посмотреть какие процессы запущены на удаленном компьютере пользователя (и завершить процесс на удаленном компьютере) но при этом не ставить ни какое доп ПО и вообще что бы это было быстро и желательно из консоли ) На этот случай «мелкософт» позаботился о сисадминах и дал там волшебную команду tasklist (о всех ее функция можете посмотреть в командной строке tasklist /?)

Но перейдем к делу, а точнее к пошаговой инструкции по пользованию этой удобной утилиты!

  1. Для начала откроем командную строку Пуск-cmd
  2. Вводим команду tasklist /s winxp-test 
    tasklist — команда по выводу удаленных процессов
    /s — ключ который говорит что будет подключать удаленный компьютер
    winxp-test — имя компьютера на котором нужно вывести процессы

    просмотр процессов на удаленном компьютере

  3. теперь зная имя процесса и его PID мы его принудительно завершим, для примера я взял процесс uTorrent с номер процесса 2720
  4. Далее запускаем другую команду taskkill /s winxp-test /pid 2720 
    список процессов на удаленном компьютере

  5. Все, радуемся жизни не поднимаю пятую точку со стула )

PS Данная утилиты очень полезна когда требуется быстро решить проблему не тревожа пользователя выяснить что не так на его компе или найти «плохую редиску» в офисе которая запускает ненужно ПО на своем компе.

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

Видео урок как посмотреть и завершить процесс на удаленном компьютере

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

Список доступных командлетов управления процессами в Windows 10 можно вывести так:

Get-Command –Noun Process

командлеты управления процессами в powershell

  • Get-Process – получить список запущенных процессов;
  • Start-Process – запустить процесс/программу;
  • Stop-Process – принудительно остановить процесс;
  • Debug-Process – используется для отладки процессов;
  • Wait-Process – используется для ожидания окончания процесса.

Содержание:

  • Get-Process – получение списка запущенных процессов
  • Start-Process, Stop-Process: запуск и остановка процессов из PowerShell
  • PowerShell: управление процессами на удаленном компьютере

Get-Process – получение списка запущенных процессов

Командлет
Get-Process
позволяет вывести список запущенных процессов на локальном компьютере.

Get-Process список запушенных процессов

По-умолчанию выводятся следующие свойства запущенных процессов:

  • Handles – количество дескрипторов ввода — вывода, которые отрыл данный процесс;
  • NPM(K) — Non-paged memory (невыгружаемый пул). Размер данных процесса (в Кб.), которые никогда не попадают в файл подкачки на диск;
  • PM(K) – размер памяти процесса, которая может быть выгружена на диск;
  • WS(K) – размер физической памяти в Кб, используемой процессом (working set).
  • CPU(s) – процессорное время, использованное процессом (учитывается время на всех CPU);
  • ID — идентификатор процесса;
  • SI (Session ID) – идентификатор сеанса процесса (0 — запущен для всех сессий, 1 – для первого залогиненого пользователя, 2 — для второго и т.д.);
  • ProcessName – имя процесса.

Чтобы получить все свойства нескольких процессов:

Get-Process winword, notep* | Format-List *

Можно вывести только определенный свойства процессов. Например, имя (ProcessName) время запуска (StartTime), заголовок окна процесса (MainWindowTitle), имя исполняемого файла (Path) и наименование разработчика (Company):

Get-Process winword, notep* | Select-Object ProcessName, StartTime, MainWindowTitle, Path, Company|ft

вывести подроюную информацию о запущенных процессах

Вывести список запущенных процессов пользователя с графическими окнами (в список не попадут фоновые и системные процессы):

Get-Process | Where-Object {$_.mainWindowTitle} | Format-Table Id, Name, mainWindowtitle

Get-Process | Where-Object {$_.mainWindowTitle - процессы с графическими окнами

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

Get-Process -Name winword -IncludeUserName

С помощью Where-Object можно выбрать процессы в соответствии с заданными критериями. Например, выведем все процессы, которые используются более 200 Мб оперативной памяти, отсортируем процессы в порядке убывания используемого объема RAM, размер памяти из Кб преобразуем в Мб:

Get-Process| where-object {$_.WorkingSet -GT 200000*1024}|select processname,@{l="Used RAM(MB)"; e={$_.workingset / 1mb}} |sort "Used RAM(MB)" –Descending

Get-Process найти процессы, которые занимают более 200 Мб оперативной памяти

Как мы уже говорили ранее командлет Get-Process в параметре CPU содержит время использования процессора конкретным процессом в секундах. Чтобы отобразить процент использования CPU процессами (по аналогии с Task Manager), используйте такую функцию:

function Get-CPUPercent
{
$CPUPercent = @{
Name = 'CPUPercent'
Expression = {
$TotalSec = (New-TimeSpan -Start $_.StartTime).TotalSeconds
[Math]::Round( ($_.CPU * 100 / $TotalSec), 2)
}
}
Get-Process | Select-Object -Property Name, $CPUPercent, Description | Sort-Object -Property CPUPercent -Descending | Select-Object -First 20
}

Get-CPUPercent

Чтобы найти зависшие процессы (которые не отвечают), выполните команду:

Get-Process | where-object {$_.Responding -eq $false}

Start-Process, Stop-Process: запуск и остановка процессов из PowerShell

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

Start-Process -FilePath notepad

Если каталог с исполняемым файлом отсутствует в переменной окружения $env:path, нужно указать полный путь к файлу:

Start-Process -FilePath 'C:\distr\app.exe'

Можно запустить программу и передать ей аргументы:

Start-Process -FilePath ping -ArgumentList "-n 10 192.168.1.11"

С помощью параметра WindowStyle вы можете задать режим запуска окна процесса (normal, minimized, maximized, hidden). Например, чтобы запустить программу в максимально развернуом окне и дождаться завершения процесса, выполните команду:

Start-Process -FilePath tracert -ArgumentList "192.168.1.11" –wait -windowstyle Maximized

С помощью командлета Stop-Process можно завершить любой процесс. Например, чтобы закрыть все запущенные процессы notepad:

Stop-Process -Name notepad

По-умолчанию не запрашивается подтверждение завершения процесса. Закрываются все процессы, которые соответствуют указанным критериям. Чтобы запросить подтверждение завершения для каждого процесса, добавьте –Confirm.

Stop-Process -Name notepad.exe -Confirm

Stop-Process завершить процесс powershell

Также завершить процесс можно так:

(Get-Process -Name notepad).Kill()

Из PowerShell можно принудительно завершить все приложения, которые не отвечают диспетчеру процессов Windows:

Get-Process | where-object {$_.Responding -eq $false}| Stop-Process

PowerShell: управление процессами на удаленном компьютере

С помощью аргумента ComputerName командлет Get-Process позволяет управлять процессами на удаленных компьютерах (должен быть включен и настроен WinRM).

Get-Process -ComputerName dc01, dc02| Format-Table -Property ProcessName, ID, MachineName

Мы рассматриваем встроенные возможности комнадлета Get-Process для управления процессами на удаленных компьютерах. Здесь не учитываются возможности PowerShell Remoting, которые доступны в командлетах Invoke-Command и Enter-PSSession.

Если вы хотите завершить процесс на удаленном компьютере, имейте в виду, что у командлета Stop-Process отсутствует параметр –ComputerName. Для завершения процесса на удаленном компьютере можно использовать такой PowerShell код:

$RProc = Get-Process -Name notepad -ComputerName dc01
Stop-Process -InputObject $RProc

A while back we talked about ways you can manage Windows services remotely. Today, we’ll show you seven ways you can “manage” Windows processes remotely in general. By manage we mean start, query, and kill a remote Windows process. Keep in mind pretty much all of these tools and techniques here assume you have appropriate permissions on the remote computer.

Starting processes remotely

1. PsExec, PowerShell, and WMI

We’ve already touched on ways you can start processes remotely using tools like PsExec, but with a little bit of scripting effort, you can also use tools like PowerShell’s Invoke-Command cmdlet or even a WMI query.

Query processes remotely

Without interactively connecting to a remote Windows computer you can easily query its current list of processes with a variety of tools.

2. tasklist

Since Windows XP there is a built-in command line utility named “tasklist“. By running the command “tasklist /s hostname” where “hostname” is the remote computer you want to query, it will return a list of processes on the remote machine and some basic details about each process (PID, session number, memory usage, etc.).

The tasklist command also allows you to specify different credentials on the command line if you need to authenticate to the remote computer with a different username and password. Just remember if you specify the password on the command line it will be visible to other administrators on the local computer who look at the local computer’s process list details.

tasklist

In a command prompt run “tasklist /?” for more information about its usage.

3. PsList

Once again, if you’ve followed our articles for awhile, you know we’re big fans of the SysInternals PsTools suite. The PsList utility is another part of the PsTools suite. PsList is very similar to tasklist, but it gives you much more detailed information on threads (counts, states, context switches, etc.), CPU usage (user time, kernel time, etc.), and memory usage (private byes, working set, virtual memory, page faults, etc.).

PsList can also target a specific PID or process name (or name pattern). And one of my favorite features of PsList is the -t option to show you the process tree structure.

Much like the tasklist command, PsList also allows you to specify different credentials on the command line if you need to authenticate to the remote computer with a different username and password. Again, remember if you specify the password on the command line it will be visible to other administrators on the local computer who look at the local computer’s process list details.

pslist

After downloading PsList, in a command prompt run “pslist -?” for more information about its usage.

4. Scripting

And of course, if you want to go the scripting route, you can use things like PowerShell’s Get-Process cmdlet or again, even WMI queries to get details about remote Windows processes.

Killing processes remotely

Just like how you don’t need an interactive login to a remote Windows computer to get running process details, you don’t need an interactive login to terminate Windows processes on a remote computer either.

You obviously want to be very careful with these remote kill commands as you can pretty easily knock out an important service or process on the remote machine. Proceed with caution.

5. taskkill

The taskkill command is very similar to the tasklist command. You can specify a process name to kill by running a command like “taskkill /s hostname /IM notepad.exe” or one ore more PIDs with “taskkill /s hostname /PID 1234 /PID 5678”, where hostname is the name of the remote computer. The taskkill command also has a /t option to terminate an entire process tree (i.e. kill the process and any child processes it spawned).

Just like the tasklist command, taskkill also allows you to specify different credentials on the command line if you need to authenticate to the remote computer with a different username and password. Again, remember if you specify the password on the command line it will be visible to other administrators on the local computer who look at the local computer’s process list details.

In a command prompt run “taskkill /?” for more information about its usage.

6. PsKill

Just like how tasklist has the sister command taskkill, PsList has a sister command in PsKill. PsKill is also part of the SysInternals PsTools suite. PsKill is nearly identical to taskkill in that it will let you specify a process name or PID to kill, it has a -t option to terminate an entire process tree, and it allows you to specify different credentials on the command line. And just to drive it home… once again, remember if you specify the password on the command line it will be visible to other administrators on the local computer who look at the local computer’s process list details.

After downloading PsKill, in a command prompt run “pskill -?” for more information about its usage.

7. Scripting

Unfortunately PowerShell’s Stop-Process cmdlet doesn’t take a “-ComputerName” argument for remote execution, however you can workaround this by combining Stop-Process with Invoke-Command to remotely execute the cmdlet like:

Invoke-Command -ComputerName hostname {Stop-Process -name "notepad"}

And of course, good ol’ WMI provides a way for you to terminate a remote Windows process as well.

So as you can see, there are many tools and techniques – most built-in to Windows – that allow you to manage Windows processes remotely. Have fun with your processes!

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Virtio win guest tools windows 7
  • Install curl for windows
  • Активация windows 10 pro пиратка
  • Как подключить два дисплея к компьютеру в windows 10
  • Активация windows server 2016 datacenter