Jump to content

Powershell führt Befehl falsch aus


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Natürlich kann man ein Auto auch schieben, um es zu bewegen. Aber das ist schwer. Also fragt man sein Freunde, ob sie beim Schieben helfen können. Dann geht's leichter - cool. Vielleicht findet man dann gemeinsam raus, dass man auch die Handbremse lösen kann - jetzt schiebt sich's noch leichter - supi.

Dann kommt so einer daher und meint: "Jungs, das ist ein Auto. Da setzt man sich rein, macht den Motor an und fährt los".

Wenn man jetzt nochmal fragt, warum sich das Auto so schwer schieben lässt, hat man sich mindestens eine Kopfnuss verdient.  :aha2::aha2::aetsch2:

Link zu diesem Kommentar

Hmmmm .... mit welchem Account wird das Script denn ausgeführt? Oder hatten wir das schon geklärt? ... ich hab den Überblick verloren.

 

Eine aus dem Aufgabenplaner gestartete Sitzung ist nicht das gleiche wie eine interaktiv gestartete Sitzung. Was stellst Du in Deinem Script eigentlich an? Manche Sachen, die eine interaktive Anmeldung voraussetzen funktionieren auch einfach nicht aus dem Aufgabenplaner.

Link zu diesem Kommentar

Hallo,

erst einmal vielen Dank, finde ich gut, dass Ihr Euch hier meldet.

 

script 1:

=====

# trigger für Job: Bei User-Logon, alle User:

$Trigger = New-JobTrigger -AtLogOn -User *


# Scriptblock mit der Aufgabe gemäß Trigger:

$Sopt = New-ScheduledJobOption -RunElevated

Register-ScheduledJob -Name mountdoz    -FilePath c:\tmp_ps\mount_drive.ps1 -Trigger $Trigger -ScheduledJobOption $Sopt

 

Mit o.g. Script wird ein Job im Taskplaner erstellt, Script2 startet dann bei logon

==================================================================================

 

script2: (Auszug)

===========

 $Drive = New-PSDrive -Name $Drivename   $PS1SharePath -PSProvider FileSystem -Persist -Credential $Cred -ea Continue -Verbose

 

Hier wird das Laufwerk,  auf z.B. "\\server\freigabeverzeichnis"  mit dem Admin-Credential für das Zielsystem "gemountet".

Das klappt unter lokalem Admin-Account, aber nicht per Taskscheduler bei LOGON.

 

Grüsse

L.

 


    

 

Link zu diesem Kommentar

Ich bin auch verwirrt. Ich dachte in dem Script wird etwas gemacht. Aber es soll nur ein Laufwerk verbunden werden. Und es sollen doch Credentials mitgegeben werden. Danach hatte ich viel weiter oben schon mal gefragt. Damit bin ich raus. Laufwerke verbindet man in Windows schon einige Jahre per Gruppenrichtlinie. Mit solchem VonHintenDurchDieBrustInsAugeQuatsch möchte ich mich einfach nicht mehr beschäftigen. Sorry.

Ich wünsche viel Erfolg.

bearbeitet von BOfH_666
Link zu diesem Kommentar

Da fehlt es wohl ein wenig am Verständnis, was "Kontext" bedeutet... Wenn Du den Job so erstellst, läuft der zwar bei Anmeldung eines beliebigen Users, aber er läuft - da "Elevated" - nur dann, wenn der User Admin ist. Und ebenfalls da "Elevated" läuft er in einer anderen Logon-Session...

Und wie Du $Cred befüllst, das will ich gar nicht wissen.

Link zu diesem Kommentar

Hallo,

abschliessend möchte ich für Eure Mitteilungen danken. Alles sehr hilfreich ...

 

Meine Frage drehte sich um die Verwendung des Powershell-commandlets "New-Psdrive", zum Zwecke des "Mappens"  als Windows-Laufwerk

und zwar so, dass der User dieses im Explorer sehen kann. Vielleicht hätte ich das am Anfang klarer ausdrücken müssen, aber da wusste ich noch nicht,

dass "New-PsDrive" dafür nicht das richtige Kommando ist. Verwirrend ist eben, dass es mal funktioniert und mal nicht; dass das Commandlet ausgeführt wird,

trotzdem aber kein sichtbares Laufwerk erscheint usw. usw.

Wahrscheinlich kommt man mit solchen Problemen gar nicht in Berührung, wenn man alles über GPO usw. administriert - war hier aber nicht mein Ansatz

und ich bin hier auch im "Scripting Forum", oder ?

Wieder was gelernt. Ab Windows8 / Server2012 gibt es ohnehin neue Commandlets.

 

-L.

 

 

vor 6 Minuten schrieb wolfrP:

Wenn du genau wissen willst, was dein Skript als Task macht, füg


Start-Transcript -Path ".\transcript.txt" -NoClobber

ein, dann hast du deine Consolenausgabe in einer Datei

Hallo Wolfpr,

vielen dank, das ist ja mal ein konstruktiver Beitrag. Ich sollte vielleicht anfügen, dass ich kein Powershell-Profi bin, aber daran arbeite ...

(Ironiemodus aus)

-L.

 

Link zu diesem Kommentar
vor 32 Minuten schrieb Lupus1:

New-PsDrive" dafür nicht das richtige Kommando ist. Verwirrend ist eben, dass es mal funktioniert und mal nicht; dass das Commandlet ausgeführt wird,

trotzdem aber kein sichtbares Laufwerk erscheint usw. usw.

Dafür ist auch der Befehl: New-SmbMapping zuständig.... 

 

Für mehr Infos:

get-help New-SmbMapping -Examples

 

 

bearbeitet von MurdocX
Link zu diesem Kommentar

Laut Microsoft gibt es die benötigte WIM-Classe erst mit Windows 8.0 oder Server 2012: https://docs.microsoft.com/en-us/previous-versions/windows/desktop/smb/msft-smbmapping

Das benötigte WMI-Objekt kannst du folgendermaßen abrufen:

Get-WMIObject -Namespace "root\Microsoft\Windows\SMB" -Class MSFT_SmbMapping

 

Außerdem kannst du das WMF mit Powershell 5.1 für Windows 7 SP1 nachinstallieren: https://www.microsoft.com/en-us/download/details.aspx?id=54616

Danach sollte (evtl.) der Befehl funktionieren.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...