..:: El Mighelon ::..


W le slitte!!
Blogs Amici
Ora e Data
Links
    Calendario
    dicembre 2024
    lmmgvsd
    2526272829301
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    BATCH STOP SERVICE

    Mi è capitato varie volte di dover schedulare dei task tramite dei batch per eseguire operazioni di manutenzione di un server. Come buona norma questi task dovrebbero essere eseguiti con un utente non amministratore ma che abbia gli opportuni diritti per eseguire determinate operazioni. Diciamo che nella stragrande maggioranza dei casi ciò è "facilmente" possibile. Se però tra le varie operazioni da eseguire è incluso anche lo start/stop di un servizio allora la questione si complica per 2 motivi:
    1. Un utente non admin di default non ha i diritti di start/stop sui servizi.
    2. L'eseguibile net.exe (utilizzato solitamente per eseguire lo start/stop dei servizi da CLI) non funziona in modalità batch!!! A quanto pare questo è un comportamento by-design presente in TUTTE le versioni di Windows (io personalmente ho testato questo comportamento su Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2).

    Dopo ore di test sono riuscito finalmente a trovare un workaround per questo problema!!!

    1. Usando le Group Policy possiamo facilmente gestire i security settings dei servizi, ecco come:
    - Apriamo la mmc (start => run => mmc) e aggiungiamo lo snap-in "Security Templates"
    - Creiamo un nuovo template (tasto dx sulla root => new template => nel mio esempio si chiama "test")

    - Doppio click sul servizio che ci interessa e qui andiamo ad impostare le security che ci interessano (come dicevamo prima start/stop del servizio)

    - A questo punto possiamo fare tasto dx => Save As ed esportare il nostro template in un file .inf che andremo ad importare in una GPO creata a questo scopo e applicata al server interessato (questa procedura è necessaria perchè l'elenco dei servizi disponibili per i server è diverso e non possiamo gestire tutto solo dalla GPMC); per importare il file .inf è sufficiente aprire la GPO (edit) => tasto dx nella sezione Computers\Windows Settings\Security Settings =>Import Policy => selezionare il file .inf precedentemente creato

    - Per applicare sul nostro server i cambiamenti sarà necessario eseguire il solito "gpupdate /force"

    2. Per il secondo problema sarà sufficiente usare i seguenti comandi da inserire nel nostro batch:
    sc stop "my service" /y
    sc start "my service"

    Invece che:
    net stop "my service" /y
    net start "my service"

    Ciauzzz

    Categoria: Windows Server
    venerdì, 08 gen 2010 Ore. 13.04
    Mappa
    Statistiche
    • Views Home Page: 25.693
    • Views Posts: 20.460
    • Views Gallerie: 13.905
    • n° Posts: 13
    • n° Commenti: 7
    Archivio Posts
    Anno 2010

    Anno 2009

    Anno 2008

    Anno 2007

    Anno 2006
    Copyright © 2002-2007 - Blogs 2.0
    dotNetHell.it | Home Page Blogs
    ASP.NET 2.0 Windows 2003