Eyl 08

Fail olan bir Domain Controller'ı Active Directory ortamından nasıl kaldırabilirim sorusunun cevabı özellikle bu işe yeni başlayan sistemciler için çoğu zaman bir işkenceye dönüşür. İşte bu makale , Fail durumdaki bir D.c'nin Active Directory ortamından sorunsuz bir biçimde nasıl kaldırılacağını anlatmak için yazıldı.

Dcpromo kullanarak ortamda bulunan bir Domain Controller'ı devredışı bırakmak istediğimizde herhangi bir sebepten dolayı bu işlem yarım kalırsa Domain Controller'ımıza ait bazı kalıntılar Active Directory'de yer alacaktır. Örneğin ortamdan kaldırdığınız bir D.C'de kaldırma işlemi sırasında hata aldığımızı varsayalım, bu durumda ilerleyen zamanlarda aynı isimle bir D.C oluşturmaya çalışıtığımızda, eski D.C'ye ait nesneler Active Directory'de yer aldığı için işlemimiz başarısız olacaktır. İşte bu tarz sorunları ortadan kaldırmak için NTDSUTIL aracını kullanıyoruz. NTDSUTIL ile metadata clenaup işlemini gerçekleştirdiğimizde kaldırma işlemi başarısız olan D.C'ye ait tüm nesneler A.D ortamından kaldırılacaktır.

NTDSUTIL kullanırken iki konuya dikkat etmemiz gerekiyor;

  • NTDSUTIL aracını kullanacağımız hesabın Enterprise Admin grubuna üye olmasına,
  • NTDSUTIL aracının doğru kullanılmamasının Active Directory'nin fonksiyonlarını bozacak olması sebebiyle kullanırken dikkatli olunması gerektiğine.

Metadata Cleanup işlemi için komut satırında NTDSUTIL'i çalışıtırıyoruz.

C:\WINDOWS>ntdsutil
ntdsutil:

 metadata clenaup parametresini yazıp enter diyoruz.

ntdsutil: metadata cleanup
metadata cleanup:

 metadata cleanup parametresi içinde connections yazıp enter diyoruz.

metadata cleanup: connections
server connections:

 server connection parametresi içerisinde connect to server <server adi> şeklinde parametremizi yazıyoruz.

server connections: connect to server srvizmir
Binding to srvizmir …
Connected to srvizmir using credentials of locally logged on user.
server connections:

 q yaqzıp onaylıyoruz.

server connections: q
metadata cleanup:

 select operation target diyerek işlemimize devam ediyoruz.

metadata cleanup: Select operation target
select operation target:

 list domain parametresini kullanarak ortamımızda bulunan domainleri listeliyoruz.

select operation target: list domains
Found 1 domain(s)
0 – DC=ceyhuncamli,DC=com
select operation target:

 Yukarıdaki adımda listelemiş olduğumuız domainlerden (ki bizim ortamımızda yalnızca bir domain var), hedef domaini belirlemek için Select domain <domain listesindeki sıralama numarasını> (0) yazıyoruz.

select operation target: Select domain 0
No current site
Domain – DC=ceyhuncamli,DC=com
No current server
No current Naming Context
select operation target:

 Şidi de yapımızda bulunan siteleri listelemek için List Sites parametresini kullanıyoruz.

select operation target: List sites
Found 1 site(s)
0 – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
select operation target:

Yukarıdaki adımda listelemiş olduğumuz sitelerden ,Domain Controllerımızın içinde bulunduğu siteyi seçmek için Select site 0 diyoruz.

select operation target: Select site 0
Site – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
Domain – DC=ceyhuncamli,DC=com
No current server
No current Naming Context
select operation target:

 Site içerisinde yer alan serverları listelemek için List Servers in site yazıyoruz.

select operation target: List servers in site
Found 2 server(s)
0 – CN=SRVANKARA,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
1 – CN=SRVIZMIR,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
select operation target:

 Ortamdan kaldırmak istediğimiz sunucunun numarasını seçiyoruz.

select operation target: Select server 0
Site – CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
Domain – DC=ceyhuncamli,DC=com
Server – CN=SRVANKARA,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
DSA object – CN=NTDS Settings,CN=SRVANKARA,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com
DNS host name – srvankara.ceyhuncamli.com
Computer object – CN=SRVANKARA,OU=Domain Controllers,DC=ceyhuncamli,DC=com
No current Naming Context
select operation target:

q tuşuna basarak select operation target parametresinin içinden çıktığımızda metadata clenaup seçeneğini görüyoruz.

select operation target: q
metadata cleanup:

Remove selected server diyerek temizliğe başlıyoruz.

metadata cleanup: Remove selected server
"CN=SRVANKARA,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=ceyhuncamli,DC=com" removed from server "srvizmir"
metadata cleanup:

 Yukarıda anlatmış olduğum adımları uyguladıktan sonra " the object could not be found" benzeri bir hata alırsak Active Directory Sites and Services konsolu ve Active directory Users and Computers konsollarından Domain Controller'ı silebilirsiniz. Tabii bu iki ek işleme ilave olarak bir de Domain Controller'a ait DNS kaydını da silmemmiz gerekir.

