2020. október 29., csütörtök

PowerShell kezőknek 3. rész

Sziasztok

A mindennapi üzemeltetés során nem csak lekérdezések fordulnak elő, hanem keresések is. Erre való a Search-ADAccount. Ez valamivel univerzálisabb is tud lenni(de csak bizonyos szintig!), mint az elöző részben mutatott Get-ADUser, vagy a Get-ADComputer parancs.
Példa:
Kérdezzük le az összes letíltott accuntot objektumtípus szerint rendezve:
Search-ADAccount -AccountDisabled |Sort-Object ObjectClass | ft Name,ObjectClass -AutoSize
Ezzel a kereséssel (majdnem) mindenfajta objektum körül keresünk és kilistázzuk.

Idáig a PowerShell ismertetése a lekérdezések alapján mutattam be. Nagy kárt nem is tehettünk a rendszerben.
Most viszont már állítani fogunk, méghozzá "tömegesen".

A mai napig azt állítom, hogy egy új felhasználó felvételét még mindig kifizetődőbb GUI-n keresztül felvinni különösen, ha jó sok paramétert kell megadni. Még talán 3-5 emberkénél is, de 10 felhasználónál bizony a PowerShell jobb választás, mert gyorsabb, és kisebb a hibalehetőség.

De ne szaladjunk nagyon előre. Most a megismert kamilla csoport tagjai tulajdonságain fogunk módositani, összehasonlítani, törölni.

Elékeztetőül:
Van egy kamilla nevü csoport.
Tagok:
Világos János                                                                                                          
Vezér Gábor                                                                                                            
Szürke Lajos                                                                                                           
Sötét Kálmán                                                                                                           
Sárga Irén                                                                                                             
Sámán Ubul                                                                                                             
Kakukk Marci


Legyen egy olyan eset, hogy a csoport leköltözik a földszintre most a padláson vannak ellenőrizzük is le:
Get-ADGroupMember kamilla | Get-ADUser -Properties office | ft name, office -AutoSize
name                   office
----                     ------
Világos János       Padlás
Sötét Kálmán       Padlás
Sámán Ubul         Padlás
Vezér Gábor        Padlás
Szürke Lajos        Padlás
Sárga Irén            Padlás
Kakukk Marci     Padlás

Tényleg ott vannak, viszont most legyenek az Emeleten:
Get-ADGroupMember "kamilla" | Set-ADUser -Office "Emelet"
Ennél egyszerűbb tömeges módosítás szerintem nem is létezik. J

Mit is tettem? Lekértem a kamilla csoport tagjait majd továbbküldtem feldolgozásra, ahol azt kértem, hogy az Office legyen Emelet. Ennyi és nem több. Ha ezt módositani szeretnénk, akkor elegendő a parancsot újra futtatni, és a macskakörmök helyéra beírni az új értéket. Szépen felülírja.

Lehetett volna elegánsabban is módosítani, de mindig törekedjünk az egyszerűségre, ha lehet Láttam olyan PowerShell parancsot, ami lényegében ugyanezt a műveletet hajtotta vére, csak éppen három sorból állt.

Ellenőrzésképpen kérdezzük le megint:
Get-ADGroupMember kamilla | Get-ADUser -Properties office | ft name, office -AutoSize
name                office
----                  ------
Világos János    Emelet
Sötét Kálmán    Emelet
Sámán Ubul      Emelet
Vezér Gábor     Emelet
Szürke Lajos     Emelet
Sárga Irén         Emelet
Kakukk Marci  Emelet

A csoport központi telefonszáma megváltozott hát azt is módosítsuk meg:
Get-ADGroupMember 'kamilla' | Set-ADUser -OfficePhone "123498765"
Ennyi és nem több!!

Egy tanács:
SET parancs kiadásával óvatosan és átgongoltan bánjunk.
A változtatásokat nagyon nehéz visszaállítani, ezért ha valaki nem biztos magában, akkor egy tesztrendszeren gyakoroljon!

Törölni kellene az Office mező tartalmát:
Get-ADGroupMember kamilla | Set-ADUser -Clear physicalDeliveryOfficeName
Itt vigyázzunk, hogy az attribute név kell. Az Office mező neve pl. a physicalDeliveryOfficeName!Legegyszerűbben úgy lehet megnézni, ha nem tudjuk mi a pontos név, hogy fogunk egy ADUC-ot és az Attribute Editor fülön megnézzük. :)



Mondjuk nem értem, az a PowerShell logikát, hogy miért enged felvenni Office néven, törölni pedig Attribute hivatkozás alapján. Ezt meg kell szokni, vagy figyelmesen kell(ene) olvasni a help-et...:) De ez legyen a legnagyobb gondunk.

dsf



Nincsenek megjegyzések:

Megjegyzés küldése