윈 도 우 unattend.xml 무인 설치에서 적용 순서 테스트
2024.04.02 15:33
질문에 올라와서 답글을 방금 달았지만, 보충 테스트를 해봤습니다
무인 설치 파일도 여러가지가 있습니다. usb로 부팅만 하면 바탕 화면 나올 때까지 모든 것을 처리하는 무인 설치가 있습니다만..
이건 좀 위험하기 때문에 보통 잘 사용하지 않습니다. 파티션 만들기와 포맷과 윈도우 이미지 번호까지 자동으로 처리합니다
보통은 파티션과 이미지 번호는 직접 선택하고, 나머지 과정을 자동화하는 겁니다
근데 보통 파티션과 윈도우 이미지 설치하면...(재부팅) 윈도우가 설치됐다고 생각하시더군요.
하지만 이 때는 install.wim 윈도우 파일을 압축해제한 상태입니다
재부팅 후에도 계속 윈도우 설치 과정이 진행됩니다. 여기서 레지스트리 중에서 초반에 실행하면 적용되지 않는 것도 있습니다
반대로 드라이버는 초반에 설치하는 것이 좋습니다
간단한 unattend.xml 무인 설치에서 적용 순서 테스트를 해봤습니다.
위에서 말한대로 install.wim 설치 후만 해당하는 무인 설치입니다
마크된 부분은 곧 삭제할 겁니다
specialize와 oobeSystem 중에서 먼저 specialize만 적용해봤습니다
컴퓨터이름변경-specialize.bat 내용입니다
echo.>%USERPROFILE%\desktop\specialize-USERPROFILE.txt
echo.>%PUBLIC%\desktop\specialize-PUBLIC.txt
wmic computersystem where Name="%computername%" call rename name="specialize"
exit /b
무인 설치 후입니다
specialize는 바탕 화면에 PUBLIC.txt만 있습니다.
specialize가 적용되는 단계에서는 사용자 계정이 생기지 않아서 specialize-USERPROFILE.txt는 만들어지지 않습니다
컴퓨터 이름도 SUK-PC 그대로 specialize로 변경되지 않았습니다 [bat 파일을 통하지 않고 unattend.xml에 바로 적용하면 됩니다]
레지스트리에서는 사용자 계정과 관련된 HKEY_CURRENT_USER는 specialize 단계에서는 적용되지 않습니다
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "RegisteredOwner" /t reg_sz /d "SUK-specialize" /f
reg add "HKEY_CURRENT_USER\Control Panel\International" /v "sShortDate" /t reg_sz /d "yyyy.MM.dd (ddd)" /f
역시 마크된 부분을 삭제할 겁니다
specialize와 oobeSystem 중에서 oobeSystem만 적용해봤습니다
oobeSystem에 적용하면, 바탕 화면에 둘다 만들어지네요
echo.>%USERPROFILE%\desktop\oobeSystem-USERPROFILE.txt
echo.>%PUBLIC%\desktop\oobeSystem-PUBLIC.txt
oobeSystem 단계에서는 사용자 계정이 만들어져서, 사용자 계정의 바탕화면에도 파일을 만들 수 있습니다
레지스트리도 사용자 계정과 관계있는 HKEY_CURRENT_USER가 적용됩니다
reg add "HKEY_CURRENT_USER\Control Panel\International" /v "sShortDate" /t reg_sz /d "yyyy-MM-dd (ddd)" /f
적용되긴 했는데요. 스샷한 reg 명령에 실수로 앞에 =가 들어갔는데 그대로 나오는군요
bat 파일을 oobeSystem 단계에서 실행하면 컴퓨터 이름이 변경되네요
3번째 테스트는 specialize와 oobeSystem 둘다 적용해봤습니다
바탕화면은 위에 보였던 3가지 파일이 전부 나타납니다
요일도 반영되어 있습니다
specialize와 oobeSystem 공통으로 적용되는 부분인데요
나중에 실행되는 SUK-oobeSystem가 적용됩니다
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "RegisteredOwner" /t reg_sz /d "SUK-oobeSystem" /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "RegisteredOwner" /t reg_sz /d "SUK-specialize" /f
마지막으로 unattend.xml에서 specialize와 oobeSystem 순서를 바꿔봤습니다
unattend.xml에서 specialize와 oobeSystem 순서를 바꿔도 결과는 같습니다
저 같은 경우는 bat 파일이 E: 에 있다는걸 알고 실행했습니다만
보통 bat 파일 위치는 C: = install.wim = $oem$ 내부에 두고 실행합니다. 그래서 C: 고정 드라이브를 사용할 수 있는데요
usb 등에 bat 파일을 두고 실행할 수도 있습니다. 이 때 컴퓨터마다 usb 드라이브 문자가 다를 수 있는데요.
unattend.xml에 for구문을 사용하면 됩니다. unattend.xml는 bat 또는 cmd 파일이 아니기 때문에 %를 1개만 사용해야 합니다. %% (X)
cmd /c for %a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist "%a:\파일이름.bat" ("%a:\파일이름.bat"& exit)
댓글 [15]
-
상발이 2024.04.02 15:46
-
Meta 2024.04.02 15:47
수고하셨습니다.
-
라랑 2024.04.02 15:50
오~ 수고하셨습니다. 궁금했지만 대충 넘어갔던 내용인데 다 실험해 주셨네요.
전에 강좌란에 무인응답파일 자동으로 생성해주는 사이트를 누가 소개해 주셨는데 거기서 만드니까 Order 넘버가 100개가 넘어가더라구요.
근데 문제는 이게 적용이 됐다 말았다해서 순서를 요래조래 바꾸다 멘탈 나가서 그냥 다 지워버리고 3개만 남겨놨는데... 그때 막 헤메다가 마소 홈피에서 Order 번호는 상관이 없고 그냥 동시적용이라고 적힌 글이 있었던 걸로 기억합니다.
근데 순서바꾸면 에러뜨는....
그래서 맘속으로 추측만... 순서대로 컴파일 하되... 앞의 번호가 종료될 때까지 기다리지 않고 컴파일 되는 족족 전부다 실행하나보다 생각하고 넘어가기도 했던
OB랑 SP랑 Autounattend랑 unattend랑... 경우의 수가 너무 많아서 다 해보려면 재부팅 최소 50번은 해야겠다 싶어서 포기했던... 언젠간 넘어야할 산이겠지요...
노고에 감사드립니다.
아... 추가... 생각해보면 Order에 배치를 배치하고
배치 안에 call, start /wait, timeout가 먼저 소환? 실행?이 되면 전체 프로세스가 홀드상태라 뒷번호가 바로 실행이 되진 않는것 같다고 추측은 되는데.... 이것도 여러 환경에서 테스트를 해본 것은 아니라 확신은 못하겠습니다.^^:
-
오두막과시냇물 2024.04.02 16:18
시간 꽤 걸리셨겠네요.
고생 많으셨습니다.
-
cungice 2024.04.02 16:39
수고 많으셨습니다. 감사합니다.
-
광풍제월 2024.04.02 17:27
수고하셨습니다.
-
馬井理 2024.04.02 17:47
수고하셨습니다
-
규니 2024.04.02 20:00
수고하셨습니다~
-
fkjin 2024.04.02 20:51
수고 많으셨습니다.
-
미리내* 2024.04.02 20:59
수고하셨습니다.
-
맨션에살자 2024.04.02 21:20
항상 건강하시기 바랍니다..
-
단편지식 2024.04.02 22:50
감사합니다.
-
무월 2024.04.03 22:08
아래 구간에서 적용 되는듯합니다.
<settings pass="specialize">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<ComputerName>C202404001</ComputerName>
</component>
</settings>
-
suk 2024.04.04 13:12
네, 저도 평소 그렇게 사용하고 있습니다. 본문에 스샷에도 그 위치에 PC 이름이 있습니다
질문게시판에 질문하신 분께서 bat 파일을 사용하신다고 하셔서 bat 파일을 실행하여 테스트를 해봤습니다...
그리고 본문에 쓴대로 <settings pass="specialize">와 <settings pass="oobeSystem">에서 무엇이 적용되고, 적용되지 않는지?
그리고 unattend.xml에서 <settings pass="specialize">와 <settings pass="oobeSystem"> 전체를 위/아래 순서바꿨을 때
적용 순서가 달라지는지 확인해봤습니다 [바뀌지 않았습니다]
-
무월 2024.04.04 15:31
suk님 덕분에 여러 가지 배우게 되어 매우 감사하게 생각하고 있습니다.
즐거운 한 주 되시길 바랍니다. ^^
수고하셨습니다.