Как выполнить программу на другом компьютере

Содержание

Выполнение консольных команд на удаленных компьютерах по сети

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

Я использую 2 средства удаленного выполнения консольных команд: PsExec и WinRM, у каждого из них есть свои преимущества.

Переименование удалённого ПК

Текущее имя ПК можно увидеть через запрос к значению в реестре:

Изменяем в реестре имя ПК на New-PC-Name:

reg add «HKLMSYSTEMCurrentControlSetControlComputerNameComputerName» /v ComputerName /t REG_SZ /d «New-PC-Name» /f

reg add «HKLMSYSTEMCurrentControlSetServicesTcpipParameters» /v ComputerName /t REG_SZ /d «New-PC-Name» /f

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

Здесь мы дали пользователю 3 минуты (180 секунд) на закрытие документов, но можно этот параметр изменить в соответствии со случаем.

Примеры

В этой статье я написал Описание того, как работает PsExec и предоставляет советы по его использованию:

КАК ДАТЬ ДОСТУП ДРУГУ СО СЛАБЫМ ПК К СВОЕМУ КОМПУ, ЧТОБЫ ОН ПОИГРАЛ?

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

Эта команда выполняет команду IpConfig в удаленной системе с /all параметром и отображает итоговый результат на локальном компьютере:

Эта команда копирует программу test.exe в удаленную систему и выполняет ее в интерактивном режиме:

Укажите полный путь к программе, которая уже установлена в удаленной системе, если она не находится в системном пути:

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

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

Download

Загрузить PsTools(3,5 МБ)

PSTools

PsExec является частью растущего комплекта средств командной строки Sysinternals, помогающих в администрировании локальных и удаленных систем с именем PsTools.

CMD/BAT: удаленный запуск процессов, используем PsExec из PsTools

Работаем с утилитой PsExec из комплекта PsTools от Марка Руссиновича (Mark Russinovich).
http://technet.microsoft.com/en-us/sysi … 97553.aspx
PsExec — легкая замена telnet, которая позволяет вам выполнять процессы на других системах с полноценным функционалом консольных приложений, не имея необходимости вручную устанавливать клиентское программное обеспечение. Самое эффектное использование PsExec включает интерактивные приглашения ко вводу команды на отдаленных системах и отдаленный запуск таких инструментальных средств, как IpConfig. Обратите внимание: некоторые антивирусные сканеры сообщают, что один или больше файлов заражены вирусом «remote admin». Ни одна из утилит PsTools не содержит вирусов, но они использовались вирусами, что и является причиной, почему они вызывают вирусные уведомления.

Компиляция проекта и запуск на другом компьютере Rad Studio Delphi

Инсталляция: просто скопируйте psexec.exe туда, откуда его можно вызвать без точного указания пути, например, в C:WINDOWSsystem32. Команда «psexec» отобразит свой синтаксис использования.

computer
Указывает PsExec выполнить приложение на определенных компьютерах. Если вы опускаете имя компьютера, PsExec выполняет приложение на текущей системе. Если вы указывате имя «*», PsExec выполняет приложение на всех компьютерах в текущем домене.

-a
Процессоры, на которых может выполниться приложение. Перечисляются через запятую. 1 — первый центральный процессор. Например, чтобы выполнить приложение на центральном процессоре 2 и центральном процессоре 4, укажите: «-a 2,4».

-c
Скопировать указанную программу на отдаленную систему для выполнения. Если вы опускаете эту опцию, приложение должно быть «в путях» (path) отдаленной системы.

-d
Не ждать завершения приложения.

-e
Не загружать профиль указанной учетной записи.

-f
Скопировать указанную программу на отдаленную систему, даже если файл уже существует на отдаленной системе.

-i
Выполнить программу так, чтобы она взаимодействовала с рабочим столом указанного сеанса на отдаленной системе. Если никакой сеанс не определен, процесс работает в консольном сеансе.

-l
Выполнить процесс под ограниченным пользователем (игнорирует группу Administrators и разрешает только привилегии, назначенные группе Users). На Windows Vista процесс выполняется как Low Integrity.

-n
Определяет таймаут в секундах для соединения с отдаленными компьютерами.

-p
Определяет опциональный пароль пользователя. Если вы опустите это, будет запрошен ввод пароля.

-s
Выполнить удаленный процесс под системной учетной записью (System).

-u
Определяет опциональное имя пользователя для входа в систему на удаленном компьютере.

-v
Скопировать указанный файл, только если он имеет более высокий номер версии или более нов, чем расположенный на удаленной системе.

Читайте также:
Закройте все программы которые могут использовать этот файл

-w
Установить рабочий каталог процесса (относительно удаленного компьютера).

-x
Отобразить UI на рабочем столе Winlogon (только для местной системы).

-priority
Определяет -low, -belownormal, -abovenormal, -high или -realtime, чтобы выполнить процесс с различным приоритетом. Используйте -background, чтобы выполнить команду в «low memory» и «I/O priority» на Vista.

program
Имя программы для запуска.

arguments
Параметры для передачи (обратите внимание, что пути к файлам должны быть абсолютными путями на целевой системе).

Вы можете заключить приложения, в именах которых есть пробелы, в кавычки, например:
psexec marklap «c:long nameapp.exe»
Ввод передаётся удаленной системе, когда Вы нажимаете клавишу ENTER, а Ctrl-C завершает удаленный процесс.

Если вы опускаете имя пользователя, удаленный процесс работает в той же самой учетной записи, под которой вы выполняете PsExec, и в этом случае удаленный процесс не будет иметь доступа к сетевым ресурсам на удаленной системе. Когда вы определяете имя пользователя, удаленный процесс выполняется в определенной учетной записи и будет иметь доступ к любым сетевым ресурсам, к которым у этой учетной записи есть доступ. Заметьте, что пароль передаётся удаленной системе открытым текстом.

Вы можете использовать текущую версию PsExec как замену Runas, когда адресат — местная система, потому что PsExec не требует, чтобы вы были администратором.

Примеры

Следующая команда запускает интерактивную командную строку на компьютере marklap:
psexec marklap cmd

Эти команды выполняют IpConfig на удаленной системе с переключателем /all, и отображают получающийся вывод в местном контексте:
psexec marklap ipconfig /all
psexec -u domainnameusername -p password marklap ipconfig /all

Эта команда копирует программу test.exe на уаленную систему и выполняет её в интерактивном режиме:
psexec marklap -c test.exe

Определите полный путь к программе, которая уже установлена на удаленной системе, если она находится не «в путях» системы:
psexec marklap c:bintest.exe

Выполните Regedit в интерактивном режиме под системной учетной записью, чтобы просмотреть содержимое ключей SAM И SECURITY:
psexec -i -d -s c:windowsregedit.exe

Чтобы выполнить Internet Explorer с привилегиями ограниченного пользователя, используйте такую команду:
psexec -l -d «c:program filesinternet exploreriexplore.exe»

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

Работа c удаленными рабочими станциями из консоли.

Пожалуй одним из лучших иснструментов для работы с удаленными рабочими станциями являются утилиты Марка Руссиновича pstools.

PsLoggedOn — Получение сведений обо всех локально подключенных пользователях, а также всех пользователях, подключенных к общим ресурсам.

Я думаю специалисты MS расписали данные утилиты более чем подробно, поэтому копипастом заниматься не буду, просто даю ссылки — тут и тут.

Заострим внимание на следущих моментах, для работы PSExec в windows 7 (для подключения к Windows 7) необходимо добавить ключ в реестр —

И второй вариант, это руссификация удаленной консоли, какого-то единого решения я не нашел, поэтому меняю шрифт в свойствах консоли на «Lucida Concole» и перед запуском psexec меняю кодировку на 1251 — chcp 1251. Теперь работа с удаленной консолью идет с поддержкой русского языка, но сообщения локальной консоли будут крякозябрами . для этого можно поиграться между chcp 1251 и chcp 866.

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

Pstools запуск cmd на удаленном компьютере

Возникла задача выполнить кое-какую операцию с помощью командной строки на другом компьютере, само собой идти к пользователю запускать командную строку и вбивать команды- не наш метод, нам надо не вставая с кресла запустить командную строку удаленного компьютера и выполнить необходимые действия в командной строке. Конечно, подобное действие можно выполнить с помощью программ удаленного подключения, но это не всегда удобно и требует наличия подобной программы у вас и у пользователя (клиент- сервер). Процедуру по подключению к командной строки другого компьютера, можно выполнить значительно просто, с помощью команды PSEXEC.

PsExec — это утилита командной строки, с возможность вызывать в интерактивном режиме интерфейс командной строки в удаленных системах Windows и удаленно запускать различные команды.

Эта утилита ставиться на только на компьютер администратора. Для установки необходимо ее скачать, вот ссылка на официальный сайт Microsoft . После скачивания архива его необходимо разархивировать, в разархивированной папке найти файл PsExec.exe. Нажмите на нем два раза, появиться окно с лицензионным соглашением, нажимаем «Agree«.

На этом установка PSEXEC можно считать оконченной.

Разберем синтаксис команды:

компьютер Указывает программе PsExec, что нужно запустить приложение на заданном компьютере или компьютерах. Если имя компьютера не указано, то программа PsExec запустит приложение в локальной системе, если же вместо имени компьютера задан символ «звездочка» (*), то программа PsExec запустит приложение на всех компьютерах текущего домена.

