Kezdőlap > Windows Server > AD modositas

AD modositas


Az egesz ugy kezdodott. hogy a felhasznalok mappait tarolo szerver tele lett. Eleinte, egy ideig torolgettunk rola, meg a felhasznalokat kertuk meg, hogy uritsek a mappaikat – de ez sem tart, mig a vilag s meg ket nap. Megert a dolog a valtasra. Uj merevlemezeket rendeltunk, amelyek majd a regieket felvaltjak.
 
A regi kiosztas szerint 3 merevlemez Raid-5-ben volt, mig egy negyedik csak ugy magaban logott. Az elkepzeles szerint mind a 4 uj merevlemez Raid-5-be lesz kotve. Mivel valtozott a meretuk, plusz valtozik a konfiguracio, a legegyszerubb megoldasnak az latszott, hogy ideiglenesen a file-szerver szerepet egy masik szerver veszi at. Voltak otletek, hogy backup-rol visszaallitani, meg miegymas, de a folyamatos mukodes miatt a fonokseg a DFS mellett dontott. Ket Win2k3, a kulonbseg annyi, hogy az egyik Std, a masik Ent. De ez nem okoz gondot. Annal inkabb, hogy nem minden mappa ment at normalis DFS szinkronban – de ez egy masik tortenet.
 
Az csak az elso lepes, hogy az allomanyok tulkerulnek, a masik szerverre. De a Home konyvtarakat, meg a bekotott (mappelt) meghajtokat is at kell iranyitani. Sebaj, AD-bol export, modosit, majd import.
 
Elso korben, mivel emeszthetobb, a csvde-vel probalkoztam. Excel-ben kezelheto, s nem is nehez megerteni a logikajat. A gond ott kezdodott, hogy a Telephones fulon a Notes mezoben voltak tarolva azok a bekotott meghajtok, melyeket egy login-scriptbeli .vbs ertelmezett s kotott be. Az viszont a csvde-vel exportalva hexa adatkent lettek kiirva. Nosza, keressunk olyan programot, amivel ezt – lehetoleg parancssorbol – at tudjuk konvertalni normalis ASCII (DOS-ban), illetve ANSI (Windows) formatumra. Nem talaltam, de egyik kollega gyorsan osszedobott egy ilyent. Szerencse, hogy kozben folytattam a gondolatmenetet, s megprobaltam visszaimportalni a kesz adatokat az AD-ba. Nem ment. Ekkor – a hibauzenet alapjan – kiderult, hogy a csvde nagyon jo – de nem modositani. Uj adatokat betolteni, a regieket exportalni – de sajnos, amire nekem kellett, nem felelt meg.
 
Ekkor kovetkezett az ldifde. Amikor probalkoztam az exporttal, akkor ezt is kiprobaltam – de mivel az a bizonyos mezo meg erthetetlenebb karakterekkel volt leirva, nem is nagyon eroltettem a dolgot. Nos, korbejarva a problemat, kiderult, hogy Base64-es kodolassal van leirva a mezo tartalma. De csak akkor, ha tobbsoros. Ezutan ujra kellett az egesz folyamatot kitalalni – hiszen onmagaban nincs ertelme Excelbe attenni a szoveges allomanyt, leven, hogy minden adata a "rekordnak" kulon sorban van. Elobb at kell alakitani – mondjuk pontosvesszovel elvalasztott karaktersornak. Ehhez a CR/LF parost kell lecserelni, ami egy normalis szovegszerkesztovel nem lehetseges.
Nosza, keressunk egy egyszeru, ingyenes, konnyu hexa-editort. Tobb probalkozas utan az XVI32 felelt meg a legjobban. Ezzel minden "0D 0A" (Enter=CR/LF) karaktersort kicsereltem ";"-re. Majd a "; " karaktersort eltuntetem (semmire cserelem), illetve a ";;" sort visszacserelem "0D 0A"-ra. Torlom a legelso karaktert, majd ezutan import Excelbe.
 
Kiderult, hogy mivel nem mindenkinek van kitoltve a Notes mezoje, kulon kell kezelni a Home es a Notes mezoket. Igy kulon fogom exportalni oket. Ugyanis hiaba importalom Excelbe, annak erdekeben, hogy valasszam kulon a Notes mezoket, mivel nem mindenhol van kitoltve, osszekavarodnak az oszlopok.
 
Visszaterve, miutan betoltottem Excelbe, letrejott 3 oszlop. Az elso a DN-t tartalmazza, a masodik a changetype-ot, a harmadik a Notes mezot. Ekkor beszurunk meg egy oszlopot, ami a kov. kepletet tartalmazza:
 
=HA(HOSSZ(D1)>30;JOBB(D1;HOSSZ(D1)-7);"")
 
Ez azert kell, hogy ha nincs sortores (s ez nalunk akkor fordult elo, ha 30 karakternel nem volt hosszabb a Notes mezo), akkor ures legyen (nincs mit konvertalni), ellenkezo esetben vagja le az elejet. Ezutan ezt az oszlopot kijeloljuk (figyelem! nem eleg az oszlop fejlecere, mert az nem tetszik neki), ctrl+C, majd egy uj munkalapra beillesztjuk az Erteket, de transzponalva (transzponalas miatt nem felel meg neki a TELJES oszlop). Ezt lementjuk CSV formatumban, s maris kesz van a konvertalando allomany: csak base64-et tartalmaz, ";"-el elvalasztva.
 
Amig a konverzio elkeszul, a masodik oszlopban kicsereljuk a "Changetype: add"-et "Changetype: modify"-ra. Beszurunk egy masik oszlopot, ami a "Replace: info" mezot tartalmazza (Info a neve a Notes mezonek az AD-ban). Majd meg egy oszlopot, ami csak a "-" jelet tartalmazza, ez szukseges az ldifde-nek, s meg egyet (uresen), hogy legyen meg a rekordok kozti sortores. Mint utolag kiderult, ez teljesen felesleges volt, de az alabbi kepletek helyessege miatt benne hagytam.
 
Tehat vegul igy nez ki az Excel tablazat (oszlopok):
A: DN, B: changetype, C: replace, D: mezo tartalma, E:"-", F: ures, G: uj ertek, H: levagott ertek, I: eredeti ertek
 
A D oszlopnal ahhoz, hogy azokat az ertekeket tudjuk modositani, amelyikben nincs sortores (kovetkezeskeppen nem base64 kodolasuak), az alabbi fuggvenyt lehet hasznalni:
 
=HA(HOSSZ(G1)=0;I1;"")
 
Ezutan atmasoljuk egy uj oszlopba csak az ertekeket, majd Replace-el modositjuk a kivant tartalmat. Az "eredeti" D oszlopot lehet torolni.
Meg egy oszlop beszurasaval (ez lesz az uj D) letrehozzuk a vegleges visszairando tartalmat, ennek a keplete:
 
=HA(HOSSZ(H1)=0;HA(G1=0;"";G1);ÖSSZEFUZ("info:: ";H1))
 
Ezzel vegre szinte elkeszultunk az importalando allomannyal. Ahhoz, hogy atlassam, hogy mi valtozik, egesz mostanaig benne hagytam azokat a felhasznalokat is, amelyeknel nincs kitoltve ez a mezo – de most egy autoszurovel a D oszlopon kiszurjuk oket. Most mar az van hatra, hogy az Excelbol kimasoljuk az A-F oszlopokat, uj munkafuzetbe beillesztjuk az erteket, majd csv-be elmentjuk.
Hexaeditorral atalakitjuk a ";"-t "0D 0A"-ra, majd a "-" jelet (hexaban 2D) "2D 0D 0A" -ra (betettunk a "-" utan meg egy sort). S kesz is vagyunk, lehet visszaimportalni az AD-be.
 
Ldifde -i -f allomany.csv
 
Update: a gond csak annyi, hogy DFS problemak miatt nem kerult sor az importra, tehat feleslegesen dolgoztam. Illetve megsem, hiszen megismertem – reszben – az ldifde kezeleset.
Reklámok
Kategóriák:Windows Server
  1. Még nincs hozzászólás.
  1. No trackbacks yet.

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s

%d blogger ezt kedveli: