디바이스 드라이버 패키지

이미지를 배포하기 전, 도중 또는 배포한 후에 Windows 이미지에 드라이버 패키지를 추가할 수 있습니다. Windows 배포에 드라이버 패키지를 추가하는 방법을 계획할 때는 드라이버 패키지가 이미지에 추가되는 방법, 드라이버 순위가 배포에 미치는 영향 및 드라이버 패키지에 대한 디지털 서명 요구 사항을 이해하는 것이 중요합니다.

드라이버 패키지 추가

Windows 이미지에 드라이버 패키지를 추가할 수 있습니다.

자세한 내용은 서비스 전략 이해를 참조하세요.

DISM을 사용하여 오프라인 Windows 이미지에 배포하기 전에 드라이버 패키지 추가

오프라인 서비스 운영 체제를 부팅하지 않고 완전히 오프라인으로 Windows 이미지를 수정할 때 발생합니다. DISM 명령줄 도구를 사용하여 오프라인 Windows 이미지에서 드라이버 패키지를 추가, 제거 및 열거할 수 있습니다. DISM은 Windows 함께 설치되며 Windows ADK(Windows 평가 및 배포 키트)에도 배포됩니다. DISM에 대한 자세한 내용은 DISM - Windows 배포 이미지 서비스 및 관리 기술 참조를 참조하세요.

오프라인 이미지에 드라이버 패키지를 추가하면 드라이버 패키지가 준비되거나 이미지에 반영됩니다.

  • 부팅에 중요한 드라이버 패키지가 반영됩니다. 즉, 드라이버 저장소에 추가된 다음 파일의 대상으로 .inf 파일에 지정된 내용에 따라 파일이 이미지에 복사됩니다. 시스템은 레지스트리 업데이트를 포함하여 초기 부팅 중에 설치 작업을 완료합니다.

  • 부팅에 중요하지 않은 드라이버 패키지가 준비됩니다. 즉, 드라이버 저장소에 추가됩니다. Windows 시작한 후 PnP는 디바이스를 검색하고 드라이버 저장소에서 일치하는 드라이버 패키지를 설치합니다.

DISM 명령을 사용하여 탑재되거나 적용된 Windows Windows 또는 Windows PE(사전 설치 환경) 이미지에서 드라이버 패키지를 추가하거나 제거할 수 있습니다.

참고

일부 네트워크 드라이버를 제외하고DISM을 사용하여 받은 편지함 드라이버 패키지(기본적으로 Windows 설치된 드라이버 패키지)를 제거할 수 없습니다. 타사 또는 첫 번째 드라이버 패키지를 제거하는 데만 사용할 수 있습니다.

DISM 명령을 사용하여 탑재되거나 적용된 Windows 이미지에 무인 응답 파일을 적용할 수도 있습니다.

자세한 내용은 오프라인 Windows 이미지에 드라이버 추가 및 제거를 참조하세요.

DISM을 사용하는 경우 오프라인 Windows 이미지에 .inf 드라이버 패키지만 추가할 수 있습니다. Windows용으로 디자인된 로고를 표시하는 드라이버 패키지는 .cab 파일로 제공됩니다. 설치에 DISM을 사용하는 경우 .inf 파일을 설치하기 전에 .cab 파일을 확장해야 합니다. 실행 중인 Windows 운영 체제에 .exe 파일 또는 다른 파일 형식으로 패키지된 드라이버 패키지를 설치해야 합니다. .exe 또는 .msi(Windows Installer) 드라이버 패키지를 실행하려면 응답 파일에 사용자 지정 명령을 추가하여 드라이버 패키지를 설치할 수 있습니다. 자세한 내용은 응답 파일에 사용자 지정 명령 추가를 참조하세요.

Windows 설치 프로그램 및 응답 파일을 사용하여 자동화된 배포 중에 드라이버 패키지 추가

