MSI-ID auslesen (auf Linux-System)
MSI-ID auslesen (auf Linux-System)
Hallo,
wir möchten bei uns bestimmte Aktualisierungen von opsi-Paketen automatisieren. Dafür brauchen wir eine Möglichkeit, auf einem Linux-Rechner die MSI-ID einer MSI-Datei auszulesen.
Weiß jemand von euch, wie ich das machen kann? - Ich habe bisher nur Möglichkeiten gefunden, die nur unter Windows laufen.
Vielen Dank!
Holger
wir möchten bei uns bestimmte Aktualisierungen von opsi-Paketen automatisieren. Dafür brauchen wir eine Möglichkeit, auf einem Linux-Rechner die MSI-ID einer MSI-Datei auszulesen.
Weiß jemand von euch, wie ich das machen kann? - Ich habe bisher nur Möglichkeiten gefunden, die nur unter Windows laufen.
Vielen Dank!
Holger
Re: MSI-ID auslesen (auf Linux-System)
Hi,
gerade nicht am Rechner, aber kann file das nicht unter Linux? Ich probiere das morgen mal...
Gruß
dropped
gerade nicht am Rechner, aber kann file das nicht unter Linux? Ich probiere das morgen mal...
Gruß
dropped
Re: MSI-ID auslesen (auf Linux-System)
wenn keiner antwortet .... notfalls mit der "Holzhammer"-Methode --> stringsholgerv hat geschrieben:Hallo,
brauchen wir eine Möglichkeit, auf einem Linux-Rechner die MSI-ID einer MSI-Datei auszulesen.
Weiß jemand von euch, wie ich das machen kann? - Ich habe bisher nur Möglichkeiten gefunden, die nur unter Windows laufen.
Im Rahmen des o4i-Communtiyprojektes benötige ich für den o4i-notifier (1) machmal die konkrete Fileversion. Nicht alle Programmierer benennen ihre Setupdatei inclusive der Version

Für die meisten Setup.exe kann man unter Linux das Paket 'pev' benutzen.
Code: Alles auswählen
pev -p CLIENT_DATA/install_flash_player_31_plugin.exe
31.0.0.108
Code: Alles auswählen
strings -n 9 CLIENT_DATA/GoogleChromeStandaloneEnterprise.msi | grep Copyright | cut -d' ' -f1
69.0.3497.100
Gruss
Detlef
(1) https://opsi.wzb.eu/wiki/index.php/Update-Notify/Public
(2) https://www.listserv.dfn.de/sympa/info/o4i-notify (offene Mailingliste, SubScribe/unSubscribe)
Zuletzt geändert von GEI am 24 Sep 2018, 07:16, insgesamt 1-mal geändert.
Leibniz-Institut für Bildungsmedien | Georg-Eckert-Institut (GEI)
---
'opsi4instituts' = Communityprojekt für wissenschaftliche Einrichtungen
offenes Repository, Update-Notifier
wiki.o4i.org - www.gei.de/institut/direktion/it-service/opsi4instituts
---
'opsi4instituts' = Communityprojekt für wissenschaftliche Einrichtungen
offenes Repository, Update-Notifier
wiki.o4i.org - www.gei.de/institut/direktion/it-service/opsi4instituts
Re: MSI-ID auslesen (auf Linux-System)
Evtl hilft
Allerdings scheint dies auch nicht direkt zum Ziel zu führen:
z.B. liefert
die falsche msi-id
Wenn man mittels
dann liefert
das gewuenschte.
Es sieht mir aber so aus, dass dies keine generelle Loesung ist.
Gruss
Bardo Wolf
Code: Alles auswählen
msitools
z.B. liefert
Code: Alles auswählen
msiinfo suminfo GoogleChromeStandaloneEnterprise.msi
Title: Installation Database
Subject: Google Chrome Installer
Author: Google, Inc.
Keywords: Installer
Comments: 69.0.3497.100 Copyright 2018 Google Inc.
Template: Intel;1033
Revision number (UUID): {A75BC1B4-0E7D-4A31-913A-6EB3950A4F6A}
Created: Sat Sep 15 10:54:40 2018
Last saved: Sat Sep 15 10:54:40 2018
Version: 150 (96)
Source: 2 (2)
Application: Windows Installer XML Toolset (3.8.1128.0)
Security: 2 (2)
Wenn man mittels
Code: Alles auswählen
msiinfo tables GoogleChromeStandaloneEnterprise.msi
_SummaryInformation
_ForceCodepage
_Validation
AdminExecuteSequence
AdminUISequence
AdvtExecuteSequence
AppSearch
Property
Binary
Component
Directory
CustomAction
Feature
FeatureComponents
File
InstallExecuteSequence
InstallUISequence
Media
Registry
RegLocator
RemoveRegistry
Signature
Upgrade
Code: Alles auswählen
msiinfo export -s GoogleChromeStandaloneEnterprise.msi Component
CREATE TABLE `Component` (`Component` CHAR(72) NOT NULL, `ComponentId` CHAR(38), `Directory_` CHAR(72) NOT NULL, `Attributes` INT NOT NULL, `Condition` CHAR(255), `KeyPath` CHAR(72) PRIMARY KEY `Component`)
INSERT INTO `Component` (`Component`, `ComponentId`, `Directory_`, `Attributes`, `KeyPath`) VALUES ('ProductClientState', '{BBD006BC-C553-3C61-A0BC-BF560606D396}', 'TARGETDIR', 4, 'NonEmptyComponent')
root@opsi6:/tmp# msiinfo export -s GoogleChromeStandaloneEnterprise64.msi Component
CREATE TABLE `Component` (`Component` CHAR(72) NOT NULL, `ComponentId` CHAR(38), `Directory_` CHAR(72) NOT NULL, `Attributes` INT NOT NULL, `Condition` CHAR(255), `KeyPath` CHAR(72) PRIMARY KEY `Component`)
INSERT INTO `Component` (`Component`, `ComponentId`, `Directory_`, `Attributes`, `KeyPath`) VALUES ('ProductClientState', '{CF96AAAE-85FF-3621-8D4C-C60F91F8F281}', 'TARGETDIR', 4, 'NonEmptyComponent')
Es sieht mir aber so aus, dass dies keine generelle Loesung ist.
Gruss
Bardo Wolf
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de
Re: MSI-ID auslesen (auf Linux-System)
Auf Anhieb haben die Vorschläge bei vielen, aber nicht bei allen unserer MSIs funktioniert.
Die "msitools" kannte ich noch gar nicht, das sieht vielversprechend aus ... muss ich mir aber noch genauer ansehen.
Erstmal vielen Dank für eure Antworten!
Holger
Die "msitools" kannte ich noch gar nicht, das sieht vielversprechend aus ... muss ich mir aber noch genauer ansehen.
Erstmal vielen Dank für eure Antworten!
Holger