snapin and batch script
-
I’m trying to understand more and more what’s actually happening.
Is the snapin simply making a mount? This wouldn’t work as it would map the drive under the System user, not available to all users as I imagine you’re hoping for.
-
Essentially, the reason why the “red x” happens is because System user is who mounted the point, and the permissions are not available to the user you’re actually logged in under. If you need a “global” mount of a drive, this would be more readily handled using GPO’s, not fog snapins. While I’m sure it “could” be handled via a snapin, i think such a thing is out of scope for the FOG Client.
-
@Tom-Elliott I understand that is System User who mounted the point but i’m loged as administrator. It’s not enough to use the share ?
I don’t use GPO’s.
Have you got an idea on how mount a share via snapin ?@Avaryan I think it will be the same with power shell
thanks for your help
-
@plegrand The problem is the credentials are with the user who established the mount, not a “global” setup.
-
Yes, the result was the same via PowerShell. I just tested it.
Do you need users to be able to access the drive? Or do you just need to mount the drive to do some action and then unmount the drive?
-
@Tom-Elliott the user who established the mount => You means system user ?
-
@plegrand said in snapin and batch script:
@Tom-Elliott the user who established the mount => You means system user ?
FOG runs the snapin as the local SYSTEM account. So the drive is getting mounted under that account and not under any useable user.
-
@plegrand Yes.
-
@Avaryan it’s for use WsusOffline which is installed on a samba share \samba\wsus
then i need to mount the wsus share , launch a command (wsus command) dnd then umount share. -
@Avaryan Slight correction, as the drive being mounted is “system wide” it will “appear” as the drive letter being mounted, but the credentials are not available to any user but the one who established the mount.
-
@Tom-Elliott OK i understand
Then no solution ? -
@plegrand So if you mount the drive, and in the same script run the action needed, things should work. You wouldn’t be able to make the mount->use another user to perform the action->then unmount.
-
@plegrand said in snapin and batch script:
@Avaryan it’s for use WsusOffline which is installed on a samba share \samba\wsus
then i need to mount the wsus share , launch a command (wsus command) dnd then umount share.Ok. That should be possible since the local users don’t need to access the mount. Should be pretty easy in PowerShell. I don’t know how to do it other ways, lol.
$Username = "Domain\User" $Password = "Password" | ConvertTo-SecureString -AsPlainText -Force $Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $Username, $Password # Add share. New-PSDrive -Name "MyShare" -PSProvider FileSystem -Root \\ShareName\ -Credential $Credential # Do something... # More somethings... Remove-PSDrive -Name "MyShare"
-
@Tom-Elliott Here is what i need to do and which doesn’ works :
net use * /delete /y >> %tmp%\Update_Windows7.log 2>&1 net use z: \\samba\wsus$ "my'password" /user:samba\administrateur >> %tmp%\Update_Windows7.log 2>&1 z:\wsusoffline\client\UpdateInstaller.exe >> %tmp%\Update_Windows7.log 2>&1 net use /delete * /y >> %tmp%\Update_Windows7.log 2>&1
UpdateInstaller.exe isn’t launched
-
@Avaryan As you can see , i need to mount the share and execute a command which is inside this share…
Then i thin it’s not possible ? -
@plegrand said in snapin and batch script:
@Avaryan As you can see , i need to mount the share and execute a command which is inside this share…
Then i thin it’s not possible ?Should be possible.
$Username = "samba\administrator" $Password = "my'password" | ConvertTo-SecureString -AsPlainText -Force $Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $Username, $Password New-PSDrive -Name "Samba" -PSProvider FileSystem -Root '\\samba\wsus$' -Credential $Credential $UpdateInstaller = Get-ChildItem -Path "Samba:\wsusoffline\client\" | Where-Object -Property Name -EQ "UpdateInstaller.exe" Start-Process -FilePath $UpdateInstaller.FullName -Wait Remove-PSDrive -Name "Samba"
Depending on how large the UpdateInstaller.exe is and how many devices you are doing at once, it might be better to have this copy it over and run locally.
-
@plegrand Does the UpdateInstaller.exe require User input?
-
@Avaryan then i use your ps script as a powershell template into snapin ?
thanks i try -
@plegrand I still doubt if that will work. If
UpdateInstaller.exe
requires user input, the script won’t run (or will be stuck running forever). -
@Tom-Elliott i’m testing the ps script, but i cant understand why it could works better than a batch script which make the same thing