SCCM Client Upgrade findet nicht statt

Szenario: SCCM Update durchgeführt, Client AutoUpgrade enabled, findet aber nicht statt

Fehler im ccmseutp.log:

Failed to get DP locations as the expected version from MP 'https://meinsccm.meinefirma.whatever'. Error 0x87d00215

Grund:

Das SCCM Package “Configuration Manager Client Package” wurde nicht oder nicht korrekt auf den oder die Distribution Points verteilt. Sieht man im Content Status – ist der nicht grün hats was. Im konkreten Fall hat ein “Update Distribution Points” gereicht.

VHD in XenServer importieren

Wählt man “Import…” im XenCenter aus und importiert somit eine VHD von einem Windows Rechner/Share läuft das immer fix mit 100 MBit – was je nach VHD-Größe anstrengend sein kann.

Schneller gehts wie immer wenn man zum schwarzen Fenster greift:

  • Source-Share mounten: mount -t cifs //server/share /mntdir -o domain=…,username=…,password=…,vers=3.0
  • UUID vom Ziel Repositorty ermitteln: xe sr-list
  • VDI erzeugen und UUID speichern (size = bytes): VDI=$(xe vdi-create sr-uuid=… name-label=… virtual-size=…)
  • VHD importieren: xe vdi-import uuid=$VDI filename=/mntdir/my.vhd format=vhd

Hyper-V Gen2 in XenServer importieren

Wer eine Gen2 Hyper-V VM (=UEFI) auf Gen1 (=BIOS) konvertieren muss (in meinem Fall um die VHD auf XenServer zu importieren) muss etwas in die Trickkiste greifen – ich bin hier fündig geworden, hab aber ein paar kleine Änderungen vorgenommen:

  • Gen2 VHD/VHDX mounten
  • via Disk Management neue VHD erzeugen in der Größe der zu kopierenden Datenpartition von der Gen2 VHD – es funktionieren auch dynamic Disks, ist wichtig weil sonst der Import am XenServer u.U. ewig dauert
  • erzeugte VHD mounten falls Disk Management nicht eh vollelektrisch macht
  • Disk mit MBR initialisieren
  • MiniTool Partition Magic Portable herunterladen
  • Partition kopieren – Zielpartition als primary anlegen
  • Ziel VHD dismounten
  • neue Gen1-VM mit Ziel VHD und passendem Windows ISO gemountet erzeugen, sicherstellen dass von CD gebootet wird
  • in Recoveryconsole (CMD) booten
  • in DISKPART das Ziel-Volume selektieren (list vol / sel vol #)
  • Ziel-Volume active setzen (active)
  • auf die Ziel-Windows-Installation wechseln (cd /d c:\)
  • Bootconfig neu erzeugen (bootrec /fixmbr, bootrec /fixboot, bootrec /rebuildbcd)
  • VM ausschalten, VHD in XenServer importieren (Kontextmenü von Host oder Pool/Import… – oder via xe vdi-import (schneller)

VHDX Reads langsam

Keine Ahnung worans liegt aber in dem Fall war am Host (2012R2) der Power Plan auf “Balanced” und die VM (2008R2) hat auf Vollgas nicht mal 100 MB/sek gebracht (zig physische Spindeln).

Power Plan auf “High performance” gesetzt und die Read-Rate ist instant auf erwartbare Werte (800 MB/sek) gesprungen.

Muss irgendeinen Hardwarebezug haben (hier: HP ProLiant DL380 Gen9) – andere Geräte (auch der gleichen Generation aber mit anderen Komponenten) zeigen dieses Verhalten nicht….

Hinweis hab ich hier gefunden.

Stored Procedures mit bestimmten Namen rekompilieren

Weil ich auch das immer wieder vergesse:

use MyDB

declare @proc varchar(50)

declare procs cursor for select SPECIFIC_NAME from INFORMATION_SCHEMA.ROUTINES where ROUTINE_TYPE='PROCEDURE' and SPECIFIC_NAME like '%whatever%'
open procs
fetch next from procs into @proc
while @@FETCH_STATUS = 0
begin
   print @proc
   exec sp_recompile @proc
   fetch next from procs into @proc
end
close procs
deallocate procs

Open with notepad

Weil ichs dauernd vergesse:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Open with Notepad]

[HKEY_CLASSES_ROOT\*\shell\Open with Notepad\Command]
@="notepad \"%1\""

 

Mehr Cores für Android Emulator

Android Device Manager in Visual Studio 2017 legt Android Emulator VMs IMMER mit 2 Cores an – wo doch jeder weiß dass ein Android unter 4 Cores in Wahrheit unbenutzbar ist eine sehr fragwürdige Entscheidung. Die Emulatoren sind völlig überraschend schweinelangsam – und es gibt keinen Parameter wo man das easy raufstellen könnte.

Lösung: Emulator manuell starten mit Parameter -cores XX oder im Device Manager einen Custom Parameter namens hw.cpu.ncore hinzufügen und als Wert die gewünschten Cores angeben: