SAS unattended#

Sas niestety korzysta z technologi instalshielld do instalacji, i do tego niestandardowych przełączników. Na szczęście w katalogu %SASROOT%\sas\docs\0011 znajdują się pliki opisujące wykonanie instalacji krok po kroku.

W skrócie najpierw przygotowujemy plik instalacji  poprzez wykonanie komendy %SASROOT%\sas\setup.exe record (czyli nie setup.exe -r). Po odpaleniu dostajemy plik do edycji, i nagrywamy go jako quiet.ini.

Drugim krokiem jest tylko odpalenie instalacji poprzez wydanie komendy:

"g:\Program Files\Sas Server\sas\setup.exe" /s quietfile="g:\Program Files\Sas Server\sas\quiet.ini" /f2 c:\winnt\temp\sas.log  /sms
Gdzie "g:\Program Files\Sas Server" jest katalogiem źródłowym instalacji.

Oczywiście mozemy tez logować monitorując plik %USERPROFILE%/Local Settings/Temp/{guid sasa}/saslog.txt

Sunday, May 21, 2006 12:14:40 PM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

VS2k5 Unattended#
W sumie instalacja nienadzorowana jest całkiem dobrze opisana. A więc mamy dwa tryby takiej instalacji:

a) Response File

Odpalamy setup za pomocą Setup/setup.exe /CreateUnattend="c:\unattned.inf" I torzymy plik z odpowiedzią. Cały proces jest prosty i przyjemny, posiada tylko pare drobnych wad.
Po pierwsze, instaluję całe VS łącznie ze wszystkimi wymaganymi bibliotekami, nawet jeśli biblioteki są juz zainstalowane. Co w przypadku .Net Frameworka zabiera juz ok.10min, a cały proces instalacji wydluza o ok.20.
Po drugie, nie nadaję się do upgradów. Przy zainstalowanym wcześniej VS np. przez instalacje SQL Servera 2k5, instalator stwierdzi ze VS jest juz zainstalowane i pominie ten krok.

b) Transform

Odpalamy setup za pomocą Setup/setup.exe /CreateUnattend="c:\unattned.inf" . I tu wielka, gigantyczna uwaga: pliki setupu(a dokładniej .msi) nie mogą być read-only!! Trzeba usunąć atrybut tylko-do-odczytu, bo inaczej instalacja zawodzi.
Jak na razie nie testowałem jeszcze instalacji z wykorzystaniem transform, gdyz nie wiedziałem o powyrzszej uwadzę.

Oczywiście przy instalacji z transform musimy wcześniej doinstalować komponenty tj. MSXML, Dexplore, czy .Net framewok. Microsoft radzi uzywać instalek znajdujących się w katalogu wcu. W większości są to spakowane archiwa, które przy instalacji rozpakowują się na dysk lokalny i dopiero z niego są instalowane. Przy szybkiej sieci, gdy nie zalezy nam na wydajności łącza, mozemy je rozpakować i odpalić tylko same instalki. W normalnych warunkach zaoszczędza nam to ok. 10min.
Przykładowy plik cmd do instalki z rozpakowanych archiwów:

WindowsInstaller-KB893803-v2-x86.exe /passive /norestart

msxml6.msi /qr REBOOT=RS

dotnetfx\install.exe /qb

DExplore\install.exe /qb

jsredist\install.exe /qb

Thursday, March 02, 2006 11:00:27 PM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

Autologon i RunOnceEx#

Skrypty które automatycznie logują się na dany komputer i odpalają dany program moga stworzyć prosty system instalacji oprogramowania. Taki przykładowy skrypt to:

@ECHO OFF

REM Setting Autologon

REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultDomainName" /t REG_SZ /d "PJWSTK" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUserName" /t REG_SZ /d "Admin_Name" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultPassword" /t REG_SZ /d "Admin_Password" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" /t REG_SZ /d 1 /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoLogonCount" /t REG_SZ /d 1 /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "ForceAutoLogon" /t REG_SZ /d 1 /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "CachePrimaryDomain" /t REG_SZ /d "PJWSTK" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AltDefaultUserName" /t REG_SZ /d "pkrzysz" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AltDefaultDomainName" /t REG_SZ /d "PJWSTK" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DontDisplayLastUserName" /t REG_SZ /d "0" /f
REG ADD "\\%1\HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\DomainCache" /v "PJWSTK" /t REG_SZ /d "pjwstk.edu.pl" /f

REM Setting Autostart

REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" /t REG_SZ /v Title /d "Installing Additional Software" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx" /t REG_DWORD /v Flags /d 306 /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install01" /t REG_SZ /v "" /d "Preparing install" /f
rem REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install01" /t REG_SZ /v 1 /d "rundll32.exe user32.dll, LockWorkStation " /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install01" /t REG_SZ /v 2 /d "fsutil quota modify c: 80000000000 80000000000 PJWSTK\pkrzysz" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install01" /t REG_SZ /v 3 /d "fsutil quota modify c: 80000000000 80000000000 PJWSTK\risasi" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install01" /t REG_SZ /v 4 /d "fsutil quota disable d:" /f

REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install02" /t REG_SZ /v "" /d "Installing..." /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install02" /t REG_SZ /v 1 /d "echo ." /f

REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v "" /d "Cleaning Registry..." /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 1 /d "reg.exe add """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """DefaultDomainName""" /t REG_SZ /d """PJWSTK""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 2 /d "reg.exe add """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """AutoAdminLogon""" /t REG_SZ /d """0""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 3 /d "reg.exe add """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """AutoLogonCount""" /t REG_SZ /d """0""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 4 /d "REG.exe DELETE """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """DefaultUserName""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 5 /d "REG.exe DELETE """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """DefaultPassword""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 6 /d "REG.exe DELETE """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """ForceAutoLogon""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 7 /d "rEG.exe DELETE """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon""" /v """DontDisplayLastUserName""" /f" /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install03" /t REG_SZ /v 8 /d "REG.exe DELETE """HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run""" /v """afterreboot""" /f" /f

REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install04" /t REG_SZ /v "" /d "Rebooting..." /f
REG ADD "\\%1\HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\install04" /t REG_SZ /v 1 /d "shutdown -r -t 0 -f" /f


shutdown -r -f -t 0 -m \\%1

Wednesday, March 01, 2006 1:53:18 PM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

unattended Mikitex, Open Office 2.0#

Instalacja unattended Mikitexa jest całkiem prosta - w katalogu tworzymy plik setupwiz.opt

--install-from-local-repository
--local-package-repository P:\Instalki\textEditors\miktex
--program-folder Text-Office\MiKTeX
--unattended

gdzie local-package-repository to sciezka do instalki, a program-folder to grupa w MenuStart. Następnie odpalamy przez setup /Q i działa.

 

Po długim czasie kiedy OpenOffice był w wersji beta, w końcu doczekalismy sie wersji finalnej. Jedną z głównych wad instalacji unattended OO jest to, ze przy pierwszym uruchomieniu uzytkownik jest proszony o rejestracje. W przypadku profili madatoryjnych takie zachowanie oczywiście odpada - uzytkownik po kazdym logowaniu by był proszony o rejestracje. W celu ominięcia tego problemu kopiujemy plik Setup.xcu z wcześniej zarejstrowanej wersji do katalogu profilu Application Data\OpenOffice.org2\user\registry\data\org\openoffice\.

Drugą wadą openoffica są słowniki. Ze strony http://lingucomponent.openoffice.org/ sciągamy i instalujemy słowniki, i ustalamy domyślne słowniki w ustawieniach programu. W celu przekopiowania tych ustawień do nowych instalacji, kopiujemy katalog c:\Program Files\OpenOffice.org 2.0\share\dict\ooo - co wgra słowniki do systemu(szczególnie wazny tu jest plik dictionary.lst zawierający ustawienia słowników); oraz plik c:\Program Files\OpenOffice.org 2.0\share\registry\data\org\openoffice\Office\Linguistic.xcu zawierający ustawienia domyślnych języków

Thursday, October 27, 2005 11:28:01 AM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

Cichy Corel 9 #

Jak to zwykle z unattendami bywa, dokumentacji zero.Ale trzeba sobie jakoś radzić. Przełączniki standardowe (-q , -quiet, -qn) jakoś nie działają , zadziałał natomiast -silent. Niestety z -silent Corel nie zainstalował się do końca. Po krótkoim grzebaniu w googlu znalazłem w końcu działające rozwiązanie - trzeba najpierw przejść na sucho instalację logując instalatora :

SETUP32.EXE  /creatersp=d:\silentrsp.txt

a następnie wrzucić instalki silent:

SETUP32.EXE /silent /rspfile=d:\silentrsp.txt

Tuesday, September 20, 2005 8:03:16 PM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

Ustalanie domyslnego widoku w Explorerze na details#
 Całą sprawę załatwia wpis w rejestrze:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams]
"Settings"=hex:09,00,00,00,04,00,00,00,00,00,00,00,00,77,7e,13,73,35,cf,11,ae,\
69,08,00,2b,2e,12,62,04,00,00,00,02,00,00,00,43,00,00,00


Lub prosty batch:

reg load HKU\TempUser "\\%1\c$\Documents and Settings\Default User\ntuser.dat"
reg add  HKU\Tempuser\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams /v Settings /t REG_BINARY /d 09000000040000000000000000777e137335cf11ae6908002b2e1262040000000200000043000000  /f
reg unload HKU\TempUser

reg load HKU\TempUser "\\%1\c$\Documents and Settings\mandatory\ntuser.man"
reg add  HKU\Tempuser\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams /v Settings /t REG_BINARY /d 09000000040000000000000000777e137335cf11ae6908002b2e1262040000000200000043000000  /f
reg unload HKU\TempUser


Oczywiście można też zrezygnować z domyślnego ustawienia widoku i ustawić domyślnie np. tylko widok na details do mój komputer np takim wpisem do rejestru:
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU]


[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU]
"NodeSlots"=hex:02
"MRUListEx"=hex:01,00,00,00,00,00,00,00,ff,ff,ff,ff
"0"=hex:14,00,1f,50,e0,4f,d0,20,ea,3a,69,10,a2,d8,08,00,2b,30,30,9d,00,00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU\0]
"NodeSlot"=dword:00000001
"MRUListEx"=hex:ff,ff,ff,ff



[-HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags\1]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags\1\Shell]
"Rev"=dword:00000000
"WFlags"=dword:00000000
"ShowCmd"=dword:00000001
"FFlags"=dword:00000000
"HotKey"=dword:00000000
"Buttons"=dword:ffffffff
"Links"=dword:00000000
"Address"=dword:ffffffff
"Vid"="{137E7700-3573-11CF-AE69-08002B2E1262}"
"Mode"=dword:00000004
"Sort"=dword:00000000
"SortDir"=dword:00000001
"Col"=dword:ffffffff
"ColInfo"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,fd,df,df,fd,0f,\
  00,05,00,24,00,10,00,2e,00,46,00,00,00,00,00,01,00,00,00,02,00,00,00,03,00,\
  00,00,04,00,00,00,78,00,96,00,60,00,60,00,78,00,00,00,00,00,01,00,00,00,02,\
  00,00,00,03,00,00,00,05,00,00,00,ff,ff,ff,ff,cf,f3,a8,b0,33,43,ab,4b,88,73,\
  1c,cb,1c,ad,a4,8b,30,f1,25,b7,ef,47,1a,10,a5,f1,02,60,8c,9e,eb,ac,04,00,00,\
  00

Najważniejszą wartością jest oczywiście "Mode" - tu ustawiamy jaki będzie widok.

 Niestety z tego drugiego sposobu nie udało mi się zrobić skryptu.

Monday, September 12, 2005 10:53:59 AM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

copyprofile w xp a xcopy+acl na rejestr w w2k#
Jak się okazało w moim przypadku, xcopy i założenie acl na rejestr dziła znacznie lepiej. Dlaczego? Microsoftowe narzędzie po prostu nie kompuje katalogu Local Settings z katalogu profilu, a xcopy tak. O ile w większości aplikacji to nie ma znaczenia, to vs.net z zainstalowanym msdn będzie się odpalał ok 10min. Wynika to z tego że vs.net prawdopodobnie tworzy sobie indexy z msdn dla dynamic helpa, i zapisuje je w katalogu Local Settings\Microsoft Help
Saturday, September 10, 2005 11:35:43 AM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

copyprofile dla windows 2000#
 NIestety ale narzędzia copyprofile.exe nie ma dla systemu windows 2000. W związkui z tym używałem skryptu:

rd /q /s "C:\Documents and Settings\risasi\Local Settings\Temp"
rd /q /s "C:\Documents and Settings\risasi\My Documents"
xcopy   "C:\Documents and Settings\risasi" "C:\Documents and Settings\mandatory" /s /E /C /Y /I /H
xcopy   "C:\Documents and Settings\risasi" "C:\Documents and Settings\Default User" /s /E /C /Y /I /H
attrib "c:\Documents and Settings\mandatory\ntuser.pol" -h -s
del "c:\Documents and Settings\mandatory\ntuser.pol"
attrib "c:\Documents and Settings\Default User\ntuser.pol" -h -s
del "c:\Documents and Settings\Default User\ntuser.pol"
echo y| cacls "C:\Documents and Settings\mandatory" /t /e /g everyone:r
echo y| cacls "C:\Documents and Settings\Default User" /t /e /g everyone:r
attrib -H "C:\Documents and Settings\mandatory\NTUSER.DAT"
ren "C:\Documents and Settings\mandatory\NTUSER.DAT" "NTUSER.MAN"
attrib +H "C:\Documents and Settings\mandatory\NTUSER.MAN"
rd /q /s "C:\Documents and Settings\risasi"

Gdzie risasi jest użytkownikiem z którego są tworzone profile mandatoryjny i Default User.

O ile z profilem Default User nie ma żadnego problemu, to profil madatroyjny się wykrzacza - powód - brak dostępu do kluczy rejestru.
Aby to zmienić trzeba zmienić w użytkowniku risasi ACL do kluczu rejestru HKCU. Jeśli to zrobimy, poolisy będą aplikowane dla danego profilu, ale niestety nie dla Explorera (tzn. takie polisy jak skrypty logon\logoff zabronienie regedita, cpl; ale już nie active desktop czy modyfikacje desktopu/menu start).


Aby polisy były w pełni aplikowane dla danego profilu, musimy jeszcze zmienić acl dla następujących kluczy rejestru:

HKCU\Software\policies
HKCU\Software\Microsoft\Windows\Current Version\Group Policy

Do zmiany acl można użyć subinacl.exe z W2kResKit. Odpowiedni skrypcik wygląda następująco:

subinacl /subkeyreg HKEY_CURRENT_USER /replace=PJWSTK\risasi=Everyone
subinacl /subkeyreg HKEY_CURRENT_USER\Software\Policies /replace=PJWSTK\risasi=Everyone
subinacl /subkeyreg "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy" /replace=PJWSTK\risasi=Everyone


Thursday, September 08, 2005 2:27:42 PM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

RISa instalacji czesc VII - final thoughts#

  Microsoft wypuścił narzędzia do prekonfigurowania plików sif (a także innych plików z instalacji unattended) - jednak ja i tak wolę wpisywać wszystko ręcznie - mam wtedy większą kontrolę , a pozatym ww. narzędzia nie oferują możliwości wpisania niektórych informacji, tj. scieżek do plików ze sterownikami.
 
 Wdrożenie RISa udało się całkowicie. Systemy instalują się i działają bezbłędnie.

 Ostatnią rzeczą jaką trzba zrobić any zainstalować Windowsa w trybie unattended, jest przekazanie sterowania do skryptu. Są na to dwa sposoby -
1. Korzystamy z pliku $oem$\cmdlines.txt - który umożliwia wykonywanie komend po instalacji, wtedy gdy na ekranie pojawia się napis - Registering Components. Wadą jest brak dostępu do rejestru i do sieci.
2. Korzystając z sekcji [GuiRunOnce] pliku sif - komendy są uruchamiane po zalogowaniu się do systemu, ale przed utworzeniem USER hive. Większość instalatorów zapisujacych w rejestrze klucze HKCU będzie się niestety wywalać.
 Jako że postanowiłem po zainstalowaniu Windowsa od razu zainstalować aplikację w trybie unattended, nie odpowiadała mi do końca żadna z powyższych opcji. Aby więc zainstalować programy, w pliku cmdlines.txt dopisuję do klucza rejestru HKLM..\Run wywołanie skryptu, a także, jako że polisy domenowe zmieniają automatycznie nazwę konta administratora lokalnego, zmieniam nazwę automatycznego logowania.Przykładowe pliki znajdują się poniżej.

cmdlines.txt

[COMMANDS]
"attrib -S -H c:\boot.ini"
"copy /y c:\scripts\boot\boot.ini c:\boot.ini"
"attrib +s +h c:\boot.ini"
"rundll32 setupapi,InstallHinfSection DefaultInstall 128 .\admin.inf"


admin.inf

[Version]
Signature = "$Windows NT$"

[DefaultInstall]
AddReg = AddReg

[AddReg]
HKLM,"Software\Microsoft\Windows NT\CurrentVersion\Winlogon","DefaultUserName",,"localAdm"
HKLM,"SOFTWARE\Microsoft\Windows\CurrentVersion\Run","afterreboot",,"C:\scripts\apps.vbs"




Saturday, August 27, 2005 1:42:16 PM (Central European Standard Time, UTC+01:00) #    Comments [0]  |  Trackback

 

All content © 2010, Krzysztof Pietrzak
On this page
This site
Calendar
<July 2010>
SunMonTueWedThuFriSat
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567
Archives
Sitemap
Blogroll OPML
  Tokyo by night
blog WiTa
  W-Files
blog n€x¤Ra
 .:fotoblog:.
blog Kfaza
 \\archon\blog$
blog archona
 Czasowstrzymywacz
Blog Fookyego
 Jog Pstryka
Jog Pstryka
 Mac OS X vs. Active Directory
techniczny blog kfaza

Maps
Locations of visitors to this page