Knowledgebase:
Using Ninite to update 3rd party products with Deep Freeze
Posted by Adam Zilliax, Last modified by Adam Zilliax on 31 March 2017 01:51 PM

Overview
This document details best practices of using NiNitePro software with Deep Freeze Enterprise Console.

Background
Ninite is a software that lets users automatically install popular applications on their computers. It allows users to make a selection from a list of supported applications and run the istallation of all selected applications altogether.
 

Problem Description
Ninite Pro version has an ability of pushing the popular software installations from the Ninite Console, as well running the Ninite silently, which allows to use it with third party remote deployment tools. However, for those users, who manage Deep Freeze workstations from Deep Freeze Enterprise Console it would be more convenient run Ninite from the Deep Freeze Console against existing Deep Freeze workstations, especially when it requires to have a Thawed workstations in order to make new software installations permanent.  

Using Ninite Pro with Deep Freeze Console to update Software

 

Using Ninite Pro with Deep Freeze Batch File to update software

 

Scheduling Batch File workstation task
This solution takes advantage on command line scripting functionality of Ninite Pro. On Deep Freeze workstation the easiest way of running any silent commands periodically is to schedule a Batch File workstation task, which will reboot the computer into Thawed state and run the required batch file. In this case, the Batch File task should manage to run Ninite Pro executable with command line parameters specifying the software required to be installed/updated on the target workstation. Also, in Enterprise environments in order to save the internet traffic and speed up the download time, it is recommended to configure Ninite to use a local network share for storing software downloads. Use following steps to configure the Batch File task:

  1. Create a folder on the network share with the NinitePro installer and a batch file “ninite.bat” in it.
  1. Edit the batch file to specify the software to be installed/updated using NinitePro command line parameters.

Example: to install VLC and Chrome, the batch file should be:

start %~dp0\NinitePro.exe /select VLC Chrome /silent

Here, %dp0 changes the directory the where the batch file is being run from

  1. In Deep Freeze Console click “Update Workstation Tasks” button and select “New” from the bar at the bottom of the window.
  1. In the “Batch File Contents” of the “Batch File” tab , paste the following code:

@echo off

net use \\serverLocation yourPassword /user:yourDomain\yourUserName

\\serverLocation\ninite.bat

Here, net use command line provides the access to the network share location, while the second command runs the batch file from that location

  1. Set the required scheduled time for the Batch File task, as well as set other required options.

Note: for a bigger number of installed software, it is recommended to set a bigger duration of the Batch File task

  1. Close the “Configuration Screen” and update workstation task configuration on selected workstations.

 

Using Deep Freeze Console Custom Actions

This solution takes advantage on Deep Freeze Console Custom Action feature.  The Custom Action allows to define additional functionality of Deep Freeze Console against client workstations. Normally, it defines a method of calling custom batch file or other scripting solution and passing some parameters specific to the selected workstation (for example, machine IP address, computer name).

In this solution, the Custom Action should manage to run on target workstation same batch file as described in Solution 1. This  batch file runs Ninite Pro executable on target workstation with command line parameters specifying the software required to be installed/updated. Same as in previous solution, Ninite is configured to use a local network share for storing software downloads. Use following steps to configure and run Ninite Custom Action

  1. On target workstation enable admin$ share and required inbound services on the workstation computers by creating and running the “EnablePsExec.bat” file as an administrator

The content of that batch file is provided below:

@echo off

reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes

netsh advfirewall firewall set rule group="Remote Service Management" new enable=Yes


  1. Create DFNinRemExc.xml  file with following content:

<?xml version="1.0" encoding="UTF-8"?>

<!--Deep Freeze Default Custom Action file-->

-<CUSTOMDEFINEDACTIONS> -<ACTION4> -<CAPTION> <ENGLISH>Ninite Server Installer</ENGLISH> </CAPTION> <FILEMENU>Y</FILEMENU> <POPUPMENU>Y</POPUPMENU> <SILENT>Y</SILENT> <SUBITEMS/> -<PARAMS> -<USERNAME> <VAR>%USERNAME%</VAR> -<CAPTION> <ENGLISH>User Name</ENGLISH> <GERMAN>Benutzername</GERMAN> <JAPANESE>ƒ†[ƒU–¼</JAPANESE> <SPANISH>Nombre de usuario</SPANISH> <FRENCH>Nom d'utilisateur</FRENCH> <CHINESE>Óû§Ãû</CHINESE> </CAPTION> </USERNAME> -<PASSWORD> <VAR>%PASSWORD%</VAR> -<CAPTION> <ENGLISH>Password</ENGLISH> <GERMAN>Passwort</GERMAN> <JAPANESE>ƒpƒXƒ[ƒh</JAPANESE> <SPANISH>Contraseña</SPANISH> <FRENCH>Mot de passe</FRENCH> <CHINESE>ÃÜÂë</CHINESE> </CAPTION> </PASSWORD> </PARAMS> <SYNC/> <LOG/>

<!--Edit myServerLocation, myPass, myDomain and myUserName in the following Execute tag-->

<EXECUTE>"PsExec.exe" \\%%WKSNAME%% -u %USERNAME% -p %PASSWORD% cmd /c "net use \\myServerLocation myPass /user:myDomain\myUserName && \\myServerLocation\ninite.bat" </EXECUTE> <WORKDIR>C:\Windows\System32\</WORKDIR> </ACTION4> </CUSTOMDEFINEDACTIONS>


Place the created XML file in to Deep Freeze installation folder:

On 32 bit systems:

“C:\Program Files\Faronics\Deep Freeze 7 Enterprise”

On 64 bit systems:

“C:\Program Files (x86)\Faronics\Deep Freeze 7 Enterprise”

  1. On a server location, place NinitePro installer and a batch file “ninite.bat” (its content provided in Solution 1)

  1. Edit the batch file to specify the software to be installed/updated using NinitePro command line parameters.

Example: to install VLC and Chrome, the batch file should be:

start %~dp0\NinitePro.exe /select VLC Chrome /silent

Here, %dp0 changes the directory the where the batch file is being run from

  1. In DF console, go to “Configure Custom Actions” under Actions menu. Select “Remote Execute” on the left-side of the dialogue box, and click on “PSExec” web-link. This should open a web-site, where PSTools can be downloaded.

  1. Once downloaded, unzip the file. From the unzipped contents, take “PsExec.exe” and place it in “C:\Windows\System32” folder.

  1. Go back to “Configure Custom Actions” dialogue box. Click Import button in the Configure Custom Actions dialogue box and point to the “DFNinRemExc.xml”. After the import is successful, it should show up as “Ninite Server Installer” on the left-side of dialogue box.

  1. Click on the “Ninite Server Installer” option. Edit myServerLocation, myPass, myDomain and myUserName in the command under “Executable Path. DO NOT edit anything else.

  1. Select the workstations you want to install the softwares on. Right click, and select “Ninite Server Installer”.

  1. Enter the workstation credentials in the pop-up dialogue and press OK.  

Now, the Ninite will launch on the target workstation and perform require software installations and upgrade.

Java
Java UPDATE
Java Updates
Java Runtime
JRE
JRE UPDATE
JRE Updates
Adobe Updates
Adobe Update
Adobe Flash 
Adobe Flash Update
Adobe Flash Updates
Flash
Flash Update
Flash Updates
Adobe Acrobat
Adobe Acrobat Update
Adobe Acrobat Updates
Acrobat Update
Acrobat Updates



Attachments 
 
 dfninremexc.xml (1.06 KB)
(15 vote(s))
Helpful
Not helpful

Comments (0)