<commit_before>---
image: https://www.softzone.es/app/uploads/2016/08/Windows-10-Ubuntu.png
instantfeedback: true
description: Với Windows Subsystem for Linux, các Dev web và back-end sử dụng Windows có thêm môi trường dev tuyệt vời
layout: post
title: Windows Subsystem for Linux - Món quà tuyệt vời cho Dev
category: Công nghệ
tags: Windows, Subsystem, Linux
keywords: Windows, Subsystem, for Linux
---

Không kể các developer dùng MAC thì trước đây các web developer thường dùng song song 2 hệ điều hành trên máy tính, là Windows và Ubuntu. Các back-end hay full-stack developer thì xài hẳn Ubuntu luôn (mặc dù tụi nó cũng thèm Windows lắm :)))

<figure><img src="https://www.softzone.es/app/uploads/2016/08/Windows-10-Ubuntu.png" alt="Windows Subsystem for Linux - Món quà tuyệt vời cho Dev" title="Windows Subsystem for Linux - Món quà tuyệt vời cho Dev"></figure>

Đầu năm 2016, bộ phận phát triển Windows Kernel của Microsoft đã tung ra bản alpha đầu tiên của Windows Subsystem for Linux (WSL) làm dậy sóng cả cộng đồng develop. WSL giúp người dùng có thể sử dụng một phiên bản của Linux trên Windows mà không phải dùng ảo hóa.

WSL không phải là ảo hóa! Đúng vậy, bạn không đọc nhầm đâu. Nhiều người vẫn nhầm lẫn Microsoft tạo một máy ảo chạy Ubuntu trên Windows nhưng không phải vậy. Bạn không cần phải chạy Hyper-V khi sử dụng WSL.

Microsoft đã hợp tác với Canonical (Công ty phát triển và phân phối Ubuntu) để tạo ra một bộ nhân Linux (tên là lxcore) để map Api của Windows với Linux Kernel. Điều này giúp cho các ứng dụng native của Linux (Linux ELF64) có thể chạy trên Windows mà không cần biên dịch lại.

WSL có thể chạy bất kỳ ứng dụng native nào của Ubuntu, Fedora và OpenSUSE (các Linux Distro). Từ các ứng dụng chạy nền như MySqL, Postgresql, Memcached, Redis... đến các ứng dụng GUI như GNOME-VIM. Quá chi là tuyệt vời :))

**Đặc biệt: Có thể chạy nhiều Linux Distro cùng lúc**

Như hình dưới, bạn có thể cài đặt và chạy Ubuntu, openSUSE, và SUSE Linux Enterprise Server cùng với nhau, hoàn toàn độc lập nhưng có thể truy cập vào hệ thống tập tin của Windows, mạng stack ... 

<figure><img src="https://4.bp.blogspot.com/-jQGEJ0RSUC8/WmlZgkssGPI/AAAAAAAABqM/0xgXkeeBpOglYjg_FY0M0dbLtV-UAqUEwCLcBGAs/s640/multiple-distors-600x338.png" alt="Windows Subsystem for Linux - Chạy nhiều distro cùng lúc" title="Windows Subsystem for Linux - Chạy nhiều distro cùng lúc"></figure>

## Cài đặt Windows Subsystem for Linux

Vào Control Panel -> Programs and Feature -> Turn Windows feature on or off. Đánh dấu tích vào Windows Subsystem for Linux

<figure><img src="https://1.bp.blogspot.com/-aH14LBzOfno/WmlaXeR_S4I/AAAAAAAABqU/G6PviFWQ6gck38vYNC0MKJF-wq-ZWBU3ACLcBGAs/s640/enable_windows_subsystem_for_linux.jpg" alt="Bật Windows Subsystem for Linux" title="Bật Windows Subsystem for Linux"></figure>

hoặc mở Power Shell ở chế độ Run as Administrator rồi gõ vào lệnh sau:
<commit_msg>Update post<commit_after>---
image: https://www.softzone.es/app/uploads/2016/08/Windows-10-Ubuntu.png
instantfeedback: true
description: Với Windows Subsystem for Linux, các Dev web và back-end sử dụng Windows có thêm môi trường dev tuyệt vời
layout: post
title: Windows Subsystem for Linux - Món quà tuyệt vời cho Dev
category: Công nghệ
tags: Windows, Subsystem, Linux
keywords: Windows, Subsystem, for Linux
---