-a Процессоры, на которых можно запустить приложение, отделяются запятыми, при этом процессоры нумеруются, начиная с 1. Например, чтобы запустить приложение на процессорах втором и четвертом, введите «-a 2,4»

Читайте также:
Что значит таблетка в программе

-c Указанная программа копируется в удаленную систему для выполнения. Если этот параметр не задан, то приложение должно находиться в системной папке удаленной системы.

-d Указывает, что не нужно ждать завершения приложения. Этот параметр следует использовать только при запуске неинтерактивных приложений.

-e Указанный профиль учетной записи не загружается.

-f Указанная программа копируется в удаленную систему, даже если такой файл в удаленной системе уже есть.

-i Запускаемая программа получает доступ к рабочему столу указанного сеанса в удаленной системе. Если сеанс не задан, то процесс выполняется в консольном сеансе.

-l При запуске процесса пользователю предоставляются ограниченные права (права группы администраторов отменяются, и пользователю предоставляются только права, назначенные группе «пользователи»). В ОС Windows Vista процесс запускается с низким уровнем благонадежности.

-n Позволяет задать задержку подключения к удаленным компьютерам (в секундах).

-p Позволяет указать необязательный пароль для имени пользователя. Если этот параметр опущен, то будет выдан запрос на ввод пароля, при этом пароль не будет отображаться на экране.

-s Удаленный процесс запускается из системной учетной записи.

-u Позволяет указать необязательное имя пользователя для входа в удаленную систему.

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

-w Позволяет указать для процесса рабочий каталог (путь внутри удаленной системы).

-x Отображает интерфейс пользователя на рабочем столе Winlogon (только в локальной системе).

-приоритет (приоритет) Позволяет задавать для процесса различные приоритеты: -low (низкий), -belownormal (ниже среднего), -abovenormal (выше среднего), -high (высокий) или -realtime (реального времени).

программа Имя запускаемой программы.

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

Примеры работы команды PSEXEC:

1) Для того чтобы запустить командную строку другого компьютера, необходимо ввести
psexec cmd

например:
psexec WIN782 cmd

после этого можете вводить необходимые вам команды.

2) Для того чтобы запустить какою либо программу (в данном примере test.exe) на удаленном компьютере необходимо выполнить команду, (эта команда копирует программу test.exe в удаленную систему и выполняет ее в интерактивном режиме).

psexec -c test.exe

например:
psexec WIN782 -c test.exe

3) Если в удаленной системе такая программа уже установлена и находится не в системном каталоге, укажите полный путь к этой программе

Источник: fobosworld.ru

Как запустить программу на удаленном компьютере

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

Как запустить программу на удаленном компьютере

Статьи по теме:

  • Как запустить программу на удаленном компьютере
  • Как запустить удаленно программу
  • Как установить удаленно программу

Вам понадобится

  • — компьютер;
  • — интернет;
  • — программное обеспечение.

Инструкция

Подключитесь первоначально к удаленному компьютеру, на котором собираетесь проводить работу. Это можно сделать посредством стандартной процедуры, заложенной в Windows, которая именуется «Подключение к удаленному рабочему столу». Необходимо, чтобы на нужном компьютере удаленные подключения были настроены на прием. Если эти условия выполнены, введите логин и пароль пользователя ПК.

Кликните по кнопке «Параметры», чтобы воспользоваться расширенной настройкой для соединения. Это позволит подключиться удаленно.

Выберите вкладку «Общие», которая находится с левой стороны. После этого введите имя пользователя в строке с названием «Пользователь». Это нужно для того, чтобы удаленный компьютер смог вас идентифицировать при подключении. Сохраните после этого выбранные вами настройки, чтобы в последующем иметь возможность многократно подключаться к этому компьютеру. Данная функция доступна в пункте «Параметры подключения».

Запустите нужную вам программу на удаленном компьютере. Это можно сделать двумя способами.

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

Подключитесь к удаленному компьютеру вторым способом, используя программу TeamViewer. Произведите установку программы, отвечая на вопросы, которые она будет задавать. На удаленном компьютере TeamViewer также должна быть установлена. Когда пользователь удаленного ПК даст вам доступ, введите его пароль и ID, после чего запустите нужную программу.

Источник: www.kakprosto.ru

Как выполнить команды на удаленной системе Linux через SSH

Мануал

Автор cryptoparty На чтение 9 мин Опубликовано 26.09.2019

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

Для этого войдите на удаленную систему и выполните свои действия, если это происходит время от времени.

Но если это происходит часто, каждый раз, когда вы делаете это может вас сильно раздражать

Если так, то как лучше выбраться из этой ситуации?

Да, вы можете сделать это из локальной системы вместо входа в удаленную систему.

Это сэкономит вам много времени.

Как это происходит?

SSH позволяет вам запускать команды на удаленном компьютере без входа в систему.

Общий синтаксис следующий:

Читайте также:
Кербал спейс программ как перекачать топливо

1) Как выполнить команду на удаленной системе Linux через SSH

В следующем примере пользователи могут запускать команду df через ssh на удаленном компьютере с Linux.

2) Как запустить несколько команд на удаленной системе Linux через SSH

В следующем примере пользователи могут запускать несколько команд одновременно через ssh на удаленной системе Linux.

Он одновременно запускает команды uptime и free на удаленной системе Linux.

3) Как запустить команду с привилегиями sudo на удаленной системе Linux через SSH

В следующем примере пользователи могут запускать команду fdisk с привилегией sudo на удаленной системе Linux через ssh.

Обычные пользователи не могут выполнять команды, доступные в системном бинарном каталоге (/usr/sbin/).

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

Таким образом, чтобы запустить команду fdisk в системе Linux, вам нужны права root.

Команда which возвращает полный путь к исполняемому файлу данной команды.

$ which fdisk /usr/sbin/fdisk

4) Как запустить служебную service с привилегией sudo на удаленной системе Linux через SSH

В следующем примере пользователи могут запускать команду service с привилегией sudo на удаленной системе Linux через ssh.

5) Как выполнить команду на удаленной системе Linux через SSH с нестандартным портом

В следующем примере пользователи могут запускать команду hostnamectl через ssh на удаленной машине Linux с нестандартным портом.

6) Как сохранить вывод из удаленной системы в локальную через ssh

В следующем примере пользователи могут удаленно выполнять команду top в системе Linux через ssh и сохранять выходные данные в локальной системе.

cat /tmp/top-output.txt top — 01:13:11 up 18 min, 1 user, load average: 0.01, 0.05, 0.10 Tasks: 168 total, 1 running, 167 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 6.2 sy, 0.0 ni, 93.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1882300 total, 1176324 free, 342392 used, 363584 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 1348140 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4943 daygeek 20 0 162052 2248 1612 R 10.0 0.1 0:00.07 top -bc 1 root 20 0 128276 6936 4204 S 0.0 0.4 0:03.08 /usr/lib/sy+ 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [kthreadd] 3 root 20 0 0 0 0 S 0.0 0.0 0:00.25 [ksoftirqd/+ 4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:+ 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:+ 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 [migration/+ 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [rcu_bh] 9 root 20 0 0 0 0 S 0.0 0.0 0:00.77 [rcu_sched] 10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [lru-add-dr+ 11 root rt 0 0 0 0 S 0.0 0.0 0:00.01 [watchdog/0] 13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [kdevtmpfs] 14 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [netns] 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [khungtaskd] 16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [writeback] 17 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kintegrity+ 18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [bioset] 19 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [bioset] 20 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [bioset]

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

Вывод вышеуказанной команды.

Pseudo-terminal will not be allocated because stdin is not a terminal. Static hostname: itsecforu.ru Icon name: computer-vm Chassis: vm Machine ID: 002f47b82af248f5be1d67b67e03514c Boot ID: dca9a1ba06374d7d96678f9461752482 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-957.el7.x86_64 Architecture: x86-64 total used free shared buff/cache available Mem: 1838 335 1146 11 355 1314 Swap: 2047 0 2047 daygeek:x:1000:1000:2daygeek:/home/daygeek:/bin/bash

7) Как выполнить локальные скрипты Bash на удаленной системе

В следующем примере пользователи могут запускать локальный скрипт bash «remote-test.sh» через ssh на удаленной машине с Linux.

Создайте скрипт оболочки и выполните его.

$ vi /tmp/remote-test.sh #!/bin/bash #Name: remote-test.sh #——————— uptime free -m df -h uname -a hostnamectl

Вывод вышеуказанной команды:

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

Если вы считаете, что вывод плохой, добавьте несколько изменений, чтобы сделать его более элегантным.

$ vi /tmp/remote-test-1.sh #!/bin/bash #Name: remote-test.sh echo «———System Uptime———————————————» uptime echo -e «n» echo «———Memory Usage———————————————» free -m echo -e «n» echo «———Disk Usage————————————————» df -h echo -e «n» echo «———Kernel Version——————————————-» uname -a echo -e «n» echo «———HostName Info———————————————» hostnamectl echo «——————————————————————»

Вывод вышеуказанной команды:

8) Как одновременно запускать несколько команд на нескольких удаленных системах

Следующий скрипт bash позволяет пользователям одновременно запускать несколько команд на нескольких удаленных системах.

Используйте простой цикл:
Вывод для вышеуказанного скрипта:

9) Как добавить пароль с помощью команды sshpass

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

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

Если вы делаете эти задачи только несколько раз в месяц – я рекомендую вам использовать утилиту «sshpass».

Просто укажите пароль в качестве аргумента, используя опцию «-p».

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!

Источник: itsecforu.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru