Microsoft MVP성태의 닷넷 이야기
기타: 48. NVidia 제품의 과다한 디스크 사용 [링크 복사], [링크+제목 복사],
조회: 27370
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

NVidia 제품의 과다한 디스크 사용

NVidia GeForce 제품을 사용하고 있는데, 디바이스 드라이버 설치 관련해서 꽤나 용량을 차지하고 있습니다.

C:\NVIDIA\DisplayDriver 
C:\ProgramData\NVIDIA Corporation\NetService
C:\Program Files\NVIDIA Corporation\Installer2
%LOCALAPPDATA%\Temp\NVIDIA

위의 4개 폴더 용량을 합치면 거의 4GB 육박합니다. 저는 위의 4개 폴더 자체는 삭제하지 않고 그 하위의 내용을 모두 삭제해서 4GB 용량을 확보했습니다.

혹시... 이거 지워도 괜찮은가??? 하시는 분들은 다음의 문서를 보시면 도움이 될 것입니다.

Disk Space Used When Installing NVIDIA Drivers
; http://nvidia.custhelp.com/app/answers/detail/a_id/3333/~/disk-space-used-when-installing-nvidia-drivers

위의 공식 문서에서는 Installer2 폴더의 경우 "Custom Installation"에서 "Perform Clean Install" 옵션으로 새로운 드라이버를 설치하면 기존 Installer2의 내용이 삭제된다고 하는데, 직접 해봤지만 그다지 깨끗하게 삭제되지는 않았습니다.

좀 더 검색해 보니 다음의 글이 나오는데요.

Cleaning up old NVIDIA driver files to save disk space
; http://www.gameplayinside.com/optimize/cleaning-up-old-nvidia-driver-files-to-save-disk-space/

(위의 덧글을 보면 5~6GB까지 확보했다는 의견도 있습니다.)

그냥 삭제해도 되는 식으로 이야기를 쓰고 있습니다. 어쨌든, 공식 문서가 아니므로 불안하지만... 제 경우에는 삭제하는 것으로 결정하고 모험을 시도해봤습니다. ^^ (일단, 지운 상태로는 아무런 이상이 없습니다. 나중에 세월 지나서 문제가 발생할지는 모르지만. ^^)


다음은 이를 자동으로 삭제해 주는 Powershell 스크립트입니다.
cls

$basePath = "C:\\NVIDIA\\DisplayDriver", "C:\\ProgramData\\NVIDIA Corporation\\NetService", "C:\\Program Files\\NVIDIA Corporation\\Installer2", "%USERPROFILE%\\AppData\\Local\\Temp\\NVIDIA"


ForEach ($dir in $basePath)
{
    $expandedDir = [System.Environment]::ExpandEnvironmentVariables($dir)

    If ([System.IO.Directory]::Exists($expandedDir) -eq $false)
    {
        Continue
    }

    $files = Get-ChildItem -Name -Path $expandedDir | sort Name


    ForEach ($file in $files)
    {
        If ($file -eq "NvNetService.log")
        {
            Continue
        }

        $fullPath = [System.IO.Path]::Combine($expandedDir, $file)
        Remove-Item $fullPath -Force -Recurse
    }
}


