Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

"psexec" et "net use"

5 réponses
Avatar
Kanh
Bonsoir tout le monde,

je voudrais faire une chose du genre
...
psexec ... net use z:
psexec ... copy toto.zip z:\toto.zip
...

mais il semble que "psexec" et "net use" ne soient pas de bon amis, le net
use fonctionne à la main, mais ne veut rien savoir avec psexec et les
commandes psexec précedentes vont bien également.

What's wrong, Doc ?

Bonne nuit.
Jean Civ'Kanh

5 réponses

Avatar
moi
Bonsoir tout le monde,

je voudrais faire une chose du genre
...
psexec ... net use z:
psexec ... copy toto.zip z:toto.zip
...

mais il semble que "psexec" et "net use" ne soient pas de bon amis,
le net use fonctionne à la main, mais ne veut rien savoir avec
psexec
et les commandes psexec précedentes vont bien également.



salut,

Je pense que vous devriez nous donner
la ligne de commande complète,
le but visé et le contexte
pour que l'on puisse éventuellement
formuler avis et conseils.
Net et Psexec possèdent en effet
plusieurs options chacun ... alors...
le mélange des deux ...



A+

HB

Avatar
F. Dunoyer [MVP]
Kanh vient de nous annoncer :
Bonsoir tout le monde,

je voudrais faire une chose du genre
...
psexec ... net use z:
psexec ... copy toto.zip z:toto.zip
...

mais il semble que "psexec" et "net use" ne soient pas de bon amis, le net
use fonctionne à la main, mais ne veut rien savoir avec psexec et les
commandes psexec précedentes vont bien également.

What's wrong, Doc ?

Bonne nuit.
Jean Civ'Kanh


A mon avis, c'est parcequ'entre 2 commandes psexec tu perds le
"contexte".
Si tu veux enchainer plusieurs commandes tu peux :
1 : faire un fichier de commande et le lancer par psexec
2 : lancer psexec machine cmd.exe et passer les commandes que tu veux

--
François Dunoyer [MVP Windows Server / Security]
Quelques trucs et des astuces pour Windows : http://fds.mvps.org/ta/
Site perso : http://www.fdunoyer.net

Avatar
Jacques Barathon [MS]
"F. Dunoyer [MVP]" ~.net> wrote in message
news:
<...>
A mon avis, c'est parcequ'entre 2 commandes psexec tu perds le "contexte".
Si tu veux enchainer plusieurs commandes tu peux :
1 : faire un fichier de commande et le lancer par psexec
2 : lancer psexec machine cmd.exe et passer les commandes que tu veux


En effet, le contexte est immédiatement perdu après exécution de la
commande. Pour conserver le contexte, on peut charger le profil de
l'utilisateur en utilisant le paramètre -e :

PS> psexec poste01 -e net use y: serveur01d$

PsExec v1.58 - Execute processes remotely
Copyright (C) 2001-2005 Mark Russinovich
Sysinternals - www.sysinternals.com

The command completed successfully.

net exited on poste01 with error code 0.

PS> psexec poste01 -e cmd /c dir y:

PsExec v1.58 - Execute processes remotely
Copyright (C) 2001-2005 Mark Russinovich
Sysinternals - www.sysinternals.com

Volume in drive Y has no label.
Volume Serial Number is C482-024E

Directory of Y:
...

cmd exited on poste01 with error code 0.

Jacques

Avatar
Kanh
Bonsoir,

un peu plus de détails sur le mystère :
entre deux machines où tout va bien quand on travaille à la main.

psexec mon.cmd
***** mon.cmd *****
commande1
commande2
net use * adresse_ipshare /user:MaitreDuMonde secret /persistent:y <= le
net use ne marche pas
commande3
commande4
*******************

***** ... puis "à la main" ... *****
psexec cmd.exe
commande1
commande2
net use * adresse_ipshare /user:MaitreDuMonde secret /persistent:y <= le
net use marche
commande3
commande4
*******************

Merci pour les pistes, on va continuer à chercher et on vous recontera.



"Jacques Barathon [MS]" a écrit dans le
message de news: %23c%
"F. Dunoyer [MVP]" ~.net> wrote in message
news:
<...>
A mon avis, c'est parcequ'entre 2 commandes psexec tu perds le
"contexte".
Si tu veux enchainer plusieurs commandes tu peux :
1 : faire un fichier de commande et le lancer par psexec
2 : lancer psexec machine cmd.exe et passer les commandes que tu veux


En effet, le contexte est immédiatement perdu après exécution de la
commande. Pour conserver le contexte, on peut charger le profil de
l'utilisateur en utilisant le paramètre -e :

PS> psexec poste01 -e net use y: serveur01d$

PsExec v1.58 - Execute processes remotely
Copyright (C) 2001-2005 Mark Russinovich
Sysinternals - www.sysinternals.com

The command completed successfully.

net exited on poste01 with error code 0.

PS> psexec poste01 -e cmd /c dir y:

PsExec v1.58 - Execute processes remotely
Copyright (C) 2001-2005 Mark Russinovich
Sysinternals - www.sysinternals.com

Volume in drive Y has no label.
Volume Serial Number is C482-024E

Directory of Y:
...

cmd exited on poste01 with error code 0.

Jacques



Avatar
Th.A.C
Bonsoir,

un peu plus de détails sur le mystère :
entre deux machines où tout va bien quand on travaille à la main.

psexec mon.cmd
***** mon.cmd *****
commande1
commande2
net use * adresse_ipshare /user:MaitreDuMonde secret /persistent:y <= le
net use ne marche pas


est-ce que le compte avec lequel s'exécute le fichier de commande a le
droit d'utiliser la commande 'net use'.
Je pense en particulier au compte 'system' qui n'a pas accès au réseau

attention aussi sur un domaine, les commandes tapées à la main avec un
compte utilisateur du domaine s'exécutent avec identification sur le
domaine. Ce qui veut dire que:
'/user:maitredumonde' est implicitement '/user:mondomainemaitredumonde'

Si le compte système peut utiliser le réseau, il s'identifiera comme
user local de la machine distante:
'/user:maitredumonde' est implicitement '/user:ordinateurmaitredumonde'

et sinon, un début d'explication possible:
http://www.itpro.fr/article.asp?mag=2&th=5&ss=&p=2&id$71

-------- petit extrait -------------------------------
Sécurité de PsExec

Les interfaces Windows et PsExec travaillent à l’unisson. Par défaut, le
processus que l’on exécute sur le système à distance imite le compte à
partir duquel on exécute PsExec sur le système local. L’imitation est un
peu restreinte du point de vue de la sécurité : le processus distant n’a
accès à aucune des ressources du réseau, même celles auxquelles votre
compte pourrait en principe accéder. Si le compte dans lequel on
travaille n’a pas de privilèges administratifs locaux sur le système
distant, le processus que l’on veut exécuter a besoin d’un accès aux
ressources du réseau ou, si l’on veut exécuter un processus dans un
compte différent, il faut utiliser le commutateur -u de PsExec pour
fournir un nom de compte alternatif. Par exemple, on pourrait entrer la
commande

psexec remote
-u remoteadministrator
-p adminpass ipconfig
-----------------------------------------