Vielen wird es aufgefallen sein: In den vergangenen Monaten hat die Menge an Werbeanzeigen trotz Adblocker (Erweiterungen, die Werbung im Internet entfernen) wieder zugenommen. Das liegt daran, dass die Adblocker-Vereine Werbung, die gewissen Kriterien (Platzierung, Unterscheidung, Größe) entsprechen, neuerdings als „Nicht aufdringliche Werbung“ oder „Nützliche Werbung“ eingestuft wird. Diese Werbung wird in den Standardeinstellungen der meisten Adblocker angezeigt. Weiterlesen
Der Wahl-O-Mat ist ein beliebtes Tool für eine erste Einschätzung, welche Parteien den eigenen Ansichten am ehesten entsprechen. Dazu werden, in diesem Fall sind es 38, Thesen durch den Nutzer beantwortet (mit Zustimmung, Neutral, Gegenstimmung, Enthaltung per Überspringen), anschließend Gewichtungen festgelegt, bis zu 8 Parteien ausgewählt und letztenendes berechnet der Wahl-O-Mat anhand der eigenen und der Partei-Antworten auf diese 38 Thesen den Prozentsatz der Übereinstimmung. Weiterlesen
Die Anleitung in diesem Artikel funktioniert vermutlich immernoch einwandfrei, allerdings bevorzuge ich mittlerweile die wesentlich einfachere Deployment-Methode, die ich in diesem Deployment-Guide beschrieben habe.
Intro
Das Deployment von Adobe Reader DC im Windows Netzwerk via GPO Batch-Startscript ähnelt der Verteilung des alten Adobe Readers sehr – dennoch fasse ich die wichtigsten Steps hier zusammen.
Vorbereitung
Ihr braucht für die Verteilung immer die DC-Basisversion (als .msi) und das aktuellste, gewünschte Update (als .msp). Außerdem, um die Reader Installation vor dem Deployment anzupassen, den installierten Reader DC Customization Wizard.
Step-by-Step
Lokale AIP-Installation (z.B. C:\adc1516\) der Basisversion mit:
msiexec /a AcroRdrDC1500720033_de_DE.msi
Aktuellsten Patch in die lokale AIP-Installation Slipstreamen (lokalen .msi Pfad beachten):
Im lokalen AIP Ordner C:\adc1516 eine leere setup.ini Datei erzeugen und die AcroRdrDC1500720033_de_DE.msi in AcroRead.msi umbenennen (Letzteres ist nur eine kosmetische Anpassung).
Mit dem Adobe Reader DC Customization Wizard die C:\adc1516\AcroRead.msi öffnen und beliebig anpassen. Änderungen wie vorgegeben als AcroRead.mst speichern.
(Es müssten jetzt 3 Dateien und 4 Ordner in C:\adc1516\ existieren.) Den lokalen AIP-Ordner auf euer Deployment-Laufwerk verschieben.
Das Deployment habe ich seit Reader 11 etwas verändert. Statt „complete-Ordner“ setze ich nun auf eine Versionsüberprüfung der Programm-exe. Das ist dynamischer und lässt sich differenzierter behandeln. Im Falle von Reader DC ist die Versionierung jedoch etwas seltsam. Beispielsweise lautet das aktuellste Update „AcroRdrDCUpd1501720053.msp“, nach der Installation wird die Dateiversion der .exe jedoch mit 15.17.20050 angegeben. Möglicherweise haben hier die Entwickler geschlampt.
Jedenfalls ist für die Verteilung mit Versionsüberprüfung noch ein Zwischenschritt notwendig: Schaut im gerade erstellten lokalen AIP-Ordner, bzw. den schon aufs Deployment-Laufwerk kopierten Ordner die Eigenschaften Datei AcroRd32.exe an (liegt unter .\program files\Adobe\Acrobat Reader DC\Reader\) – im Tab Details steht die Versionsnummer, die ihr ins Skript und somit auch als Ordnernamen im Deployment-Laufwerk angeben müsst: Außerdem wird die VersionCompare.exe benötigt.
Hier nun das Script: Code anzeigenDen Code könnt ihr bequem mit den Links/Rechts Pfeiltasten horizontal bewegen.
@echo off & Color 9f & setlocal
set wd=\\server\Deployment\Software\Reader
set log=%wd%\reader-log.txt
set readerEL=999
set retry=0
set forcecleanup=yes
set deactivateToolsSidebar=yes
REM:: ******************
set version=15.17.53
REM:: ******************
REM:: Clientfilter: nur die Computer aus der allowedPCs.txt dürfen installieren
::for /f %%f in (%wd%\allowedPCs.txt) do if "%computername%"=="%%f" goto start
::goto end
REM:: Clientfilter: die Computer aus der deniedPCs.txt dürfen nicht installieren
for /f %%f in (%wd%\deniedPCs.txt) do if "%computername%"=="%%f" goto end
:start
if not exist %wd%\deploy\%version%\complete md %wd%\deploy\%version%\complete
if not exist %wd%\deploy\%version%\complete\%computername% goto beforeinstall
if "%deactivateToolsSidebar%"=="yes" goto restoreToolbar
:beforeinstall
if "%forcecleanup%"=="yes" goto cleanup
goto install
:cleanup
echo %date% %time:~0,8% - %computername% deinstalliert alle Reader Versionen... >> %log%
REM:: uninstall all reader versions
taskkill /im acrord32.exe /t /f
taskkill /im acrord64.exe /t /f
start /w %wd%\cleaner\reader-cleaner-9.exe /silent /product=1
start /w %wd%\cleaner\reader-cleaner-10.exe /silent /product=1
start /w %wd%\cleaner\reader-cleaner-dc.exe /silent /product=1
echo %date% %time:~0,8% - %computername% hat alle Reader Versionen deinstalliert... >> %log%
goto install
:install
echo %date% %time:~0,8% - %computername% startet die Installation... >> %log%
start /w msiexec /i "%wd%\deploy\%version%\AcroRead.msi" /qn TRANSFORMS="%wd%\deploy\%version%\AcroRead.mst"
set readerEL=%errorlevel%
if %readerEL%==1618 goto retry REM:: msiexec process in use, installation already in progress
if %readerEL%==1602 goto retry REM:: user canceled installation
if %readerEL%==1603 goto retry REM:: fatal error, some use it for "already installed" (eg. java)
echo %date% %time:~0,8% - %computername% hat die Installation abgeschlossen, Errorlevel: %readerEL%... >> %log%
if %readerEL%==0 md %wd%\deploy\%version%\complete\%computername%
if "%deactivateToolsSidebar%"=="yes" goto restoreToolbar
goto end
:restoreToolbar
if exist "c:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroApp\" set instpath=c:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroApp
move "%instpath%\ENU\disabled\AppCenter_R.aapp" "%instpath%\ENU"
move "%instpath%\ENU\disabled\Home.aapp" "%instpath%\ENU"
move "%instpath%\ENU\disabled\Viewer.aapp" "%instpath%\ENU"
move "%instpath%\DEU\disabled\AppCenter_R.aapp" "%instpath%\DEU"
move "%instpath%\DEU\disabled\Home.aapp" "%instpath%\DEU"
move "%instpath%\DEU\disabled\Viewer.aapp" "%instpath%\DEU"
rd "%instpath%\ENU\disabled"
rd "%instpath%\DEU\disabled"
echo %date% %time:~0,8% - %computername% hat die Installation optimiert >> %log%
goto end
:retry
if %retry%==1 goto retryfailed
echo %date% %time:~0,8% - %computername% hat die Installation abgeschlossen, Errorlevel: %readerEL%, retry in 5min... >> %log%
set retry=1
ping localhost -n 300 > nul
goto cleanup
:retryfailed
echo %date% %time:~0,8% - %computername% hat die Installation abgeschlossen, Errorlevel: %readerEL%, retry failed, end >> %log%
goto end
:end
endlocal
exit
Alternatives Deployment
Auf der Seite 404techsupport.com habe ich einen noch einfacheren Deployment-Guide gesehen. Dort wird nur anhand des aktuellsten Installers gearbeitet – leider hatte ich noch nicht die Zeit dieses Deployment zu testen. Das hole ich sicher noch nach und Update dann hier. Einzige Einschränkung: Das Deployment funktioniert nur über .exe, ist also nicht für das normale GPO Softwaredeployment via .msi geeignet. Hier die Zusammenfassung, die der Autor mir per Mail zukommen ließ:
I download the latest executable from Adobe’s FTP site for Adobe Reader DC and deploy that with a script. ftp://ftp.adobe.com/pub/adobe/reader/win/AcrobatDC/1501620039/
I created a transform using the Adobe Customization Wizard and the .msi version of the installer. My script then installs the executable and uses the transform as a parameter.
(The script runs at startup assigned by Group Policy. It checks a network location for a „receipt“ for that computer to see if it has run before, and if not, executes the above command. I empty the „receipts“ folder after I download the new installer to the share so that the script executes on their next startup.)
If that works for your deployment options, it’s pretty straight-forward and avoids the annoying .msp patching (security patch or quarterly patch?). If you need an .msi to deploy, you are probably stuck with your steps of creating the admin install.
Das Windows-Feature „User Account Control“ (UAC), im deutschen Windows auch Benutzerkontensteuerung genannt, ist seit Windows Vista verbaut und sorgt für sichereres Rechtehandling beim Ausführen von Programmen. Im Hintergrund steckt außerdem ein Sandboxing-Prinzip, wodurch unterschiedliche Programme in unterschiedlichen Nutzer- und Rechtekontexten auf einem Desktop vereint zusammen arbeiten können.
Die Benutzerkontensteuerung kann auf eine von vier unterschiedliche Stufen gestellt werden; eine davon entspricht der Deaktivierung, die anderen drei realisieren unterschiedliche Sicherheitsstufen.
Im (vertrauensvollen) Unternehmenseinsatz ist eine auf Stufe 1 gestellte UAC sinnvoll, damit administrative Aufgaben auch direkt aus der Anmeldung eines eingeschränkten Nutzers per Eingabe von Admin-Daten möglich ist. Diese lässt sich beispielsweise mit Batch und Registry konfigurieren und im Windows AD verteilen, hier der Code:
@echo off & Color 9f & setlocal
set wd=\\server\Deployment\Sonstiges\activate-uac
set log=%wd%\activate-uac-log.txt
set uacconfig=99
REM Clientfilter: nur die Computer aus der allowedPCs.txt dürfen installieren
::for /f %%f in (%wd%\allowedPCs.txt) do if "%computername%"=="%%f" goto check
::goto end
REM Clientfilter: die Computer aus der deniedPCs.txt dürfen nicht installieren
for /f %%f in (%wd%\deniedPCs.txt) do if "%computername%"=="%%f" goto end
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableLUA /t REG_DWORD /d 1 /f
set uacconfig=%errorlevel%
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 5 /f
set uacconfig=%uacconfig%%errorlevel%
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorUser /t REG_DWORD /d 3 /f
set uacconfig=%uacconfig%%errorlevel%
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v PromptOnSecureDesktop /t REG_DWORD /d 0 /f
set uacconfig=%uacconfig%%errorlevel%
echo %date% %time:~0,8% - %computername% hat UAC Settings übernommen: %uacconfig% >> %log%
:end
endlocal
Die unterschiedlichen Werte der einzelnen Registry-Eigenschaften könnt ihr hier übersichtlich nachlesen. Es gibt noch weitere Punkte der UAC, die über die Registry gesteuert werden können. PS: Das Konzept hinter der UAC ist äußerst komplex und es macht u.U. Spaß, sich als fortgeschrittener Windows-Nutzer darin einzulesen.
Der Datenspeicher von Festplatten wird größer und größer – zweistellige Terabyte-Werte für interne Laufwerke, auch externe erreichen bereits 8TB. Eine schier unvorstellbar große Datenmenge, die auf einem Datenträger gespeichert werden kann. Der Nachteil: Wenn der Datenträger Schaden oder einen Defekt erleidet, sind alle Daten verloren. Doch vielleicht auch nicht. Mit speziellen Tools können im besten Falle die Fehler behoben oder Daten wiederhergestellt werden, abhängig von der Art des Problems. Bild via
Software
EaseUS Data Recovery ist eine Reihe von Tools zur „Datenrettung“. Anwendungsmöglichkeiten gibt es viele: Gelöschte Dateien wiederherstellen, lokal sowie von externen Speichermedien, Daten von unzugänglichen oder fehlerhaften Partitionen wiederherstellen sowie Daten wiederherstellen wenn Windows nicht mehr bootet. Ich werde heute das Tool EaseUS Data Recovery Wizard 10.5 benutzen um die Zuverlässigkeit der Datenwiederherstellung zu testen.
Test-Medium
Ein externer USB-Stick, 32GB, knapp 600 Dateien. Für den Test wurden 449 Dateien in 100 Verzeichnissen vorbereitet und dann gelöscht. Davon knapp 350 Dateien bis 10MB, 30 Dateien zwischen 10 und 100MB und 20 Dateien bis 500MB. Insgesamt ca. 2,3GB an gelöschten Daten.
Test 1
Daten mit Shift+Entf dauerhaft und ohne Papierkorb gelöscht.
Das Löschen von Dateien ist wohl der häufigste Anwendungsfall einer Datenwiederherstellungssoftware. Der Papierkorb ist natürlich geleert worden. Die Software wurde direkt im Anschluss auf den USB-Stick losgelassen.
Direkt nach dem Löschen können die Sektoren auf einem unbenutzten USB-Stick kaum überschrieben werden, daher sollte die Wiederherstellung hier keine Probleme bereiten. Erwartungsgemäß wurden in diesem Fall alle 449 Dateien durch einen Quick Scan gefunden.
Test 2
Datenträger nach dem Löschen beschrieben/benutzt. Für den zweiten Test wurden 21 Dateien, 600MB Daten, auf den Stick kopiert und der Stick mehrfach mit Treesize gescannt, Berichte erstellt und andere Aktionen auf dem Stick ausgeführt. Ein weiterer Schnell-Scan findet nun nicht mehr alle Dateien – 431 von 449 werden direkt noch gefunden:
Sind benötigte Dateien nicht in einem Schnell-Scan zu finden, kann immer noch ein Schritt weiter gegangen werden. Mit dem Tiefenscan wird der gesamte Datenträger durchsucht und alle Daten jeglicher Art ausfindig gemacht. Diese werden nach verschiedenen Partitions- und Dateimerkmalen gruppiert aufgelistet:
Die durch den Tiefenscan gefundenen Daten sind nicht mehr in der ursprünglichen Ordnerstruktur zu finden, weshalb etwas gezielter nach den gesuchten Dateien geschaut werden muss.
Test 3
USB-Medium partitioniert und weitere Daten geschrieben. Auch nach der Partitionierung sind die Daten nicht „richtig“ gelöscht. Die Informationen sind weiterhin verfügbar. Jedoch muss jetzt definitiv der Tiefenscan benutzt werden, um Daten zu finden. Auch jetzt findet EasUS Data Recovery Wizard immernoch fast genauso viele Dateien wie vor dem Formatieren. Diese werden wieder nach Partitions- und Dateityp gelistet.
Die Ergebnisse sind gut, ca. 90% der Daten konnten in meinem bewusst negativ beeinflussten Szenario wiederhergestellt werden. Wenn das Speichermedium, auf dem die Wiederherstellung nötig ist, möglichst gar keinen Schreibzugriffen mehr aussetzt wird, können vermutlich fast alle Daten gerettet werden.
Vergleich
Es gibt natürlich sehr viele Datenwiederherstellungstools – ich habe mit Recuva einen der bekanntesten und übersichtlichsten Kandidaten gewählt, der dazu auch noch kostenlos ist. Der Tiefenscan dauert hier mit 15 Minuten wesentlich länger als EaseUS Data Recovery, findet auch nur 360 Dateien. Diese sind zwar alle mit dem Status „Exzellent“ versehen, also fehlerfrei wiederherstellbar, jedoch fehlen da knapp 200 Dateien.
Fazit
Pro: EaseUS Data Recovery ist insgesamt ein gutes Programm. Es besticht durch ein modernes Design und einfache Bedienbarkeit. Die Oberfläche ist sehr aufgeräumt – keine unnötigen Funktionen, Menüs oder Einstellungen. Die Suche nach Dateien ist besonders schnell und trotzdem sehr gründlich. Im Vergleich zum kostenlosen Konkurrenten Recuva ist EaseUS Data Recovery Wizard 10.5 schneller, findet mehr Dateien und stellt die Funde übersichtlicher dar. Kontra: Dennoch vermisse ich für den Preis von 66€ bzw. 85€ (Angebot bzw. Normalpreis) etwas mehr Funktionalität um die Datensicherung herum. Brauchbar wären komplexere Such- bzw. Filterfunktionen, weitere Anzeigemöglichkeiten (z.B. ALLE Dateien in einer Liste ohne Hierarchie) und mehr Informationen zu Dateien (Meta-Daten, Datumsinfos, evtl. binäre Darstellung). Dadurch könnten die gefundenen Daten besser den gesuchten Dateien zugeordnet werden.
Nur eine kurze Hilfe für den Fehlercode: 0xc004f014, der beispielsweise beim Upgrade von Windows 10 Home auf Professional auftreten kann. Vor allem dann, wenn ein neues Gerät mit installiertem Windows 10 Home ausgeliefert wird und dann ein Upgrade auf Pro erfolgen soll.
Einfache Windows-Admin-Frage: Welcher Mitarbeiter ist in diesem Moment und seit wann an welchem PC eingeloggt?
Einfache Antwort, kurz und knackig: Batch! Mit Hilfe von PsLoggedOn, welches sich im selben Verzeichnis befinden muss wie das Skript:
@echo on & Color 9f & setlocal
for /f "Tokens=1" %%c in ('net view /domain:"%USERDOMAIN%"^|Findstr /L /C:"\\"') do (
for /f "Tokens=*" %%u in ('PsLoggedOn -L %%c^|find /i "%USERDOMAIN%\"') do (
echo %%c %%u
)
)
endlocal
pause
goto :EOF