SharePoint

Una potente amministrazione da riga di comando per SharePoint

Todd Klindt

 

Panoramica:

  • Configurazione di SharePoint con STSADM
  • Attività amministrative di scripting quotidiane
  • Attività STSADM avanzate

Pensa a come la gente utilizza Windows o Microsoft Office. Alcuni utenti sono mouse-dipendenti e utilizzano il puntatore per esplorare menu e barre degli strumenti mentre eseguono normali attività. Altri si trovano a loro agio

con la tastiera ed usano con rapidità tasti noti e tasti di scelta rapida. Ci sono quasi sempre diversi modi di eseguire una stessa attività.

Un'interfaccia grafica è certamente semplice da utilizzare, ma può diventare complicata per attività che richiedono la continua ripetizione di una stessa azione. Alcune cose sono più semplici da fare con la tastiera. Se utilizzi SharePoint® per l'amministrazione, probabilmente hai già sperimentato che cosa significhi essere bloccati dall'interfaccia grafica. Ma SharePoint offre davvero un modo più efficace di svolgere le proprie attività.

L'interfaccia principale per la gestione dei servizi Windows® SharePoint (WSS) e Microsoft® Office SharePoint Server 2007 (MOSS) è l'amministrazione centrale basta su GUI. Ma SharePoint comprende anche uno strumento da riga di comando per un'amministrazione più efficace. Questo strumento, STSADM.exe, fornisce tutte le funzionalità dell'amministrazione centrale SharePoint, ma con la flessibilità che molti amministratori richiedono. Con questo articolo offrirò un corso intensivo sull'utilizzo di STSADM per la gestione di WSS e MOSS. Fornirò inoltre alcuni suggerimenti sulla configurazione del tuo ambiente di lavoro e tratterò di alcuni normali comandi STSADM. Ti mostrerò anche alcuni comandi avanzati STSADM che ti faranno sembrare un asso del computer, se mai si presentasse l'occasione di usarli.

Introduzione

Se non ti è mai capitato di incappare in STSADM, è perchè si trova in qualche modo nascosto. In Windows SharePoint Services 2.0, è preimpostato in c:\program files\common files\microsoft shared\web server extensions\60\bin. Il percorso predefinito nella versione 3.0 è c:\program files\common files\microsoft shared\web server extensions\12\bin.

Per rendere più semplice l'accesso a questo strumento, utilizzo due diversi approcci. Primo, aggiungo semplicemente la directory alla variabile di ambiente di percorso. In questo modo posso utilizzare STSADM dovunque mi trovi nel file system. Ciò, tuttavia, non è sempre possibile. Il mio secondo approccio consiste nella creazione di un collegamento a CMD.EXE e nell'impostazione del percorso STSADM come directory iniziale. Ma perchè non creare un collegamento diretto a STSADM? Questo tentativo non avrebbe successo visto che STSADM non è interattivo. Di conseguenza, con un collegamento diretto a STSADM, sarà presentata una rapida visualizzazione del suo utilizzo e quindi il tutto sparirà.

Quando si esegue STSADM, è necessario essere un membro del gruppo Administrators locale sul server Web ed è necessario eseguire localmente l'applicazione. Ciò significa che non è possibile usare STSADM per amministrare in modalità remota un server SharePoint.

Per capire quali operazioni è possibile eseguire con STSADM, digitare stsadm.exe -help in un prompt di comandi. Assicurarsi di controllare questo elenco dopo avere effettuato update o aggiornamenti rapidi a SharePoint poiché possono essere aggiunte nuove operazioni. Esiste anche una comoda guida alle operazioni stsadm.exe disponibile sul sito go.microsoft.com/fwlink/?LinkId=77516.

Elementi di base di STSADM

Cominciamo a dare un'occhiata ad alcuni dei comandi che è possibile usare per modificare l'installazione di SharePoint esistente. È possibile utilizzare STSADM per aggiungere funzionalità a SharePoint e per modificare le impostazioni di configurazione.

STSADM usa il parametro -o seguito dall'operazione che si intende svolgere. Digitare solo STSADM -operationname, non avrà alcun effetto. Se, per esempio, si desidera aggiungere modelli di sito alla propria installazione, è possibile utilizzare il seguente comando:

Stsadm -o addtemplate -filename <filename of the template> 
-title <title of template> -description <description of template>

Oppure, se si vuole aggiungere un Web Part Package, è possibile servirsi di questo comando:

Stsadm -o addwppack -filename <filename of the Web Part Package>

Per i dettagli sullo svolgimento di qualunque operazione, immettere semplicemente l'operazione senza parametri e STSADM visualizzerà l'input a lui necessario. Anche il comando STSADM -help operationname fornirà informazioni sull'utilizzo.

Quando si tratta di gestire i modelli, è possibile utilizzare l'operazione enumtemplates per visualizzare quali modelli sono stati aggiunti e deletetemplate per rimuovere qualsiasi modello installato. Allo stesso modo esistono comandi per lavorare con i pacchetti di Web Part. È possibile usare l'operazione enumwppacks per visualizzare l'elenco dei pacchetti di Web Part installati su ogni server virtuale o applicazione Web, e l'operazione deletewppack per rimuovere qualunque di questi sia stato aggiunto.

STSADM ha anche due operazioni che riguardano le impostazioni SharePoint: setproperty e getproperty. Eseguendo qualunque delle due operazioni si otterrà un elenco delle proprietà che sarà poi possibile visualizzare o modificare. Proprio come STSADM, l'elenco cambia con gli update e gli aggiornamenti rapidi. Tuttavia ci sono alcune proprietà che sono più utili di altre. La figura 1 elenca alcune delle proprietà che si potrebbero voler impostare una volta installato SharePoint, comprese le più comuni proprietà che so essere maggiormente richieste dagli amministratori SharePoint.

Figure 1 Impostazione delle proprietà utili di SharePoint

Proprietà Funzione
Avvisi attivati Attiva o disattiva gli avvisi per il proprio server virtuale o per la propria applicazione Web.
Avvisi limitati Definisce se gli utenti sono limitati ad impostare un certo numero di avvisi sul server virtuale o sull'applicazione Web.
Numero massimo di avvisi Se sono impostati dei limiti di avvisi, questa funzione definisce il numero massimo di avvisi che un utente può impostare.
Visibilità dell'icona "New" Stabilisce per quanto tempo l'icona "New" debba apparire accanto ad elementi aggiunti al sito Web, come per esempio gli avvisi.
Avvisi immediati di lavoro Specifica l'intervallo per il controllo da parte di SharePoint degli avvisi immediati da inviare. L'impostazione predefinita per SharePoint 2.0 è di cinque minuti. Qui è possibile regolare l'intervallo di tempo. Un aumento della frequenza di controllo implica un carico maggiore sul proprio Web e sui server del database; è bene quindi agire con prudenza se si intende modificare questa proprietà.
Avvisi giornalieri di lavoro Specifica l'ora in cui inviare gli avvisi giornalieri. SharePoint 2.0 è preimpostato per inviarli tra le 22:00 e le 06:00. Se si è in contatto con utenti che non appartengono al medesimo fuso orario, è possibile che si desideri regolare questa proprietà.
Avvisi settimanali di lavoro Il modello viene probabilmente visualizzato qui. Questa funzione programma l'invio di avvisi settimanali.

Diamo una rapida occhiata all'utilizzo di una di queste proprietà. Il seguente comando farà in modo che SharePoint invii avvisi immediati ogni dieci minuti:

Stsadm -o setproperty -pn job-immediate-alerts -pv "Every 10 minutes"

Ti faccio notare che ho usato -pn e -pv invece di -propertyname e -propertyvalue. Queste sono abbreviazioni accettabili quando non si vuole digitare la parola completa. Tieni inoltre presente che tutti gli esempi esposti finora in questa sezione funzionano sia con la versione 2.0 che con la versione 3.0 di Windows SharePoint Services.

Amministrazione quotidiana

L'amministrazione quotidiana di SharePoint è abbastanza semplice. Per molti amministratori SharePoint, la maggior parte delle attività quotidiane consiste nel lavoro con gli utenti e i siti. STSADM offre diverse funzionalità in grado di snellire queste attività.

