Default Profile nasıl kişiselleştirilebilir?

Merhaba,

Bir Windows isletim sistemine bir kullanici ile ilk defa logon oldugunuzda, yani diger bir deyisle o isletim sistemi üzerinde logon olan kullanicinin profili daha önce olusturulmamissa (tabii roaming profile kullanicilarini buna katmiyoruz), isletim sistemi üzerinde bulunan default profile kullanilarak kullanicinin profili olusturulur. Bu yeni olusturulan profil üzerinde bazi ayarlarin önceden tanimli olmasini isteyebilirsiniz. Örnegin bir dosya tipini belirli bir program ile açmak olabilir. Bir diger ihtiyaç ise Roaming profile kullanicilarinin logon oldugu isletim sistemlerinde yaptiklari bazi degisikliklerin profile ile birlikte tasinmamasi. Örnegin, yine dosya tipi ile ilgili örnek verecegim, bir dosya tipinin farkli bir program ile açilmasini sagladiniz. Kullanici logoff oldugunda Roaming profile bilgisi, profilin tutuldugu sunucuya kopyalandi. Eger logoff oldugumuz sunucuda profillerin silinmesi için bir policy’si bulunuyorsa, genellikle Terminal Server’lar üzerinde bu tercih edilir, kullanici o sunucuya tekrar logon oldugunda file association tanimi kaybolacaktir. Bunun nedeni, File association tanimlarinin tutuldugu HKEY_CLASSES_ROOT hive’inin %userprofile%\Appdata\Local altinda bulunan usrclass.dat ile yüklenmesi ve bu dosyanin logoff sonrasi roaming profile ile birlikte kopyalanmamasidir. Bu nedenle siz Roaming profile ile logon oldugunuzda, usrclass.dat dosyasi logon oldugunuz sunucu üzerindeki Default Profile’a ait Appdata\Local klasöründen kopyalanmaktadir. Dilerseniz ExcludeProfileDirs registry anahtarinda bir degisiklik yaparak kopyalanmasini saglayabilirsiniz ancak bu yazinin amaci diger opsiyon yani default profile’in kisisellestirilmesidir.

Default profile ile logon olup degisikleri yapmak mümkün olmadigindan bunun için farkli bir yöntem izlememiz gerekecek. Bunun için test amaçli kullanicigimiz bir sablon Windows kurulumuna ihtiyacimiz vardir. Ben örnegimi Windows Server 2008 R2 referans alarak veriyorum, siz Windows 7 üzerinde de uygulayabilirsiniz.

  1. Öncelikle Windows Server 2008 R2 için image dosyasina ihtiyaciniz olacak. Bu image dosyasini DVD/ISO içerisinden “source” klasörü altinda bulabilirsiniz.
  2. Sablon olarak kullanacigimiz Windows kurulumunda (Virtual ortamda olabilir) unattend.xml kullanarak sistemi sysprep’leyebiliriz. Burada ki amacimiz sysprep islemi sirasinda CopyProfile yöntemiyle makinada logon olan kullaniciya ait tüm profil bilgisini Default Profile’a yazmaktir.
  3. Bunun için önemli olan sablon olarak kullanacagimiz sistemde sadece bir kullanici olmasi ve o kullanicinin (tercihen administrator) üzerinde degisikliklerin yapilip sysprep yapilmasi gerekmektedir.
  4. Sablon olarak kullanacagimiz kurulum üzerinde dosya tiplerini degistirmeyi planladiginiz programlarin yüklü olmasi gerekmektedir.
  5. Yine sablon olarak kullanacagimiz sistemin WORKGROUP olarak çalismasi ve sadece bir profile olmasini öneririm.
  6. Bunun için administrator ile logon olduktan sonra Control Panel > User Accounts > User Accounts > Configure advanced user profile properties altinda Administrator (ve Default profile) disinda, eger varsa, tüm profilleri silelim.
  7. DVD/ISO’da bulunan /sources/install.wim dosyasini Sysprep yapacagimiz sunucu üzerine kopyalayalim. Örnek: C:\Sources\Install.wim
  8. Asagidaki kodu kullanarak bir XML dosyasini taratip, adini unattend.xml olarak verebilirsiniz.
  9. Eger yukarida belirttigimden farkli bir path yazdiysaniz, xml dosyasinda ki satiri düzenlemek gerekecektir. Install.wim’den sonraki komutlar aynen görüldügü gibidir.
    1. <?xml version="1.0" encoding="UTF-8"?>
      -<unattend xmlns="urn:schemas-microsoft-com:unattend">
      -<settings pass="specialize">
      -<component language="neutral" xmlns:xsi="
      https://www.w3.org/2001/XMLSchema-instance" xmlns:wcm=" https://schemas.microsoft.com/WMIConfig/2002/State" versionScope="nonSxS" publicKeyToken="31bf3856ad364e35" processorArchitecture="x86" name="Microsoft-Windows-Shell-Setup">
      <CopyProfile>true</CopyProfile>
      </component>
      </settings>
      <cpi:offlineImage xmlns:cpi="urn:schemas-microsoft-com:cpi" cpi:source="wim:C:\Sources\install.wim#Windows Server 2008 R2 SERVERENTERPRISE"/> </unattend>
  10. Administrator ile açacagimiz bir komut isteminde sysprep komutunu çalistirabiliriz:
    • %systemroot%\system32\sysprep\sysprep.exe /oobe /reboot /generalize /unattend:c:\sources\unattend.xml
  11. Sysprep sonrasi profilin kopyalandigindan emin olmak için %systemroot%\panther\unattendgc\setupact.log dosyasinda su satirlara bakabilirsiniz:
    1. [shell unattend] CopyProfileDirectory from C:\Users\Administrator succeeded.
      [shell unattend] CopyProfile succeeded.
  12. Sonrasinda hedef sunucu üzerinden Default Profile klasörü (C:\Users) içerigini tamamen silip, sysprep’ledigimiz diger sunucunun üzerinden kopyalayabilirsiniz. Dikkat! Gizli ve/veya sistem dosyalarinin görülebilir oldugundan emin olmaniz gerekiyor.
  13. Sonrasinda hedef sunucu üzerinde profili henüz yaratilmamis bir kullanici ile logon olup, deneyebilirsiniz.

 

Okan ÇETINIM