[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/10/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2014-09-23 04시23분
[에메] 네, 지워도 관계없습니다. 몇몇 임시 파일의 경우 드라이버 복구 (Repair) 기능을 이용할 때 사용되는데, 이 기능을 이용하지 않고 드라이버를 다시 받아서 설치하는 방법이 있기 때문에 큰 문제는 아닙니다. 최신 버전의 드라이버 패키지들은 임시 파일을 최대한 빨리 삭제할 수 있도록 수정되었고 남은 부분도 추가적으로 수정될 예정입니다.
[guest]
2014-09-24 12시23분
에매님 확인 감사드립니다. ^^
정성태

... 61  62  63  64  65  66  67  68  69  70  71  72  [73]  74  75  ...
NoWriterDateCnt.TitleFile(s)
12111정성태1/12/202020542디버깅 기술: 155. C# - KernelMemoryIO 드라이버를 이용해 실행 프로그램을 숨기는 방법(DKOM: Direct Kernel Object Modification) [16]파일 다운로드1
12110정성태1/11/202019852디버깅 기술: 154. Patch Guard로 인해 블루 스크린(BSOD)가 발생하는 사례 [5]파일 다운로드1
12109정성태1/10/202016585오류 유형: 588. Driver 프로젝트 빌드 오류 - Inf2Cat error -2: "Inf2Cat, signability test failed."
12108정성태1/10/202017424오류 유형: 587. Kernel Driver 시작 시 127(The specified procedure could not be found.) 오류 메시지 발생
12107정성태1/10/202018604.NET Framework: 877. C# - 프로세스의 모든 핸들을 열람 - 두 번째 이야기
12106정성태1/8/202019641VC++: 136. C++ - OSR Driver Loader와 같은 Legacy 커널 드라이버 설치 프로그램 제작 [1]
12105정성태1/8/202018141디버깅 기술: 153. C# - PEB를 조작해 로드된 DLL을 숨기는 방법
12104정성태1/7/202019349DDK: 9. 커널 메모리를 읽고 쓰는 NT Legacy driver와 C# 클라이언트 프로그램 [4]
12103정성태1/7/202022482DDK: 8. Visual Studio 2019 + WDK Legacy Driver 제작- Hello World 예제 [1]파일 다운로드2
12102정성태1/6/202018813디버깅 기술: 152. User 권한(Ring 3)의 프로그램에서 _ETHREAD 주소(및 커널 메모리를 읽을 수 있다면 _EPROCESS 주소) 구하는 방법
12101정성태1/5/202019070.NET Framework: 876. C# - PEB(Process Environment Block)를 통해 로드된 모듈 목록 열람
12100정성태1/3/202016552.NET Framework: 875. .NET 3.5 이하에서 IntPtr.Add 사용
12099정성태1/3/202019419디버깅 기술: 151. Windows 10 - Process Explorer로 확인한 Handle 정보를 windbg에서 조회 [1]
12098정성태1/2/202019168.NET Framework: 874. C# - 커널 구조체의 Offset 값을 하드 코딩하지 않고 사용하는 방법 [3]
12097정성태1/2/202017225디버깅 기술: 150. windbg - Wow64, x86, x64에서의 커널 구조체(예: TEB) 구조체 확인
12096정성태12/30/201919885디버깅 기술: 149. C# - DbgEng.dll을 이용한 간단한 디버거 제작 [1]
12095정성태12/27/201921599VC++: 135. C++ - string_view의 동작 방식
12094정성태12/26/201919343.NET Framework: 873. C# - 코드를 통해 PDB 심벌 파일 다운로드 방법
12093정성태12/26/201918912.NET Framework: 872. C# - 로딩된 Native DLL의 export 함수 목록 출력파일 다운로드1
12092정성태12/25/201917667디버깅 기술: 148. cdb.exe를 이용해 (ntdll.dll 등에 정의된) 커널 구조체 출력하는 방법
12091정성태12/25/201919973디버깅 기술: 147. pdb 파일을 다운로드하기 위한 symchk.exe 실행에 필요한 최소 파일 [1]
12090정성태12/24/201920085.NET Framework: 871. .NET AnyCPU로 빌드된 PE 헤더의 로딩 전/후 차이점 [1]파일 다운로드1
12089정성태12/23/201919038디버깅 기술: 146. gflags와 _CrtIsMemoryBlock을 이용한 Heap 메모리 손상 여부 체크
12088정성태12/23/201917976Linux: 28. Linux - 윈도우의 "Run as different user" 기능을 shell에서 실행하는 방법
12087정성태12/21/201918448디버깅 기술: 145. windbg/sos - Dictionary의 entries 배열 내용을 모두 덤프하는 방법 (do_hashtable.py) [1]
12086정성태12/20/201920972디버깅 기술: 144. windbg - Marshal.FreeHGlobal에서 발생한 덤프 분석 사례
... 61  62  63  64  65  66  67  68  69  70  71  72  [73]  74  75  ...