Không kể các developer dùng MAC thì trước đây các web developer thường dùng song song 2 hệ điều hành trên máy tính, là Windows và Ubuntu. Các back-end hay full-stack developer thì xài hẳn Ubuntu luôn (mặc dù tụi nó cũng thèm Windows lắm :)))

<figure><img src="https://2.bp.blogspot.com/-Gcn5mb3mcYM/Wr5GRC28fqI/AAAAAAAABrQ/INQjTmBzhfcL4PcfZtUd_XlSMMf5dSdfQCEwYBhgL/s1600/Windows-10-Ubuntu.png" alt="Windows Subsystem for Linux - Món quà tuyệt vời cho Dev" title="Windows Subsystem for Linux - Món quà tuyệt vời cho Dev"></figure>

Đầu năm 2016, bộ phận phát triển Windows Kernel của Microsoft đã tung ra bản alpha đầu tiên của Windows Subsystem for Linux (WSL) làm dậy sóng cả cộng đồng develop. WSL giúp người dùng có thể sử dụng một phiên bản của Linux trên Windows mà không phải dùng ảo hóa.

WSL không phải là ảo hóa! Đúng vậy, bạn không đọc nhầm đâu. Nhiều người vẫn nhầm lẫn Microsoft tạo một máy ảo chạy Ubuntu trên Windows nhưng không phải vậy. Bạn không cần phải chạy Hyper-V khi sử dụng WSL.

Microsoft đã hợp tác với Canonical (Công ty phát triển và phân phối Ubuntu) để tạo ra một bộ nhân Linux (tên là lxcore) để map Api của Windows với Linux Kernel. Điều này giúp cho các ứng dụng native của Linux (Linux ELF64) có thể chạy trên Windows mà không cần biên dịch lại.

WSL có thể chạy bất kỳ ứng dụng native nào của Ubuntu, Fedora và OpenSUSE (các Linux Distro). Từ các ứng dụng chạy nền như MySqL, Postgresql, Memcached, Redis... đến các ứng dụng GUI như GNOME-VIM. Quá chi là tuyệt vời :))

**Đặc biệt: Có thể chạy nhiều Linux Distro cùng lúc**

Như hình dưới, bạn có thể cài đặt và chạy Ubuntu, openSUSE, và SUSE Linux Enterprise Server cùng với nhau, hoàn toàn độc lập nhưng có thể truy cập vào hệ thống tập tin của Windows, mạng stack ... 

<figure><img src="https://4.bp.blogspot.com/-jQGEJ0RSUC8/WmlZgkssGPI/AAAAAAAABqM/0xgXkeeBpOglYjg_FY0M0dbLtV-UAqUEwCLcBGAs/s640/multiple-distors-600x338.png" alt="Windows Subsystem for Linux - Chạy nhiều distro cùng lúc" title="Windows Subsystem for Linux - Chạy nhiều distro cùng lúc"></figure>

## Cài đặt Windows Subsystem for Linux

Vào Control Panel -> Programs and Feature -> Turn Windows feature on or off. Đánh dấu tích vào Windows Subsystem for Linux

<figure><img src="https://1.bp.blogspot.com/-aH14LBzOfno/WmlaXeR_S4I/AAAAAAAABqU/G6PviFWQ6gck38vYNC0MKJF-wq-ZWBU3ACLcBGAs/s640/enable_windows_subsystem_for_linux.jpg" alt="Bật Windows Subsystem for Linux" title="Bật Windows Subsystem for Linux"></figure>

hoặc mở Power Shell ở chế độ Run as Administrator rồi gõ vào lệnh sau:

{'fraction_non_alphanumeric': 0.06846508451425644, 'fraction_numerical': 0.018439474133515453, 'mean_word_length': 4.330300272975432, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 25, 'https://': 8, 'lorem ipsum': 0, 'www.': 3, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 5, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '980835', 'n_tokens_mistral': 2829, 'n_tokens_neox': 2703, 'n_words': 857}