"psexec" et "net use"

Le
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
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
moi
Le #665179
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

F. Dunoyer [MVP]
Le #665175
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

Jacques Barathon [MS]
Le #664922
"F. Dunoyer [MVP]" 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

Kanh
Le #664173
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]" message de news: %23c%
"F. Dunoyer [MVP]" 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



Th.A.C
Le #664172
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
-----------------------------------------

Publicité
Poster une réponse
Anonyme