무인 응답 파일을 사용하여 배포에 Windows 설치 프로그램을 사용할 때 드라이버 패키지를 이미지에 추가할 수 있습니다. 이 응답 파일에서 네트워크 공유(또는 로컬 경로)에서 드라이버 패키지의 경로를 지정할 수 있습니다. Microsoft-Windows-PnpCustomizationWinPE 또는 Microsoft-Windows-PnpCustomizationNonWinPE 구성 요소를 추가하고 설치할 구성 패스를 지정하여 이 작업을 수행합니다. Windows 설치 프로그램을 실행하고 응답 파일의 이름을 지정하면 기본 드라이버 패키지가 준비되고(이미지의 드라이버 저장소에 추가) 부팅에 중요한 드라이버 패키지가 반영됩니다(컴퓨터가 부팅될 때 사용할 수 있도록 이미지에 추가). 설치 프로그램에서 응답 파일을 사용합니다. windowsPE 또는 오프라인서비스 구성 패스 중에 드라이버 패키지를 추가하면 컴퓨터가 시작되기 전에 Windows 이미지에 첫 번째 드라이버 패키지를 추가할 수 있습니다. 이 메서드를 사용하여 부팅에 중요한 드라이버 패키지를 Windows 이미지에 추가할 수도 있습니다. 자세한 내용은 Windows 설치 중 Windows 디바이스 드라이버 추가를 참조하세요. Windows 설치의 작동 방식에 대한 자세한 내용은 Windows 설치 기술 참조를 참조하세요.

부팅에 중요한 드라이버 패키지를 Windows PE에 추가하려면 windowsPE 구성 패스를 사용하여 Windows PE 이미지를 부팅하기 전에 드라이버 패키지를 반영합니다. windowsPE 구성 패스 중에 부팅에 중요한 드라이버 패키지를 추가하고 오프라인Servicing 구성 패스 중에 추가하는 경우의 차이점은 windowsPE 구성 패스 중에 부팅에 중요한 드라이버 패키지가 Windows PE에서 사용할 수 있도록 반영된다는 점입니다. offlineServicing 구성을 전달하는 동안 드라이버 패키지는 Windows 이미지의 드라이버 저장소에 준비됩니다.

Windows 설치 프로그램을 사용하여 드라이버 패키지를 추가하는 방법은 다음과 같습니다.

  • 설치 프로그램의 오프라인서비스 구성 패스 중에 응답 파일을 사용하여 드라이버 패키지를 추가합니다.
  • 설치 프로그램의 windowsPE 구성 패스 중에 응답 파일을 사용하여 드라이버 패키지를 추가합니다.
  • Windows Server의 경우 설치 프로그램의 windowsPE 구성 패스 중에 자동으로 설치될 $WinPEDriver$ 디렉터리에 드라이버 패키지를 배치합니다. 값이 C 이상인 모든 드라이브 문자는 $WinPEDriver$ 디렉터리에 대해 검색됩니다. 설치하는 동안 하드 디스크에서 드라이브에 액세스할 수 있어야 합니다. 드라이브에 액세스하기 전에 스토리지 드라이버를 로드할 필요가 없는지 확인합니다.

이러한 구성 패스 및 기타 구성 패스에 대한 자세한 내용은 Windows 설치 구성 전달을 참조하세요.

Windows Server에서 배포에 Windows 배포 서비스를 사용하는 경우 서버에 드라이버 패키지를 추가하고 네트워크 기반 설치의 일부로 클라이언트에 배포하도록 구성할 수 있습니다. 서버에 드라이버 그룹을 만들고, 여기에 패키지를 추가한 다음, 필터를 추가하여 해당 드라이버 패키지를 설치할 클라이언트를 정의하여 이 기능을 구성합니다. 클라이언트의 하드웨어(예: 제조업체 또는 BIOS 공급업체) 및 설치 중에 선택된 Windows 이미지 버전을 기반으로 드라이버 패키지를 설치하도록 구성할 수 있습니다. 클라이언트가 드라이버 그룹의 모든 패키지를 설치할지 아니면 클라이언트에 설치된 하드웨어와 일치하는 드라이버 패키지만 설치할지 구성할 수도 있습니다. 이 기능을 구현하는 방법에 대한 자세한 내용은 Windows Deployment Services 설명서를 참조하세요.

PnPUtil 또는 응답 파일을 사용하여 실행 중인 운영 체제에서 배포 후 드라이버 패키지 추가

PnPUtil 도구를 사용하여 실행 중인 운영 체제에서 드라이버 패키지를 추가하거나 제거할 수 있습니다. 또는 응답 파일을 사용하여 컴퓨터가 감사 모드로 부팅될 때 드라이버 패키지 설치를 자동화할 수 있습니다. 이러한 메서드는 간단한 Windows 이미지를 유지 관리한 다음 특정 하드웨어 구성에 필요한 드라이버 패키지만 추가하려는 경우에 유용할 수 있습니다. 감사 모드를 사용하는 방법에 대한 자세한 내용은 감사 모드로 부팅 Windows 또는 OOBE를참조하세요.

실행 중인 운영 체제에 온라인 드라이버 패키지를 추가하는 방법은 다음과 같습니다.

S 모드용 드라이버 패키지

Windows S 모드의 드라이버 패키지는 특정 요구 사항을 충족해야 합니다. S 모드에서 Windows 추가할 수 있는 드라이버 패키지 유형에 대한 자세한 내용은 Windows 10 S 드라이버 요구 사항을 참조하세요.

드라이버 폴더 관리

여러 드라이버 패키지를 추가하는 경우 각 드라이버 패키지 또는 드라이버 패키지 범주에 대한 원본 위치에 별도의 폴더를 만들어야 합니다. 이렇게 하면 동일한 파일 이름을 가진 드라이버 패키지를 추가할 때 충돌이 발생하지 않습니다. 운영 체제에 드라이버 패키지가 설치되면 운영 체제에서 고유한 파일 이름을 보장하기 위해 이름이 Oem*.inf로 바뀝니다. 예를 들어 MyDriver1.inf 및 MyDriver2.inf라는 준비된 드라이버는 설치된 후 Oem0.inf 및 Oem1.inf로 이름을 바꿀 수 있습니다.

응답 파일에서 디바이스 드라이버 경로를 지정하면 지정된 디렉터리 및 하위 디렉터리에 있는 모든 .inf 드라이버 패키지가 Windows 이미지의 드라이버 저장소에 추가됩니다. 예를 들어 C:\MyDrivers\Networking, C:\MyDrivers\Video 및 C:\MyDrivers\Audio 디렉터리에 있는 모든 드라이버 패키지를 Windows 이미지에서 사용할 수 있도록 하려면 응답 파일에서 디바이스 드라이버 경로 C:\MyDrivers를 지정합니다. 응답 파일을 사용하지 않는 경우 DISM에서 /recurse 명령을 사용할 수 있습니다. /recurse 명령에 대한 자세한 내용은 DISM 드라이버 서비스 Command-Line 옵션을 참조하세요. 이 명령은 각 하위 Windows 이미지의 드라이버 저장소에 모든 드라이버 패키지가 추가되도록 합니다.

지정된 디렉터리 및 하위 디렉터리에 있는 모든 드라이버 패키지가 이미지에 추가되는 경우 응답 파일 또는 DISM 명령과 이러한 디렉터리를 신중하게 관리해야 합니다. 불필요한 드라이버 패키지를 통해 이미지 크기를 늘리는 것에 대한 문제를 해결하기 위해 최선을 다하세요.

드라이버 순위 이해

드라이버 패키지를 성공적으로 드라이버 저장소로 가져올 때 드라이버 패키지를 배포할 때 발생하는 가장 일반적인 문제 중 하나이지만, 시스템이 온라인이 되면 PnP는 순위가 더 좋은 드라이버를 찾아 해당 드라이버를 대신 설치합니다.

Windows PnP 관리자는 중요도에 따라 이러한 드라이버 패키지 속성의 순위를 매길 수 있습니다.

  1. 서명
  2. PnP ID 일치
  3. 드라이버 날짜
  4. 드라이버 버전

예를 들어 드라이버 패키지의 PnP ID 일치가 더 좋지만 서명되지 않은 경우 호환 ID 일치가 있는 서명된 드라이버 패키지가 우선적으로 적용됩니다. 이전 드라이버 패키지의 PnP ID 일치 또는 서명이 더 나은 경우 이전 드라이버 패키지는 최신 드라이버 패키지보다 앞설 수 있습니다.

드라이버 패키지 순위에 대한 자세한 내용은 드라이버 순위를 Windows 방법을 참조하세요.

디지털 서명 요구 사항 이해

서명된 드라이버 패키지는 Windows 주요 보안 기능입니다. x64 기반 컴퓨터에 설치된 드라이버 패키지에는 디지털 서명이 있어야 합니다. 필수는 아니지만 x86 기반 컴퓨터에 설치하기 전에 드라이버 패키지에 서명하는 것이 좋습니다.

모든 부팅에 중요 한 드라이버 이진 파일에는 포함 된 서명이 포함 되어야 합니다. 예를 들어 커널 모드는 부팅 디스크에 액세스 하는 데 중요 한 파일을 .sys 합니다.

드라이버 이진 파일에 서명 하는 방법에는 다음 두 가지가 있습니다.

  • 부팅에 중요 한 커널 모드 드라이버 이진 파일은 포함 된 서명 이라는 메서드를 통해 디지털 서명 됩니다. 포함 된 서명은 부팅 로드 성능을 향상 시킵니다. PnP 드라이버 패키지의 일부가 아닌 드라이버 이진 파일의 경우 운영 체제를 업그레이드 하는 동안 서명이 손실 되지 않도록 서명을 포함 해야 합니다.

  • 디지털 서명 된 PnP 드라이버 패키지에는 디지털 서명 된 카탈로그 (.cat) 파일이 포함 되어 있습니다. 카탈로그 파일에는 설치를 위한 드라이버 패키지의 .inf 파일에 있는 모든 파일의 해시가 포함 되어 있습니다. 서명 된 카탈로그 파일은 대부분의 PnP 드라이버 패키지를 올바르게 설치 하는 데 필요 합니다.

이러한 원본 중 하나는 드라이버 패키지에 서명할 수 있습니다.

  • WHQL (하드웨어 품질 실습)을 Windows 하 여 드라이버 패키지가 Windows 하드웨어 인증 프로그램을 사용 하도록 합니다. WHQL은 서명 된 드라이버 패키지 카탈로그를 만듭니다. 부팅에 중요 한 드라이버 이진 파일의 경우 카탈로그에 의존 하는 대신 포함 된 서명을 추가 해야 합니다. 부팅에 중요 한 드라이버 이진 파일의 포함 된 서명 운영 체제 로더에서 드라이버 서명을 확인할 때 적절 한 카탈로그 파일을 찾을 필요 없이 운영 체제의 부팅 성능을 최적화 합니다.

  • SPC (소프트웨어 게시 인증서)를 사용 하는 CA (인증 기관) 부팅-중요 및 x64 기반 커널 드라이버 이진 파일의 경우 Microsoft는 드라이버 이진 파일의 교차 서명에 사용할 수 있는 추가 인증서를 제공 합니다. 부팅에 중요 하지 않은 드라이버 이진 파일은 Microsoft 또는 embedded에서 상호 서명 하지 않아도 됩니다. 드라이버 이진 파일에 직접 서명할 수 있는 유연성이 필요한 경우 Windows 커널 모드 코드 서명 프로세스를 사용할 수 있습니다. X64 기반 시스템에서 커널 모듈의 디지털 서명에 대 한 자세한 내용은 64 비트 드라이버 지침을 참조 하십시오.

테스트를 위해 테스트 인증서를 사용할 수도 있습니다.

테스트용 공급 업체에서 서명 되지 않은 드라이버 패키지를 받은 경우 테스트 서명을 사용 하 여 드라이버 패키지의 유효성을 검사 하 고 설치를 테스트할 수 있습니다. 테스트 서명은 테스트 환경의 범위 에서만 신뢰 되는 개인 키와 해당 코드 서명 인증서를 사용 하 여 응용 프로그램에 디지털 서명 하는 동작입니다.

이러한 테스트 서명 인증서를 생성 하는 기본 방법은 다음과 같습니다.

  • 개발자는 자체 서명 된 인증서를 직접 생성할 수 있습니다.
  • CA는 인증서를 발급할 수 있습니다.

어떤 옵션을 선택 하 든 테스트에 서명 인증서를 명확 하 게 식별 해야 합니다. 예를 들어 "test" 라는 단어는 인증서 주체 이름에 포함 될 수 있으며 추가 법적 고 지는 인증서에 포함 될 수 있습니다. 상용 Ca에서 발급 한 프로덕션 인증서는 공개 베타 릴리스와 소프트웨어 및 내부 lob (기간 업무) 소프트웨어의 공용 최종 릴리스에만 서명 하도록 예약 되어야 합니다.

