Tolga CEYHANTolga CEYHAN
  • ANASAYFA
  • İLETİŞİM
  • HAKKIMDA
Yazı Tipi BoyutlandırıcıAaa
Tolga CEYHANTolga CEYHAN
Yazı Tipi BoyutlandırıcıAaa
  • ANASAYFA
  • İLETİŞİM
  • HAKKIMDA
  • ANASAYFA
  • İLETİŞİM
  • HAKKIMDA
Bizi takip edin
GenelPowerShellWindows 10Windows 11Windows 7Windows İşletim SistemleriWindwos 8.1

Kullanıcı Profilleri Powershell ile Silmek

Tolga CEYHAN
Son güncelleme: 12 Ocak 2024 23:11
Tolga CEYHAN
Paylaş
5 Min Read
Kullanıcı Profilleri
Paylaş

 

Makaledeki Başlıklar
Kullanıcı Profilleri Powershell ile Silmek (Delete User Profiles with PowerShell)Kullanıcı Profilleri NumaralandırmaKullanıcı Profilleri SilmekÖzet:

Kullanıcı Profilleri Powershell ile Silmek (Delete User Profiles with PowerShell)

Kullanıcı profilleri bir BT uzmanının sıklıkla uğraşabileceği, hayatının her yerinde bulunan bir parçasıdır. Özellikle Uzak Masaüstü Hizmetleri (RDS) veya Citrix gibi sanal masaüstü ortamlarını yönetenler için bu kesindir.

Bu yazıda sizlere sıkça karşınıza çıkan Kullanıcı profilleri konusunda profilleri silebilmek için  PowerShell den nasıl yararlanabiliriz kısaca anlatacağım.

Windows sistem yöneticilerinin aşağıdaki konularla uğraşması gerekir:

  • Bozuk kullanıcı kayıt defteri düzenlemeleri,
  • Tüm kullanıcı profillerinde paylaşılması gereken dosyalar
  • Bozuk profillerin nasıl yeniden oluşturulacağı,
  • …ve daha fazlası

Bir zamanlar sinir bozucu olan bu durumlar, PowerShell ile artık daha kolay hale geldi. PowerShell’in Windows kullanıcı profillerini yönetmeyi kolaylaştırabileceği birkaç yoldan bahsetmek istiyorum.

Kullanıcı Profilleri Numaralandırma

Bir windows bilgisayarının dosya sistemindeki kullanıcı profillerine göz atmak kolaydır. Basit şekilde; “C:Users“ klasörüne bakabilirsiniz. Ancak bunu yaptığınızda sadece resmin bir kısmını görebilirsiniz ve aynı zamanda burada olası dosya sistemi erişim sorunları nedeniyle de sıkıntı yaşayabilirsiniz. Daha iyi bir yol var ve bu da WMI veya CIM’dir. CIM’de Win32_UserProfile adında bir sınıf mevcuttur. Bu sınıf, bir bilgisayarda bulunan tüm profilleri ve basit bir dosya sistemi klasörünün size söylemeyeceği birçok başka yararlı bilgiyi içerir.

PowerShell kullanarak bu CIM sınıfına şu komutla erişebilirsiniz. "Get-CimInstance"

Aşağıda yerel bilgisayardaki ilk kullanıcı profilini buluyorum. Siz de Get-CimInstance komutu ile LastUseTime, SID gibi pek çok yararlı bilgiyi karşınızda bulacaksınız.

PS C:> Get-CimInstance -ClassName win32_userprofile | Select-Object -First 1