Yazar ceyhun çamlı \\ tags: , , ,

Şub 20

Active Directory veritabanı birleştirme işlemini  nasıl gerçekleştirebilirim? İşte bu yazı bu soruyu sık sık sorup bir cevap alamayanlar için yazıldı. ;)

Ntds.dit'in boyutu farklı Domain Controller'lar üzerinde farklılık gösterebilir. Active Directory multi-master bağımsız modelinde Domain Controller'lar üzerinde yapılan değişikliklerin diğer D.C'lere aktarılmasının (replikasyon) zamanla gerçekleşir.

Domain Controller'lar arasında replike olan database değil değişen dosyalardır ve bu yüzden database'in boyutu tüm D.C'lerde aynı olmaz

Directory Service çalıştıran Windows Sunucular üzerinde 12 saatte bir gerçekleştirilen online birleştirme (defragmentation) işlemi ntds.dit veritabanının boyutunu azaltmaz Active Directory çalıştığı sürece de veritabanı gerçek anlamda birleştirilemez.

Active Directory'nin yaptığı birleştirme işlemi rutin bir işlemdir ve tombstaone nesnelerinin ortadan kaldırılması ile sınırlıdır.

Offline durumda birleştirilmiş (defragmante) bir ntds.dit dosyası benzer ntds.dit dosyalarının boyutundan daha küçük olabilir.

Ntds.dit dosyasını birleştirme işlemi yapılması zorunlu olan bir işlem değildir.

Peki bu defrag (birleştirme) işlemini nasıl gerçekleştireceğiz?

1.Öncelikle Active Directory’nin backup'ını almamız bizim açımızdan yararlı olacaktır.

2.Server’ı  yeniden başlattıktan sonar F8’e basarak gelişmiş açılış seçeneklerinden Directory service Restore Mode seçeneğini ve sonrasında dab u modda açmak istediğimiz işletim sistemini seçiyoruz.

3.Lokal kullanıcı adı ve parola bilgimizle logon oluyoruz.

4.Start menüsünde Run’a cmd yazarak komut satırını açıyoruz.

Komut satırında sırasıyla;

Ntdsutil

Files

Compact to c:\temp (siz c:\temp yerine farklı bir path kullanabilirsiniz)

Active Directory Offline Defragmentation

Active directory veritabanı defragmentation (birleştirme) işlemi tamamlandıktan sonar aşağıdaki komutla  birleştirilen veritabanını eskisiyle değiştiriyoruz.

C:\> copy c:\temp\ntds.dit %systemroot%\ntds\ntds.dit

Log dosyalarının tamamını da silmemiz gerektiğini unutmamalıyız.

Server’ı restart ediyoruz ve normal şekilde açıyoruz.  Active Directory Offline Defragmentation işlemi bu kadar basit. Umarım yararlı olmuştur.

Yazar ceyhun çamlı \\ tags: , , , , ,

Şub 19

Active Directory veritabanının bakımı, birleştirmesi (defragmentation), veritabanı ve log dosyalarının farklı yerlere taşınması, veritabanının temizlenmesi gibi birçok işlemi gerçekleştirmek için NTDSUTIL aracını kullanırız.

Domain Controller sağlıklı bir biçimde çalışıyorken NTDSUTIL aracı ile birçok fonksiyonu gerçekleştirebiliriz fakat bazı durumlarda (active directory veritabanının offline defragmantetion işlemi gibi) Domain Controller'ı Directory Service Restore Mode'da başlatmamız ve NTDSUTIL komutunu çalıştırmamız gerekebilir.

Domain Controller'ı Directory Service Restore Mode'da başlattığımız zaman, DC ortam değişkenlerinde (environment variable) bulunan safeboot_option'a dsepair parametresini ayarlar.

Eğer Directory Restore Mode'da NTDSUTIL komutu kullanarak yapmanız gereken bir işlemi Directory Service Restore Mode'da yapmazsanız aşağıdaki gibi bir hata alırsınız.

DRSM

Eğer sadece Directory Service Restore Mode'da yapmanıza izin verilen bir işlemle ilgili birşeyi kontrol etmek istersek küçük bir hile yapabiliriz.:) Bunun için aşağıdaki komutarı komut satırında çalıştırmamız yeterli olacaktır.

set SAFEBOOT_OPTION=DSREPAIR

Bu işlemi sadece NTDSUTIL aracılığıyla birşeyleri görüntülemeye ihtiyacınız olduğunda kullanmalısınız. Çalışan bir sistemde herhangi bir değişiklik yapmak sisteminize zarar verebilir.

Active Directory Restore Mode ile ilgili küçük bir ipucundan bahsettim. Umarım yararlı olmuştur.

Yazar ceyhun çamlı \\ tags: , , ,