Comincerò dai siti e dal Web. Per questioni di coerenza, userò il termine "sito" per riferirmi ad una raccolta di siti e il termine "Web" per riferirmi ai sottositi (noti anche come subweb). Una parte della terminologia è difficile, ma se si è coerenti con ciò che STSADM utilizza, sarà più facile trovare il comando di cui si ha bisogno.

Se si usa un'installazione di grandi dimensioni di SharePoint, è possibile che si perda molto tempo nella creazione di nuovi siti per gli utenti. Lo so perchè mi capita spesso di farlo. La creazione di nuovi siti può essere effettuata abbastanza semplicemente con l'amministrazione centrale di SharePoint. Dal momento che eseguo questa operazione molto spesso, mi sembra più rapido usare STSADM.

Io uso l'operazione createsite. È piuttosto semplice e necessita dei seguenti parametri:

  • url <url>
  • ownerlogin <DOMAIN\name>
  • owneremail <someone@example.com>
  • ownername <display name>
  • lcid <language>
  • sitetemplate <site template>
  • title <site title>
  • description <site description>
  • quota <quota template>

È possibile portarle questi parametri nel prompt dei comandi digitando stsadm -help createsite (vedi figura 2). Di questi nove parametri, gli unici campi obbligatori sono URL, ownerlogin e owneremail.

Figura 2 Parametri per la creazione di siti

Figura 2** Parametri per la creazione di siti **(Fare clic sull'immagine per ingrandirla)

Se la creazione di siti diventa un'operazione di routine, è possibile fare un passo ulteriore nello snellimento della procedura usando uno script wrapper su STSADM per rendere automatica l'attività. Per esempio, per rendere automatica la creazione di siti personali, è possibile salvare il seguente script in un file di testo denominato createpersonalsite.cmd:

stsadm -o createsite -url https://localhost/users/%1 -ownerlogin contoso\%1 
-owneremail %1@contoso.com -sitetemplate usersite.stp 
-title "Personal site for %1" -description "Personal site for %1" -quota "500 MB"

A quel punto, per creare un sito ad uso dell'utente jsmith, sarà possibile eseguire semplicemente il seguente comando:

createpersonalsite.cmd jsmith

La creazione di siti tramite script fa risparmiare il tempo normalmente utilizzato per la digitazione e garantisce la coerenza di tutti i nuovi siti creati. L'operazione createweb fornisce la stessa funzionalità a livello Web.

In Windows SharePoint Services 2.0, l'unico metodo semplice di ottenere un elenco completo delle raccolte di siti su uno specifico server virtuale è quello di usare STSADM. Il comando enumsites elenca tutte le raccolte di siti in formato XML contenute su un server virtuale o un'applicazione Web. Questa operazione può essere combinata con un Data View Web Part per una semplice visualizzazione dell'elenco di raccolte di siti (per ulteriori informazioni confrontare l'intestazione laterale "Lavorare con un Data View Web Part").

STSADM offre un'operazione denominata deletesite che, come è facile supporre, è utile per l'eliminazione del sito. L'unica cosa che occorre fare è fornire un URL. Oppure è possibile usare il comando -deleteadaccounts per cancellare gli account nella Active Directory®. Quando si lavora con i Web si utilizzerà l'operazione deleteweb.

È possibile anche aggiungere, cancellare ed enumerare gli utenti di un sito o di un Web. Le operazioni corrispondenti sono adduser, deleteuser e enumusers. Queste operazioni sono comode se gli utenti hanno bisogno di essere aggiunti insieme ad un sito, o se si ha necessità di mantenere un elenco degli utenti che hanno accesso al sito a fini di controllo.

Quando si lavora con i Web si può usufruire di un'operazione aggiuntiva, renameweb, che consente di modificare il nome e l' URL di un Web. Per esempio, per rinominare un Web da "oldname" a "coolnewname", utilizzare il seguente comando:

Stsadm -o renameweb -url https://localhost/oldname -newname coolnewname

Questa può essere un'operazione davvero utile quando cambiano i nomi dei progetti o le unità aziendali vengono riallineate. In Windows SharePoint Services 2.0, questo è un problema complesso, dato che l'unico modo di migrare i Web è con SMIGRATE.exe, che non conserva nessuna impostazione utente come appartenenze o avvisi. Con Windows SharePoint Services 3.0, questo non è più un problema, dal momento che STSADM può fare il back up e il ripristino di Web e siti.