AppDataRoaming                   : Win32_FolderRedirectionHealth
Contacts                         : Win32_FolderRedirectionHealth
Desktop                          : Win32_FolderRedirectionHealth
Documents                        : Win32_FolderRedirectionHealth
Downloads                        : Win32_FolderRedirectionHealth
Favorites                        : Win32_FolderRedirectionHealth
HealthStatus                     : 3
LastAttemptedProfileDownloadTime :
LastAttemptedProfileUploadTime   :
LastBackgroundRegistryUploadTime :
LastDownloadTime                 :
LastUploadTime                   :
LastUseTime                      : 28/12/2023 9:06:39 PM
Links                            : Win32_FolderRedirectionHealth
Loaded                           : False
LocalPath                        : C:Users.NET v4.5 Classic
Music                            : Win32_FolderRedirectionHealth
Pictures                         : Win32_FolderRedirectionHealth
RefCount                         :
RoamingConfigured                : False
RoamingPath                      :
RoamingPreference                :
SavedGames                       : Win32_FolderRedirectionHealth
Searches                         : Win32_FolderRedirectionHealth
SID                              : S-1-5-82-3876422241-1344743610-1729199087-774402673-2621913236
Special                          : False
StartMenu                        : Win32_FolderRedirectionHealth
Status                           : 0
Videos                           : Win32_FolderRedirectionHealth
PSComputerName                   :

Cmdlet Get-CimInstance yalnızca yerel olarak değil aynı zamanda uzaktan da çalışır. Parametreyi kullanarak ComputerName1, 10 veya 100 farklı uzak bilgisayarı belirtebilirsiniz ve her birini başarılı bir şekilde sorgulayacaktır.

PS C:> Get-CimInstance -ClassName Win32_UserProfile -ComputerName localhost,WINSRV

Kullanıcı Profilleri Silmek

Bir bilgisayarlarda kullanıcı profillerinin nasıl numaralandırılacağını anladıktan sonra, işi bir adım daha ileri götürerek bu kullanıcı profillerini de silebilirsiniz.

Bir şeyler bozulduğu için kullanıcı profillerini kaç kez silmek zorunda kaldığımı sayamıyorum ve kullanıcının tekrar oturum açıp yeniden oluşturmasını istedim. CIM ile kaldırma işlemini yapmadığım zamanlarda kullanıcının oturumunu kapatmasını ve C:Users<KullanıcıAdı> klasörünü dosya sisteminden kaldırmasını sağlardım. Genellikle işe yarar ama bazen çalışmazdı.

Farkına varmadığım şey aslında bazı kalıntıları arkamda bırakmış olduğumdan dolayı işlemin başarısız olduğudur.

Bunu yapmanın doğru yolu CIM aracılığıyla kaldırma işlemini başlatmaktır.

Yukarıda okumuş olduğunuz CIM sınıfını kullanarak yalnızca profilleri görüntülemekle kalmayıp, aynı zamanda onları tamamen kaldırabilirsiniz.

Bunu yapmak, Sistem Ayarları > Kullanıcı Profilleri kutusuna gidip Sil butonuna basmakla aynıdır.

Kullanıcı Profilleri
Kullanıcı profilleri

Bunu powershell ile yapmak için kullanıcı profillerini tekrar numaralandırın. Daha sonra ise kaldırılacak tek bir kullanıcı profilini seçebilmeniz için bir filtre uygulayın. Yani mesela  ‘UserT’ adlı kullanıcı profilini kaldırıyorsunuz. Bunu, aşağıda gösterildiği gibi  Where-Object ve LocalPath gibi özellikten kullanıcı klasörü adını almak için PowerShell’in cmdlet’ini ve bazı dize işlemlerini kullanarak yapabilirsiniz.

Bunu tek profili daraltabildiğinizde, o CIM örneğini geri dönen Remove-CimInstance her nesne için cmdlet’e aktarabilirsiniz Get-CimInstance. Bu işlem, kullanıcı profilini dosya sisteminden ve kayıt defterinden kaldıracaktır.

Get-CimInstance -Class Win32_UserProfile | Where-Object { $_.LocalPath.split('')[-1] -eq 'UserT' } | Remove-CimInstance

Tekrar ediyorum, eğer bunu birden fazla bilgisayara genişletmek istiyorsanız Get-CimInstance üzerinde ComputerName parametresini kullanmanız yeterlidir .

Get-CimInstance -ComputerName SRV1,SRV2,SRV3 -Class Win32_UserProfile | Where-Object { $_.LocalPath.split('')[-1] -eq 'UserA' } | Remove-CimInstance

Özet:

Artık Windows kullanıcı profillerini numaralandırmanın ve silmenin kolay bir yolunu buldunuz. Win32_UserProfile CIM sınıfının farkında değilseniz, profil olarak C:Users<Username> klasörünü ilişkilendiriyor olabilirsiniz ancak Win32_UserProfile CIM örneğini şimdi silmeniz gerektiğini bilmelisiniz .

Kullanıcı profilinde basit bir dosya sistemi klasöründen çok daha fazlasının olduğunu görebilirsiniz. Bu okuduklarınızla artık windows bilgisayarlardan kullanıcı profillerini sorgulamanız veya silmeliyseniz, CIM’i kullanmanız gerektiğini biliyorsunuz. Umarım faydalı olmuştur. Herkese iyi çalışmalar dilerim.

ETİKETLENDİ:kullanıcı profili silmekkullanıcı profilleripowershell user deleteuser profile deletwindows kullanıcı profil silmekwindwos 11

Günlük Bültene Kayıt Ol

Takipte kalın! En son yazıları size mail olarak bildirelim..
Kayıt olarak Kullanım Koşullarını ve Gizlilik Politikasını kabul etmiş olursunuz. İstediğiniz zaman abonelikten çıkabilirsiniz.
Bu makaleyi paylaş
Facebook Twitter Bağlantıyı kopyala Yazdır
By Tolga CEYHAN
Takip et:
Tolga CEYHAN, bilgi teknolojilerini severek takip eder ve BT üzerine hali hazırda aktif olarak çalışmaktadır. 2006 yılından 2017 yılına kadar web tasarım yazılım üzerine çalışmalar yaptım. Şuan ise Windows Sistem ve Sistem Güvenliği alanında çalışmalarımı sürdürmekteyim.
Yorum Yap

Bir yanıt yazın Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Kategoriler

  • Active Directory
  • Ağ İletişimi
  • Genel
  • Genel Yaşam
  • Group Policy (Grup İlkesi)
  • Hyper-V
  • Linux
  • Microsoft Office
  • Microsoft Skype
  • PowerShell
  • Sanallaştırma
  • SCCM
  • Server 2008
  • Server 2016
  • Server Family
  • SQL
  • System Center
  • Teknoloji
  • Windows 10
  • Windows 11
  • Windows 7
  • Windows İşletim Sistemleri
  • Windwos 8.1
  • Yedekleme

Bunlar da ilginizi çekebilir.

Genel

SQL Nedir? Temel Komutlar ve Uygulama Örnekleri

30 Mayıs 2025

Port Nedir? Port Numaraları, Görevleri ve Güvenlik Duvarı Ayarları

29 Mayıs 2025
Ağ İletişimiGenel

VLAN Yapılandırma Nasıl Yapılır? L2 ve L3 Konfigürasyon Rehberi

22 Mayıs 2025
Ağ İletişimiGenelServer Family

DHCP Relay Subnet IP Dağıtımı – Windows Server VLAN Yapısı

22 Mayıs 2025

Takip Et

Şartlar ve Koşullar | Gizlilik Politikası | KVKK | Çerez Politikası

Tolga CEYHANTolga CEYHAN
Bizi takip edin
Copyright 2017 - TolgaCeyhan.com All Right Reserved. Developer by Tolga CEYHAN
  • Şartlar ve Koşullar
  • Gizlilik Politikası
  • Çerez Politikası
  • KVKK
Go to mobile version
Tekrar hoşgeldiniz!

Hesabınıza giriş yapın

Şifreni mi unuttun?