PDA

Показать полную графическую версию : [решено] PsExec - Не удается найти указанный файл


The_Immortal
12-09-2016, 14:15
Приветствую!

Пытаюсь запустить на удаленной машине PsExec в следующем виде:
psexec \\ws1 -u domain\user -p password "\\SERVER\share\setup.msi"

Выдается ошибка "Не удается найти указанный файл". Хотя к удаленной машине доступ есть, файл по указанному пути существует.

Подскажите, пожалуйста, куда копать?

P.S. Пробовал запускать на целевой машине psexec:
psexec -u domain\user -p password "\\SERVER\share\setup.msi" - срабатывает нормально.

Iska
12-09-2016, 14:28
Подскажите, пожалуйста, куда копать? »
Попробуйте копать в сторону «msiexec.exe» с указанием пути к «setup.msi» в качестве его параметра. Например (не проверялось):
psexec.exe \\ws1 -u domain\user -p password c:\windows\system32\msiexec.exe /quiet /norestart /i "\\SERVER\share\setup.msi"

The_Immortal
13-09-2016, 12:46
Iska, благодарю, так сработало! Странно, что psexec не смог взаимодействовать с msi непосредственно... Ну да ладно.

Казбек
13-09-2016, 15:58
The_Immortal,
http://forum.oszone.net/thread-318192.html

bredych
05-06-2020, 09:48
Попробуйте копать в сторону «msiexec.exe» с указанием пути к «setup.msi» в качестве его параметра. »
а похожий вопрос, но с обычным exe - точно так же не находит по тому же пути, что сам батник только что уложил.
Ему скармливать путь к консоли на удаленной машине и давать исполняемый файл как параметр?

Причем, мне требуется запускать инсталлер МС офиса с его собственным параметром в конфиге -

psexec \\computername -u user -p password -d -accepteula \\computername\path\setup.exe /config config.xml
здесь менять на

psexec \\computername -u user -p password -d -accepteula c:\windows\system32\cmd.exe /quiet /norestart /i "\\computername\path\setup.exe /config config.xml"
?

зы, попробовал с этим - аналогично не находит, но уже
the system cannot find batch label specified

Iska
06-06-2020, 05:27
мне требуется запускать инсталлер МС офиса с его собственным параметром в конфиге - »
bredych, где расположен «config.xml»? Почему путь к «setup.exe» указывается как сетевой?

здесь менять на »
Даже не понял, зачем это.

bredych
08-06-2020, 09:32
где расположен «config.xml» »
в той же папке, что и исполняемый файл.
Классический метод предконфигурации офисного пакета: запускаешь у себя с ключем /admin , конфигуришь, сохраняешь msp, плюс конфиг.хмл в ту же папку перекладываешь, подредактив, если надо. Потом весь пакет копируешь (разумеется не вручную уже) на целевую машину и запускаешь сетап с параметром, чтоб он не задавал вопросов, а втихую всё сам делал.
при подключении по рдп и введения той же строки в консоль вручную - всё корректно делает. Батником - "не находит".
Если путь вместе с параметром в кавычки - тоже не находит.

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

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

Iska
08-06-2020, 22:24
в той же папке, что и исполняемый файл. »
А текущим каталогом в этот момент будет, наиболее вероятно, %SystemRoot%\System32. Потому указанный файл не будет найден.

потому что это на машинах в сети. Имя машины подставляется из списка по очереди. »
Я не про имя удалённой машины. Я про второе упоминание:
psexec \\computername -u user -p password -d -accepteula \\computername\path\setup.exe /config config.xml »
Здесь должен указываться путь для машины \\computername. Локальный путь. А Вы тут указываете некий сетевой путь, похоже на ту же машину, причём без разделённого ресурса — сетевое имя машины и сразу путь.

Я бы понял, если бы setup.exe лежал где-то в сети, на другой машине, отличной от \\computername. Но и тогда требовалось бы указывать полный путь к config.xml, поскольку по умолчанию интерпретатор команд не поддерживает UNC-пути в качестве текущего каталога.




© OSzone.net 2001-2012