Backup e ripristino

Una delle operazioni più utili svolte da STSADM è il back up e il ripristino di siti e Web. Per piccole e medie installazioni, questa funzionalità può diventare l'elemento fondante di una pianificazione del ripristino d'emergenza. L'operazione di backup si spiega da sé ed è molto semplice da usare. Si tratta di indicare a STSADM soltanto di quale sito si vuole effettuare il back up e dove scrivere il file di back up, in questo modo:

Stsadm -o backup -url https://localhost -filename site.bak

Questa operazione scarica l'intera raccolta del sito nel file site.bak, il quale comprenderà l'intero contenuto del sito, come i Web, le versioni dei documenti, gli elenchi e gli utenti. Questa operazione non effettuerà il back up di nessuna delle definizioni o delle modifiche del sito effettuate a livello del file system dei propri server.

Sebbene l'operazione di back up sia importante, presenta alcuni intoppi sui quali è bene soffermarsi un attimo. Se il sito è abbastanza grande, il database dei contenuti può essere bloccato durante la procedura di backup. Ciò può impedire agli utenti l'accesso ad ognuno dei siti del database fino a quando l'operazione di back up non è stata terminata. Questo problema è stato attenuato con l'introduzione dei service pack, ma rimane comunque un punto da tenere sott'occhio quando il proprio sito aumenta di dimensioni. Durante le operazioni di back up e ripristino STSADM si serve anche di una directory temporanea del server in modo da poter controllare lo spazio su disco.

Lavorare con un Data View Web Part

È possibile abbinare il comando enumsites con un Data View Web Part così da creare un semplice modo di visualizzare un elenco di raccolte di siti. Vediamo come.

Innanzitutto, creare un'operazione pianificata che esegue:

stsadm –o enumsites –url https://localhost
>c:\inetpub\wwwroot\excludedsite\sites.xml 

Assicurarsi che il file XML venga immesso in una directory pubblicata con IIS, ma non gestita da SharePoint. Quindi utilizzare Microsoft FrontPage® (o il successore di FrontPage, Microsoft Office SharePoint Designer 2007) per aggiungere un Data View Web Part a una pagina Web Part e inserirlo nell'URL del file XML.

Il Data View Web Part offre funzionalità di ordinamento, filtraggio e raggruppamento. È possibile anche trasformare il campo URL in un link che collega direttamente al sito. Se si desidera invece un elenco dei Web, l'operazione enumsubwebs fornisce un output XML dei sottositi in una raccolta di siti o di Web.

Infine, è bene tenere presente che sebbene i back up realizzati da STSADM funzionano egregiamente per siti di piccole e medie dimensioni, non accade la stessa cosa con i siti di grandi dimensioni. Per siti molto vasti (diversi gigabyte o più), le procedure di backup e ripristino possono subire dei rallentamenti.

Il ripristino di un sito è altrettanto semplice. Il comando STSADM -o restore usa un file creato da STSADM -o backup e lo scrive su un sito in SharePoint. Si tratta di un comando che consente molta flessibilità: È possibile il ripristino di un sito nella sua location originale (nel caso in cui, per esempio, il sito sia stato cancellato per errore); è possibile anche ripristinare il sito come sito differente sullo stesso server virtuale (nel caso in cui, per esempio, si voglia eseguire il test di un processo sul sito senza correre il rischio di cancellare i dati), oppure è possibile ripristinare il sito su un server del tutto diverso o su un server virtuale.

Il ripristino su un sito o un server differente, rende più semplice il ripristino di documenti singoli. Se si è effettuato il back up di un sito ed un utente necessita il ripristino di un documento, non ripristinare l'intero sito. Ciò comporterebbe la perdita di tutte le modifiche eseguite sul sito dal momento del back up. Invece è possibile ripristinare semplicemente il sito su un URL diverso, recuperare i documenti e salvarli nel loro percorso originario.

