none
Sharepoint 2007 SP2 - Problema su backup url tramite stsadm

    Question

  • Buonasera, ho un problema antipatico con un server Windows 2008 SP2 + Sharepoint 2007 SP2.

     Ho preparato un semplicissimo batch che lancia una serie di stsadm per fare il backup notturno dei singoli portali e salva l'output in un file di testo. Il batch, se avviato a mano (tasto dx -> esegui come amministratore) funziona perfettamente. Se provo a pianificarlo tramite TaskScheduler con lo stesso utente (assegnado i "privilegi più elevati") parte, va in esecuzione ma non salva nulla.

     Quando mando lo script a mano, al termine del backup di ogni singolo portale nel log compare la dicitura:

    "Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock.

     Operazione completata."

     mentre quando lo schedulo con compare alcun messaggio di errore, il log riporta solo:

    "Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock."

    e passa all'operazione successiva.

     

     Qualche suggerimento??

    Wednesday, December 15, 2010 4:25 PM

Answers

  • Niente da fare...

     Un altra prova che mi rimane da fare è impostare l'esecuzione del task come "Configure for: Windows 2003, WindowsXP o Windows 2000"... Dici che può servire?

     

    [EDIT]

    Non ci credo: Ho provato a eliminare il task creato come "Basic Task" e ricrearlo come "Task"... E sembra funzionare. Non avevo mai riscontrato differenze tra le due modalità...

    Wednesday, December 22, 2010 8:40 AM

