Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux (WSL) Π² Windows 10
- ΠΡΠ΅ΠΌΡ ΡΡΠ΅Π½ΠΈΡ: 2 ΠΌΠΈΠ½
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ LinuxInstall the Windows Subsystem for Linux
ΠΠ΅ΡΠ΅Π΄ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Linux Π΄Π»Ρ WSL Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ «ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux».Before installing any Linux distros for WSL, you must ensure that the «Windows Subsystem for Linux» optional feature is enabled:
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ PowerShell Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.Open PowerShell as Administrator and run:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
ΠΡΠΈ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ.Restart your computer when prompted.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux ΠΏΠΎ Π²ΡΠ±ΠΎΡΡInstall your Linux Distribution of Choice
Π§ΡΠΎΠ±Ρ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ, Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ°:To download and install your preferred distro(s), you have three choices:
Windows 10 Fall Creators Update ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ: ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈΠ· Microsoft StoreWindows 10 Fall Creators Update and later: Install from the Microsoft Store
ΠΡΠΎΡ ΡΠ°Π·Π΄Π΅Π» ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ 16215 Windows ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ.This section is for Windows build 16215 or later. ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ Π½ΠΎΠΌΠ΅Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ±ΠΎΡΠΊΠΈ.Follow these steps to check your build.
ΠΡΠΊΡΠΎΠΉΡΠ΅ Microsoft Store ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Linux.Open the Microsoft Store and choose your favorite Linux distribution.
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ Microsoft Store Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°:The following links will open the Microsoft store page for each distribution:
ΠΠ° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ «ΠΠΎΠ»ΡΡΠΈΡΡ».From the distro’s page, select «Get»
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Complete initialization of your distro
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅Π΄ΠΈΠ½ΠΎΡΠ°Π·ΠΎΠ²ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.Now that your Linux distro is installed, you must initialize your new distro instance once, before it can be used.
Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ:Troubleshooting:
ΠΠΈΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ.Below are related errors and suggested fixes. ΠΡΡΠ³ΠΈΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Π£ΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux.Refer to the WSL troubleshooting page for other common errors and their solutions.
Π‘Π±ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ 0x80070003Installation failed with error 0x80070003
- ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ Π΄ΠΈΡΠΊΠ΅ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π΄ΠΈΡΠΊ
C:
).The Windows Subsystem for Linux only runs on your system drive (usually this is yourC:
drive). Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ Ρ ΡΠ°Π½ΡΡΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ Π΄ΠΈΡΠΊΠ΅.Make sure that distros are stored on your system drive: - ΠΡΠ±Π΅ΡΠΈΡΠ΅
- ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ Π΄ΠΈΡΠΊΠ΅ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π΄ΠΈΡΠΊ
Π‘Π±ΠΎΠΉ WslRegisterDistribution Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ 0x8007019eWslRegisterDistribution failed with error 0x8007019e
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ «ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux» Π½Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½.The Windows Subsystem for Linux optional component is not enabled:
ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΠ°Π½Π΅Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ -> ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ -> ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Windows ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ»Π°ΠΆΠΎΠΊ ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ PowerShell, ΡΠΏΠΎΠΌΡΠ½ΡΡΡΠΉ Π² Π½Π°ΡΠ°Π»Π΅ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ.Open Control Panel -> Programs and Features
-> Turn Windows Feature on or off -> Check Windows Subsystem for Linux or using the PowerShell cmdlet mentioned at the begining of this article.
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Linux Π² Windows 10 / ESET NOD32 corporate blog / Habr
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΠΌΡ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ ΠΏΠΎΡΡ ΠΏΡΠΎ Π½ΠΎΠ²ΡΠΉ Π±ΠΈΠ»Π΄ Windows 10 Insider Preview Build 14316, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΎΡΡ ΠΏΡΠΎ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Ubuntu Linux Π² ΡΡΠΎΠΉ ΠΠ‘. ΠΠ°ΠΌ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΠΈΡΡ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π΅ ΡΠΌΠΎΠ³Π»ΠΈ ΡΡΠ°Π·Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΡ ΡΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ bash. ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π° Π΅Π΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ LXss.sys ΠΈ LXCore.sys Π½Π΅ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ (ΡΠΌ. WinSxS). ΠΠ»Ρ ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΌΠΎΠ³Π»ΠΈ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΌΡ ΡΠΊΠ°ΠΆΠ΅ΠΌ ΡΠ°Π³ΠΈ ΠΏΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ Π΅Π΅ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ.ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π³ΠΈ:
- ΠΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° (Developer Mode). ΠΠ΅Π· Π½Π΅Π³ΠΎ Windows 10 ΠΎΡΠΊΠ°ΠΆΠ΅ΡΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Ubuntu Linux.
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ (Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.)
Π ΠΈΡ. ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ developer ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Developer mode (Start->Settings->Update and security).
Π ΠΈΡ. ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΠΌ.
Π ΠΈΡ. Π ΡΠΎΠΌ ΠΆΠ΅ ΠΎΠΊΠ½Π΅, Π² ΠΏΠΎΠΈΡΠΊΠ΅ Π½Π°Π±ΠΈΡΠ°Π΅ΠΌ Β«Windows featuresΒ».
Π ΠΈΡ. Π‘ΡΠ°Π²ΠΈΠΌ Π³Π°Π»ΠΎΡΠΊΡ Π½Π°ΠΏΡΠΎΡΠΈΠ² Β«Windows Subsystem for Linux (Beta)Β».
Π ΠΈΡ. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Windows β cmd, Π½Π°Π±ΠΈΡΠ°Π΅ΠΌ bash ΠΈ Π΄ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Linux.
Π ΠΈΡ. ΠΠΎΡΠ²ΠΈΠ²ΡΠΈΠ΅ΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ Linux.
Π ΠΈΡ. ΠΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Linux.
ΠΠΏΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ WSL (ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Linux Π² Windows 10) / Habr
Π Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ±ΡΠ΄ΠΈΠ» Π²ΠΎΠΏΡΠΎΡ Π½Π° Π’ΠΎΡΡΠ΅ΡΠ΅, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ WSL. Π―, ΠΏΠΎΡΠ»Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π»Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ Π½Π° ΡΠ΄ΡΠ΅ Linux, ΠΎΠΊΠΎΠ»ΠΎ ΠΏΠΎΠ»ΡΠ³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ ΠΏΠ΅ΡΠ΅ΡΠ΅Π» ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Windows 10 Π½Π° Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΌ ΠΠ. ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΈ Linux ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π² ΠΌΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠ°Π·Ρ ΠΏΡΠΈΠ²Π΅Π»ΠΈ ΠΌΠ΅Π½Ρ ΠΊ Π²ΠΎΠΏΡΠΎΡΡ: ΠΈΠ»ΠΈ ΡΡΠ°Π²ΠΈΡΡ Π²ΠΈΡΡΡΠ°Π»ΠΊΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ WSL. Π― Π²ΡΠ±ΡΠ°Π» Π²ΡΠΎΡΠΎΠ΅, ΠΈ ΠΎΡΡΠ°Π»ΡΡ Π²ΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΠ²ΠΎΠ»Π΅Π½.
ΠΠΎΠ΄ ΠΊΠ°ΡΠΎΠΌ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΊΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ WSL, Π½Π° ΠΊΠ°ΠΊΠΈΠ΅ Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Linux ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ· Windows ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Xfce Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° Windows.
ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΡΠΌΠ°Π», ΡΡΠΎ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ Π²Π΅ΡΠ½ΡΡΡ Π½Π° Windows, Π½ΠΎ ΠΏΠΎΠ²ΠΎΠ΄ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΠΌΠ½Π΅ Π΄Π°Π»ΠΈ ΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²: ΠΆΠ΅Π½Π°, Π΄Π°Π»Π΅ΠΊΠ°Ρ ΠΎΡ IT, Π΄Π΅ΡΠ³Π°Π»Π° ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Ρ Π½Π΅Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠΌ; ΠΏΡΠΎΡΠ½ΡΠ»Π°ΡΡ Π½ΠΎΡΡΠ°Π»ΡΠ³ΠΈΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ³ΡΠ΅, Π½ΠΎ ΠΎΠ½Π° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Ρ ΠΎΡΠ΅Π»Π° Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎΠ΄ wine; Π° ΡΡΡ Π΅ΡΠ΅ ΠΌΠ½Π΅ ΠΏΠΎΠ΄Π°ΡΠΈΠ»ΠΈ ΠΊΠΎΡΠΎΠ±ΠΎΡΠ½ΡΡ Windows 10 Pro. WSL Ρ ΠΏΠΎΡΡΠ°Π²ΠΈΠ» ΡΡΡΡ Π»ΠΈ Π½Π΅ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΠΈΠ³ΡΠ°Π»ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠ΅ΡΠΎΠ², ΠΏΠΎΠ½ΡΠ», ΡΡΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡ Π΄Π»Ρ ΠΌΠΎΠΈΡ Π·Π°Π΄Π°Ρ Π³ΠΎΠ΄Π½ΡΠΉ, Π½ΠΎ Ρ ΠΎΡΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ΄ΠΎΠ±ΡΡΠ².
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° WSL ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°
Π‘ΡΠ°Π·Ρ ΠΎΠ³ΠΎΠ²ΠΎΡΡΡΡ, Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ lxrun /install
Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ PowerShell. ΠΠ°Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ (ΠΏΠΎΡΠ»Π΅ Π²ΡΡ
ΠΎΠ΄Π° WSL Π² ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π»ΠΈΠ·). ΠΠ°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ½Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΠ΅ΠΉΡΠ°Ρ WSL ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ· Microsoft Store Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΡΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠΌ.
Π’Π°ΠΊ ΠΆΠ΅ ΠΎΡΠΌΠ΅ΡΡ, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ» Ρ, Π½Π° Π²ΡΠ±ΠΎΡ Π±ΡΠ»ΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ OpenSUSE, SUSE Linux Enterprise ΠΈ Ubuntu 16.04 β ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Ρ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ». Π‘Π΅ΠΉΡΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ Ubuntu 18.04, Debian 9 ΠΈ Kali Linux, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠ²ΡΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ. ΠΠ΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ. Π’Π°ΠΊ ΠΆΠ΅, ΡΠ°ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ Π² ΡΡΠ°ΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΆΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π°.
ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ ΠΆΠ΅Π»Π°Π΅ΠΌΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠΎΠΉΠ΄Π΅Ρ Π±ΡΡΡΡΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΊΠ°ΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΌΡΠ»ΡΡΠΎΡ ΡΠ΄ΡΠ° Linux ΠΈ ΡΡΠΈΠ»ΠΈΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π² ΡΡΠ΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°Ρ : wsl.exe, bash.exe ΠΈ ubuntu.exe (Π²ΠΌΠ΅ΡΡΠΎ ubuntu Π±ΡΠ΄Π΅Ρ ΠΈΠΌΡ ΠΠ°ΡΠ΅Π³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°). ΠΡΠ΅ ΠΎΠ½ΠΈ ΡΠ°Π²Π½ΠΎΠ·Π½Π°ΡΠ½Ρ ΠΈ Π΄Π΅Π»Π°ΡΡ ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ β Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΌΡΠ»ΡΡΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, Π² Π½Π΅ΠΌ linux’ΠΎΠ²ΡΠΉ bash ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ ΠΏΠΎΠ΄ ΡΠΌΡΠ»ΡΡΠΎΡΠΎΠΌ ΡΠ΄ΡΠ°. ΠΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΆΠ΅ Π·Π°ΠΏΡΡΠΊΠ΅ Π½Π°Ρ ΠΏΠΎΠΏΡΠΎΡΡΡ ΠΏΡΠΈΠ΄ΡΠΌΠ°ΡΡ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π° ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ root Π±Π΅Π· ΠΏΠ°ΡΠΎΠ»Ρ β ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ ΡΠ°Π³ΠΎΠ². ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π½Π΅ ΠΏΠΎΡΡΡΠ°Π΄Π°Π΅Ρ, ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΏΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² ΠΊ ΡΡΠ°ΡΡΠ΅, Π² Π°Π½Π³Π»ΠΎΡΠ·ΡΡΠ½ΠΎΠΌ ΡΡΡΠΎΡΠΈΠ°Π»Π΅, Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΡΠΎ Π½ΠΎΠ²ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ WSL ΡΠ΅ΠΏΠ΅ΡΡ Π΄Π΅Π»Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ root Π±Π΅Π· ΠΏΠ°ΡΠΎΠ»Ρ Π±Π΅Π· Π»ΠΈΡΠ½ΠΈΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ².
ΠΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ. ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ ΡΡΠΎΠΈΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π·Π΅ΡΠΊΠ°Π»Π° apt Π½Π° Π±Π»ΠΈΠΆΠ°ΠΉΡΠΈΠ΅. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ CLI ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ. Π ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ vi, Ρ ΠΆΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Ρ nano, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠ°Π²Π»Ρ Π΅Π³ΠΎ:
apt install nano
sudo Π²Π²ΠΎΠ΄ΠΈΡΡ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ ΠΏΠΎΠ΄ root’ΠΎΠΌ. ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ» /etc/apt/sources.list:
nano /etc/apt/sources.list
Π£ ΠΌΠ΅Π½Ρ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π·Π΅ΡΠΊΠ°Π»Π° Π―Π½Π΄Π΅ΠΊΡΠ°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠΉ ΡΠ°ΠΉΠ» Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
deb http://mirror.yandex.ru/ubuntu/ xenial main universe restricted
deb-src http://mirror.yandex.ru/ubuntu/ xenial main universe restricted
deb http://mirror.yandex.ru/ubuntu/ xenial-security main universe restricted
deb-src http://mirror.yandex.ru/ubuntu/ xenial-security main universe restricted
deb http://mirror.yandex.ru/ubuntu/ xenial-updates main universe restricted
deb-src http://mirror.yandex.ru/ubuntu/ xenial-updates main universe restricted
ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ Ctrl+O Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ Ctrl+X Π΄Π»Ρ Π²ΡΡ ΠΎΠ΄Π°. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π΄ΠΎ Π°ΠΊΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ:
apt update && apt upgrade
ΠΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ Π½Π°Π·ΠΎΠ²Ρ Π΅Π³ΠΎ user1, ΠΡ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠ΅ ΠΈΠΌΡ:
addgroup --gid 1000 user1
adduser --home /home/user1 --shell /bin/bash --uid 1000 -G user1,sudo user1
ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠ°ΠΏΠΊΡ ΡΠ·Π΅ΡΠ°, Π·Π°ΠΉΠ΄Π΅ΠΌ ΠΏΠΎΠ΄ Π½ΠΈΠΌ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΠ°ΡΠΎΠ»Ρ ΠΈ ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΡΠ΅ΠΌ ΡΠ°ΠΉΠ» ~/.bashrc:
cd /home/user1
su user1
passwd
nano .bashrc
ΠΠΎΠΉ Π±Π°Π·ΠΎΠ²ΡΠΉ .bashrc Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm|xterm-color|*-256color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
if [[ ${EUID} == 0 ]] ; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
else
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] '
fi
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h \w \$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
ΠΡΠ΅, ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π³ΠΎΡΠΎΠ²Π° ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡβ¦ ΠΏΠΎΡΡΠΈ…
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° X-ΡΠ΅ΡΠ²Π΅ΡΠ°, Xfce ΠΈ ΠΏΡΠΎΡΠΈΡ GUI’ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
ΠΠ΅ΡΠ²Π°Ρ ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, Π½Π° ΠΊΠΎΡΠΎΡΡΡ Ρ Π½Π°ΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ β bash-completion Π² ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠΌ ΡΠΌΡΠ»ΡΡΠΎΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΡΠ°Π±ΠΎΡΠ°Π», ΠΌΡΠ³ΠΊΠΎ Π³ΠΎΠ²ΠΎΡΡ, Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΄Π°Π½Π½ΡΠΉ ΡΠΌΡΠ»ΡΡΠΎΡ Π½Π΅ ΡΠΌΠ΅Π΅Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΅Π³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π²ΡΠ΅ Π² Π½ΠΎΠ²ΠΎΠΌ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ init’ΠΎΠΌ (ΠΊΠΎΡΠΎΡΡΠΉ ΠΊΡΡΠ°ΡΠΈ Π½Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ). ΠΠ½Π΅ Π·Π°Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠΌΡΠ»ΡΡΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π΄ΡΡΠ³ΠΈΡ GUI ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΠ°Π½Π΅Π»ΡΠΊΡ, ΡΡΠΎΠ± ΡΡΠΎ Π²ΡΠ΅ Π±ΡΡΡΡΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ.
ΠΠΎΠ³Π΄Π° Ρ Π³ΡΠ³Π»ΠΈΠ» ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ, Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π²ΡΠΎΠ΄Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° dbus Π½Π° tcp ΠΏΡΠΎΡΠΎΠΊΠΎΠ». ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅Ρ ΡΡΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π½Π΅Ρ. Π ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ unix-domain-socket’Ρ ΠΈ Π²ΡΠ΅ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ ΠΎΠ±ΡΠ°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π½ΠΈΡ .
ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ X-ΡΠ΅ΡΠ²Π΅Ρ, ΠΏΡΠΈΡΠΎΠΌ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ Π² ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ (Π² Windows). ΠΠΈΡΠ½ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π»Ρ ΡΡΠΈΡ ΡΠ΅Π»Π΅ΠΉ VcXsrv β ΠΏΠΎΡΡ X11 Π½Π° Windows. ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² about ΡΠ°ΠΌΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ Π΅Π³ΠΎ ΡΠ΅ΠΉΡΠ°Ρ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Π³ΡΠ³Π»ΠΈΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΡΠΈΠΊ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π²ΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠΎΠΊΠ° ΠΈΠ΄Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π» WSL, ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ exit Π²ΡΡ ΠΎΠ΄ΠΈΠΌ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² root’Π°. ΠΠ΅ΡΠ²ΡΠΌ Π΄Π΅Π»ΠΎΠΌ Π½Π°ΡΡΡΠΎΠΈΠΌ ΡΡΡΡΠΊΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΠΈ:
locale-gen ru_RU
locale-gen ru_RU.UTF-8
update-locale
ΠΠ°Π»Π΅Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Xfce. ΠΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ ΠΈΠ· ΠΌΠ΅ΡΠ°-ΠΏΠ°ΠΊΠ΅ΡΠ°, Π½ΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π½Π°ΠΌ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ, Π° ΠΌΠΎΠ΄ΡΠ»ΡΠ½Π°Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Xfce ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΌ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅:
apt install -y xfce4-session xfce4-notifyd xfce4-appfinder xfce4-panel xfce4-quicklauncher-plugin xfce4-whiskermenu-plugin xfce4-xkb-plugin xfce4-settings xfce4-terminal xfce4-taskmanager mousepad
ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠΊΠ°ΠΌΠΈ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π» Π΄Π°Π½Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π² ΡΠ΄ΠΎΠ±Π½ΠΎΠΌ Π΄Π»Ρ Π½Π°Ρ ΠΌΠ΅ΡΡΠ΅ ΠΏΠ°ΠΏΠΊΡ, Π° Π² Π½Π΅ΠΉ 3 ΡΠ°ΠΉΠ»Π° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°:
- config.xlaunch β ΡΠ°ΠΉΠ» Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π΄Π»Ρ VcXsrv
<?xml version="1.0" encoding="UTF-8"?> <XLaunch WindowMode="MultiWindow" ClientMode="NoClient" LocalClient="False" Display="0" LocalProgram="xcalc" RemoteProgram="xterm" RemotePassword="" PrivateKey="" RemoteHost="" RemoteUser="" XDMCPHost="" XDMCPBroadcast="False" XDMCPIndirect="False" Clipboard="True" ClipboardPrimary="True" ExtraParams="" Wgl="True" DisableAC="False" XDMCPTerminate="False" />
x-run.vbs β WSL Π²ΡΠ΅Π³Π΄Π° Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΡΠΌΡΠ»ΡΡΠΎΡΠΎΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, Π΅ΡΠ»ΠΈ Π΅Π³ΠΎ Π·Π°ΠΊΡΡΡΡ β Π·Π°Π²Π΅ΡΡΠ°ΡΡΡ Π²ΡΠ΅ Π΅Π³ΠΎ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ. Π§ΡΠΎΠ± Π΄Π°Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Π½Π΅ ΠΌΠΎΠ·ΠΎΠ»ΠΈΠ»ΠΎ Π³Π»Π°Π·Π°, Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΊΡΡΡΡΠΌ. Π ΡΡΠ°ΡΡΡΡ Π² Windows Π²ΡΡΡΠΎΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ VBScript, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΡΠΊΡ:
WScript.CreateObject("Shell.Application").ShellExecute "wsl", "cd /home/user1; DISPLAY=:0 LANG=ru_RU.UTF-8 su user1 -c xfce4-session", "", "open", 0
ΠΠΎΡΡΠ½Ρ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. ΠΡ Π³ΠΎΠ²ΠΎΡΠΈΠΌ VBscript Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ wsl Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ
cd /home/user1; DISPLAY=:0 LANG=ru_RU.UTF-8 su user1 -c xfce4-session
, ΠΏΠ°ΠΏΠΊΠ° Π·Π°ΠΏΡΡΠΊΠ° Π½Π°ΠΌ Π½Π΅ Π²Π°ΠΆΠ½Π°, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°, Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ open β Π·Π°ΠΏΡΡΠΊ, 0 β ΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΆΠΈΠΌ. Π‘Π°ΠΌΠΎΠΌΡ wsl ΠΌΡ ΠΎΡΠ΄Π°Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅: ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π² ΠΏΠ°ΠΏΠΊΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π·Π°ΡΠ΅ΠΌ Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ DISPLAY (Π΄ΠΈΡΠΏΠ»Π΅ΠΉ X-ΡΠ΅ΡΠ²Π΅ΡΠ°) ΠΈ LANG (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ Π»ΠΎΠΊΠ°Π»Ρ) ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ xfce4-session ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ user1 (Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ su)- start.bat β batch ΡΠ°ΠΉΠ» Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°, ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΡΡΠ½ΡΡΡ Π² Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΠΊΡ
start config.xlaunch wscript x-run.vbs
ΠΠ°Π»Π΅Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½Π°Ρ start.bat ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠ°Π½Π΅Π»Ρ Xfce ΠΏΠΎΠ΄ ΡΠ΅Π±Ρ. ΠΠ°ΠΌΠ΅ΡΡ, ΡΡΠΎ Π·Π΄Π΅ΡΡ Ρ Π½Π°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° Π΅ΡΠ΅ ΠΎΠ΄Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ β ΠΏΠ°Π½Π΅Π»Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΏΠΎΠ²Π΅ΡΡ Π²ΡΠ΅Ρ ΠΎΠΊΠΎΠ½, Π½ΠΎ Π²ΠΎΡ Π²ΡΠ΄Π΅Π»ΠΈΡΡ ΡΠ΅Π±Π΅ ΠΌΠ΅ΡΡΠΎ, ΠΊΠ°ΠΊ ΠΏΠ°Π½Π΅Π»Ρ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΡΠΎΠ»Π΅ Windows ΠΎΠ½Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ. ΠΡΠ»ΠΈ ΠΊΡΠΎ Π·Π½Π°Π΅Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
ΠΡ ΠΈ ΠΏΠΎΠ΄ ΠΊΠΎΠ½Π΅Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΠ°ΡΡΠΈ, ΡΠΊΡΠΈΠ½ΡΠΎΡ ΠΌΠΎΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π°:
ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Windows ΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Linux
ΠΠ°ΠΏΡΡΠΊΠ°ΡΡ Linux ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· Windows ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π· ΡΠ΅ ΠΆΠ΅ 3 ΠΊΠΎΠΌΠ°Π½Π΄Ρ β bash, wsl ΠΈΠ»ΠΈ ubuntu. ΠΠ΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ, ΡΡΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°ΠΏΡΡΠΊ ΠΈΠ΄Π΅Ρ ΠΎΡ root, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠΎΠΈΡ ΠΏΠΎΠ½ΠΈΠΆΠ°ΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΡΠ΅ΡΠ΅Π· su
, ΡΠ°ΠΊ ΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ Π½Π΅ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ DISPLAY=:0 Π΅ΡΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ X-ΡΠ΅ΡΠ²Π΅Ρ. Π’Π°ΠΊ ΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΠΏΠ°ΠΏΠΊΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ΅ΡΠ΅Π· cd Π²Π½ΡΡΡΠΈ WSL. ΠΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΡΠΈΡΠ°Π΅ΠΌ md5 Π΄Π»Ρ file.txt Π½Π° Π΄ΠΈΡΠΊΠ΅ D ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Linux’ΠΎΠ²ΠΎΠΉ md5sum:
wsl md5sum < d:\file.txt
ΠΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Linux ΡΠ°ΠΊ ΠΆΠ΅ ΠΈΠΌΠ΅Π΅ΡΡΡ, Π»Π΅ΠΆΠΈΡ ΠΎΠ½Π° Π² %localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
. Π§ΠΈΡΠ°ΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ, Π° Π²ΠΎΡ ΠΏΠΈΡΠ°ΡΡ β Π½Π΅ ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΌΠ°ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠΌΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ Windows Π½Π΅ ΡΠΌΠ΅Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ ΠΈ Π²Π»Π°Π΄Π΅Π»ΡΡΠ°ΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Linux.
ΠΠ· Linux ΡΠ°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Windows ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌ exe-ΡΠ½ΠΈΠΊ ΠΈ ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
ΠΠΈΡΠΊΠΈ Windows ΠΌΠΎΠ½ΡΠΈΡΡΡΡΡΡ Π² /mnt
Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ Π±ΡΠΊΠ²Π°ΠΌΠΈ Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΄ΠΈΡΠΊ D Π±ΡΠ΄Π΅Ρ ΡΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ Π² /mnt/d
. ΠΠ· Linux ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ Windows. ΠΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ Π½Π° Π½ΠΈΡ
ΡΠΈΠΌΠ»ΠΈΠ½ΠΊΠΈ. ΠΡΠ°Π²Π° Ρ ΡΠ°ΠΊΠΈΡ
ΡΠ°ΠΉΠ»ΠΎΠ² Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄ΡΡ 0777, Π° Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ root.
Π‘Π΅ΡΠ΅Π²ΠΎΠΉ ΡΡΠ΅ΠΊ Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΎΠ±ΡΠΈΠΉ Ρ Windows. Π‘Π΅ΡΠ²Π΅Ρ ΠΏΠΎΠ΄Π½ΡΡΡΠΉ Π² Linux Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π½Π° localhost Π² Windows ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. ΠΠ΄Π½Π°ΠΊΠΎ unix-domain-socket Π΄Π»Ρ Windows Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎ ΠΏΡΡΡΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ, ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΡΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π²Π½ΡΡΡΠΈ Linux. ΠΡΡ
ΠΎΠ΄ Π²ΠΎ Π²Π½Π΅ΡΠ½ΡΡ ΡΠ΅ΡΡ Ρ Linux ΡΠ°ΠΊ ΠΆΠ΅ Π΅ΡΡΡ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΡΡΡ, Π΅ΡΠ»ΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π·Π°ΠΏΡΠ΅ΡΠ°Π΅Ρ ΡΠ°Π΅ΡΠ²ΠΎΠ».
ifconfig Π² Linux ΠΈ ipconfig Π² Windows Π²ΡΠ΄Π°ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΡΠ΅Π²ΡΡ
ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°Ρ
.
ΠΠ· Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° Π·Π°Π΄Π°Ρ Windows ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ ΠΏΡΠΈΠ±ΠΈΡΡ ΠΏΡΠΎΡΠ΅ΡΡ Π²Π½ΡΡΡΠΈ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Linux. ΠΠ΄Π½Π°ΠΊΠΎ Linux ΡΠ²ΠΈΠ΄ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ²ΠΎΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ.
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½ΡΠ΅ ΠΊΠ°ΠΌΠ½ΠΈ
Π―Π΄ΡΠΎ Linux Π² WSL Π½Π΅ Π½Π°ΡΡΠΎΡΡΠ΅Π΅. ΠΡΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ°-ΡΠΌΡΠ»ΡΡΠΎΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°ΡΡΡ Linux-ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΡ Π·Π°Π΄Π°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ°ΠΌΠ°, Π° ΡΠ°ΡΡΡ ΠΏΡΠΎΠΊΡΠΈΡΡΠ΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ Π² ΡΠ΄ΡΠΎ winNT. ΠΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΡΡΡ api Π² Π½Π΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π°, Π½ΠΎ Π½Π΅ Π²ΡΠ΅. Π‘Π²ΠΎΠ΅ ΡΠ΄ΡΠΎ ΡΠΎΠ±ΡΠ°ΡΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ, ΠΊΠ°ΠΊ ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠ΄ΡΠ° (.ko, Kernel Object).
Init ΠΏΡΠΎΡΠ΅ΡΡ Ρ WSL ΡΠΎΠΆΠ΅ ΡΠ²ΠΎΠΉ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π΅Π³ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° system.d Π½Π΅ Π²ΡΠΉΠ΄Π΅Ρ. Π£ ΠΌΠ΅Π½Ρ Π΄Π°Π²Π½ΠΎ Π΅ΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Π΄Π΅ΠΌΠΎΠ½ΠΎΠ² Π½Π° go, ΠΊΠΎΡΠΎΡΡΠΉ Π±Ρ ΡΠ°Π±ΠΎΡΠ°Π» Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΡΠ½ΠΈΡΠΎΠ² system.d ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ» Π±Ρ ΡΡ ΠΎΠΆΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, Π΄Π° Π²ΡΠ΅ ΡΡΠΊΠΈ Π½Π΅ Π΄ΠΎΡ ΠΎΠ΄ΡΡ.
ΠΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ openFUSE, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ. Π’Π°ΠΊ ΠΆΠ΅ Π½Π΅Π»ΡΠ·Ρ ΡΠ΄Π΅Π»Π°ΡΡ mount ΠΈΠ· ΡΠ°ΠΉΠ»Π°, mount Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ ΠΊΡΠΎΠΌΠ΅ bind Π·Π΄Π΅ΡΡ, ΠΏΠΎΡ ΠΎΠΆΠ΅, Π½Π΅ ΡΠΌΠ΅Π΅Ρ.
Π’Π°ΠΊ ΠΆΠ΅ Π½Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ°Π·Π±ΠΈΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Linux Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ²/Π΄ΠΈΡΠΊΠΎΠ².
ΠΡΡΠΌΠΎΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΆΠ΅Π»Π΅Π·Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ. ΠΡΠ΅ ΡΠ°ΠΊΠΈ ΠΌΡ Π½Π°Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΠ΅ Windows, Π° Π½Π΅ Π² ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΌ Linux. /dev ΠΈ /sys Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΏΡΡΡΡΡΡ, Π² Π½ΠΈΡ Π»ΠΈΡΡ ΠΏΡΠΎΡ Π΄Π° Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. ΠΠΎΡΡΡΠΏ ΠΊ GPU β ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΡΠ΅Π· X-ΡΠ΅ΡΠ²Π΅Ρ, Π½Π°ΠΏΡΡΠΌΡΡ β Π½ΠΈΠΊΠ°ΠΊ, ΡΠ°ΠΊ ΡΡΠΎ Π½Π΅ΠΉΡΠΎΡΠ΅ΡΠΈ ΠΎΠ±ΡΡΠ°ΡΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π² Windows.
Π JS ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ electron.js ΠΎΡΠΊΠ°Π·Π°Π»ΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π² WSL, ΠΏΡΠΈΡΠ»ΠΎΡΡ Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ node.js Π² Windows.
ΠΡΠΎΠ³ΠΈ
Π‘ΡΠ°ΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ»Π°ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π΄Π»ΠΈΠ½Π½ΠΎΠΉ, Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΎΠ½Π° ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π΅ΡΠ΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ.
WSL Π΄Π»Ρ ΠΌΠ΅Π½Ρ Π»ΠΈΡΠ½ΠΎ ΠΎΠΊΠ°Π·Π°Π»ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠ·Π°Π±Π΅Π»ΡΠ½ΡΠΌ, ΡΠ΅ΡΠ°ΡΡΠΈΠΌ ΠΌΠΎΠΈ Π·Π°Π΄Π°ΡΠΈ fullstack backend ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΠΈΡΡΡΠ°Π»ΠΊΠ° Ρ Linux Π·Π° ΠΏΠΎΠ»Π³ΠΎΠ΄Π° ΡΠ°ΠΊ ΠΈ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»Π°ΡΡ. ΠΠΎ ΠΎΠ±ΡΠΈΠΌ ΠΎΡΡΡΠ΅Π½ΠΈΡΠΌ Windows+WSL Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½Π΅Π΅, ΡΠ΅ΠΌ Linux+Wine.
ΠΠΎΠΊΠ° ΠΏΠΈΡΠ°Π» ΡΡΠ°ΡΡΡ, ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ Π² Microsoft Store ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΡΠ±ΠΎΡΠΊΠ° WSL Ρ Debian 9.3, Π΄Π°Π½Π½ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² ΠΌΠ½Π΅ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΠΌΠΏΠ°ΡΠΈΡΠ΅Π½, ΡΠ΅ΠΌ Ubuntu, ΠΏΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄Ρ ΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΡΠ°Π²ΠΈΡΡ.
ΠΡΡΡΡΠ΅ Π»Π°ΠΉΡΡ Π°ΠΊΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ WSL (ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux ) / Microsoft corporate blog / Habr
Π― Π³Π»ΡΠ±ΠΎΠΊΠΎ ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ Π² WSL (Windows Subsystem Π΄Π»Ρ Linux), ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π°Β WSL2Β Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π²Β Windows Insiders, ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΈΠ·ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ. ΠΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ ΡΠΈΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Ρ Π½Π°ΡΠ΅Π» Π² WSL, β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Β«ΡΠΈΡΡΠΎΒ» ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠΈΡΠ°ΠΌΠΈ. ΠΡΠΎ Π½Π΅ ΡΠΎΡ ΠΎΠΏΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΌΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΠΈΠ½Π°ΠΌΠΈ, ΠΈ ΠΎΠ½ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠ΅ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Linux ΠΈ Windows.ΠΠΎΠ΄ ΠΊΠ°ΡΠΎΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ Π²Π΅ΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ, ΡΠΌΠ΅ΡΠΈΠ²Π°Ρ Π°ΡΠ°Ρ ΠΈΡΠΎΠ²ΠΎΠ΅ ΠΌΠ°ΡΠ»ΠΎ ΠΈ ΡΠΎΠΊΠΎΠ»Π°Π΄!
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Windows Explorer ΠΈΠ· Linux ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ Π²Π°ΡΠ΅Π³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°
ΠΠΎΠ³Π΄Π° Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ WSL / bash ΠΈ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ²ΠΎΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ Β«explorer.exe .Β», Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠ° Windows, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ Linux Π±ΡΠ΄ΡΡ Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Ρ Π²Π°ΠΌ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΡΠ²Π΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ plan9.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π½Π°ΡΡΠΎΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Linux (Π½Π΅ CGYWIN) ΠΈΠ· Windows
Π― ΡΠΆΠ΅ ΠΏΠΈΡΠ°Π» ΠΎΠ± ΡΡΠΎΠΌ ΡΠ°Π½ΡΡΠ΅, Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π΅ΡΡΡ Π°Π»ΠΈΠ°ΡΡ Π΄Π»Ρ ΡΡΠ½ΠΊΡΠΈΠΉ PowerShell, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΡΡΠΎΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ LinuxΒ ΠΈΠ·Π½ΡΡΡΠΈ Windows.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ·Π²Π°ΡΡ Π»ΡΠ±ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Linux Π½Π°ΠΏΡΡΠΌΡΡ ΠΈΠ· DOS/Windows/ΡΠ΅Π³ΠΎ ΡΠ³ΠΎΠ΄Π½ΠΎ, ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠ² Π΅Π΅ ΠΏΠΎΡΠ»Π΅ WSL.exe, Π²ΠΎΡ ΡΠ°ΠΊ.
C:\temp> wsl ls -la | findstr "foo"
-rwxrwxrwx 1 root root 14 Sep 27 14:26 foo.bat
C:\temp> dir | wsl grep foo
09/27/2016 02:26 PM 14 foo.bat
C:\temp> wsl ls -la > out.txt
C:\temp> wsl ls -la /proc/cpuinfo
-r--r--r-- 1 root root 0 Sep 28 11:28 /proc/cpuinfo
C:\temp> wsl ls -la "/mnt/c/Program Files"
...contents of C:\Program Files...
ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ Windows ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ/Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈΠ· WSL/Linux, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΡΡΡ ΠΊ Windows Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² $PATH Π΄ΠΎ Windows. ΠΡΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎ ΡΠ²Π½ΠΎ Π²ΡΠ·Π²Π°ΡΡ Π΅Π³ΠΎ Ρ .exe Π² ΠΊΠΎΠ½ΡΠ΅. ΠΠΎΡ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Β«Explorer.exe.Β». ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ notepad.exe ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΠΉΠ».
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Visual Studio Code ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ Π²Π°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ Linux Π½Π°ΡΠΈΠ²Π½ΠΎ Π½Π° Windows
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ Β«code.Β», Π½Π°Ρ ΠΎΠ΄ΡΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ Π² WSL, ΠΈ Π²Π°ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΒ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ VS Remote.. ΠΡΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅Ρ Visual Studio Code ΠΏΠΎΠΏΠΎΠ»Π°ΠΌ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Β«headlessΒ» VS Code Server Π² Linux Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ VS Code Π² ΠΌΠΈΡΠ΅ Windows.
ΠΠ°ΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΒ Visual Studio CodeΒ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Remote β WSL. ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅Β Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΡ Windows TerminalΒ Π΄Π»Ρ Π»ΡΡΡΠ΅Π³ΠΎ ΠΎΠΏΡΡΠ° ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠΌ Π² Windows.
ΠΠΎΡ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΠ° ΡΡΠ°ΡΠ΅ΠΉ ΠΈΠ· Π±Π»ΠΎΠ³Π° Windows Command Line.
ΠΠΎΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° WSL 2
- ΠΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ ΡΠ²Π»ΡΡΡΡΡ ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠΈΠΌΠΈ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΠΎΡΠ΅Π½Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠΉ ΠΎΠΏΡΡ.
- ΠΡΡ ΠΎΠ΄Π½ΡΠΉ WSL Π±ΡΠ» ΠΎΡΠ΅Π½Ρ Β«ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌΒ», Π½ΠΎ ΠΈΠΌΠ΅Π» Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π½ΠΈΠ·ΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ VM.
- WSL 2 ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π³ΠΈΠ±ΡΠΈΠ΄Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½Π½ΡΠΌΠΈ VM, ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ ΠΈ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ.
ΠΠ°ΠΏΡΡΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Linux Π² ΡΡΠΈΡΠ°Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΠ½Π΄Ρ
ΠΠ΄Π΅ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Β«wsl —list —allΒ», ΠΈ Π² ΠΌΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΆΠ΅ Π΅ΡΡΡ ΡΡΠΈ Linux.
C:\Users\scott>wsl --list --all
Windows Subsystem for Linux Distributions:
Ubuntu-18.04 (Default)
Ubuntu-16.04
Pengwin
Π― ΠΌΠΎΠ³Ρ Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΈΡ , Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π·Π½Π°ΡΠΈΡΡ ΠΏΡΠΎΡΠΈΠ»ΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΈ ΠΏΠΎΡΠ²Π»ΡΠ»ΠΈΡΡ Π² ΠΌΠΎΠ΅ΠΌ Windows Terminal.
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ X Windows Server ΠΏΠΎΠ΄ Windows Ρ Pengwin
PengwinΒ — ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Linux-Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² WSL, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ΅Π½Ρ ΠΊΡΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΅Π³ΠΎ Π²Β Windows Store. ΠΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΠ΅ Pengwin Ρ X Server, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ X410,Β ΠΈ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΊΠ»Π°ΡΡΠ½ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΡΠΎΡΡΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² WSL ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ Windows.
Ana Betts ΠΎΡΠΌΠ΅ΡΠ°Π΅Ρ ΡΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅Ρ Π½ΠΈΠΊΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΉ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² WSL2 Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ Π½Π° n ΠΌΠ°ΡΠΈΠ½.
wsl --export MyDistro ./distro.tar
# ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΠ΅ Π΅Π³ΠΎ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ, Dropbox, Onedrive, Π³Π΄Π΅-ΡΠΎ Π΅ΡΠ΅
mkdir ~/AppData/Local/MyDistro
wsl --import MyDistro ~/AppData/Local/MyDistro ./distro.tar --version 2
ΠΠΎΡ ΠΈ Π²ΡΠ΅. ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Linux, ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π½Π° Π²ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ ΡΡΠ΅ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ Windows Git Π²Π½ΡΡΡΠΈ WSL
ΠΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΠΈΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠΊΠ°ΡΡ Π² ΠΊΡΠ»ΡΠΌΠΈΠ½Π°ΡΠΈΡΒ Π² ΡΡΠΎΠΌ ΠΊΡΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ ΠΎΡ Ana Betts, Π³Π΄Π΅ ΠΎΠ½Π° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅ΡΒ Windows Git Credential Provider Π² WSL, ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Ρ /usr/bin/git-credential-manager Π² ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ git creds Windows. ΠΠ΅Π½ΠΈΠ°Π»ΡΠ½ΠΎ. ΠΡΠΎ Π±ΡΠ»ΠΎ Π±Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ ΡΠΈΡΡΠΎΠΉ ΠΈ ΡΠ΅ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ.
ΠΡΠΎΠ±ΡΠΉΡΠ΅, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΠΉΡΠ΅ WSL,Β Windows Terminal, ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅Β Π±Π»Π΅ΡΡΡΡΡΡ ΡΡΠ΅Π΄Ρ Linux Π½Π° Windows..
ΠΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Linux Ρ ΡΠ°Π±ΠΎΡΠΈΠΌ ΡΡΠΎΠ»ΠΎΠΌ Π² Windows 10
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
Π²Π΅ΡΡΠΈΡΡ
Β WindowsΒ 10,Β MicrosoftΒ ΡΠ°Π·ΡΠ΅ΡΠΈΠ»Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΒ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΒ Π±Π΅ΡΠ°-Π²Π΅ΡΡΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ bash ΡΠ΅ΡΠ΅Π·Β Ubuntu.Β Π‘ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Fall Creators Update 1709,Β ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡΒ WindowsΒ Π΄Π»ΡΒ LinuxΒ (WSL).Β Π‘ WSL Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΌΠΎΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΡΠ΅ΡΠ΅Π· Π½Π°ΡΡΠΎΡΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ bash, ΡΠΏΡΠ°Π²Π»ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°ΠΌΠΈ ΠΈ Π΄Π°ΠΆΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈΒ LinuxΒ
ΠΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΠ°ΠΌΡΡ ΠΌΠΎΡΠ½ΡΡ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΠ°ΡΡΡ Linux: ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π³Π»ΡΠ±ΠΎΠΊΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ bash ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈΠ· Linux. Windows Subsystem Π΄Π»Ρ Linux ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ bash ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠ°ΠΊ grep,Β sed ΠΈ awk, Π° ΡΠ°ΠΊΠΆΠ΅ bash ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² ΠΈ Linux ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΊΠ°ΠΊ Vim, Emacs ΠΈ tmux. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ°ΠΊΠΈΠΌ ΡΠ·ΡΠΊΠ°ΠΌ, ΠΊΠ°ΠΊ Javascript ΠΈ node.js, Ruby, Python ΠΈ C/C+, ΠΈ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ sshd, MySQL, Apache ΠΈ lighttpd. Π Π΅ΡΠ»ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π½Π΅ ΠΈΠ΄Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ Linux Ρ ΠΏΠΎΠΌΠΎΡΡΡ apt-get Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°Β WindowsΒ Π΄Π»ΡΒ Linux — ΡΡΠΎ ΡΡΠ΅Π·Π°Π½Π½Π°Ρ Π²Π΅ΡΡΠΈΡ Linux, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² Windows 10. ΠΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ°ΡΡΠΈ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux, Π²Ρ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ ΡΡΠ΅Π΄Ρ ΠΈΠ»ΠΈ ΠΎΠΊΠΎΠ½Π½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ, Ρ ΠΊΠΎΡΠΎΡΡΠΌ Π°ΡΡΠΎΡΠΈΠΈΡΡΠ΅ΡΡΡ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΠΉ Linux. ΠΠΎ, Ρ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» Linux Π² Windows 10. ΠΠ°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Π° Π΄Π²ΠΎΠΉΠ½Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ ΠΠ‘ ΠΈ Π½Π΅ Π½ΡΠΆΠ½Ρ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux Π² Windows 10
ΠΠΎΠ»Π½Π°Ρ Π²Π΅ΡΡΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡΒ WindowsΒ Π΄Π»ΡΒ LinuxΒ Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Fall Creators (1709, ΡΠ±ΠΎΡΠΊΠ° 16215 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ).Β Β Π‘ ΡΡΠΈΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ WindowsΒ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡΒ WindowsΒ Π΄Π»ΡΒ LinuxΒ ΠΈΠ·Β WindowsΒ Store.Β ΠΠ°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΡ Π² PowerShell. ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ ΡΡΠΈ ΠΏΡΠ½ΠΊΡΠ°. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux Π½Π° ΡΠ°ΠΉΡΠ΅ microsoft.Β
1. ΠΠΊΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Π² PowerShell
- ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ PowerShell ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°.
ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΠΈΠ»ΠΈ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΎΠΊΠ½ΠΎ PowerShell.Β ΠΠ°ΠΆΠΌΠΈΡΠ΅Β Y, Π·Π°ΡΠ΅ΠΌ Enter ΠΈΒ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΏΡΠΈ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠ°.Β ΠΠ°Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ΅Π½ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ Π»ΡΠ±ΡΡ ΡΠ°Π±ΠΎΡΡ Π·Π°ΡΠ°Π½Π΅Π΅.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
2. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Linux ΠΈΠ»ΠΈΒ Ubuntu ΠΈΠ· Windows Store
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½ WindowsΒ ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Linux, ΠΊΠΎΡΠΎΡΡΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ.Β ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°, Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΡΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux, Π²ΠΊΠ»ΡΡΠ°Ρ Ubuntu.
- ΠΠ°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ «ΠΠΎΠ»ΡΡΠΈΡΡ«, ΡΡΠΎΠ±Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ².
3. ΠΠ°ΠΏΡΡΠΊ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°
- ΠΠΎΡΠ»Π΅ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ, Π½Π°ΠΆΠΌΠΈΡΠ΅ «ΠΠ°ΠΏΡΡΡΠΈΡΡ» ΠΈΠ»ΠΈ Π² ΠΏΠΎΠΈΡΠΊΠ΅ windows Π½Π°Π±Π΅ΡΠΈΡΠ΅ ubuntu.
- ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ ΠΎΠΊΠ½ΠΎ, Π΄ΠΎΠΆΠ΄ΠΈΡΠ΅ΡΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠ΅ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ UNIX.Β ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ Windows ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΊ Π²Π°ΡΠ΅ΠΌΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ.
ΠΡΠ»ΠΈ Π²Π΄ΡΡΠ³ Ρ Π²Π°Ρ Π·Π°ΠΏΡΡΠΊΒ Ubuntu Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ 0x8000000d, ΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ PowerShell ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π° ΠΏΠΎΡΠΎΠΌ ΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ubuntu Π΅ΡΠ΅ ΡΠ°Π·
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» Linux Π² Windows
Π¨Π°Π³ 1. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ ΠΏΡΠΎΠ΄Π΅Π»Π°Π»ΠΈ Π²ΡΡΠ΅ ΡΠ°Π³ΠΈ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΈ Π²ΠΊΠ»ΡΡΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΡΠΈΡΠΈΡΠ΅ΠΌΡ Linux Π΄Π»Ρ Windows 10, ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ°Π³ΠΎΠΌ Π±ΡΠ΄Π΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» Linux. Π ΠΎΠΊΠ½Π΅ bash Linux Π²Π²Π΅Π΄ΠΈΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎ 1 -ΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ:
sudo apt update
sudo apt upgrade
Π¨Π°Π³ 2. Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅Β Π² Sourceforge, ΡΡΠΎΠ±Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΒ ΡΡΠΈΠ»ΠΈΡΡ VcXsrv Windows X Server. ΠΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» Ubuntu, Π² ΠΌΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΡΡ, ΠΊΠ°ΠΊ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ°.
Π¨Π°Π³ 3. ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ, ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΡΠ΅ΡΠ²Π΅Ρ X Window ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, ΠΊΠ°ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΠ°Π³Π΅ 2. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠ°Π³ΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²Π°ΡΠ΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° Linux. ΠΠΎΡΡΡΠΏΠ½Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° linux, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ GNOME, Cinnamon, Xfce, LXDE. Π― Π±ΡΠ΄Ρ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ LXDE. ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
sudo apt install lxde
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ LXDE Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΡΡΠ°Π²ΠΈΡ Linux ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» ΡΠ΅ΡΠ΅Π· X-ΡΠ΅ΡΠ²Π΅Ρ:
export DISPLAY=:0
export LIBGL_ALWAYS_INDIRECT=1
ΠΠ΅ Π·Π°ΠΊΡΡΠ²Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ bash ubuntu, ΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ Π΅Ρ, ΠΈ ΠΈΠ΄Π΅ΠΌ Π½ΠΈΠΆΠ΅
Π¨Π°Π³ 3. ΠΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ X Server, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΡΠΊΠ°ΡΠ°Π»ΠΈ Π²ΡΡΠ΅, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΡΠ΅Π΄Ρ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° Linux. ΠΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ VcXsrv, Π²Π°ΠΌ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΄Π°Π½ Π»Π°ΡΠ½ΡΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ Π² ΠΎΠΊΠ½Π΅, Π½Π° Π²Π΅ΡΡ ΡΠΊΡΠ°Π½ ΠΈ Ρ.ΠΏ. ΠΠΎΡΡΠ°Π²ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 0 Π² Π³ΡΠ°ΡΠ΅ Display number. ΠΠ°ΠΆΠΌΠΈΡΠ΅ «ΠΠ°Π»Π΅Π΅» ΠΈ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΎΠΊΠ½Π΅ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Start no client. ΠΠ°Π»Π΅Π΅ ΠΆΠΌΠΈΡΠ΅ Π²ΡΠ΅ Π²ΡΠ΅ΠΌΡ Next. ΠΡΠ΅ Π³ΠΎΡΠΎΠ²Π°, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΈΡΡΡΠΏΠ°ΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅.
ΠΡΠ»ΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ, ΡΠΎ ΡΠΌΠΎΡΡΠΈΠΌ Π½ΠΈΠΆΠ΅, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π» ΡΠΊΡΠΏΠΎΡΡ Π΄ΠΈΡΠΏΠ»Π΅Ρ ΠΈΠ»ΠΈ Π²Ρ ΡΡΠΎ-ΡΠΎ ΡΠΏΡΡΡΠΈΠ»ΠΈ.
Π¨Π°Π³ 4. ΠΠ°ΠΏΡΡΠΊ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΡΡΠΎΠ»Π° Linux Π² Windows ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ bash ubuntu. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ°ΠΌ VcXsrv (ΡΠ°Π³ 3), Π΄ΠΎΠΉΠ΄ΠΈΡΠ΅ Π΄ΠΎ ΡΠ΅ΡΠ½ΠΎ ΠΎΠΊΠ½Π° ΠΈ Π½Π΅ Π·Π°ΠΊΡΡΠ²Π°ΠΉΡΠ΅ Π΅Π³ΠΎ, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ bash ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ubuntu, Π΅ΡΠ»ΠΈ Π²Ρ Π΅Ρ Π·Π°ΠΊΡΡΠ»ΠΈ, ΠΈ Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
export DISPLAY=:0
startlxde
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·Π°ΠΌ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° ΠΈ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΡΡΠΎΠ» Linux Π² Windows 10. Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Linux ΠΈ Π΄Π°ΠΆΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΡΠΈΠ»ΠΈΡΡ.
comments powered by HyperComments
Linux Π² ΡΡΠ΅Π΄Π΅ Windows 10.
Β Β ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ Windows 10 Build 14251, Π² Π½Π°Π±ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ Π±ΡΠ»Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux (Windows Subsystem for Linux ΠΈΠ»ΠΈ WSL). ΠΠ»Π°Π²Π½ΠΎΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ WSL β ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΡΠ»ΠΎΠΉ Π² ΡΡΠ΅Π΄Π΅ Windows 10 Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Linux. ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π»Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Ubuntu 14.04, ΠΎΠ±ΡΠ°Π· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ°Π³Π°Π·ΠΈΠ½ Microsoft Store. ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² ΡΠ²Π΅Π»ΠΈΡΠΈΠ»ΠΎΡΡ, ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π±Π΅Π· ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½ ΠΈΠ»ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΡΠΌΡΠ»ΡΡΠΈΠΈ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Windows 10 Π² ΠΏΠ°ΡΡ ΠΊΠ»ΠΈΠΊΠΎΠ² ΠΌΡΡΠΊΠΎΠΉ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° Linux Π±Π΅Π· Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΡΡΡΡΡ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π·Π°Π³ΡΡΠΆΠ΅Π½Π½ΠΎΠΌΡ ΠΈΠ· Microsoft Store.
ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° WSL ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ:
1. ΠΡΠ±ΡΠ°ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² ΠΈΠ· ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° Windows (Microsoft Store)
2. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ Linux ΠΈ ΠΏΡΠΎΡΠΈΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ.
3. ΠΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠΊΡΠΈΠΏΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Linux, ΠΊΠ°ΠΊ ssh, MySQL, Apache, ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ C/C++, Ruby, Python ΠΈ Ρ.ΠΏ.
4. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° GNU/Linux.
5. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΠ±Π΅ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΡΡΠΎΠ².
ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° WSL ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΡΡ, ΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π»Π°ΡΡ Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡ, ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΡΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ WSL 2, ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡΡΡ ΠΏΠΎΠ²ΡΡΠ΅Π½Π½ΡΠΌ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ, ΡΠ»ΡΡΡΠ΅Π½Π½ΡΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΡΠΌ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ Windows, Π½ΠΎΠ²ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ Π½Π° Π±Π°Π·Π΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΄ΡΠ° Linux, ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² WSL 2. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΄Π°Π½Π½ΠΎΠ΅ ΡΠ΄ΡΠΎ Linux ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ (Open Source), ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° github.com-WSL2-Linux-Kernel
WSL 2 ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π² ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ²ΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΄ΡΠΎ Linux, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ΅ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ΅ΠΉ Π²ΡΡΠΎΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Windows ΠΈ Linux ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΠ΅ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ Π΄Π°Π½Π½ΡΠΌ, ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° zip-Π°ΡΡ ΠΈΠ²ΠΎΠ² Π² ΡΡΠ΅Π΄Π΅ WSL 2 Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² 15-20 ΡΠ°Π· Π±ΡΡΡΡΠ΅Π΅, Π° ΡΠ±ΠΎΡΠΊΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² β Π² 2-5 ΡΠ°Π· Π±ΡΡΡΡΠ΅Π΅ ΡΠ΅ΠΌ Π² WSL 1.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux (WSL) Π²ΡΠΊΠ»ΡΡΠ΅Π½. ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π°ΠΏΠΏΠ»Π΅ΡΠΎΠΌ ΠΠ°Π½Π΅Π»ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ — ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Windows:

