Tuesday, June 2, 2020

마이크로소프트, 윈도우 터미널(Windows Terminal) 1.0 - 쿨하다!

  • 코드 네임 - 캐스캐디아(Cascadia)

마이크로소프트(이하, MS) 윈도우 O/S에서 가장 쿨(cool)한 앱이 탄생했다. 바로 '윈도우 터미널(Windows Terminal)'이다. 쿨하다고 한 이유는 과거 수십 년 동안 도스 프롬프트(DOS Prompt) 스타일에서 벗어나지 못하다가 이번엔 리눅스 터미널보다 더 멋있어졌기 때문이다. 아래 스크린샷 이미지만 봐도 얼마나 수려한 지 금방 알아챌 수 있다. 폰트마저 '캐스캐디아 코드(Cascadia Code)'라는 새로운 글꼴을 내장했다. 폰트가 너무 아름다워 맥에서 사용하는 iTerm과 Sublime Text의 폰트도 이걸로 바꿨다. 윈도우 터미널의 프로젝트 코드 네임이 '캐스캐디아(Cascadia)' 였다.
Windows Terminal 1.0 실행 모습

The new Windows Terminal (소개 동영상, 유튜브 - 44초) 

Microsoft Windows Terminal 1.0 소개 페이지

윈도우 터미널은 2019년 5월에 처음 소개됐지만, 완전체 1.0 버전은 지난 5월 20일에 나왔다. 윈도우 터미널 1.0을 설치하기 위해서는 윈도우 10을 5월 업데이트 버전 2004(OS 빌드 19041.264)로 업그레이드 해야 한다. 윈도우 O/S내에서 'Windows 업데이트'를 통해서 할 수 있다. 버전 확인은 "윈도우키 + R" 눌러 winver를 실행하면 확인할 수 있다.

  • MS의 변신

왜 이렇게 MS가 180도 변했을까? 바로 스티브 발머가 물러나고 사티아 나델라(Satya Nadella)가 CEO로 등극했기 때문이다. 이후 모장(Mojang, 2013), 링크드인(LinkedIn, 2016), 깃허브(GitHub, 2018) 같은 회사를 인수하며, 변신에 변신을 거듭하고 있다. 덕분에 MS 주식(MSFT)은 지칠 줄 모르고 오르고 있다.

MS는 과거 리눅스(Linux) O/S를 적으로 간주하며 적대시했지만, 나델라 CEO 이후엔 리눅스를 포용하며 적극적으로 포용하고 있다. 그래서 나온 것이, WSL이라 불리는 리눅스용 윈도우 하위 시스템(Windows Subsystem for Linux) 이다. 패러렐즈 데스크탑나 VM웨어 퓨전와 같은 가상화 프로그램을 사용하지 않고 윈도우 상에 리눅스 기능을 탑재한 것이다. 리눅스 쉘인 bash도 사용할 수 있고 리눅스용 ELF 바이너리를 컴파일 없이 리눅스와 같이 바로 설치해 실행시킬 수 있다.


  • 윈도우 터미널 1.0 설치하기

설치 방법은 아래와 같이 두 가지 방법이 있다.

방법1) Microsoft Store에서 Windows Terminal 설치

방법2) Winget(Windows Package Manager CLI) 설치 후, winget install terminal 명령어로 설치
1. Winget 설치 하기
2. Winget으로 Windows Terminal 설치하기


  • 윈도우 터미널 1.0 기능들

▶ 탭(Tabs)
리눅스나 macOS의 터미널처럼 새 창을 띄우지 않고, 탭 창을 열 수 있다.
+ 버튼을 마우스로 누르거나, Ctrl+Shift+T 키보드 조합을 누르면 된다.
탭 간의 이동은, Ctrl+Tab을 통해 오른쪽으로, Ctrl+Shift+Tab을 통해 왼쪽으로 이동할 수 있다.
탭을 닫기 위해서는 x 버튼을 누르거나, Ctrl+Shift+W 조합을 누르면 된다.

▶ 파워셀(PowerShell), 도스 프롬프트(Command Prompt), 리눅스를 같은 창에서
맨 위의 스크린샷 이미지와 같이, 아래 화살표 메뉴를 클릭해서 파워셀(PowerShell), 도스 프롬프트(Command Prompt), 리눅스 등 원하는 쉘을 오픈할 수 있다. 디폴트로 파워쉘이 열린다.

SSH는 내장된 OpenSSH Client를 설치해서 사용할 수 있다.
내장 OpenSSH 클라이언트 설치하기

▶ 창 분할하기(Split Panes)

스크린샷 이미지와 같이, 한 화면에 여러 개의 쉘을 띄울 수 있는 기능이다. 보통 서로 다른 파일을 비교하거나, 한 호스트에서 뭔가를 실행하고 이를 보면서 다른 호스트에서 작업하는 경우에 유용하다.

새로운 분할 창은 Alt+Shift+D로 생성할 수 있다. 분리된 창을 클릭한 후, 해당 창에서 다시 Alt+Shift+D를 눌러 더 생성할 수 있다. 아래와 같은 창 분할 키보드 조합이 있다.

새로운 창 분할(Pane) 생성, 가로로: Alt+Shift+- (Alt, Shift, 마이너스)
새로운 창 분할(Pane) 생성, 세로로: Alt+Shift++ (Alt, Shift, 플러스)
분할(Pane) 창 포커스 이동: Alt+Left, Alt+Right, Alt+Down, Alt+Up
포커스된 분할(Pane) 창 크기 조절: Alt+Shift+Left, Alt+Shift+Right, Alt+Shift+Down, Alt+Shift+Up
분할(Pane) 창 닫기: Ctrl+Shift+W

▶ 줌(Zooming) 기능

화면의 폰트를 크게 보거나 작게 보기 위해서, 줌(Zoom) 기능을 이용할 수 있다.
Ctrl 키를 누른 다음에 마우스의 휠을 위로 움직여 확대(Zoom In)하거나, 아래로 움직여 축소(Zoom out)할 수 있다.

▶ 배경색 투명도(Background Opacity) 조정

검은색 배경화면을 좀 더 밝게 조정할 수 있다. Ctrl+Shift를 누른 후, 마우스 휠을 아래와 움직여 밝게 하거나, 위로 움직여 다시 어둡게 할 수 있다.

▶ 더 많은 설정(Settings): 키 조합, 색 조절, 배경 등

아래쪽 화살표를 클릭 후, Settings를 클릭하면 JSON 파일로 된 설정 파일(settings.json)을 열 수 있다. Notepad나 Notepad++ (추천)를 사용하면 된다.

이 파일을 수정해서, 키 조합, 색상, 프로파일, 배경 이미지, 애니메이션 GIF 백그라운드, 디폴트 쉘 선택 등 모든 설정을 바꿀 수 있다.

설정 파일이 있는 폴더의 위치는,
%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState
아래다. 예를 들면, C:\Users\username\AppData\Local\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState 와 같다. 아래 가이드를 참고하시라.

• 윈도우 터미널 JSON 설정 파일 편집 가이드
• JSON 설정 파일에 추가할 수 있는 옵션 리스트


* 참고 자료 및 출처
The New Windows Terminal Is Ready; Here’s Why It’s Amazing (How-To Geek)

Tuesday, May 26, 2020

지메일(Gmail) 첨부 파일만 삭제해서 용량 줄이는 방법


◇ 부제: 지메일(Gmail) 메시지 자체를 삭제하지 않고 대용량 첨부 파일만 삭제하기


2018년 10월, 지메일(Gmail)을 포함한 구글 무료 스토리지 용량 19GB 중 17GB에 도달했다. 기본적으로 구글은 5GB의 무료 용량을 제공한다. 필자는 보안 체크업 등 이벤트를 통해서 주는 무료 추가 용량을 통해 19GB까지 늘린 것이다. 구글 스토리지는 Google Drive, Gmail, Google Photos가 통합해서 같이 공유해서 사용한다. (단, Google Photos는 high quality로 선택 시, 무제한 업로드 가능)