All replies

  • Dalla SP2 il sitelock viene impostato automaticamente prima di attivare il backup e devi opzionalmente specificare nositelock se non intendi procedere al blocco delle Site Collection: http://technet.microsoft.com/en-us/library/cc287967(office.12).aspx. Hai provato a far eseguire anche questo: http://www.codeproject.com/KB/sharepoint/STSADM_Backup.aspx ?
    Romeo Pruno | Microsoft MVP SharePoint Server | http://www.nonaka.eu/feed
    Thursday, December 16, 2010 7:40 AM
  • Sì, sì. Il problema non è il "sitelock", tanto lo script gira di notte.

    Il problema è che, nonostante lo script vada correttamente in esecuzione, non c'è alcun file nel percorso indicato e dopo ogni riga manca la dicitura "Operazione completata", conferma che l'esportazione dei siti non ha funzionato. Non capisco perchè lanciando a mano lo script questo funzioni mentre schedulandolo non ottengo nulla.

    Thursday, December 16, 2010 8:17 AM
  • Nessuno?
    Friday, December 17, 2010 10:51 AM
  • Ti consiglio o di condividere lo script che hai utilizzato o di fare un test con la soluzione nel link che ti ho girato nell'ultimo post.
    Romeo Pruno | Microsoft MVP SharePoint Server | http://www.nonaka.eu/feed
    Friday, December 17, 2010 1:23 PM
  •  

     Questo è il batch:

    @echo off
    
    echo	Backup dei singoli siti SharePoint. 
    
    REM	===============================================================================
    REM	Per ottenere il giorno della settimana con il comando sottostante è necessario
    REM	modificare il formato della data breve nel pannello di controllo di Windows
    REM	da "dd/MM/yyyy" a "ddd dd/MM/yyyy"
    REM	===============================================================================
    
    	set weekday=%date:~0,3%
    
    
    	cd \Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN
    
    @echo off
    
    echo	Backup dei Portali SharePoint:
    echo.
    echo	Backup del portale 1.
    	stsadm.exe -o backup -url http://server:8001 -filename F:\Backup\Sites\%weekday%\1-8001.bak -overwrite -backupmethod full
    echo.
    echo	Backup del portale 2.
    	stsadm.exe -o backup -url http://server:7876 -filename F:\Backup\Sites\%weekday%\2-7876.bak -overwrite -backupmethod full
    
    echo	Backup dei siti di amministrazione.
    	stsadm.exe -o backup -url http://server:29178 -filename F:\Backup\Sites\%weekday%\server-Central-Admin.bak -overwrite -backupmethod full
    	stsadm.exe -o backup -url http://server:1947 -filename F:\Backup\Sites\%weekday%\server-SharedServicesProvider.bak -overwrite -backupmethod full
    
    echo.
    @echo on

    E questo è l'output se lo script viene avviato dal task scheduler:

     

    Backup dei singoli siti SharePoint. 
    Backup dei Portali SharePoint:
    
    Backup del portale 1.
    
    Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock.
    
    
    Backup del portale 2.
    
    Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock.
    
    Backup dei siti di amministrazione.
    
    Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock.
    
    

     

    I siti però non rimangono "readonly" quindi in teoria lo script non va in errore...

     Invece se lo lancio a mano dalla sua posizione con Tasto dx -> Run as administrator lo script gira e fà il suo dovere, restituendo "Operazione completata." dopo ogni riga di stsadm.

     

    Backup dei Portali SharePoint. 
    Backup del portale 1. 
    
    Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock. 
    
    Operazione completata.
    
    Backup del portale 2. 
    
    Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock. 
    
    Operazione completata.
    
    Backup dei siti di amministrazione. 
    
    Setting the site collection to be read-only for the duration of the backup. If the operation is interrupted, make sure to check the site lock for this site collection. For more information see stsadm.exe -help getsitelock and stsadm.exe -help setsitelock. 
    
    Operazione completata.
    

     

     Concordo sul fatto che sembra più un problema dell'utente che avvia la schedulazione che non dello script...

     Grazie dell'aiuto.


     [EDIT]

     Scusami se non si capisce un granchè, il tag del codice ha manomesso la formattazione, quindi ho messo in grassetto il testo.

     

     

    Friday, December 17, 2010 1:50 PM
  • Prova ad eseguire il bat tramite un runas del cmd nel seguente modo:

    runas /profile /env /user:domain\user "tuo_batch.bat"

    controlla il risultato!


    Romeo Pruno | Microsoft MVP SharePoint Server | http://www.nonaka.eu/feed
    Friday, December 17, 2010 2:50 PM
  • Alt!! Come non detto, in questo modo il batch funziona. Però è strano, vorrei capire qual'è il problema. C'è modo di avere un output un pò più "verbose" di stsadm??

     

    [EDIT:]

    Ehm... Ipotizzo timidamente: Il fatto che il batch venga richiamato dal un "call" all'interno di un altro batch potrebbe essere la causa del problema??

     

     In tal caso, come dovrei modificare il comando?

    call runas /profile /env /savecred /user:dominio\nomeutente "C:\Scripts\backup-sharepoint-sites.bat" > C:\Scripts\VmBackup\log02-shpt-sites.txt

    oppure

    runas /profile /env /savecred /user:dominio\nomeutente call  "C:\Scripts\backup-sharepoint-sites.bat" > C:\Scripts\VmBackup\log02-shpt-sites.txt

    Monday, December 20, 2010 4:17 PM
  • Matteo ... dille tutte le cose :-) modifica il *.txt in bat e richiamalo all'interno del runas che ti ho girato.
    Romeo Pruno | Microsoft MVP SharePoint Server | http://www.nonaka.eu/feed
    Monday, December 20, 2010 7:42 PM
  • :-D Scusami!

     Il txt è il file che raccoglie l'output, il comando è nel file "backup-sharepoint-sites.bat"

     

    Quindi una cosa del genere?

    call runas /profile /env /savecred /user:dominio\nomeutente "C:\Scripts\backup-sharepoint-sites.bat" > C:\Scripts\VmBackup\log02-shpt-sites.txt

     

     Ora provo poi ti dico.

    Tuesday, December 21, 2010 8:19 AM
  • Niente da fare... Scusami se prima sono stato poco chiaro, faccio un riepilogo:

     Ho un file .bat che lancia ad un orario schedulato, una serie di operazioni. Queste operazioni sono scritte in altri file .bat che vengono eseguiti in sequenza richiamadoli con un "call" dal batch schedulato.

     Il task scheduler manda quindi in esecuzione un file .bat che ne richiama altri. Il vantaggio è solo quello che in questo modo i comandi vengono eseguiti in sequenza, senza sovrapposizioni ed il comando seguente parte solo dopo il completamento del precedente.

     Ad esempio, se nel corso della notte voglio fare il backup dei portali sul server sharepoint e del contenuto dei siti personali, inserisco nella prima riga dello script una chiamata ad un altro bat per avviare il backup dei portali. Quando questa operazione si è conclusa, sarà avviata la seconda riga che richiama un altro bat che esegue il backup dei soli siti personali. Scrivendo opportunamente l'output in un paio di file di testo, una terza riga assembla il tutto e me lo spedisce via mail.

     Questa procedura ha sempre funzionato su altri server (testato da Windows 2003 a Windows 2008 R2) per altri scopi (operazioni su vm hyper-v, backup con WSB, robocopy, diverse cose, insomma) ma non mi riesce di farla funzionare con stsadm. Se lancio uno qualuqnue degli script (che sia quello che viene attivato dal task scheduler o uno di quelli che questo script richiama) con tasto dx -> Esegui come le operazioni vanno a buon fine, ho i miei log e i miei file di backup.

     Se schedulo tramite task scheduler una qualunque di queste operazioni non c'è verso. L'operazione parte, apparentemente non va in errore ma i file nella posizione di backup (su un disco locale) non ci sono e non ottengo dai miei soliti log alcuna informazione utile.

     

     Ho provato quindi a modificare il bat schedulato inserendo i "runas" che mi hai suggerito. Il bat che viene schedulato quindi è ora composto da una serie di righe come le seguenti:

    call runas /profile /env /savecred /user:dominio\nomeutente "C:\Scripts\backup-sharepoint-sites.bat" > C:\Scripts\VmBackup\log01-shpt-sites.txt

    call runas /profile /env /savecred /user:dominio\nomeutente "C:\Scripts\backup-sharepoint-portal.bat" > C:\Scripts\VmBackup\log02-shpt-sites.txt

     C'è però il problema che queste chiamate vengono eseguite senza attendere il completamento delle precedenti, non scrivono nulla nel file txt che dovrebbe contenere il log e soprattutto, anche queste se lancio lo script a mano funzionano (solo la prima chiamata ovviamente, perchè la seconda si sovrappone e STSADM si incazza) mentre schedulate non mi danno un bel niente.

     

     A questo punto deve essere una cretinata nella pianificazione delle operazioni ma non riesco davvero a capire...

    Tuesday, December 21, 2010 4:51 PM
  • Ho rivisto un pò il tuo bat, prova a specificare il comando stsadm dal path completo  "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN\stsadm" senza cambiare directory con cd \...



    Romeo Pruno | Microsoft MVP SharePoint Server | http://www.nonaka.eu/feed
    Tuesday, December 21, 2010 6:07 PM
  • Niente da fare...

     Un altra prova che mi rimane da fare è impostare l'esecuzione del task come "Configure for: Windows 2003, WindowsXP o Windows 2000"... Dici che può servire?

     

    [EDIT]

    Non ci credo: Ho provato a eliminare il task creato come "Basic Task" e ricrearlo come "Task"... E sembra funzionare. Non avevo mai riscontrato differenze tra le due modalità...

    Wednesday, December 22, 2010 8:40 AM
  • Non ci sono differenze se non che per il *basic* hai il wizard di configurazione mentre per il *task* configuri a mano tutte le opzioni di setup.
    Romeo Pruno | Microsoft MVP SharePoint Server | http://www.nonaka.eu/feed
    Wednesday, December 22, 2010 11:38 AM
  • Confermo, ora funziona come lo avevo creato io inizialmente.

    L'unica differenza tra ora e prima è stato creare il task senza usare "Basic". Nel weekend verifico che funzioni anche lo script che fa il backup della farm ma direi che dovrebbe andare.

     

     Non me lo spiego...

     Grazie per il supporto che mi hai dato e auguri se non ci si risente prima!

     

    Wednesday, December 22, 2010 12:58 PM
  • Per chiudere il thread confermo che ora lo script funziona come lo avevo generato inizialmente anche per il backup dell'intera farm.

     Non me ne capacito, l'unica differenza è aver creato  il task senza usare il wizard... Possibile che questa cosa sia capitata solo a me??

     

     Cmq grazie del supporto e di nuovo auguri!!

    Monday, December 27, 2010 8:28 AM