Sharepoint-beheer met PowerShell

Deze gids is voor degenen die al weten wat Sharepoint is. Kort gezegd, de focus van de gids ligt op Sharepoint Administration met Powershell (PoSH)

Variabelen :

Dit zijn eenvoudig een object dat iets bevat. Variabelen kunnen worden geïdentificeerd door een voorgaande $, zoals de nieuwe variabele die volgt:

$ nieuwe

We vullen variabelen met het = -teken. De volgende instantiates (maakt een exemplaar van) een SharePoint-webobject (een SPWeb-object in de servertaalmodeltaal genoemd):

$ newSPweb = get-spweb http://url.to/my/subsite

U kunt uw variabelen vrijwel noemen wat u maar wilt, hoewel er regels zijn - google ze als u nieuwsgierig bent, aangezien de naamgevingsconventies van .Net-objecten enigszins buiten het bestek van dit document vallen.

Het SharePoint Server-objectmodel :

Dit maakt SharePoint Administration op de opdrachtregel zooo veel eenvoudiger en leuker dan de GUI. Er zijn echter wel enkele vereisten - vooral moet u SPShellAdmin-rechten krijgen voor elke database waarop u bewerkingen wilt uitvoeren.

Als u zich op een normaal PowerShell-scherm bevindt, kunt u de SharePoint-assembly toevoegen door het volgende te typen:

Add-pssnapin Microsoft.sharepoint.powershell

Als u geen SPShellAdmin hebt, ontvangt u waarschijnlijk een foutmelding dat de farm niet beschikbaar is.

Het volgende is een opdracht die ik met een van onze Farm Admin-serviceaccounts voer elke keer als ik ontdek dat mijn account geen SPShellAdmin heeft (we hebben ongeveer 20 verschillende bedrijven op het werk).

Gewoon een opmerking - deze opdracht moet worden uitgevoerd met een account dat al SPShellAdmin heeft - het moet ook worden uitgevoerd met de SharePoint Management Shell-app met beheerdersrechten / verhoogde bevoegdheden:

$ spdb = get-spdatabase
$ username = domain \ myuser
Foreach ($ _ in $ spdb) {add-spshelladmin -database $ _. Id -username $ gebruikersnaam}

PRO TIP: Als het probleem zich voordoet met uw computer of een laptop / notebook, kunt u proberen de Reimage Plus-software te gebruiken die de opslagplaatsen kan scannen en corrupte en ontbrekende bestanden kan vervangen. Dit werkt in de meeste gevallen, waar het probleem is ontstaan ​​door een systeembeschadiging. U kunt Reimage Plus downloaden door hier te klikken

Wat deze opdracht doet, is dat deze ALLE databasenamen die de huidige SharePoint-databases bevatten, in de $ spdb-variabele opslaat en ook zegt dat ze binnen de lus afzonderlijk worden geadresseerd met de variabele $ _.

De variabele $ gebruikersnaam is de gebruikersnaam waarvoor u het recht SPShellAdmin wilt krijgen. De ForEach-lus zegt dat voor elk item in de $ spdb-variabele (die elk van de databases is, kunt u dat eenvoudig bekijken door get-spdatabase te typen), de opdracht tussen de {} moet worden uitgevoerd. Binnen de {} ziet u de $ _. Id - wat dit zegt is dat de ID van het specifieke database-item (GUID) moet worden gebruikt met de parameter -database en uw gebruikersnaam wordt gebruikt in de parameter -username.

Ervan uitgaande dat alles goed ging, krijg je mijn favoriete uitvoer van helemaal niets! Dit geldt als een van die situaties waarin 'geen nieuws is goed nieuws'.

Verder gaan .

Nu we toestemming hebben om hier te zijn, logt u uit bij uw serviceaccount en meldt u zich aan met uw gewone account.

Nadat je weer terug bent, open je een gewoon oud venster van PoSH en voeg je de SharePoint-assembly toe:

Add-pssnapin Microsoft.sharepoint.powershell

Typ vervolgens

Get-SPWebApplication

om alle webapps in uw boerderij te bekijken.
Laten we er een in een variabele plaatsen:

$ SPWebApp = get-spwebapplication http: // urlToMyWebApp
$ SPWebApp | get-lid

Je zou nu een gigantische lijst van dingen op je scherm moeten zien - dit zijn alle lidobjecten die beschikbaar zijn via het Objectmodel om mee te spelen.

$ SPWebApp.sites | selecteer rootweb, url

U zou nu een lijst moeten zien met alle siteverzamelingen die u eerder in uw webtoepassing hebt gemaakt.

Speel rond met get-member en selecteer met de | . Die verticale lijn wordt een pijp genoemd - het is hoe je objecten van de ene opdracht naar de andere kunt sturen.

Je kunt ook proberen de TAB-knop in te drukken op een gedeeltelijk voltooid commando om te zien wat er gebeurt (dit wordt Tab-Completion genoemd en is veruit een favoriet onderdeel van moderne opdrachtregelinterfaces!)

PRO TIP: Als het probleem zich voordoet met uw computer of een laptop / notebook, kunt u proberen de Reimage Plus-software te gebruiken die de opslagplaatsen kan scannen en corrupte en ontbrekende bestanden kan vervangen. Dit werkt in de meeste gevallen, waar het probleem is ontstaan ​​door een systeembeschadiging. U kunt Reimage Plus downloaden door hier te klikken

Facebook Twitter Google Plus Pinterest