Gökhan Yıldan

A Space for My Notes

Menu
  • Home
  • About Me
  • Tools
  • Contact
Menu

Tag: SCCM (MECM)

Free Up Disk Space on SCCM DPs Using ContentLibraryCleanup.exe

Posted on 30/11/202506/06/2026 by Gokhan Yildan

Introduction

One of the most common challenges for SCCM (MECM) administrators is managing disk space on Distribution Points (DPs). Over time, as you deploy applications, software updates, and OS images, the SCCMContentLib folder grows. Even after removing deployments or packages from the console, orphaned content can sometimes remain on the server, consuming storage.

In this post, I will walk you through how to use the Content Library Cleanup Tool (ContentLibraryCleanup.exe) to reclaim disk space by removing orphaned content safely and effectively.

Continue reading “Free Up Disk Space on SCCM DPs Using ContentLibraryCleanup.exe”

Powershell ile SCCM Baseline Tetiklemek

Posted on 14/04/202418/04/2024 by Gokhan Yildan

Merhaba,
Bu yazıda sürekli yaptığım baseline’ları tekil clientlarda anında tetiklemek adına kullandığım ufak bir script’i paylaşacağım.

Continue reading “Powershell ile SCCM Baseline Tetiklemek”

SCCM/MECM Maintenance Task’lar ve İşlevleri

Posted on 03/02/202403/02/2024 by Gokhan Yildan

Selamlar, bu yazıda SCCM/MECM sistemimizin sağlıklı ve istediğimiz sınırlarda kalmasını sağlayan maintanence tasklardan bahsetmeye çalışacağım.

Continue reading “SCCM/MECM Maintenance Task’lar ve İşlevleri”

SCCM/MECM Application Deployment Tipi Olarak Task Sequence Kullanımı

Posted on 17/12/202317/12/2023 by Gokhan Yildan

Selamlar, bu yazıda oluşturduğumuz application (uygulama) içerisine deployment type olarak task sequence eklenmesinden bahsedeceğim.

Continue reading “SCCM/MECM Application Deployment Tipi Olarak Task Sequence Kullanımı”

SCCM Site Recovery: Hasarlı Ortamı Backup’dan Nasıl Kurtarabiliriz?

Posted on 19/11/202319/11/2023 by Gokhan Yildan

Selamlar, uzun zamandır bana da kılavuz olması adına hakkında yazmak istediğim site recovery konusunu lab ortamımda güncelleme sırasında sorun yaşadığımdan artık ele alabilirim. SCCM ortamımı 2309 versiyonuna geçiş sırasında elektrik kesintisi nedeniyle cihazım kapandı.

Continue reading “SCCM Site Recovery: Hasarlı Ortamı Backup’dan Nasıl Kurtarabiliriz?”

WSUS Önerilen Konfigürasyonlar – WSUS Best Practices

Posted on 18/11/202318/11/2023 by Gokhan Yildan

Selamlar, bu yazıda Microsoft tarafından önerilen WSUS best practicelerini uygulayacağız.

Kapasite Limiti

WSUS 100,000 ve hatta Configuration Manager üzerinden 150,000 makineyi destekleme kapasitesi olsa da Microsoft Scan Storm dediğimiz bir problemin meydana gelmemesi için bu rakamlara çıkılması yerine aynı SQL Server DB’nin paylaşıldığı 2-4 sunucunun daha konfigüre edilerek ortama dahil edilmesinin iyi olabileceğini belirtiyor. Shared DB kullanan WSUS sunucuları sayesinde kullanıcılar farklı bir WSUS sunucuya atladıklarında full scan yapmayacak ve 1GB’dan fazla olabilecek boyutlarda metadata dosyalarını sunucuya yeniden transfer etmeye çalışmayacaklar. Bu konu ile ilgili farklı bir zamanda bir yazı yazmaya çalışacağım.

Geri Dönüşümü İptal Etme ve Memory Limitasyonu Konfigürasyonu

WSUS güncelleme metadatalarını veri tabanından çeken bir cache mekanizması kullanır. Bu süreç çok maliyetli ve çok yoğun memory kullanabilir. Bu sebeple IIS’de WSUS’un bulunduğu pool’da geri dönüşüm(recycling) sürecine sokulabilir, bu duruma bir de yukarıda belirtilen scan storm eklenirse, WSUS’un sürekli olarak geri dönüşüm döngüsüne girmesi ve scan request’lerine HTTP 503 error’leri vermesi ile sonuçlanabilir.

Microsoft bu duruma karşı WSUSPool üzerindeki varsayılan Queue Length ‘in yükseltilmesini ve sanal(virtual) ve özel(private) memory limitlerinin kaldırılması adına 0 olarak düzenlenmesini önermektedir.

IIS Manager > Application Pools >WsusPool‘a sağ tıklıyoruz ve Advanced Settings.. ‘i seçiyoruz.

Aşağıda MS tarafından önerilen değerleri görebilirsiniz. Windows Server Update Services (WSUS) best practices – Configuration Manager | Microsoft Learn

Yaklaşık 17,000 güncellemenin önbelleğe alındığı bir ortamda 24GB’dan fazla memory’e cache sabitlenene kadar ihtiyaç duyulabilir.

Setting nameValue
Queue Length2000 (up from default of 1000)
Idle Time-out (minutes)0 (down from the default of 20)
Ping EnabledFalse (from default of True)
Private Memory Limit (KB)0 (unlimited, up from the default of 1,843,200 KB)
Regular Time Interval (minutes)0 (to prevent a recycle, and modified from the default of 1740)

Bandwidth’i Daha Verimli Kullanmak Üzere Sıkıştırmanın Açık Olup Olmadığını Kontrol Etmek

SCCM ile update paketlerimizi DP’lerimize gönderip oradan clientlarımıza dağıtıyoruz. Bu bandwitdh olarak devasa fayda sağlamakla birlikte, network’te saturasyonun ve over-subscription’ın da önüne geçiyor, ayrıca birkaç sunucu üzerinde darboğaz oluşmasını engelliyor. Fakat WSUS için aynı şeyi söyleyemeyiz. Evet WSUS makine bazlı trafiği update paketine nazaran çok daha ufak olmaktadır ancak DP mantığını kullanamadığımız için yukarıdaki problemlerin makine sayısına bağlı olarak olma ihtimali bulunuyor.

Bu durumda WSUS üzerinde oluşacak istekleri sıkıştırarak burayı biraz daha kontrol altında tutabiliriz. Bu sıkıştırma tabii ki WSUS sunucumuzun CPU kullanımını arttıracaktır, ancak bandwidth olarak tasarruf etmemizi ve yukarıda belirttiğim durumların yaşanmamasına faydası olabilir. Aynı durum tam tersi için de geçerli, eğer CPU’nun harcadığı güç kısıtlıysa ancak bir bandwidth sıkıntınız yoksa bu durumda da aşağıda ilettiğim ayar açıksa kapatabilirsiniz.

Sıkıştırma konfigürasyonu kontrol etmek için;

IIS’in config folderına gidiyoruz: C:\WINDOWS\System32\inetsrv\config
httpCompression altında aşağıdaki konfigürasyon var ise,

<scheme name="xpress" doStaticCompression="false" doDynamicCompression="true" dll="C:\Program Files\Update Services\WebServices\suscomp.dll" staticCompressionLevel="10" dynamicCompressionLevel="0" />

Ve aşağıdaki Registry Value var ise konfigürasyon zaten açıktır.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Update Services\Server\Setup\IIsDynamicCompression

Değilse açmak için;

cscript "%programfiles%\update services\setup\DynamicCompression.vbs" /enable "%programfiles%\Update Services\WebServices\suscomp.dll"

Açık ancak kapatmak istiyorsanız;

cscript "%programfiles%\update services\setup\DynamicCompression.vbs" /disable

Seçili Product’larınızı Gözden Geçirin

SCCM ile birlikte WSUS ya da direkt WSUS kullanın farketmeksizin update’leri sync edeceğiniz product’larınızı arada bir gözden geçirmekte fayda olmaktadır. Artık kullanmadığınız, eski olduğunu tamamen temizlediğiniz ya da günceline geçiş yaparak eskisini kullanmayı sonlandırdığınız uygulamalarınızı kaldırarak metadata boyutunuzu düşürebilirsiniz.

SCCM Kullanıyorsanız; Administration > Site Configuration > Sites > Primary Site’a sağ klik > Configure Site Components > Software Update Point

Örneğin artık End of Life olmuş sizin de muhtemelen ortamınızda artık kullanmadığınız Windows Server 2012’yi artık product’larımız arasından kaldırabiliriz.

Sadece WSUS kullanıyorsanız bu ayar WSUS konsolunda Options > Products and Classifications altında yer almaktadır. (SCCM kullanıyorsanız tekrar buradan kaldırılmasına gerek bulunmuyor.)

Kaynak:

Windows Server Update Services (WSUS) best practices – Configuration Manager | Microsoft Learn

SCCM Prerequisites Warning: Potential SQL server performance…

Posted on 12/11/202312/11/2023 by Gokhan Yildan

Selamlar, Bu yazıda SCCM 2309 güncellemesi sırasında lab ortamımda çıkan “Potential SQL server performance issue caused by change tracking retention period.” warning’inin giderilmesini ele alacağım.

Continue reading “SCCM Prerequisites Warning: Potential SQL server performance…”

SQL Database Optimizasyonu

Posted on 21/06/202322/06/2023 by Gokhan Yildan

SQL DB’mizdeki indexler bir süre sonra fragmente olurlar ve çalıştırdıkları uygulamada ciddi şekilde yavaşlığa neden olabilirler. SCCM SQL’imiz de bu durumdan muzdarip olabilir ve konsol üzerinde yapmak istediğiniz işlemler ve hatta konsolun açılması bile normalden uzun sürebilir.

Continue reading “SQL Database Optimizasyonu”

SCCM Capture Media İle Base İmaj Oluşturmak

Posted on 08/06/202314/06/2023 by Gokhan Yildan

Selamlar, bu yazıda SCCM (MECM) ile capture media nasıl oluşturabiliriz ve ardından bu oluşturduğumuz capture media ile önceden bütün ayarlarını yaptığımız referans işletim sistemini nasıl capture edebiliriz bunu aktarmaya çalışacağım.

Öncelikle base, referans ya da golden imaj kavramından biraz bahsedelim. Bu kavramlar bir kurumun cihazlarına kuracağı önceden bazı uygulama veya ayarların kaldırıldığı ya da eklendiği özelleştirilmiş işletim sistemleridir. Windows çok fazla kullanıcıya tek bir kurulum medyası ile ulaştığı için özellikle orta ve büyük ölçekli işletmeler Windows’un varsayılan olarak gelen bazı uygulamalarını kaldırmak ve yerine kendi işletmelerinde kullanacakları uygulamaları ve konfigürasyonları eklemek isterler. Bunu yapmanın en zarif yollarından biri işletim sistemini önceden yapılandırmaktır. Buna imajını almak diyebiliriz.

Ön Gereksinimler

  • Capture edeceğimiz makinenin herhangi bir domainde olmaması ve Workgroup olması gerekmektedir.
  • Base imajını alacağımız makinede unique identifier kullanan herhangi bir ajan (SCCM, Carbon Black vs.) bulunamamalıdır. Bulunuyorsa da temiz bir şekilde (tüm config dosyaları dahil) kaldırılmalıdır.
  • İmajı alınacak makinede Administrator haklarına sahip olmak gerekmektedir.
  • İmajın HyperV gibi bir sanallaştırma ortamında alınması hem cihazda driver olması gerekmeyeceği için hem de snapshot (yeni adıyla checkpoint) teknolojisiyle imajı tekrar oluşturmadan istenen noktaya dönebilme esnekliği sağlayacaktır.

SCCM üzerinden Capture Media Oluşturmak

Capture media oluşturmak için SCCM ortamımızda Software Library altında Operating Systems > Task Sequences‘e sağ tıklayarak Create Task Sequence Media seçeneğini seçiyoruz.

Ardından açılan pencerede Capture Media seçeneği üzerinden ilerliyoruz.

Media type seçiminde ISO oluşturmak için CD/DVD set seçimini seçiyoruz. Media file olarak capture medyamızı aktaracağımız klasörü seçiyoruz ve dosya ismini .iso uzantısında veriyoruz.

Ek olarak Staging folder konumunu soruyor, bu konum capture media’nın oluşturulacağı alan olarak nitelendirebiliriz ve varsayılan konum bırakılmadan ikincil partition üzerinde bir klasör oluşturarak buranın girilmesini öneririm, bazı antivirüsler buranın default alanına (Appdata/Temp) dosya yazılmasını zararlı yazılım olarak algılayıp engelleyebilmekte.

Media label dosyamızın ismi olacak, varsayılan şekilde kalabilir. ,

Include autorun.inf ise medyamızın mount edildiğinde otomatik başlaması için seçebileceğimiz bir ayar.

Bir sonraki adımda Boot image’ımızı seçiyoruz, halihazırda kullandığımız boot image seçilebilir.

Distribution point olarak da capture media’nın boyutu çok yüksek olmayacağından çok farketmese de bağlantı zayıf ise, capture media’yı oluşturduğumuz sunucumuza en yakın konumdaki (ya da en hızlı bağlantıdaki) DP seçilebilir.

Ardından summary adımını da ilerletip işlemi başlatıyoruz.

İşlem tamamlandı.

Konuma gittiğimizde capture medyamızın oluştuğunu teyit ediyoruz.

Kurumda Kullanılmayacak Windows Store App’lerin Temizlenmesi

Windows 10 ile birlikte Microsoft işletim sistemlerinin içerisine çeşitli uygulamalar ve hatta oyunlar eklemeye başladı. Biz bu gerek güvenlik nedeniyle gerek ise şirket bilgisayarlarının farklı amaç doğrultusunda kullanılmaması amacıyla bu uygulamaların bazılarını kaldırmamız gerekebilir. Bunun için;

  • Powershell’i açıyoruz.
  • Import-Module Appx ile appx modülünü çağırıyoruz.
  • Import-Module Dism ile dism modulünü çağırıyoruz.
  • Get-AppxPackage -AllUsers | select Name,Packagefullname,packagefamilyname,publisherid komutu ile mevcutta bulunan Store uygulamalarını döküyoruz ve kaldıracaklarımızı seçiyoruz.
  • Kaldıracak uygulamaları Remove-AppxPackage -Package \<packagefullname> ile kaldırıyoruz.

Bu süreç de tamamlandığına göre referans makinemizi capture etmeye başlayabiliriz.

Başlamadan Önce Son Temizlikler

Referans makinemizi kurduk, güncellemeleri yaptık, ayarlarımızı kurumun ihtiyaçları ve güvenlik politikaları doğrultusunda yaptık. Şimdi sırada capture etmek var. Bu noktada birkaç ip ucu paylaşmak isterim.

  • Başka bir user profile var ise silelim.
  • Referans makineyi capture etmeden önce tüm Temp klasörlerini temizleyelim.
    • C:\Temp
    • C:\Windows\Temp
    • C:\Users\kullaniciadi\AppData\Local\Temp
  • Disk Cleanup Tool çalıştırarak tüm kalıntıları temizleyelim.
  • Tüm event’leri aşağıdaki komutla tek bir hamlede temizleyelim.
    • wevtutil el | Foreach-Object {wevtutil cl “$_”}
  • Kurulum yapılırken oluşturulan kullanıcı profilini temizleyelim.
  • Referans makineniz içerisinde başka bir kurulum dosyası ya da herhangi bir gereksiz dosya varsa temizleyelim.

Bu yukarıdaki adımlar bu referans makinenizi kurduğumuz makinelerde de olmaması için yapılması faydalı olacaktır.

Oluşturduğumuz Capture Media İle Hazırladığımız Makinenin Görüntüsünü Almak

Bu adıma geçmeden yine bir snapshot almakta fayda var, sonuç olarak şu an final haldeyiz ve bir hata alırsak hatanın kalıntılarını temizlemek yerine buraya dönebiliriz.

Ardından yukarıda oluşturduğumuz capture image’ı mount edelim.

Capture Media disk drive’ı üzerinden geldi, LaunchMedia’yı açalım.

Next ile ilerliyoruz.

Bir sonraki adımda bizden nereye capture edileceğini girmemizi istiyor. Bir network konumunu belirtmemiz gerekli, HyperV hostunda bir klasör açıp burayı share edebiliriz.

Son adımdaki bilgileri girerek süreci başlatıyoruz.

Capturing işlemi başladı.

Bir süre sonra Windows restart olacak ve WinPE üzerinden açılacak, bu noktada sysprep tamamlanmış artık capturing başlamış olacaktır.

Bir yandan capture edilecek klasöre baktığımızda imajımızın buraya yavaş yavaş oluştuğunu gözlemleyebiliriz.

Çalışma tamamlandı, teşekkürler.

Kaynaklar;

Sysprep fails with Microsoft Store apps – Windows Client | Microsoft Learn

RamDiskTFTPBlockSize Değeri İle Network Imajı Hızlandırmak

Posted on 06/06/202306/06/2023 by Gokhan Yildan

Ortamınızda network üzerinden imaj atıyorsunuz ancak imajın ilk aşaması olan PXE (preboot execution environment) adımında WinPE’yi çekerken yavaşlık yaşıyorsunuz. Ancak bir kez WinPE memory (RAM)’e indiğinde imaj gayet hızlı ilerliyor. Bunun nedeni varsayılanda UDP üzerinden çok ufak parçalarda gönderilen WinPE paketinin karşı tarafa ulaştıktan sonra bir ACK(acknowledgment) paketi beklemesinden kaynaklanıyor.

Bu süreci biraz daha hızlandırmak adına değiştirebileceğimiz 2 farklı değer bulunuyor, bunlar; RamDiskTFTPWindowSize ve RamDiskTFTPBlockSize olarak geçiyor. Temelde RamDiskTFTPWindowSize‘ın mantığı bir kerede gönderilecek paket boyutunu belirlemek, mantıken bunu arttırdığımızda paket boyutları büyüdüğü için daha az ACK beklememiz gerekecek ve dolayısıyla işlem hızlanacaksa da, IP fragmantasyonuna neden olduğundan Microsoft tarafından önerilmemektedir.

Diğeri RamDiskTFTPWindowSize ise kaç pakette bir ACK paketini isteyeceğimizi belirlememize olanak sağlıyor ve bu sayede de karşı tarafı bekleyeceğimiz süre kısalacağından süreç hızlanıyor. Bunu düzenleyerek ilerleyebiliriz.

Bu registry değerine ne vermemiz gerektiği konusunda sabit bir değer bulunmamakta çünkü her ortamın network mimarisi, donanımı ve hatta kullandığı ürünler bile farklı, bu nedenle deneme yanılma yöntemi ile optimum değeri yakalamamız gerekiyor. Bu değerin çok fazla arttırılması PXE’yi indirme aşamasında hata verme ihtimali oluşturabileceğinden aşırıya kaçmadan optimum değeri yakalamak adına PXE-Enabled DP üzerinde aşağıdaki key’in değerini arttırabilirsiniz.

  • Konum: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\DP
  • İsim: RamDiskTFTPWindowSize
  • Tip: REG_DWORD
  • Değer: Varsayılan değer 1

Önerilmese de kullanılabilecek diğer değerden de yazı içerisinde bahsetmek isterim.

  • Konum: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\DP
  • İsim: RamDiskTFTPBlockSize
  • Tip: REG_DWORD
  • Değer: Varsayılan değer 4096

Kaynak;
Prepare site system roles for OSD – Configuration Manager | Microsoft Learn

SOCIAL MEDIA

LinkedIn
Twitter
RSS
Follow by Email

RECENT POSTS

  • Free Up Disk Space on SCCM DPs Using ContentLibraryCleanup.exe
  • Check Which Task Sequence Contains a Specific Package
  • Resolve CrowdStrike Issue Using Powershell and SCCM
  • Driver Import Problemi – Some driver(s) can not be imported successfully.
  • IPerf Aracı İle Network Kapasite ve Performans Analizi

ARCHIVE

  • November 2025
  • January 2025
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • February 2024
  • December 2023
  • November 2023
  • June 2023
  • March 2023
  • February 2023

CATEGORIES

  • Applications
  • Baseline
  • Client Troubleshooting
  • CMG
  • Distribution Point
  • Dynamic Collection
  • Imaging
  • Inplace Upgrade
  • Networking
  • Optimization
  • PKI
  • Power BI
  • Powershell
  • Prerequisites Error/Warning
  • PXE
  • SCCM (MECM)
  • Site Recovery
  • SQL
  • SRSS
  • SUP
  • Task Sequence
  • Troubleshooting
  • Windows PC
  • Windows Server
  • Windows Update
  • WSUS

LABELS

AnyDesk Azure Build Geçişi Certification Config Man Config Mgr English Feature Kaldırmak Maintenance Task MEMCM Nasıl Yapılır? PXE Responder SCCM (MECM) Script Software Update Sorun Giderme SQL Reporting SSL/PKI Türkçe Upgrade Windows 10/11

© 2026 Gökhan Yıldan | Powered by Minimalist Blog WordPress Theme