개발자를 위한 Windows 11 설정
- updated 2022.08.31
- Windows 11 TPM 2.0 회피 관련 추가
- updated 2022.03.15: 오타수정 및 관련 패키지 업데이트
- Visual Studio 2022로 업데이트, 제조사 드라이버 업데이트 관련 추가
- updated 2021.10.21: 오타수정 및 기사 관련 테스터들의 의견 반영
- IBM 폰트 추가, Visual Studio 설치 이후에 CUDA 및 cuDNN 설치
Windows 11 설치
Windows에서 개발 환경을 처음 구성하시는 분들을 위해 간단한 글을 작성하였습니다. 운영체제 설치 및 업데이트, 업그레이드에 앞서서 언제나 그렇듯이 사용하시던 시스템에 저장된 개인 데이터 및 환경 설정 관련 정보를 '철저'하고 '안전'하게 백업을 해두시길 권합니다. Dropbox, Google Drive 혹은 OneDrive의 동기화가 최신으로 되어 있는지 확인하세요. 백업이 완료 되셨나요? 그럼 시작해보죠!
Clean Install을 위한 설치 USB 만들기
설치에 앞서
-
Windows 11
(21H1/22000.856, 이하윈도우11
)을 설치하기 위해선 먼저 하드웨어 사양을 확인해야 합니다. 현재 윈도우 11을 설치하기 위한 최소한의 하드웨어 중 여러분이 신경써야 하는 것은TPM(Trusted Platform Module) v2.0
을 지원 여부 입니다.- 사용하시는 하드웨어 제조사의 매뉴얼을 참고하시거나, 조립PC의 경우 메인보드 매뉴얼 또는 BIOS에서 TPM 2.0을 지원하는지 확인해보세요.
- AMD PC의 경우
fTPM
항목을 활성화 하시고, Intel PC의 경우PTT(Platform Trust Technology)
를 활성화 하시면됩니다. - 기타 TPM 관련 사항은 하드웨어 제조사에 문의하세요.
-
TPM v2.0을 지원하신다면 일반적인 설치 방법을 참고하시고, TPM v2.0을 지원하지 않으시면 Rufus를 활용한 사용방법을 참고하세요.
일반적인 설치 방법
- 윈도우11 ISO 파일을 다운로드 하는 방법 중 하나인
Create Windows 11 Installation Media
를 사용해서 USB를 만드시길 권해드립니다.- 8기가 이상의 USB를 준비해주세요.
Windows 11 Installation Media
는 Microsoft의 공식 홈페이지에서 다운로드 하실 수 있습니다.Windows 11 Installation Media
를 사용하면 하드웨어 지원 여부, ISO 다운로드, 설치 USB까지 한번에 진행하실 수 있습니다.
- 윈도우11을 개발 목적으로 사용할 예정이므로 설치할 윈도우는 영문으로 선택하였습니다.
Use the recommended options for this PC
의 선택을 해제하시면언어(Language)
를 선택하실 수 있습니다.
Rufus를 사용한 USB 만들기
-
구형 노트북이나 하드웨어 사용자의 경우
TPM v2.0
을 지원하지 않는 경우도 있습니다. 이 경우 윈도우11 설치시 TPM을 우회하는 방법을 활용하시면 됩니다. TPM 우회를 하기 위해선 조금 번거로운 과정이 있으니 아래 사항을 잘 확인하셔서 진행하시기 바랍니다. -
- 윈도우11을 설치하기 위해선 ISO 파일을 먼저 다운로드 받아야 합니다. ISO 파일은 MS에서 제공하는 공식 사이트에서 [다운로드] 받을 수 있습니다. ISO 파일 다운로드의 경우 MS 공식 사이트가 아닌 곳에서 다운로드 받는 것을 추천드리지 않습니다. 그리고 윈도우는 영문 버전을 사용하세요.
-
- Rufus에서 다운
포터블(portable)
버전을 다운로드하세요.exe
파일을 다운로드 받으면, 설치없이 사용하실 수 있습니다.
- Rufus에서 다운
-
- Rufus를 실행하고, 다운로드 받은 ISO 파일을
Boot selection
옆에 있는SELECT
버튼으로 선택하면 해당 파일 정보가 표시됩니다.Partition scheme
는GPT
로 선택하시고, 하단에 있는START
버튼을 선택하시면 새로운 창이 하나 나옵니다. 해당 창에서Remove requirement for 4GB+ RAM, secure Boot and TPM 2.0'만 선택하시고
OK` 버튼을 선택하시면 TPM 2.0 지원 여부와 상관없이 설치 가능한 USB가 만들어집니다.
- Rufus를 실행하고, 다운로드 받은 ISO 파일을
- 구형 노트북이나 데스크탑이 아닌 경우에는 TPM 2.0을 지원하니 경우가 많으니 무리하게 TPM 2.0을 우회하지 않도록 하세요.
설치 USB를 사용한 부팅
- 윈도우11 설치를 위해 만든 USB를 사용해서 부팅을 진행합니다. 사용하시는 하드웨어 제조사에 따라서 USB로 부팅하는 방법이 다르긴 하지만, 하드웨어 부팅시 단축키를 사용하여 설치 USB로 부팅을 진행할 수 있습니다. 예를 들어, LG 노트북은 컴퓨터 전원 인가 후
F10
키를 사용해서 아래와 같이 부팅시 사용할 미디어를 선택할 수 있습니다.
Windows 11 Clean Install
4가지 주의사항
-
첫째, 설치 언어(
Language to install
)를 'English'로 선택하시고, 시간 및 통화 형식(Time and currency format
)은 'Korean(Korea)'를 선택하세요.- 언어 전환(영문<->한글) 방법 중
Shift + Space
를 사용하시면Korean PC/AT 101-Key Compatible Keyboard (Type 3)
를 선택하세요.
- 언어 전환(영문<->한글) 방법 중
-
둘째, 윈도우11 제품키의 경우 기존에 사용하시던 제품키를 그대로 사용하시면 됩니다. 그리고 제품키가 기억이 안나거나 계정 연동으로 인증을 진행하시는 경우, 제품키 없이 설치 후에 Microsoft 계정을 사용하셔서 인증을 진행하셔도 됩니다.
-
셋째, 윈도우11 버전은
Pro
를 권해드리며,Home
을 사용하신다면 회사에서 사용하지 마시고 개인적인 용도로 사용하셔야 됩니다.- 회사에서 업무용도로 사용하실 경우 관련 라이센스에 관한 내용은 본 기사를 참고하시지 마시고, Microsoft에 꼭 문의하세요.
- 윈도우 구매시
N
이 붙은 버전은No Media
버전으로 미디어 재생 기능을 삭제한 버전입니다. 개발 관련해서 기존 버전과 별다른 차이점이 없으므로N
버전을 구매하셨다면N
버전을 사용하셔도 됩니다.
- 마지막으로, 기존에 사용하시던 파티션을 다 삭제하시고,
New
를 사용해서 새로운 파티션을 만드시면 현재 사용하시는 하드웨어에 가장 적합한 파티션 구성으로 만들어 줍니다(GPT or MBR).- 파티션을 새롭게 만들게 되면 모든 데이터가 삭제되니, 기존 데이터는 꼭 백업을 하셔야 됩니다.
개발 환경 구성
새로운 배경화면의 윈도우 11을 확인하실 수 있습니다. 이제 몇가지 사소하지만 중요한 설정을 진행하도록 하겠습니다.
일반적인 환경 설정
하드웨어 드라이버 설치
-
윈도우11에서 대부분의 하드웨어 드라이버를 다 설치해주긴 하지만, 최신의 하드웨어는 별도의 드라이버를 설치해야 하는 경우가 있습니다. 사용하시는 하드웨어의 드라이버를 다 설정해주세요.
-
하드웨어에 드라이버 설치 관련해서는
Settings
>System
>About
>Device Manager
를 선택하셔서 느낌표로 표시된 장치가 없는지 확인하세요. 느낌표로 표시된 장치가 있으시면 해당 하드웨어의 드라이버를 설치해주세요.
- 하드웨어 드라이버에 관한 문의는 제조사 및 구매처에 하시면 됩니다.
한글 설정
Settings
>Time & language
>Language & region
>Korean
> Options(...
) >Language pack
,Basic typing
,Handwriting
및Speech
를 설치해주세요. 그리고 하단에 위치한Keyboards
에서Microsoft IME
를 선택해주세요. 설치후 재시작이 필요하다면 재시작을 진행해주세요.
- 유니코드로 작성되지 않은 프로그램이 실행 시 출력할 문자를 설정하기 위해서
Settings
>Time & language
>Language & region
>Administrative language settings
>Language for non-Unicode programs
>Korean(Korea)
로 변경하세요.
- 한글 설정(3);
Settings
>Time & language
>Typing
>Advacned keyboard settings
>Korean - Microsoft IME
를 선택하세요.
Windows Update(가장 중요!)
Settings
>Windows Update
를 선택하여 윈도우 11에 필요한 필수적인 업데이트를 반영하세요.
- 설치 후 곧바로 업데이트를 진행하시면 아래와 같이 보안 및 버그 패치를 진행합니다.
Windows Update
는 반드시 하셔야 됩니다. 재부팅이 필요하다면 재부팅을 하셔서 업데이트를 반영하세요.
- 윈도우 업데이트 항목 중에서
Settings > options > Receive updates for otheer Microsoft products
를 활성화(ON
)하시고Optional updates
도 함께 살펴보셔서 필요한 업데이트가 있으시면 진행해주세요.
NVIDIA 그래픽 카드 드라이버 업데이트
- NVIDIA 그래픽 카드를 사용하신다면 NVIDIA 홈페이지에서 최신 드라이버를 다운로드 받아서 설치를 진행해주세요(저는 v516.94 버전을 사용합니다)
CUDA
가 필요해서 윈도우11을 설치해서 개발 환경을 구성하고 있기 때문에 NVIDIA 드라이버를 최신으로 하였습니다. 만약, CUDA를 사용하지 않으시면 그래픽 카드는 사용하시는 소프트웨어나 게임에 최적화된 버전을 설치하셔도 됩니다.
Microsoft Store
- Microsoft Store를 실행 후 업데이트를 진행하시면 잠시 후 새로운 모습의 Microsoft Store가 실행됩니다. 윈도우11에 기본적으로 설치된 App도 함께 업데이트가 진행되니, Store 업데이트를 꼭 진행하세요.
- 좌측 하단의
Library
>Get updates
를 선택해서 현재 설치된 App을 최신버전으로 업데이트 진행해주세요.
기타 설정
Settings
에서 개발에 자주 사용할 몇가지 설정을 진행하세요.- Dark 테마/모드는
Personalization
>Themes
>Current theme
에서 확인 할 수 있습니다. - 시작 프로그램 설정은
Apps
>Startup
에서 확인 할 수 있습니다.
- Dark 테마/모드는
- Desktop의 경우 Power 모드를 설정해서 성능을 확보할 수 있습니다.
Control Panel
>Hardware and Sound
>Power Options
에서 확인 할 수 있습니다.
개발 관련 필수 프로그램 설치
폰트
- D2Coding 폰트 설치
- Github에서
D2Coding-Ver1.3.2-20180524.zip
를 다운로드 받고, 압축을 해제 후D2CodingAll > D2Coding-Ver1.3.2-20180524-all.ttc
를 더블클릭해서 설치(Install)해 주세요.
- Github에서
Visual Studio 관련
Visual Studio 2022 설치
Visual Studio 2022 Community
설치 프로그램을 다운로드 후 실행하세요.C++
관련 패키지를 설치해주시고, 저는C#
을 공부하고 있어서.NET
관련 패키지도 함께 설치하였습니다.
Visual Sutdio Code 설치
- 텍스트 및 Markdown 편집을 위해서 VSCode를 다운로드 받고, 설치를 진행합니다.
CUDA 및 cuDNN 설치
Windows Terminal
>nvidia-smi.exe
를 사용해서 CUDA 버전을 확인하고, 해당 버전에 맞게 CUDA 및 cuDNN 드라이버 설치를 진행하였습니다.
PowerShell과 Windows Terminal 설정
Settings
>PowerSehll
>Appearance
>Font face
와Font size
를 원하는 것으로 수정하세요.
Scoop
설치
-
Python
,Node.js
,Haskell
등을 홈 디렉토리(C:\Users\username
)에서 관리할 수 있게 도와주는Scoop
을 사용해서 개발 관련 툴을 설치하였습니다.scoop
의 경우 프로그램을 홈 디렉토리에 설치하기 때문에chocolatey
이나winget
에 비해서 관리가 편리합니다.- 개인적으로 사용자 디렉토리에 프로그램을 설치해서 관리하는 것을 선호하기 때문에 scoop을 사용하지만,
chocolatey
이나winget
도 나름의 장점이 있으니 궁금하시면chocolatey
이나winget
에 도전해보셔도 좋을 듯 합니다.
-
Scoop
설치를 위해서Windows Terminal
을 실행하세요.
// 권한설정, admin 권한을 가진 PowerShell이나 Terminal에서 사용하지 않도록 주의하세요.
$ PS C:\Users\username> Set-ExecutionPolicy RemoteSigned -scope CurrentUser
// scoop을 설치하기 위한 명령어 입니다.
$ PS C:\Users\username> Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
- bucket 추가;
scoop
에서 사용할 수 있는 패키지 중에서 개별 버전(python 3.5, 3.6) 설치하기 위해선 scoop의bucket
을 추가해야 합니다.- bucket은
git
을 사용해서 관리되기 때문에,git
을 먼저 설치해야 하며, 이후bucket add
명령어를 사용해서extras
와versions
bucket을 추가하면 됩니다.
- bucket은
// scoop을 사용해서 git을 설치
PS C:\Users\username> scoop install git
// 현재 등록 가능한 bucket을 출력
PS C:\Users\username> scoop bucket known
main
extras
versions
...
jetbrains
// 차례대로 extras, versions, java bucket을 추가
PS C:\Users\username> scoop bucket add extras
PS C:\Users\username> scoop bucket add versions
PS C:\Users\username> scoop bucket add java
Python 설치
- 현재(2022년 08월 31일) Tensorflow 2.9.1이 Python 3.10을 지원하지 않기 때문에 Python 3.9버전을 설치하도록 하겠습니다.
- scoop의
search
명령을 사용해서 설치 가능한 python을 검색할 수 있습니다. scoop의install
명령을 사용해서 python39 패키지를 설치하세요.
// 설치 가능한 패키지를 검색
PS C:\Users\username> scoop search python
'extras' bucket:
anaconda3 (2021.05) --> includes 'python.exe'
miniconda3 (4.10.3) --> includes 'python.exe'
'main' bucket:
python (3.10.0)
winpython (3.8.9.0)
'versions' bucket:
anaconda2 (2019.10) --> includes 'python.exe'
miniconda2 (4.8.3) --> includes 'python.exe'
python-alpha (3.11.0a1)
python-beta (3.8.6rc1)
python27-beta (2.7.18rc1)
python27 (2.7.18)
python35 (3.5.4)
python36 (3.6.8)
python37 (3.7.9)
python38 (3.8.10)
python39 (3.9.7)
// Python v3.9.7 버전을 설치
PS C:\Users\username> scoop install python39
Installing 'python39' (3.9.7) [64bit]
python-3.9.7-amd64.exe (27.6 MB) [============================================================] 100%
...
'python39' (3.9.7) was installed successfully!
// Python 실행 후 버전 확인
PS C:\Users\username> python
Python 3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
Node.js 설치
Node
는 최신 버전을 설치하도록 하겠습니다.
PS C:\Users\username> scoop search node
'extras' bucket:
soundnode (7.0.0)
tinode-mysql (0.17.10)
'main' bucket:
eventstore (20.10.4) --> includes 'EventStore.ClusterNode.exe'
geth (1.10.9) --> includes 'bootnode.exe'
node-chakracore (10.13.0)
nodejs-lts (14.18.0)
nodejs (16.11.0)
sliksvn (1.14.1) --> includes 'svn-populate-node-origins-index.exe'
'versions' bucket:
nodejs010 (0.10.48)
nodejs012 (0.12.18)
nodejs10 (10.24.1)
nodejs11 (11.15.0)
nodejs12 (12.22.6)
nodejs14 (14.18.0)
nodejs4 (4.9.1)
nodejs5 (5.12.0)
nodejs6 (6.17.1)
nodejs7 (7.10.1)
nodejs8 (8.17.0)
nodejs9 (9.11.2)
PS C:\Users\username> scoop install nodejs
Installing 'nodejs' (16.11.0) [64bit]
node-v16.11.0-win-x64.7z (16.0 MB) [============================================================] 100%
Checking hash of node-v16.11.0-win-x64.7z ... ok.
Extracting node-v16.11.0-win-x64.7z ... done.
Linking ~\scoop\apps\nodejs\current => ~\scoop\apps\nodejs\16.11.0
Persisting bin
Persisting cache
Running post-install script...
'nodejs' (16.11.0) was installed successfully!
PS C:\Users\username> node
Welcome to Node.js v16.11.0.
Type ".help" for more information.
>
Haskell 설치
- Haskell은 Stack을 사용하기 때문에 Stack을 설치하도록 하겠습니다.
PS C:\Users\username> scoop search stack
'main' bucket:
stack (2.7.3)
PS C:\Users\username> scoop install stack
Installing 'stack' (2.7.3) [64bit]
stack-2.7.3-windows-x86_64.zip (13.2 MB) [============================================================] 100%
Checking hash of stack-2.7.3-windows-x86_64.zip ... ok.
Extracting stack-2.7.3-windows-x86_64.zip ... done.
Running installer script...
Linking ~\scoop\apps\stack\current => ~\scoop\apps\stack\2.7.3
Creating shim for 'stack'.
'stack' (2.7.3) was installed successfully!
PS C:\Users\username> stack ghci
Writing implicit global project config file to: C:\Users\sigma\AppData\Roaming\stack\global-project\stack.yaml
Note: You can change the snapshot via the resolver field there.
...
Prelude> putStrLn "Hello world!"
Hello world!
Prelude>
Windows 11에서 즐거운 개발 되시길 바라요!