최근 Windows 10 빌드에는 매핑된 네트워크 드라이브가 부팅 시 자동으로 다시 연결되지 않는 버그가 있습니다. 로그인 후 파일 탐색기를 열면 매핑된 네트워크 드라이브 아이콘에 붉은 십자(X) 표시가 나타나며, 명령 프롬프트에서 net use 명령을 실행하면 모든 매핑된 드라이브 앞에 사용 불가(Unavailable) 상태가 표시됩니다. 이 문제는 사용자가 직접 매핑한 네트워크 드라이브와 그룹 정책(GPO)으로 연결한 드라이브 모두에서 발생합니다.
이 문제는 Windows 10 1809 버전에서 처음 나타났으며, 이후 2004를 포함한 최신 빌드에서도 여전히 발생하고 있습니다.
Windows 10에서 매핑된 네트워크 드라이브 재연결 문제
Windows 10은 어떤 이유로든 장치를 재시작한 후 네트워크 드라이브의 자동 매핑을 중단합니다. 매핑된 네트워크 드라이브는 파일 탐색기에는 표시되지만 실제로 연결할 수는 없습니다.
이 경우 알림 영역에 다음과 같은 경고 팝업이 나타납니다.
모든 네트워크 드라이브를 다시 연결할 수 없습니다.
여기를 클릭하여 네트워크 드라이브 상태를 확인하세요.
이 문제는 NAS 장치에서 연결한 매핑 드라이브뿐만 아니라 다른 Windows/Linux 컴퓨터의 공유 폴더에서도 발생합니다. Microsoft는 2018년 12월 5일 배포된 KB469342 업데이트로 이 문제를 수정했다고 밝혔지만(Windows 장치 시작 및 로그온 후 매핑된 드라이브가 다시 연결되지 않는 문제 해결), 최신 Windows 10 빌드에서도 동일한 증상이 계속 나타납니다. 해당 업데이트는 Microsoft Update Catalog에서 수동으로 다운로드하여 설치할 수 있습니다.
Microsoft는 또한 KB4471218 문서(Windows 10 버전 1809에서 매핑된 네트워크 드라이브가 다시 연결되지 않을 수 있음)를 통해 임시 해결책을 제공합니다. 이 방법은 사용자 로그온 시 PowerShell 스크립트를 실행하는 것이며, 네트워크 드라이브가 그룹 정책으로 연결된 경우 GPO 설정을 변경해야 합니다.
PowerShell 스크립트로 매핑된 네트워크 드라이브 자동 재연결
PowerShell 스크립트를 사용하여 사용자가 Windows에 로그온할 때 매핑된 네트워크 드라이브를 자동으로 다시 연결하는 방법을 살펴보겠습니다.
메모장(notepad.exe)을 실행하고 아래 PowerShell 코드를 복사한 뒤, C:\PS 디렉터리에 MapDrives.ps1 이름으로 저장합니다.
$i=3
while($True){
$error.clear()
$MappedDrives = Get-SmbMapping |where -property Status -Value Unavailable -EQ | select LocalPath,RemotePath
foreach( $MappedDrive in $MappedDrives)
{
try {
New-SmbMapping -LocalPath $MappedDrive.LocalPath -RemotePath $MappedDrive.RemotePath -Persistent $True
} catch {
Write-Host "Shared folder connection error: $MappedDrive.RemotePath to drive $MappedDrive.LocalPath"
}
}
$i = $i - 1
if($error.Count -eq 0 -Or $i -eq 0) {break}
Start-Sleep -Seconds 30
}이 스크립트는 접근할 수 없는 모든 매핑된 드라이브를 선택하여 영구(persistent) 모드로 다시 연결을 시도합니다.
다음으로 아래 코드를 담은 MapDrives.cmd 배치 파일을 생성합니다.PowerShell -Command "Set-ExecutionPolicy -Scope CurrentUser Unrestricted" >> "%TEMP%\StartupLog.txt" 2>&1
PowerShell -File "%SystemDrive%\PS\MapDrives.ps1" >> "%TEMP%\StartupLog.txt" 2>&1
이 코드는 PowerShell 실행 정책 제한을 우회하여 위에서 만든 PS1 스크립트를 실행할 수 있게 합니다. MapDrives.cmd 파일을 %ProgramData%\Microsoft\Windows\Start Menu\Programs\StartUp 폴더에 복사하면 사용자 시작 프로그램으로 등록됩니다.
또는 예약 작업(Scheduled Task)을 생성하여 사용자 로그온 시 MapDrives.cmd 파일이 실행되도록 설정할 수도 있습니다. 예약 작업은 PowerShell이나 작업 스케줄러 GUI 콘솔(Taskschd.msc)에서 생성할 수 있습니다.
- 새 작업을 생성하고 이름(예: reMapNetworkDrives)을 지정한 후, 작업이 Builtin\Users 그룹 계정으로 실행되도록 설정합니다.
- 트리거 탭에서 모든 사용자가 시스템에 로그온할 때 작업이 실행되도록 선택합니다(로그온 시 -> 모든 사용자).
- 동작 탭의 프로그램/스크립트 필드에 MapDrives.cmd 파일의 경로를 지정합니다.
- 조건 탭에서 네트워크 옵션의 '다음 네트워크 연결이 가능한 경우에만 시작' -> '모든 연결'을 활성화하면 좋습니다.
- 컴퓨터를 재부팅하거나 로그오프/로그인합니다. 사용자가 로그인하면 스크립트가 실행되어 모든 매핑된 드라이브 연결이 다시 생성됩니다.
참고로 기본적으로 관리자 권한(승격된 모드)에서 연결한 네트워크 드라이브는 일반 모드에서 사용할 수 없으며 그 반대도 마찬가지입니다. 이 문제는 별도의 설정으로 해결할 수 있습니다.
GPO를 통한 매핑 드라이브 자동 재연결
도메인 그룹 정책을 사용해 사용자에게 네트워크 드라이브를 매핑하는 경우, 드라이브가 올바르게 연결되도록 정책 설정을 변경해야 합니다.
드라이브를 연결하는 GPO를 열고 사용자 구성 -> 기본 설정 -> Windows 설정 -> 드라이브 매핊 섹션에서 해당 네트워크 드라이브 할당 정책을 찾아 동작(Action) 유형을 '업데이트(Update)'에서 '바꾸기(Replace)'로 변경합니다.
클라이언트에서 그룹 정책 설정이 갱신되면, 사용자가 로그온할 때마다 매핑된 네트워크 드라이브가 삭제된 후 다시 연결됩니다.
Windows 10 2004(20H2)에서 매핑된 네트워크 드라이브 재연결 실패
네트워크 드라이브 매핑 문제는 Windows 10 2004(빌드 20H2)에서도 발생합니다. 특히 SMBv1 프로토콜만 지원하는 구형 네트워크 장치(Windows XP/2003, 구형 NAS 등)에서 연결한 드라이브에서 문제가 나타납니다.
이 문제를 해결하려면 매핑된 네트워크 드라이브마다 사용자 레지스트리에 ProviderFlags=1 값을 추가해야 합니다.
예를 들어 사용자 세션에 U: 드라이브가 매핑되어 있다면, 레지스트리 키 HKEY_CURRENT_USER\Network\U로 이동하여 값이 1인 ProviderFlags라는 이름의 DWORD 값을 생성합니다.
또는 다음 명령을 실행할 수 있습니다.
REG ADD "HKCU\Network\U" /v "ProviderFlags" /t REG_DWORD /d "1" /fGPO로 네트워크 드라이브 매핑 지연 설정
Windows는 네트워크 인터페이스가 완전히 초기화되기 전에 사용자 로그온 시점에 네트워크 드라이브 재연결을 시도할 수 있습니다. 네트워크가 완전히 활성화될 때까지 매핑된 드라이브가 연결되지 않도록 하려면 특정 그룹 정책 설정을 구성하면 됩니다.
이 설정은 로컬 그룹 정책 편집기(gpedit.msc) 또는 도메인 GPO 편집기(gpmc.msc)에서 구성할 수 있습니다. 컴퓨터 구성 -> 관리 템플릿 -> 시스템 -> 로그온으로 이동하여 '컴퓨터 시작 및 로그온 시 항상 네트워크 대기' 정책을 사용으로 설정합니다.
설정 후 컴퓨터를 재부팅합니다.
또한 컴퓨터 부팅(또는 최대 절전/절전 모드 종료) 후 로그인하기 전에 약 15초 정도 기다리는 것만으로도 문제를 해결할 수 있습니다. 이 시간이면 Windows가 네트워크를 초기화하기에 충분합니다.
'모든 네트워크 드라이브를 다시 연결할 수 없습니다' 알림 비활성화
회사 네트워크에 있지 않은 컴퓨터(네트워크 드라이브가 원래 사용 불가능한 환경)에서 Windows가 부팅될 때마다 '모든 네트워크 드라이브를 다시 연결할 수 없습니다' 알림이 거슬린다면 이 알림을 비활성화할 수 있습니다.
이렇게 하려면 레지스트리 키 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider로 이동하여 이름이 RestoreConnection이고 값이 0인 새 DWORD 매개변수를 생성합니다.