In Windows SharePoint Services 2.0, STSADM ha una limitazione abbastanza importante. Il back up viene effettuato solo per i siti, non per i Web. Le lamentele degli amministratori si fecero sentire e Microsoft le ascoltò. In Windows SharePoint Services 3.0, le operazioni di back up e ripristino possono essere eseguite anche sui Web. Vengono anche aggiunti due nuovi comandi: l'importazione e l'esportazione.

Per esportare un Web, si utilizza questo semplice comando:

Stsadm -o export -url https://localhost/web -filename backup.dat

La funzionalità di esportazione possiede opzioni utili, compreso il comando -versions switch. Questo comando permette di decidere le dimensioni dei propri file di back up, limitando le versioni dei file per cui effettuare il back up..

Per reimportare un Web sul server, utilizzare il seguente comando:

Stsadm -o import -url https://localhost/web2 -filename backup.dat

Se il sito è di grandi dimensioni, il file di backup potrebbe essere diviso in più parti. In questo caso, usare il comando STSADM -o import per il primo file e STSADM recupererà automaticamente tutti i file successivi.

Operazioni avanzate

Ora che abbiamo preso confidenza con STSADM, intendo mostrare alcune operazioni che è possibile usare per levarsi d'impaccio. La prima è un'operazione aggiunta recentemente e denominata migrateuser. La versione 2.0 non si sincronizzava con la Active Directory. Generalmente se un account viene rinominato, non può più accedere a SharePoint. In precedenza, non esisteva alcun modo di migrare l'accesso di un utente da un dominio all'altro. Prima di Windows SharePoint Services 2.0 Service Pack 2 (SP2), si era costretti a rimuovere l'utente da ogni Web e aggiungere manualmente il nuovo account.

SP2 ha introdotto una nuova API and STSADM sfrutta questa funzione. Se l'account jsmith viene rinominato jjones, è possibile utilizzare il seguente comando:

Stsadm -o migrateuser -oldlogin domain\jsmith -newlogin domain\jjones -ignoresidhistory

Dal momento che non si sta davvero realizzando una migrazione degli account, si può ignorare la cronologia Windows dell'identificatore di protezione (SID). Si noti che questo comando non richiede alcun URL. Apporta la modifica a tutti i database di contenuti, indipendentemente che siano siti o Web.

Un'altra operazione che può risolvere dei problemi è unextendvs. Se non si desidera che SharePoint generi un server virtuale o un'applicazione Web, è possibile disattivare questa funzione. Normalmente, l'operazione sarebbe stata eseguita tramite SharePoint Configuration Analyzer. Tuttavia, in una Web farm, SharePoint Configuration Analyzer necessita che tutti i server siano allo stesso livello di patch. Può capitare che un server non sia sincronizzato con il resto della farm e, per questa ragione, non potrebbe eseguire l'operazione indicata da SharePoint Configuration Analyzer. Utilizzando STSADM, invece, il seguente comando disattiverà il server virtuale:

Stsadm -o unextendvs -url https://localhost

Una volta che il server non è più presente nella Web farm, è possibile eseguire le operazioni di manutenzione.

Per amministrazione più semplice della propria Web farm, è poi possibile che si desideri che tutti i propri server abbiano SharePoint Configuration Analyzer sulla stessa porta. La porta è generata in maniera casuale all'installazione di SharePoint, ma STSADM comprende un'operazione in grado di cambiare la porta in una specificata:

Stsadm -o setadminport -port 1026

Ciò effettua tutte le modifiche del database necessarie, le modifiche IIS e ottimizza il collegamento a SharePoint Configuration Analyzer negli strumenti di amministrazione.

Conclusioni

Windows SharePoint Services è una soluzione efficace e richiede un'efficace amministrazione. STSADM offre un modi di gestire l'amministrazione di SharePoint, comprese l'automatizzazione della configurazione e delle normali attività quotidiane. In effetti, in alcuni casi è anche l'unico modo per ottenere dei risultati.

Todd Klindt è analista di sistemi presso UGS dove si diverte con SharePoint tutto il giorno... e viene pagato per questo. Occupa anche il ruolo di MVP dei servizi di Windows SharePoint Services ed è del segno dell'acquario.

© 2008 Microsoft Corporation e CMP Media, LLC. Tutti i diritti riservati. È vietata la riproduzione completa o parziale senza autorizzazione.