Oracle – Data Access Components silent installieren

30. November 2010

Wie rollt man zu einer bestehenden Oracle Client Version die Data Access Components aus? Natürlich mit dem Silent Installer, den man mit Hilfe einer Antwort-Datei versorgen kann.

Problem: Was ist mit unterschiedlichen Oracle Home-Verzeichnissen?

Lösung: Kleines Script mit Windows Scripting Host
'Festlegung der Konstanten
Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_LOCAL_MACHINE = &H80000002
Const HKEY_USERS = &H80000003
Const HKEY_CURRENT_CONFIG = &H80000005
Const HKEY_DYN_DATA = &H80000006
Const COMPUTER = "."
Const ForWriting = 2
Const ForAppending = 8

'Festlegung der Variablen
Dim KeyPath, ValueName, ValueArray, Value, ORAKEY, RegKey, orahome, oragroupname, orahomename, cmdline, cmdline2, cmdline3, cmdline4, cmdline5, objReg, FSO, Datei, i

'WMI Object erstellen wegen Registry
Set objReg = _
GetObject("winmgmts:\\" &_
COMPUTER & "\root\default:StdRegProv")

'Pfad zur Registry festlegen um ORA-Home-Informationen zu beziehen
KeyPath = "SOFTWARE\ORACLE\"
objReg.EnumKey HKEY_LOCAL_MACHINE, KeyPath, ValueArray

'OracleKey auslesen
ORAKEY = ValueArray(0)
Set WSHShell = CreateObject("WScript.Shell")
RegKey = "HKLM\SOFTWARE\ORACLE\" & ORAKEY &"\"
orahome = WSHShell.RegRead(RegKey & "ORACLE_HOME")
oragroupname = WSHShell.RegRead(RegKey & "ORACLE_GROUP_NAME")
orahomename = WSHShell.RegRead(RegKey & "ORACLE_HOME_NAME")

'Batch-Befehl erstellen und aus den Informationen der Registry zusammenbauen
cmdline = "c:\temp\oracle\install\setup.exe"
cmdline2 ="ORACLE_HOME=" & chr(34) & orahome & chr(34)
cmdline3 ="ORACLE_HOME_NAME=" & chr(34) & orahomename & chr(34)
cmdline4 ="TOPLEVEL_COMPONENT={"&chr(34)&"oracle.odac"&chr(34)&","& chr(34) & "10.2.0.2.21" & chr(34) & "}"
cmdline5 ="-waitforcompletion -nowait -silent"

'FSO Object erzeugen (Dateisystem für Batch)
Set FSO = CreateObject("Scripting.FileSystemObject")
'Batch-Datei erzeugen
Set Datei = fso.OpenTextFile("c:\temp\oracle\script\oadcinst.cmd",ForWriting)
Datei.Write "start /MIN" & chr(32) & cmdline&chr(32)&cmdline2&chr(32)&cmdline3&chr(32)&cmdline4&chr(32)&cmdline5
Datei.Close

Nun muss nur noch die oadcinst.cmd geöffnet werden und die Date Access Componants werden korrekt installiert. Wichtig ist auch, dass die Installer dateien auf dem lokalen System zur Verfügung stehen. Diese können jedoch nach der erfolgreichen Installation gelöscht werden.


Firefox – an Unternehmen anpassen

25. November 2010

Firefox ist mein Lieblingsbrowser. Was mich jedoch an der Software stört ist die Tatsache, dass der BRowser nicht über Gruppenrichtlinien steuerbar ist. Die Installation innerhalb eines Unternehmensnetzes mit den üblichen Anpassungen ist ebenfalls nur über Umwege möglich. Kurz und gut, Firefox ist meiner Meinung nach für Unternehmen ungeeignet, wenn nicht ein erheblicher Aufwand für Anpassungen in Kauf genommen wird.

Interessant in iesem Zusammenhang sind mit Sicherheit die Ausführungen von Mike Kaply. In seinem Blob skizziert er eine entsprechende Vorgehensweise, welche durchaus Erolg versprechend ist.

Zunächst habe ich mir die CCK-Erweiterung von MKaply angesehen. Hiermit lässt sich Firefox entsprechend anpassen und die Einstellungen vorgeben. Weiterhin ist es möglich auch andere Erweiterungen zum Firefox hinzufügen. Interessant ist auch die Option eigene Zertifikate hinzuzufügen sowie Update-Seiten, Lesezeichen, Startseiten etc. vorzugeben.

Das Ergebnis aus dem Assistenten ist eine neue Erweiterung, die dann in Firefox eingebunden werden muss.

Aber wie zum Geier stelle ich eine Extension, welche nicht signiert ist und global vom Benutzer ausgeführt werden soll bereit.

Weiterhin möchte ich ja auch gleichzeitig den Wildwuchs an Firefox-Installationen beseitigen, so dass ich die Installation des Firefox direkt mitmachen will.

Fassen wir die Anforderungen noch einmal zusammen:

  1. Firefox soll angepasst werden (Zertifikate, Lesezeichen, Proxeinstellungen, Extensions)
  2. Alle Firefox-Installationen sollen identisch sein
  3. Alle Firefox-Profile sollen an einem speziellen Ort abgelegt werden
  4. Firefox soll in einem Nicht-Standard-Pfad installiert werden
  5. Firefox soll als MSI-Paket über eine Softwareverteilung ausgerollt werden

Da alle Icons in Desktop und Startmenü von mir auf den Clients vorgegeben werden, bin ich in der Lage die Firefox Installation in einem vom Standard abweichenden Pfad zu erstellen. Ich wähle mir den Pfad: D:\Programme\MYFox\

Nachdem ich eine ganze Weile rumexperimentiert habe, stellte sich für mich die Frage, ob ich denn überhaupt den Firefox weiter für meine Bedürfnisse nutzen sollte und ich bin zum Schluss gekommen, dass Firefox nixht unbedingt für den Einsatz innerhalb von Unternehmen geeignet ist.

Ein kleiner „Quick & Dirty“ Trick ist die Virtualisierung von Firefox mittels Novell Zenworks Virtualiszation Application. Damit lässt sich ohne Probleme eine allgemein gültige Firefox Version ausrollen. Das Profil kann im Vorfeld des Rollouts angepasst werden und die Software läuft in einer eigenen Sandbox.


Novell Zenworks Application Virtualization (ZAV)

24. November 2010

Seit einer Woche lösen sich immer mehr meiner Probleme in Luft auf:

  • Firefox so anpassen, dass der Browser auch im Unternehmen eingesetzt werden kann
  • Adobe Acrobat Reader gezielt verteilen und aktuell halten
  • Einen freien DWG-Viewer zentral verteilen und inkl. aller Abhängigkeiten bereitstellen
  • Mehrere Java-Versionen auf einem Rechner installiert haben und alle zusammen in Firefox je nach Webite nutzen
  • Natürlich auch alles auf alten Betriebssystemen bereitstellen wie zum Beispiel Windows 2000, aber auch kompatibel mit Windows XP und Windows 7 bleiben

Das alles ist kein Thema und lässt sich einfach und effizient mit ZAV realisieren!
Voraussetzungen: Virtuelle Maschine (ich nutze ein Windows XP System auf einem ESXi) mit zwei Festplatten (eine mit Snapshots, eine ohne), ZAV und ein wenig Freude an „learning by doing“!

Zunächst wird eine blanke Windows XP Maschine aufgesetzt und mit allen Updates versorgt, welche sich zum jeweiligen Installationsstand im WSUS befinden. Die Funktion der automatischen Updates wird deaktiviert, da dieses später unter Umständen Probleme bereitet.
Nun wird ZAV installiert. Eine 60 Tage Testversion steht auf den Novell-Seiten bereit – die Lizenz ist aber auf alle Fälle ihr Geld wert!

Der erste Schritt ist die Erstellung eines Snaphots über die Software ZAV um einen IST-Zustand der Maschine zu erhalten. Diesen Snapshot speichert man nun ab – natürlich auf der Festplatte, welche nicht in Snaphots einbezogen wird. Der nächste Schritt ist nun die Anfertigung eines Snaphots in VMWARE, so dass wir jederzeit auf diesen Stand zurückkommen können.

Wenn die VM neu gebootet wurde, kann ZAV neu gestartet werden, der vorher erzeugte ZAV-Snaphot wird wieder geladen und mit der Installation der Software begonnen. Zum Beispiel Firefox. Der Browser wird installiert und angepasst.

Nun wird in ZAV, welches während dem gesamten Installationsvorgang im Hiontergrund alle Änderungen aufgezeichnet hat ein neuer Snaphot erstellt, die Funktion lautet „Capture & Diff“.
Nun wird die Anwendung mit „Build“ erstellt und wir erhalten eine lauffähige Firefox Version, welche aus einer einzigen EXE-Datei besteht und alle erforderlichen Dateien mitbringt.

Das Ding läuft sowohl auf Windows 2000 als auch auf Windows 7 mit den gleichen Einstellungen. Lässt sich aus dem Netzwerk starten, oder aber auch vom USB-Stick!

Einfach genial!


Kangoo´s Blog

Just another WordPress.com site