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!