Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 2개 있습니다.)

2016-08-02부터 시작된 윈도우 10 1주년 업데이트에서 Bash Shell 사용

윈도우10 1주년 업데이트가 나왔습니다. 정식 버전 번호는 1607, 빌드 번호는 14393.10입니다.

현재 윈도우 메뉴의 "Settings" / "Update & Security"로 가서 "Windows Update"를 통해 설치할 수 있습니다. 일부 PC의 경우 "Check for updates"를 눌러도 신규 업데이트가 없다고 나올 텐데요. 이런 경우는 다음의 사이트를 방문해 직접 업데이트 용 EXE 파일을 다운로드 받아 진행할 수 있습니다.

Windows 10 1주년 업데이트 다운로드
; https://support.microsoft.com/ko-kr/help/12387/windows-10-update-history?ocid=update_setting_client

업데이트 한 다음 Bash Shell을 설치하고 싶다면 윈도우 메뉴의 "Settings" / "For developers"로 가서 아래와 같이 "Developer mode"를 켜야 합니다.

bash_on_windows_0.png

이 옵션이 켜져 있는 상태에서 제어판의 "Program and Features"에서 "Turn Windows features on or off" 링크를 누르면 다음과 같이 "Windows Subsystem for Linux (Beta)" 항목을 볼 수 있습니다. (만약 이 항목이 없다면 다시 재부팅해줍니다.)

bash_on_windows_1.png

선택하면 재부팅을 하게 되고, "Window Key + R"키를 눌러 "Bash"라고 입력하면 bash.exe 명령행 창이 뜨고 최초 한번 다음과 같이 설치 진행 여부를 묻습니다.

bash_on_windows_2.png

"y" 키를 누르고 다운로드가 완료되면 다음과 같이 UNIX 환경을 위한 계정 정보를 입력받게 됩니다.

-- Beta feature --
This will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms

Type "y" to continue: y
Downloading from the Windows Store... 100%
Extracting filesystem, this will take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: stjeong
새 UNIX 암호 입력:
새 UNIX 암호 재입력:
passwd: password updated successfully
Installation successful!
The environment will start momentarily...
Documentation is available at:  https://aka.ms/wsldocs
stjeong@THEMYTH9:/mnt/c/Users/SeongTae Jeong$

끝입니다. 이후부터는 bash.exe를 실행하면 기존의 cmd.exe와 유사하게 창이 뜨고 곧바로 명령 실행이 가능합니다.

나머지는 더 볼 것도 없겠지요. ^^ 참고로 윈도우 운영체제의 C, D 드라이브는 각각 /mnt/c, /mnt/d 와 같은 식으로 마운트되어 있으므로 그 규칙에 맞게 접근하시면 됩니다. 예를 들어 D 드라이브의 temp 폴더로 이동하고 싶다면 다음과 같이 명령을 실행하면 됩니다.

cd /mnt/d/temp




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

[연관 글]






[최초 등록일: ]
[최종 수정일: 8/3/2016]

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

비밀번호

댓글 작성자
 



2016-08-04 06시47분
[플밍노트] Linux 서브 시스템, 윈도우 대격변의 서막
; http://jiniya.net/ng/2016/08/windows-subsystem-for-linux/
정성태
2016-08-05 03시29분
[easylogic] bash 안에서 window script(Power shell 에서 쓰던 스크립트) 같은건 못쓰겠죠?
[guest]
2016-08-05 04시32분
넵. 위의 덧글에 있는 "[플밍노트] Linux 서브 시스템, 윈도우 대격변의 서막" 내용에도 나오지만 완전 격리된 공간이므로 notepad.exe 등의 프로그램도 실행이 안됩니다.
정성태
2016-08-07 12시29분
정성태
2017-05-08 01시58분
Setting up a Shiny Development Environment within Linux on Windows 10
; https://www.hanselman.com/blog/SettingUpAShinyDevelopmentEnvironmentWithinLinuxOnWindows10.aspx
정성태
2017-10-08 06시24분
다음은 10월 17일부터 업데이트될 Windows 10 Fall Creators Update부터 바뀔 WSJ 환경에 대해 소개하고 있습니다.

Windows 10으로 시작하는 Java 개발
; https://medium.com/@rkttu/start-java-dev-with-win-10-402cb91126fd
정성태
2017-10-12 05시33분
정성태
2019-01-25 10시41분
C:> wslconfig
C:> wslconfig /l
정성태

... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12125정성태1/24/20208562VS.NET IDE: 141. IDE0019 - Use pattern matching
12124정성태1/23/202010388VS.NET IDE: 140. IDE1006 - Naming rule violation: These words must begin with upper case characters: ...
12123정성태1/23/202011858웹: 39. Google Analytics - gtag 함수를 이용해 페이지 URL 수정 및 별도의 이벤트 생성 방법 [2]
12122정성태1/20/20208855.NET Framework: 879. C/C++의 UNREFERENCED_PARAMETER 매크로를 C#에서 우회하는 방법(IDE0060 - Remove unused parameter '...')파일 다운로드1
12121정성태1/20/20209406VS.NET IDE: 139. Visual Studio - Error List: "Could not find schema information for the ..."파일 다운로드1
12120정성태1/19/202010846.NET Framework: 878. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 네 번째 이야기(IL 코드로 직접 구현)파일 다운로드1
12119정성태1/17/202010893디버깅 기술: 160. Windbg 확장 DLL 만들기 (3) - C#으로 만드는 방법
12118정성태1/17/202011500개발 환경 구성: 466. C# DLL에서 Win32 C/C++처럼 dllexport 함수를 제공하는 방법 - 세 번째 이야기 [1]
12117정성태1/15/202010529디버깅 기술: 159. C# - 디버깅 중인 프로세스를 강제로 다른 디버거에서 연결하는 방법파일 다운로드1
12116정성태1/15/202011025디버깅 기술: 158. Visual Studio로 디버깅 시 sos.dll 확장 명령어를 (비롯한 windbg의 다양한 기능을) 수행하는 방법
12115정성태1/14/202010778디버깅 기술: 157. C# - PEB.ProcessHeap을 이용해 디버깅 중인지 확인하는 방법파일 다운로드1
12114정성태1/13/202012632디버깅 기술: 156. C# - PDB 파일로부터 심벌(Symbol) 및 타입(Type) 정보 열거 [1]파일 다운로드3
12113정성태1/12/202013250오류 유형: 590. Visual C++ 빌드 오류 - fatal error LNK1104: cannot open file 'atls.lib' [1]
12112정성태1/12/20209850오류 유형: 589. PowerShell - 원격 Invoke-Command 실행 시 "WinRM cannot complete the operation" 오류 발생
12111정성태1/12/202013083디버깅 기술: 155. C# - KernelMemoryIO 드라이버를 이용해 실행 프로그램을 숨기는 방법(DKOM: Direct Kernel Object Modification) [16]파일 다운로드1
12110정성태1/11/202011662디버깅 기술: 154. Patch Guard로 인해 블루 스크린(BSOD)가 발생하는 사례 [5]파일 다운로드1
12109정성태1/10/20209591오류 유형: 588. Driver 프로젝트 빌드 오류 - Inf2Cat error -2: "Inf2Cat, signability test failed."
12108정성태1/10/20209626오류 유형: 587. Kernel Driver 시작 시 127(The specified procedure could not be found.) 오류 메시지 발생
12107정성태1/10/202010617.NET Framework: 877. C# - 프로세스의 모든 핸들을 열람 - 두 번째 이야기
12106정성태1/8/202011974VC++: 136. C++ - OSR Driver Loader와 같은 Legacy 커널 드라이버 설치 프로그램 제작 [1]
12105정성태1/8/202010642디버깅 기술: 153. C# - PEB를 조작해 로드된 DLL을 숨기는 방법
12104정성태1/7/202011360DDK: 9. 커널 메모리를 읽고 쓰는 NT Legacy driver와 C# 클라이언트 프로그램 [4]
12103정성태1/7/202014049DDK: 8. Visual Studio 2019 + WDK Legacy Driver 제작- Hello World 예제 [1]파일 다운로드2
12102정성태1/6/202011671디버깅 기술: 152. User 권한(Ring 3)의 프로그램에서 _ETHREAD 주소(및 커널 메모리를 읽을 수 있다면 _EPROCESS 주소) 구하는 방법
12101정성태1/5/202011043.NET Framework: 876. C# - PEB(Process Environment Block)를 통해 로드된 모듈 목록 열람
12100정성태1/3/20209092.NET Framework: 875. .NET 3.5 이하에서 IntPtr.Add 사용
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...