저는 Microsoft 도메인(주로 2008r2\7)을 가지고 있습니다.
도메인에 가입한 후(사용자 로그인을 요구하지 않고) 즉시 스크립트를 실행하는 방법을 찾고 있었는데 지금까지 실패했습니다.
또한 한 번만 실행되기를 원하므로 반복 작업을 예약하는 것은 옵션이 아닙니다.
계속해서 실행하도록 놔두는 것은 나에게 낭비처럼 보입니다.
시작 스크립트를 사용하여 GPO를 시도했지만 컴퓨터가 GPO를 수신하면 시작 이후입니다.
또한 예약된 작업(다른 트리거 사용)으로 GPO를 시도했지만 작동하지 않았습니다.
"시작 시" 트리거가 시작 스크립트와 동일하게 실패합니다.
"작업 생성 시"가 실패한 것 같습니다. 일반적인 방식으로 생성되지 않았기 때문인 것 같습니다.
"일정에 맞춰"는 관련이 없습니다. 가입 후 바로 실행해야 하기 때문입니다(그리고 이미 지나간 날짜를 설정하는 것은 작동하지 않았습니다).
관련 레지스트리 키를 찾을 수 없지만 GPO 시작 스크립트와 동일한 문제가 있을 것으로 가정합니다.
필요한 작업을 수행할 수 있는 유일한 아이디어는 DC의 관련 이벤트에 작업을 연결하고 원격으로 스크립트를 실행하는 것입니다.
더 좋은 제안이 있나요?
--편집--
답변(훌륭하지만 잘리지는 않음)에 따라 추가해야 할 몇 가지 사항이 있습니다.
1. 질문은 두 서버(2008r2\2012\2012r2)에 모두 적용됩니다. 2012r2에서만 테스트되었습니다.
2. 나는 좀 더 runonce와 유사한 솔루션을 찾고 있습니다. 즉, 일부 조건이 충족될 때까지 끝없이 실행되는 것을 원하지 않습니다.
3. 우리는 이미지를 사용하여 서버와 워크스테이션을 배포하지만 편집이 포함된 솔루션을 사용할 수 없습니다. a) 스크립트에서 무언가를 변경해야 할 때마다 이미지를 업데이트해야 합니다. b) BYOD.
4. 우리는 참여 스크립트를 사용하지 않으므로(단순히 필요하지 않습니다...) 스크립트를 사용하기 시작하는 것은 제게는 낭비처럼 보입니다. 또한 여기에는 몇 가지 문제가 있습니다(예: 이미지에 어디에 두어야 하나요? 공유 위치에 있나요? BYOD는 어떻게 해야 하나요? 그러면 포인트 3이 무효화됩니다).
감사해요.
답변1
빌드 이미지에 사용자 지정 레지스트리 키를 추가하세요. 어딘가에 간단한 '1' 값만 있으면 됩니다.
빌드 이미지에 레지스트리 키 값을 확인하는 예약된 작업을 추가하고, 이 레지스트리 키에 도메인 이름에 대한 확인을 추가합니다.
HKLM\시스템\CurrentControlSet\Services\Tcpip\매개변수
둘 다 발견되면 스크립트를 실행한 다음 완료되면 사용자 정의 레지스트리 키를 0으로 변경합니다. 시작 시 이 작업이 실행되도록 하세요.
그런 다음 이 작업을 그대로 두거나 예약된 작업을 삭제하는 gpo를 설정할 수 있습니다. 그러나 그대로 두고 스크립트를 다시 실행해야 하는 경우 레지스트리 키를 다시 1로 변경하고 재부팅하면 됩니다.
약간의 보안 문제는 예약된 작업을 로컬 관리자 계정으로 실행해야 한다는 것입니다.
답변2
어차피 도메인 가입 후 재부팅할 필요는 없나요? 시작 스크립트를 생성한 경우 재부팅 직후 다른 그룹 정책 개체를 로드할 때 적용됩니다.
지금 도메인에 어떻게 가입하고 있나요? 도메인 가입을 스크립트에 통합할 수도 있습니다. Powershell을 사용하면 Add-Computer를 사용하여 이 작업을 수행할 수 있으며 명령줄에서 netdom을 사용할 수 있습니다.
일반적으로 구성 관리 도구를 사용하는 경우 이를 작업 순서에 통합합니다.
답변3
조인은 어떻게 수행됩니까? 수동 GUI 상호 작용 또는 스크립트를 통해? 스크립트인 경우 조인 스크립트에 행을 추가하여 두 번째 스크립트가 RunOnce 레지스트리 키를 통해 실행되도록 하세요.
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce https://msdn.microsoft.com/en-us/library/windows/desktop/aa376977%28v=vs.85%29.aspx
---편집 시작---
맙소사! 오른쪽
GPO 적용이 지연된다는 귀하의 의견을 생각하면... 저는 동기식 GPO 처리를 수행하는 서버 OS에서 주로 작업합니다. 워크스테이션은 비동기식입니다. 비동기화하려면 다음을 시도하십시오.
빌드 프로세스/이미지에서 "빠른 로그온 최적화"를 비활성화해 보십시오.
https://technet.microsoft.com/en-us/magazine/gg486839.aspx
컴퓨터 구성\관리 템플릿\시스템\로그온
컴퓨터 시작 및 로그온 시 항상 네트워크 대기 = 사용
GPO 시작 스크립트 만들기 GPO:
컴퓨터 구성/정책/Windows 설정/스크립트/시작
정의한 스크립트 내에서 다음 코드를 사용하세요.
$built = gwmi Win32_OperatingSystem | foreach {[System.Management.ManagementDateTimeconverter]::ToDateTime($_.InstallDate)}
if ($built -gt (get-date).addHours(-4)) {
"do something"
}
답변4
나는 학교에서 일하곤 했어요.
그리고 우리는 조인 및 스크립팅 프로세스를 자동화합니다(수년에 걸쳐 배포할 수 있는 완벽한 이미지를 갖는 것이 아마도 유토피아일 수 있습니다). 그래서 우리는 WDS/MDT를 사용하여 배포했습니다.
.xml 응답 파일을 채웠으므로 배포된 멀티캐스트 이미지가 OU(조직 단위) 설치에 결합되고 최종 스크립팅을 위해 GPO를 적용하고 OU 설치에서 벗어났습니다.
이렇게 하면 워크스테이션의 이름을 올바른 이름으로 바꾸고 올바른 OU에 배치하기만 하면 됩니다.