ΠΠΎΡΠ»Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ WSL, Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΡ Windows.
ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ WSL ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π΅Π΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΡ Power Shell, Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°. ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
ΠΡΠΈΠΌΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ:
FeatureName : Microsoft-Windows-Subsystem-Linux
DisplayName : ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux
Description : ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ»ΡΠΆΠ±Ρ ΠΈ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
ΡΡΠ΅Π΄ΡΡΠ² ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ Linux Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π² Windows.
RestartRequired : Possible
State : Enabled
CustomProperties :
ServerComponent\Description : ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ»ΡΠΆΠ±Ρ ΠΈ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
ΡΡΠ΅Π΄ΡΡΠ² ΠΈ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ Linux Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π² Windows.
ServerComponent\DisplayName : ΠΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux
ServerComponent\Id : 1033
ServerComponent\Type : Feature
ServerComponent\UniqueName : Microsoft-Windows-Subsystem-Linux
ServerComponent\Deploys\Update\Name : Microsoft-Windows-Subsystem-Linux
Π‘ΡΡΠΎΠΊΠ° State : Enabled ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π΄Π»Ρ Linux Π²ΠΊΠ»ΡΡΠ΅Π½Π°.
ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ WSL ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Power Shell ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
ΠΠ»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ WSL:
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
ΠΡΠ±ΠΎΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Linux
ΠΠΎΡΠ»Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ WSL ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ Windows 10 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΡΡΠΏΠΈΡΡ ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΠ‘ Linux. Π ΠΏΡΠ΅ΠΆΠ½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ ΡΡΠΈΠ»ΠΈΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ lxrun.exe. ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ ΠΎΠ½Π° ΡΡΠΈΡΠ°Π΅ΡΡΡ ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅ΠΉ ΠΈ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½Π° ΠΈΠ· ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ WSL. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΠ°Π³Π°Π·ΠΈΠ½Π° Windows (Microsoft Store):
ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Kali:

ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΠΌ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΊΡΠ°ΡΠΊΠΈΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π΅, ΡΠΏΠΎΡΠΎΠ±Π΅ Π·Π°ΠΏΡΡΠΊΠ° Linux ΠΏΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΠΎΠΌ ΠΎΠ±ΡΠ°Π·Π΅. ΠΠ»Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠ° Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ°Π· Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ°ΡΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux.
ΠΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π΅Π³ΠΎ Π·Π°ΠΏΡΡΠΊ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΠ°ΠΏΡΡΡΠΈΡΡ

ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° Π½Π°ΡΠ½Π΅ΡΡΡ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Linux Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ WSL. Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²Π²Π΅ΡΡΠΈ ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ.

ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. Π ΡΡΠΎΠΌΡ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΠΈΠΌΠ΅Π½ΠΈ ΡΠ·Π»Π°, ΠΊΠ»ΠΈΠ΅Π½ΡΠ° DNS ΠΈ Ρ.ΠΏ Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄ΠΈΡΠΊΠΈ ΠΠ‘ Windows 10 (ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ — /mnt/c — Π΄Π»Ρ Π΄ΠΈΡΠΊΠ° C:, /mnt/d — Π΄Π»Ρ Π΄ΠΈΡΠΊΠ° D: ΠΈ Ρ.Π΄). ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Linux Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π΅Π³ΠΎ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΡΠ΅Π΄ΡΡΠ² Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°, ΠΏΡΠΈ ΡΠ΅ΠΌ β ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠΌ Ρ ΠΠ‘ Linux, ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Π±ΡΠ΄Π΅Ρ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ, Π² Microsoft Store ΠΈΠΌΠ΅Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Linux β Ubuntu ( Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ Ρ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ), Kali, Debian ΠΈ Suse (Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ). ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΡΡΠΎΡ Π½Π°Π±ΠΎΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΡΠ°ΡΡΠΈΡΡΡΡΡΡ. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΠΌ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠΌ, ΠΏΠΎ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ΅ Microsoft Store, ΡΠ²Π»ΡΠ΅ΡΡΡ Ubuntu. ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, Π²Π²Π΅Π΄Ρ:
ubuntu
ΠΠΈΠ±ΠΎ Win+R — ubuntu
ΠΠΈΠ±ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ»ΡΠΊΠ° ΠΈΠ· ΠΌΠ΅Π½Ρ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΡΡΠΊ — Ubuntu.
Π ΡΠ°ΠΌΠΎΠΌ Π½Π°ΡΠ°Π»Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Π½ΠΎΠ²Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Linux, ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΠ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΉ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π°Π±ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ.
Π Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Debian (Ubuntu) ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° apt Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ APT (Advanced Packaging Tool). ΠΠ°Π½Π½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° ΠΈ Π΅Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠ΅ (apt-cache, apt-get) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½ΠΎΠ²ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ , ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ , Π° ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π²ΡΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ:
apt βh — ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ apt
apt-cache βh — ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ apt-cache
apt-get βh — ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ apt-get
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ man-ΡΡΡΠ°Π½ΠΈΡ:
man apt
sudo apt-get update — ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ, Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΠ°ΠΉΠ»Π΅ /etc/apt/sources.list.
sudo apt-get upgrade — ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
sudo apt-get install mc — ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Midhight Commander
apt-get remove —purge mc — ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Midhight Commander ΠΈ Π²ΡΠ΅ Π΅Π³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ (ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ —purge)
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ WSL
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ WSL 2 ΡΡΠ°Π»Π° Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ°Π³ΠΎΠΌ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ, Π² Π½Π΅ΠΉ ΠΎΡΡΠ°ΡΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΡ ΠΠ‘ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° Linux Π² ΡΡΠ΅Π΄Π΅ Windows. Π₯ΠΎΡΡ, ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ, ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ WSL, ΡΠ°ΠΊΠ°Ρ Π·Π°Π΄Π°ΡΠ° ΠΈ Π½Π΅ ΡΡΠ°Π²ΠΈΠ»Π°ΡΡ, Π²Π΅Π΄Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΠΎΠ·Π΄Π°ΡΡΠ΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΡ, Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡΡΡ ΠΈ ΠΏΡΠΈΠ²ΡΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΠ‘ Windows. ΠΡΠ»ΠΈ ΠΏΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°ΡΠΈ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ, ΡΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° WSL Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ βΠ½Π°ΡΡΠΎΡΡΠΈΠΉβ Linux, Ρ ΠΎΡΡ ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΡΡ ΠΊ Π½Π΅ΠΌΡ Π²ΠΏΠ»ΠΎΡΠ½ΡΡ.
Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ WSL Π½Π° Π²ΡΠΎΡΡΡ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ 2019 Π³. Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΡΠ΄ΡΠ°, Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π΄Π»Ρ Linux ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΡΠΎΠΊΠ΅ΡΠΎΠ², Π½Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ ΠΈ Ρ.Π΄. ΠΈ Ρ.ΠΏ. ΠΠ°ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ β Π½Π΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΡΠ΅Π±ΡΡΡΠΈΡ Π½Π°Π»ΠΈΡΠΈΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΡΠ΄ΡΠ°, Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ»ΡΠΆΠ±. Π§Π°ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±ΡΠ΄Π΅Ρ ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π²ΡΡ ΠΎΠ΄Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ WSL, Π»ΠΈΠ±ΠΎ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ ΠΎΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΊΠ°ΠΊ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ WSL SSH Launcher, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈΠ· Microsoft Store ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΠ²ΠΈΡΠ° ssh Π² ΡΡΠ΅Π΄Π΅ WSL. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠ»Π°ΡΠ½Π°Ρ ($0.99), Π½ΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΈ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π½Π°Ρ Π²Π΅ΡΡΠΈΡ.
Π‘ΡΡΠ°Π½ΠΈΡΡ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ WSL:
BASH — ΠΊΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ° BASH Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ΅ Windows Π΄Π»Ρ Linux (WSL).
WSL — Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ Linux ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux (WSL) Π² Windows 10
WSLconfig — ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux (WSL) Π² Windows 10
ΠΡΠ»ΠΈ Π²Ρ ΠΆΠ΅Π»Π°Π΅ΡΠ΅ ΠΏΠΎΠΌΠΎΡΡ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ «ΠΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ» Π΄Π»Ρ ΡΠ²ΠΎΠ΅ΠΉ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ
Π Π½Π°ΡΠ°Π»ΠΎ ΡΡΡΠ°Π½ΠΈΡΡ       |       ΠΠ° Π³Π»Π°Π²Π½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΡΠ°Π ΡΡΠ½Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ Windows Π΄Π»Ρ Linux (WSL) Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ²
- ΠΡΠ΅ΠΌΡ ΡΡΠ΅Π½ΠΈΡ: 2 ΠΌΠΈΠ½
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎ (ΠΈΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ) Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° WSL Linux Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ Microsoft Store.There are several scenarios in which you may not be able (or want) to, install WSL Linux distros via the Microsoft Store. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΎΠΌΠ΅Ρ SKU ΠΠ‘ Windows Server ΠΈΠ»ΠΈ Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ (LTSC), ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Microsoft Store, ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠΈ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΡΠ΅ΡΠΈ ΠΈ (ΠΈΠ»ΠΈ) Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ, ΡΡΠΎΠ±Ρ Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Microsoft Store Π² Π²Π°ΡΠ΅ΠΉ ΡΡΠ΅Π΄Π΅.Specifically, you may be running a Windows Server or Long-Term Servicing (LTSC) desktop OS SKU that doesn’t support Microsoft Store, or your corporate network policies and/or admins to not permit Microsoft Store usage in your environment.
Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΌΠ°Π³Π°Π·ΠΈΠ½Ρ WSL, ΠΊΠ°ΠΊ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Linux Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Π² WSL?In these cases, while WSL itself is available, how do you download and install Linux distros in WSL if you can’t access the store?
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΡΡΠ΅Π΄Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ cmd, PowerShell ΠΈ Linux/WSL Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ², Π½Π΅ ΠΌΠΎΠ³ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Windows 10 S.Note: Command-line shell environments including Cmd, PowerShell, and Linux/WSL distros are not permitted to run on Windows 10 S Mode. ΠΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΠΆΠΈΠΌ S. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΡΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ .This restriction exists in order to ensure the integrity and safety goals that S Mode delivers: Read this post for more information.
Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ²Downloading distros
ΠΡΠ»ΠΈ Microsoft Store ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ Π²ΡΡΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Linux, ΡΠ΅Π»ΠΊΠ½ΡΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠ»ΠΊΠΈ:If the Microsoft Store app is not available, you can download and manually install Linux distros by clicking these links:
ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² <distro>.appx
Π² Π²ΡΠ±ΡΠ°Π½Π½ΡΡ ΠΏΠ°ΠΏΠΊΡ.This will cause the <distro>.appx
packages to download to a folder of your choosing. Π‘Π»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ , ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π‘ΠΊΠ°ΡΠ°Π½Π½ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ².Follow the installation instructions to install your downloaded distro(s).
Π‘ΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈDownloading distros via the command line
ΠΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:If you prefer, you can also download your preferred distro(s) via the command line:
Π‘ΠΊΠ°ΡΠ°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ PowerShellDownload using PowerShell
Π§ΡΠΎΠ±Ρ ΡΠΊΠ°ΡΠ°ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ PowerShell, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ Invoke-WebRequest .To download distros using PowerShell, use the Invoke-WebRequest cmdlet. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ Ubuntu 16,04.Here’s a sample instruction to download Ubuntu 16.04.
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing
Π‘ΠΎΠ²Π΅Ρ
ΠΡΠ»ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΎΡΠΊΠ»ΡΡΠΈΡΠ΅ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Π·Π°Π΄Π°Π² $ProgressPreference = 'SilentlyContinue'
If the download is taking a long time, turn off the progress bar by setting $ProgressPreference = 'SilentlyContinue'
Π‘ΠΊΠ°ΡΠ°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ «ΠΏΠ΅ΡΠ΅Π»ΠΈΡΡΡΠ²Π°Π½ΠΈΠ΅»Download using curl
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Windows 10 ΠΏΡΡΠΆΠΈΠ½Ρ 2018 (ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ) Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ , Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ Π²Π΅Π±-Π·Π°ΠΏΡΠΎΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠΌΠ°Π½Π΄Ρ HTTP GET, POST, WHERE ΠΈ Ρ. Π΄.) ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.Windows 10 Spring 2018 Update (or later) includes the popular curl command-line utility with which you can invoke web requests (i.e. HTTP GET, POST, PUT, etc. commands) from the command line. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ curl.exe
, ΡΡΠΎΠ±Ρ ΡΠΊΠ°ΡΠ°ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΠΎΠ²:You can use curl.exe
to download the above distros:
curl.exe -L -o ubuntu-1604.appx https://aka.ms/wsl-ubuntu-1604
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ curl.exe
(Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ curl
), ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π² PowerShell Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ», Π° Π½Π΅ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ PowerShell Π΄Π»Ρ Invoke-WebRequest .In the above example, curl.exe
is executed (not just curl
) to ensure that, in PowerShell, the real curl executable is invoked, not the PowerShell curl alias for Invoke-WebRequest
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
curl
ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅, Π΅ΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠ·Π²Π°ΡΡ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΡΠΈΠΏΡ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ cmd ΠΈ (ΠΈΠ»ΠΈ).bat
/.cmd
ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π².Note: Usingcurl
might be preferable if you have to invoke/script download steps using Cmd shell and/or.bat
/.cmd
scripts.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Installing your distro
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Windows 10, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ PowerShell.If you’re using Windows 10 you can install your distro with PowerShell. ΠΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ², ΡΠΊΠ°ΡΠ°Π½Π½ΡΠΉ Π²ΡΡΠ΅, ΠΈ Π² ΡΡΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π³Π΄Π΅ app_name
β ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ². appx.Simply navigate to folder containing the distro downloaded from above, and in that directory run the following command where app_name
is the name of your distro .appx file.
Add-AppxPackage .\app_name.appx
ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Windows Server, ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Windows Server .If you are using Windows server you can find the install instructions on the Windows Server documentation page.
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ² ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡΡΠ΅ΡΡ ΡΠΎ ΡΡΡΠ°Π½ΠΈΡΠ΅ΠΉ ΡΡΠ°ΠΏΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ , ΡΡΠΎΠ±Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ².Once your distro is installed please refer to the Initialization Steps page to initialize your new distro.