Job / Praca

    Windows Server + GPO + LogIN/OFF Script + XCOPY Incremental Backup

    W dużym przedsiębiorstwie zadbanie o backup serwerów i stacji roboczych to dość istotne przedsięwzięcie. Użytkownicy raczej nie są świadomi, że powinni robić kopie tego co ważne. Po czym wnoszę? Po prawie 4 latach pracy jako Admin w dużej korpo, na palcach jednej ręki mogę policzyć osoby które zapytały się, jak lub gdzie mają zgrywać swoje dane lub poprosiły o kupno np dysku USB. Zatem dbamy. Serwery opiszę kiedy indziej – rsync, tar, certyfikaty do ssh, mt – raczej są znane i stosowane, dodatkowo można zastosować bonding do zwiększenia transferu, ale o tym jak już pisałem – kiedy indziej.

    Dzisiaj prosty sposób na użycie polityk Windows Serwera do kopiowania plików użytkowników na zdalny storage w mieszanym środowisku Windows 7 i Windows XP.

    Co to będzie robiło:
    – rozpoznaje jakiego używamy Windowsa :)
    – rozpoznaje czy katalog z nazwą użytkownika jest już stworzony , jeśli nie – tworzy.
    – w katalogach użytkownika dzieli na podkatalogi „dokumenty” i „pulpit” aby nie było bałaganu.
    – wyłącza potwierdzenia kopiowania plików na istniejące pliki
    – kopiuje także pliki ukryte
    – po pierwszym kopiowaniu nadpisuje tylko te które się zmieniły lub dodaje nowe.

    Skrypt BAT wygląda tak:

    IF EXIST %userprofile%\Documents GOTO BackupWin7

    :BackupWinXP

    IF EXIST \\storage\data\%username% GOTO TylkoKopia
    mkdir \\storage\data\%username%
    xcopy /Y "c:\Documents and Settings\%username%\Moje Dokumenty" \\storage\data\%username%\dokumenty /e /i /h /d
    xcopy /Y "c:\Documents and Settings\%username%\Pulpit" \\storage\data\%username%\pulpit /e /i /h /d
    :TylkoKopia
    xcopy /Y "c:\Documents and Settings\%username%\Moje Dokumenty" \\storage\data\%username%\dokumenty /e /i /h /d
    xcopy /Y "c:\Documents and Settings\%username%\Pulpit" \\storage\data\%username%\pulpit /e /i /h /d
    Goto EOF

    :BackupWin7
    IF EXIST \\storage\data\%username% GOTO TylkoKopia7
    mkdir \\storage\data\%username%
    xcopy /Y "c:\Users\%username%\Documents" \\storage\data\%username%\dokumenty /e /i /h /d
    xcopy /Y "c:\Users\%username%\Desktop" \\storage\data\%username%\pulpit /e /i /h /d
    :TylkoKopia7
    xcopy /Y "c:\Users\%username%\Documents" \\storage\data\%username%\dokumenty /e /i /h /d
    xcopy /Y "c:\Users\%username%\Desktop" \\storage\data\%username%\pulpit /e /i /h /d
    Goto EOF

    :EOF

    Zdalna lokalizacja to oczywiście storage – trzeba dopisać swój serwer lub IP gdzie ma się kopiować, lub dopisać do swojego DNS’a IP do maszyny która będzie nazywać się storage.

    /Y – wyłącza promptowanie o potwierdzenie nadpisania pliku
    /D – bez podania czasu działa jak incremental backup

    Pierwszy IF EXIST na podstawie katalogu Documents sprawdza czy używamy Windows XP czy 7. Następnie w odpowiednich blokach IF EXIST sprawdza czy jest na serwerze storage katalog z nazwą użytkownika, jeśli nie ma tworzy ją i zaczyna kopiowanie. Jeśli jest, po prostu zaczyna kopiowanie.

    Skrypt należy zapisać na serwerze w miejscu dla login lub logoff skryptów (odpowiedni katalog otworzy się przy dodawaniu skryptu do GPO).

    W zależności od potrzeb podczepiamy skrypt na logowanie lub wylogowywanie. Przy wylogowywaniu backup następuje zaraz po zakończeniu pracy. Jeśli użytkownik używa komputera stacjonarnego to jest to najlepsza opcja, wyłącza komputer, idzie do domu, komputer kopiuje to co trzeba i się wyłącza. Gorzej jeśli to laptop i użytkownik chce go zabrać i musi czekać, wtedy lepiej dać skrypt jako login. Skrypt odpali się jednocześnie z logowaniem i będzie działał w tle umożliwiając pracę. Można dodać @echo off na początku aby nie było widoczne stado latających plików :)

    Implementacja na Windows Serwer:

    1. gpmc.msc
    2. Wybieramy odpowiednie OU
    3. Prawy klawisz na OU – Create And Link GPO Here…
    4. Nadajemy nazwę
    5. Prawym klawiszem na nazwie
    6. Edit
    7. Wybieramy User Configuration
    8. Wybieramy Windows Settings
    9. Wybieramy Scripts(Login/Logoff)
    10. Dwa razy klikamy na wybranym skrypcie (login lub logoff)
    11. W Logon lub Logoff Properties Wybieramy Add..
    12. Wybieramy Browse.. i wybieramy skrypt do wykonania. (Jeśli go nie ma to właśnie w tej lokalizacji ma się znaleźć – trzeba go tam wkopiować).
    13. OK i zamykamy edycję GPO.
    14. W shellu uaktualniamy polityki – gpupdate /force

    Próbujemy się wylogować lub zalogować, efektem powinny być katalogi użytkowników na zdalnym storageu.

    root@storage:/data/samba# ll
    razem 44
    drwxrwxrwx 10 root root 4096 2012-01-17 14:12 ./
    drwxr-xr-x 7 root root 4096 2012-01-12 21:42 ../
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 13:08 user1/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 13:49 user2/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 12:59 user3/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 13:56 user4/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 14:05 user5/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 13:49 user6/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 13:06 user7/
    drwxr-xr-x 4 nobody nogroup 4096 2012-01-17 14:12 user8/

    Po ciężkim dniu pracy, jeśli storage wyposażony jest w streamer można cały katalog /data/samba nagrać jako gotowy dzienny backup.
    Do skryptu oczywiście można dopisać dodatkowe katalogi w/g potrzeb.
    Raz na jakiś czas (np. miesiąc)warto skasować całą zawartość backupu, aby wykonał się pełen backup, ponieważ skrypt nie kasuje plików które były lokalnie, ale już ich nie ma.

    © odwiedź stronę http://maciejewski.org po więcej fajnych postów!

    Job / Praca

    Przydatne MSI dla Admina

    Dzisiaj dołożyłem siódmą pozycję do GPO instalującego oprogramowanie na stacjach roboczych. Po długich poszukiwaniach i problemach związanych z zrobieniem działającego msi z Adobe Readera, zdecydowałem się na Foxit Readera.

    Cała lista jak na razie przedstawia się następująco:

    1. Mozilla Firefox 3.0.8 PL – nie ma oficjalnej paczki, ale na tej stronie są działające msi w kilku językach.

    2. Mozilla Thunderbird 2.0.0.17 – także nie ma oficjalnej paczki, znalazłem na jakimś forum, którego teraz nie mogę odszukać, dlatego tu jest lokalny mirror. Polecam jeśli musicie w kólko biegać do Outlooków wszelakich i kompaktować lub gimnastykować się z plikiem poczty ponad 2 GB :)

    3. CD Burner XP – Darmowy, w pełni funkcjonalny program do nagrywania CD/DVD. Dostęp do nagrywarki dla zwykłego użytkownika bez dziwactw w stylu Nero Burning Rights. Paczka MSI od producenta.

    4. Eset Nod 32 Business Edition – Firmowy Antywirus z zaimplementowaną konfiguracją (user, hasło oraz lokalny serwer do aktualizacji). Jedyny komercyjny produkt w zestawie. Producent daje MSI ora zinstrukcje jak zaimplementować dane do aktualizacji w paczce. Można także wysyłać „goły” program i konfigurować go z serwera. Bardzo polecam. Najważniejsze, że jest ultra lekki nawet na gorszych konfigach.

    5. OCS-NG – Klient inwentaryzacyjny. Tutaj paczki MSI nie ma, ale na stronie jest prosty opis jak go zainstalować Login skryptem.

    6. 7-zip – Darmowy – w pełni funkcjonalny program do obsługi wszelakich archiwów.

    7. Foxit Reader – lekki, szybki czytacz PDF.

    Mam nadzieje, że komuś lista się przyda. Wszelkie uzupełnie listy także mile widziane w komentarzach :)




    © odwiedź stronę http://maciejewski.org po więcej fajnych postów!

    Fun

    Z cyklu „Dziwny jest ten Windows”

    Dwa kwiatki z ostatnich dni. Najpierw windows do mnie przemówił po nie działającym pingu:

    Jenny by Windows Ping
    Jenny by Windows Ping

    Cokolwiek miałoby to znaczyć niestety nie chciało się powtórzyć, więc zagadka pozostaje nierozwiązana. Ktokolwiek zna Jenny?

    Druga rzecz z gatunku „Wszystko dobre co się dobrze kończy” GPO od instalacji Firefoxa na stacjach zgłosiło błąd – Instalacja zakończona sukcesem :)

    Error = Sucessfully.
    Error = Sucessfully.

    MicrosoftSupply entertainment since 1985 ;)



    © odwiedź stronę http://maciejewski.org po więcej fajnych postów!

    Job / Praca

    Zmiana nazwy komputerów z AD

    Pewnie każdy administrator, staje z czasem przed problemem, że w sieci ma totalny bałagan jesli chodzi o nazwy hostów, zwłaszcza jak komputery przyjeżdżają preinstalowane. Ja także postanowiłem zrobić sobie porządek ponieważ właśnie przygotowuje sieciowy backup i nie chce jako nazwy klientów podawać IP, które jest z DHCP, poza tym wybieranie klientów do restore lub backupu po IP to utrudnienie a nie ułatwienie. Dlatego też komputery będą nazywały się tak jak pracujący na nich userzy. Tutaj zaczynają się schody, ponieważ w Active Directory gdzie figurują wszystkie komputery nie ma możliwości zmiany ich nazwy. Można zarządzać wszystkim co tylko mamy pod Zarządzaj po kliknięciu prawym na Mój Komputer, no ale nazwy jednak zmienić nie można. Nie jest tak źle i można sobie oszczędzić biegania od komputera do komputera jednak przy pomocy dwóch programów i jednego skryptu. Po pierwsze potrzebujemy PsTools oraz wsname.

    Na koniec, potrzebujemy skrypt (nazwij go dowolnie np changer.cmd)

    @echo off
    if "%1" EQU "" GOTO SHOWSYNTAX
    if "%2" EQU "" GOTO SHOWSYNTAX
    if "%3" EQU "" GOTO SHOWSYNTAX
    if "%4" EQU "" GOTO SHOWSYNTAX

    if not exist wsname.exe GOTO SHOWSYNTAX
    if not exist psexec.exe GOTO SHOWSYNTAX

    if /i "%5" EQU "REBOOT" (
    SET REBOOT=Y
    ) ELSE (
    SET REBOOT=N
    )

    echo Connecting
    net use \\%1\ipc$ > NUL
    if NOT ERRORLEVEL == 0 GOTO NETERROR

    echo Copying WSNAME locally
    COPY WSNAME.EXE \\%1\C$ > NUL

    echo Launching WSNAME
    PSEXEC \\%1 C:\WSNAME.EXE /N:%2 /RCID /USER:%3 /PASS:%4
    if "%ERRORLEVEL%" NEQ "0" SET REBOOT=N

    echo Tidying Up
    DEL \\%1\C$\WSNAME.EXE

    echo Disconnecting
    net use \\%1\ipc$ /d > NUL

    if "%REBOOT%" EQU "Y" (
    echo Rebooting '%2' so new the name will take effect
    shutdown /m \\%1 /r /f /c "Rebooting so new name will take effect"
    )

    GOTO END

    :NETERROR
    echo.
    echo ERROR: Could not connect to %1
    echo.
    GOTO END

    :SHOWSYNTAX
    echo.
    echo Remote Rename in Domain
    echo. Syntax: RemoteName "device existing name" "new name" "userid" "password" [REBOOT]
    echo.
    echo. Requires PSEXEC.EXE and WSNAME.EXE
    echo.
    echo. Get PSEXEC from www.sysinternals.com
    echo.
    echo.

    :END
    SET REBOOT=

    Wrzucamy wszystko do jednego katalogu, wchodzimy do shella (cmd) i piszemy (będąc w katalogu ze skryptem i programami):

    changer 10.1.0.50 JanKowalski DOMENA/Administrator haslo [reboot]

    changer – to nazwa naszego skryptu

    10.1.0.50 – adres komputera docelowego (może być też nazwa NetBIOSowa)

    JanKowalski – nowa nazwa komputera

    DOMENA/Administrator – użytkownik z prawami do zmiany nazwy (gdy komputery są w domenie to mamy ułatwione zadanie ponieważ wystarczy Administrator domeny dla każdego komputera, jeśli nie to cóż, mam nadzieje, że znasz hasła każdego komputera ;)

    haslo – hasło użytkownika DOMENA/Administrator

    [reboot] – wymuszenie restartu aby zmiany odniosły skutek

    Napewno błędem, który napotkasz będzie jednak nie działanie tego rozwiązania z powodu zapory Windowsowej. Znowu w domenie można załatwić to przez GPO, bez domeny pozostaje bieganie do komputerów.

    Wyłączamy zaporę stosując następujące GPO:

    i podpinamy do komputerów, których ma dotyczyć.

    Nastepnie czekamy, aż polityki się odświeżą lub odpalamy gpupdate /force .

    Jesli maszyna zacznie odpowiadac na pingi to możemy zacząć zabawe ze zmianami nazw :)


    Job / Praca

    Firefox przez Active Directory

    Ha! Od dzisiaj każdy w firmie ma zainstalowanego Firefoxa. Przy pomocy Active Directory i GPO nie jest to oczywiście trudne do osiągnięcia, ale trzeba wybudować sobie paczki *.msi ponieważ *.exe nie nadają się do „deploymentu” (bardzo podoba mi się to słowo :) jest polski odpowiednik deploy?). Jak narazie moje próby znalezienia darmowego programu, który by działał i poprawnie budował msi spełzły na niczym. Ale z Firefoxem jest trochę prościej. Na stronie http://www.frontmotion.com/Firefox/ istnieją gotowe paczki, które instalują się bez problemu, co ważne są wszystkie najważniejsze lokalizacje, co również jest mi na rękę z uwagi na wielojęzykowość firmy. Zainstalowałem 2.0.0.12, a dzisiaj pisząc tą notkę już jest 2.0.0.13 więc działają całkiem szybko. Pozostaje czekać tylko na kolejnych szczęśliwszych użytkowników Internetu :)

    P.S. Czy kiedykolwiek pomyśleliście, że logo Firefoxa ukazuje „płonącą kulę ziemską”? Niektóre osoby z całą stanowczością właśnie tak u mnie twierdziły i dopiero po wysłaniu im loga FF 500×500 zmieniły zdanie (przekonał je nos, łapy i uszy liska ;)



    Related Posts with Thumbnails
    Add your widget here