결국, 지메일의 첨부 파일을 줄여서 스토리지 용량을 줄였다. 보통의 방법은 오래된 이메일 중 첨부 파일이 큰 메시지를 삭제하는 방법이다. 하지만, 여기에 기술한 방법은 이메일 메시지를 그대로 유지하고 첨부 파일만 삭제하는 방법이다.

※ 업데이트: 2020년 3월, 현재는 월$1.99, 년$19.99의 Google One 유료 플랜에 가입해서 쓰고 있다. 귀차니즘 + 이렇게 첨부 파일만 삭제하는 데도 시간이 투자되므로...


✓ 먼저 자신의 지메일(Gmail) 공간이 얼마나 되는지 알아보자.

이메일 받은편지함(Inbox)을 클릭 후, 화면의 맨 아래로 스크롤 하면 '관리(Manage)'라는 단어가 보인다. 이걸 클릭하면 현재 스토리지 용량이 Google Drive, Gmail, Google Photos로 분류되어 보인다. 

✓ 보통은 아래와 같이 지메일의 검색 및 필터 기능을 이용해서 첨부 파일이 있는 이메일을 검색해서 삭제할 수 있다.


▶ 첨부파일 1MB 이상의 이메일 중 3년 이상 된 메시지 검색하기
size:1M older_than:3y
파라미터에서 size는 이메일 사이즈를, older_than은 검색 기간을 말한다. older_than:3y은 3년 이상 된 메일을 말하며 y는 연도(year), m은 월(month)을 의미한다.

'before: 2018/12/31'이라고 입력할 경우 18년 12월 31일 이전에 받은 모든 이메일을 검색할 수 있다. 반대로 'after:' 명령어를 통해 특정 날짜 이후의 이메일만 검색하는 것도 가능하다.
예를 들어 'before: 2018/12/31 larger:1M'이라고 입력하면 2018년 12월 31일 이전에 받은 메일 중 용량이 1MB를 초과하는 이메일만 검색할 수 있다.

또한, 'has: filename: pdf'나 'has: filename: doc' 등의 명령어를 통해 확장자가 같은 메일을 갖춘 이메일만 골라내서 검색하는 것도 가능하다.

검색 후, 좌측 상단에 있는 선택(Select) 버튼(□)을 누르면 메일 목록 위에 '검색어와 일치하는 모든 메일 선택(Select all conversations that match this search)'이라는 메시지가 표시된다. 이걸 클릭하면, 앞서 입력한 명령어에 해당하는 모든 이메일을 선택할 수 있으며, 여기서 '삭제(Delete)' 버튼을 누르면 휴지통(Trash)으로 들어간다.


이렇게 검색된 메시지를 지우면 된다. 단, 삭제하면 휴지통으로 갈 뿐 실제로 지워지지 않기 때문에 용량에 변화가 없다. 휴지통(Trash)에서 '완전삭제(Delete forever)'를 눌러 완전히 삭제해야 스토리지 용량이 늘어난다.

참고로, Dittach와 같은 크롬 브라우저 확장 프로그램으로 쉽게 검색하고 삭제할 수 있으나, 이런 외부 프로그램은 보안상 안전하지 않음으로 권하지 않는다.

※ 참고: Gmail에서 사용할 수 있는 검색 연산자

이와 같은 방법의 단점은, 첨부 파일 뿐만 아니라 이메일 메시지 자체도 삭제된다는 것이다. 필자는 메시지 자체는 유지하고 용량이 큰 첨부 파일만 삭제해서 줄이고 싶었다. 첨부 파일은 이미 하드디스크에 저장해 둔 상태이기 때문이다.

✓ 지메일(Gmail) 메시지 자체를 삭제하지 않고 대용량 첨부 파일만 삭제하기

Step 1) 모질라에서 만든 썬더버드(Thunderbird) 이메일 클라이언트 프로그램을 다운로드한다.
오픈 소스라 무료이고 안정적이다.

Step 2) 썬더버드(Thunderbird) 내의 계정 설정을 통해 지메일(Gmail)을 연결한다.

Step 3) 지메일 연결 후, '모든 메일(All Mail)' 폴더로 가면 모든 지메일을 로컬 시스템에 다운로드한다. 이메일이 많은 경우, 몇 시간 걸릴 수도 있다.

Step 4) '모든 메일(All Mail)' 폴더의 칼럼 탭에서 '첨부(attachment)'를 선택하면 첨부 파일 크기별로 정렬할 수 있다.

Step 5) 이렇게 정렬된 상태에서, 용량이 큰 이메일을 클릭한 후, 첨부 파일만 삭제할 수 있다. 삭제하기 전에, 저장(save) 할 수도 있다.

Step 6) 실제로 썬더버드(Thunderbird)는 선택된 이메일을 첨부 파일(attachment) 없이 복사한다. 따라서, 지메일의 원본 이메일을 삭제하기 위해서는, 지메일에 로그인한 후, 해당 이메일을 완전히 삭제하면 된다. 썬더버드에 복제된 이메일이 있기 때문에 해당 메시지는 남아 있는 것이다.


▶ 함께 읽어보면 좋은 관련 글: Gmail (지메일)의 이메일 주소 트릭


* 참고 자료 및 링크
구글 지메일 용량 관리 방법! 오래된 기간의 첨부파일 포함 메일 검색 후 삭제하기
'지메일 명령어'로 오래된 메일 한 번에 찾아 지우자
Delete Large Attachments in Gmail Without Deleting the Message

Sunday, May 24, 2020

구글, 미 국방부 사이버보안 클라우드 계약 체결의 의미

지난 2018년 미국 국방부(DoD)의 100억 달러/$10B(약 11조2천억원) 짜리 '제다이(JEDI, 합동방어인프라)' 공공 클라우드 프로젝트 수주를 포기했던 구글(Google)이 이번에 미 국방부 산하 국방혁신부(DIU)와 7 figure(1M~10M) 규모의 계약을 맺었다. 자세한 계약 금액은 공개되지 않았다.

Anthos Deployment Targets, JANAKIRAM MSV
미 국방부(DoD)는 구글의 클라우드 관리 플랫폼 '안토스(Anthos)'를 통해 클라우드 상의 서비스와 애플리케이션을 모니터링하고 관리할 것이다. 안토스의 장점은 구글 GCP 뿐만 아니라, 아마존 AWS, 마이크로소프트 Azure 상의 다른 클라우드 플랫폼에 있는 리소스도 관리할 수 있다는 점이다. 사용자가 쿠버네티스(Kubernetes) 클러스터를 구축하고 관리, 운영하는 데 시간을 들이지 않고 컨테이너화된 애플리케이션을 구동할 수 있다.

클라우드의 트렌드는 '멀티 클라우드, 하이브리드 클라우드, 분산 클라우드'의 방향으로 전개되고 되고 있다.

▶ 함께 읽어보면 좋은 관련 글: 2020년 클라우드 도입에 영향을 주는 4가지 트렌드

미 국방부도 가장 큰 규모의 제다이 프로젝트는 마이크로소프트에 주었지만, 아마존은 CIA와 계약했었고, 이번 사이버 보안 관련 프로젝트는 구글과 계약함으로써 '멀티 클라우드' 전략을 추구하고 있다.

국방혁신부(DIU)는 안토스(Anthos) 관리 플랫폼을 기반으로 클라우드 접근 보안 브로커(CASB; Cloud Access Security Broker) 시장의 선두 업체인 넷스코프(Netskope)와 함께 클라우드 환경에 대한 보안을 관리하고, 이를 통해 사이버 위협에 대응할 수 있는 멀티클라우드 환경을 구축할 예정이다.

가트너(Gartner)는 CASB의 기능을 ‘가시성(Visibility)’, ‘데이터 보안(Data Security)’, ‘컴플라이언스(Compliance)’, ‘위협대응(Threat Protection)’의 네 가지로 분류했다.

넷스코프는 클라우드, 온 프레미스(기업 내) 또는 하이브리드 클라우드를 사용하는 기업에 사이버보안 위협으로부터 데이터 보호 기능을 제공한다. 사용자, 세션, 공유, 다운로드된 데이터를 모니터링하고 취약한 부분을 식별할 수 있도록 자세한 분석 결과를 보여준다.

미 국방부는 구글 클라우드와 넷스코프 솔루션을 통해 최소 500,000명의 동시 사용자와 1백만 엔드포인트 장치를 지원할 수준까지 확장할 야심 찬 포부를 가지고 있다.

구글에 이번 계약이 의미가 있는 것은, 구글이 만든 AI 윤리 강령에 상충되어 2018년 제다이 프로젝트 입찰을 철회했기 때문이다. 구글은 이전에 국방부와 체결한 '메이븐(Maven) 프로젝트'로 인해 직원들의 극심한 반대에 부딪혔다. 이 프로젝트로 인해 무인 드론이 목표물을 더 정확하게 식별해 AI가 인명 살상에 이용되기 때문이다. 이는 구글의 창업 철학인 "사악해지지 말자(Don'e be evil)"는 신념에 위배된다. 구글은 2015년 10월에 이 모토를 "옳은 일을 하자(Do the right thing)"로 바꿨지만, 직원들의 신념은 강했다. 4,000여 명의 직원들은 메이븐 프로젝트를 반대하는 탄원서를 내고 인공지능(AI) 기술을 담당하는 연구원 10명은 항의의 의미로 구글을 떠났다.

이후 구글은 '구글 AI 원칙(AI at Google: Our Principles)
'을 만들고 이를 준수하고 있다.
한글 번역본은 아래 구글 한국 블로그에서 확인할 수 있다.
구글이 바라보는 AI: 구글의 원칙을 알려드립니다

구글은 이 원칙에서 아래와 같이 사이버 안보 분야에서는 군과 협력을 할 것이라고 명시하고 있다. 즉, 이번 국방부(DoD)와의 클라우드 계약은 사이버 안보 분야에 대한 협력이다.

"구글은 무기에 사용되는 AI를 개발하고 있지는 않으나 다른 여러 분야에서 정부 및 군과의 협력은 지속할 것이라는 점을 분명히 하고 싶습니다. 여기에는 사이버 안보, 훈련, 군인 모집, 재향군인의 건강 관리, 수색 구조 등의 분야가 포함됩니다."

어쨌든, 구글의 직원들이 인류를 위해 인공지능(AI)이 살상 무기에 이용되는 걸 반대하고, 심지어 '신의 직장'이라는 구글마저 떠나면서 이런 원칙을 만들어내고 실행하는 것에 존경을 표하지 않을 수 없다.

테크크런치에 따르면, 현재 클라우드 서비스 플랫폼(IaaS) 시장 점유율은 아마존 AWS 33%, 마이크로소프트 Azure 18%, 구글 GCP 8%로 구글은 한참 뒤진 3위에 머물고 있다. 하지만, 구글은 AI 분야에 선두를 달리고 있다. 미래는 모든 기술이 AI를 중심으로 융합될 것이므로 장기적으로 구글이 클라우드 시장에서 선전할 것으로 기대해본다.

▶ 함께 읽어보면 좋은 관련 글:
· 하늘에 이어 바다 밑 해저마저 장악하고 있는 IT 공룡들


* 참고 자료 및 출처
MS는 어떻게 ‘제다이’를 품에 안았나: 100억 달러 전쟁의 내막 (슬로우뉴스)
커지는 클라우드 보안 시장, CASB 모델에 ‘눈독’ (보안뉴스)
Google Cloud earns defense contract win for Anthos multi-cloud management tool (TechCrunch)
Google will not bid for the Pentagon’s $10B cloud computing contract, citing its “AI Principles” (TechCrunch)
Google is partnering with the Department of Defense to fight cybercrime (Business Insider)
Google wins DOD cloud pilot contract (FCW)