자세한 내용은 장치 드라이버 서명 및 준비에 대 한 요구 사항을 참조 하세요.

Windows에 테스트 서명 된 드라이버 패키지를 추가 하는 경우 다음 사항을 고려 하세요.

  • 실행 중인 운영 체제에 테스트 인증서를 설치 해야 합니다. 오프 라인으로 설치할 수 없습니다.

  • 테스트 인증서를 발급 한 CA의 인증서는 신뢰할 수 있는 루트 인증 기관 인증서 저장소에 삽입 되어야 합니다.

    두고 테스트 인증서가 자체 서명 된 경우 — , 예를 들어, 인증서 생성 도구 (makecert.exe)를 사용 하 여 — 테스트 인증서를 신뢰할 수 있는 루트 인증 기관 인증서 저장소에 삽입 해야 합니다.

  • 드라이버 패키지에 서명 하는 데 사용 되는 테스트 인증서는 신뢰할 수 있는 게시자 인증서 저장소에 삽입 되어야 합니다.

  • DISM (배포 이미지 서비스 및 관리) 명령줄 도구를 사용 하 여 오프 라인에서 테스트 서명 된 드라이버 패키지를 추가 하려면 먼저 테스트 인증서를 Windows 이미지의 부팅 된 인스턴스에 온라인으로 추가 해야 합니다.

  • DISM은 부팅에 중요 한 드라이버 패키지에 대해서만 WHQL 인증의 유효성을 검사 합니다. 그러나 DISM 명령줄 옵션은이 동작을 재정의할 수 있습니다. 자세한 내용은 DISM 드라이버 서비스 Command-Line 옵션을 참조 하세요.

  • 64 비트 운영 체제에서 테스트 서명 된 드라이버 패키지를 설치 하 고 확인 하려면 대상 컴퓨터에서 BCDedit 도구를 사용 하 여 Windows 부팅 구성을 테스트 모드로 설정 합니다. 테스트 모드는 드라이버 이미지가 서명 되었는지 확인 하지만 인증서 경로 유효성 검사에서는 발급자를 신뢰할 수 있는 루트 인증 기관으로 구성할 필요가 없습니다. 드라이버 패키지를 올바르게 처리 하는 PnP 드라이버 설치 및 순위 논리의 경우 테스트 인증서를 운영 체제 이미지의 신뢰할 수 있는 인증서 저장소에 저장 해야 합니다. 개발 중 테스트 모드에 대 한 자세한 내용은 64 비트 드라이버 지침을 참조 하세요.

주의

X64 기반 컴퓨터에 서명 되지 않거나 잘못 된 부팅 중요 드라이버 패키지가 설치 된 경우 컴퓨터가 부팅 되지 않습니다. 서명 되지 않거나 잘못 된 부팅 중요 드라이버 패키지는 중지 오류를 발생 시킵니다. 이미지에서 드라이버 패키지를 제거 해야 합니다. 업그레이드를 수행 하는 경우 서명 되지 않은 드라이버 패키지 및 연결 된 응용 프로그램, 서비스 또는 장치가 서명 된 드라이버 패키지를 사용 하 여 제거 되거나 업데이트 되는지 확인 합니다.

BCDedit를 사용 하 여 테스트 모드를 사용 하도록 설정 하지 않고 테스트 서명 된 드라이버 패키지를 설치한 경우 컴퓨터가 부팅 되지 않습니다. DISM을 사용 하 여 드라이버 패키지를 제거 하면 반영 된 드라이버 패키지의 모든 인스턴스가 제거 되지 않을 수 있습니다. 따라서 테스트 서명 된 드라이버 패키지가 설치 된 이미지는 배포 하지 않는 것이 좋습니다.

추가 리소스

이러한 웹 사이트는 드라이버 패키지 요구 사항에 대 한 자세한 정보를 제공 합니다.

응답 파일에 장치 드라이버 경로 추가

감사 모드에서 온라인으로 드라이버 추가

DISM 드라이버 서비스 Command-Line 옵션

오프 라인 Windows 이미지에 드라이버 추가 및 제거

Windows 설치 프로그램 중 Windows에 장치 드라이버 추가

Windows 이미지를 캡처할 때 드라이버 구성 유지

BCDboot Command-Line 옵션

배포 문제 해결 및 로그 파일