WSL (Windows 10 рдореЗрдВ рд▓рд┐рдирдХреНрд╕ рд╕рдмрд╕рд┐рд╕реНрдЯрдо) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░реЗрдВ

рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЯреЛрд╕реНрдЯрд░ рдкрд░ рдПрдХ рдкреНрд░рд╢реНрди рдХреЗ рджреНрд╡рд╛рд░рд╛ рдореБрдЭреЗ рдпрд╣ рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдореИрдВ, рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХреЗ рдмрд╛рдж, рд▓рдЧрднрдЧ рдЫрд╣ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ, рдПрдХ рд╣реЛрдо рдкреАрд╕реА рдкрд░ рд╡рд┐рдВрдбреЛрдЬ 10 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдЕрдкрдиреЗ рдХрд╛рдо рдореЗрдВ рдЯрд░реНрдорд┐рдирд▓ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдиреЗ рдореБрдЭреЗ рд▓рдЧрднрдЧ рддреБрд░рдВрдд рдкреНрд░рд╢реНрди рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛: рдпрд╛ рддреЛ рдПрдХ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдпрд╛ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдореИрдВрдиреЗ рджреВрд╕рд░рд╛ рдЪреБрдирд╛, рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдерд╛ред


рдмрд┐рд▓реНрд▓реА рдХреЗ рддрд╣рдд, рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ WSL рдХреЛ рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, рдореБрдЭреЗ рдХреМрди рд╕реА рд╕рдорд╕реНрдпрд╛рдПрдВ рдФрд░ рд╕реАрдорд╛рдПрдВ рдЖрдИрдВ, рд╡рд┐рдВрдбреЛрдЬ рд╕реЗ рд▓рд┐рдирдХреНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреИрд╕реЗ рдЪрд▓рд╛рдПрдВ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╡рд┐рдВрдбреЛрдЬ рдбреЗрд╕реНрдХрдЯреЙрдк рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ Xfce рдкрд░реНрдпрд╛рд╡рд░рдг рддрддреНрд╡реЛрдВ рдХреЛ рдХреИрд╕реЗ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдПред



рдореИрдВрдиреЗ рдХрднреА рдирд╣реАрдВ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдореИрдВ рдПрдХ рджрд┐рди рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдКрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рдПрдХ рд╕рдВрдпреЛрдЬрди рдиреЗ рдореБрдЭреЗ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░рдг рджрд┐рдпрд╛: рдореЗрд░реА рдкрддреНрдиреА, рдЬреЛ рдЖрдИрдЯреА рд╕реЗ рджреВрд░ рдереА, рд▓рдЧрднрдЧ рд╣рд░ рдмрд╛рд░ рдЬрдм рд╡рд╣ рдПрдХ рдХрдВрдкреНрдпреВрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рдЦреАрдВрдЪрддреА рд╣реИ; рдПрдХ рдЦреЗрд▓ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╖рд╛рдж рдЬрд╛рдЧ рдЙрдард╛, рд▓реЗрдХрд┐рди рд╡рд╣ рд╢рд░рд╛рдм рдХреЗ рддрд╣рдд рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреА рдереА; рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдореБрдЭреЗ рдПрдХ рд╡рд┐рдВрдбреЛрдЬ 10 рдкреНрд░реЛ рджрд┐рдпрд╛ред рдореИрдВрдиреЗ рд╕рд┐рд╕реНрдЯрдо рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рдЧрднрдЧ рддреБрд░рдВрдд рдмрд╛рдж рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛, рдХрдИ рд╢рд╛рдо рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЦреЗрд▓рд╛, рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдЙрддреНрдкрд╛рдж рдореЗрд░реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдПрдХ рдЕрдзрд┐рдХ рдкрд░рд┐рдЪрд┐рдд рдЯрд░реНрдорд┐рдирд▓ рдФрд░ рдЖрдо рддреМрд░ рдкрд░ рдХреБрдЫ рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред


WSL рдФрд░ рд╡рд┐рддрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ


рддреБрд░рдВрдд рдЖрд░рдХреНрд╖рдг рдХрд░реЗрдВ, рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЖрдк рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдпрд╛ lxrun /install рдХрдВрд╕реЛрд▓ рдкрд░ lxrun /install рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХрд╛ рд╡рд┐рд╡рд░рдг рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рд╡рд┐рдзрд┐ рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ (рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХреА рд░рд┐рд╣рд╛рдИ рдХреЗ рдмрд╛рдж)ред рдЬрд╣рд╛рдБ рддрдХ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдЕрдм WSL рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рдкрд╕рдВрджреАрджрд╛ рд╡рд┐рддрд░рдг рдХреЗ рд╕рд╛рде рд╣реА Microsoft Store рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдореИрдВ рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм рдореИрдВрдиреЗ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХрд┐рдпрд╛ рдерд╛, OpenSUSE, SUSE рд▓рд╛рдЗрдиреЗрдХреНрд╕ рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рдФрд░ рдЙрдмрдВрдЯреВ 16.04 рдбрд┐рд╕реНрдЯреНрд░реАрдмреНрдпреВрд╢рди - рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдереЗ - рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЛ рдореИрдВрдиреЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдпрд╛ рдерд╛ред рдЙрдмрдВрдЯреВ 18.04, рдбреЗрдмрд┐рдпрди 9 рдФрд░ рдХрд╛рд▓реА рд▓рд┐рдирдХреНрд╕ рднреА рдЕрдм рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рдФрд░ рдЕрдиреНрдп рд╡рд┐рддрд░рдг рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрдерд╛рдкрдирд╛ рдЪрд░рдг рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд╛рде рд╣реА, рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкрд╣рд▓реЗ рд╕реЗ рддрдп рд╣реЛ рд╕рдХрддреА рд╣реИрдВред


рд╣рдо рд╕реНрдЯреЛрд░ рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рд╡рд┐рддрд░рдг рдкрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЬрд▓реНрджреА рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдПрдореБрд▓реЗрдЯрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдЧрд╛ рдФрд░ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрд┐рддрд╛, рдЬреЛ рддреАрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реЛрдЧрд╛: wsl.exe, bash.exe рдФрд░ ubuntu.exe (ubub рдХреЗ рдмрдЬрд╛рдп рдЖрдкрдХреЗ рд╡рд┐рддрд░рдг рдХрд┐рдЯ рдХрд╛ рдирд╛рдо рд╣реЛрдЧрд╛)ред рд╡реЗ рд╕рднреА рд╕рдорд╛рди рд╣реИрдВ рдФрд░ рдПрдХ рд╣реА рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ - рд╡реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЯрд░реНрдорд┐рдирд▓ рдПрдореБрд▓реЗрдЯрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рдЗрд╕рдореЗрдВ рдХрд░реНрдиреЗрд▓ рдПрдореБрд▓реЗрдЯрд░ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ linux'ovy рдмреИрд╢ рд╣реИрдВред рдкрд╣рд▓реА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╡рд┐рддрд░рдг рд╕реАрдзреЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛ рд░реВрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ - рдпрд╣ рдЖрдЧреЗ рдХреЗ рдЪрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ред рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреА, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ, рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╕рдордп, рдореБрдЭреЗ рдЬрд╛рдирдХрд╛рд░реА рдорд┐рд▓реА рдХрд┐ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдЕрдм рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рд╢реНрди рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддреЗ рд╣реИрдВред


рд╣рдо рд╕реНрдерд╛рдкрдирд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЕрдЧрд▓рд╛, рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЕрдЧрд▓реЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рджрд░реНрдкрдг рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ CLI рдкрд╛рда рд╕рдВрдкрд╛рджрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХреЗрд╡рд▓ vi рд╢рд╛рдорд┐рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдиреИрдиреЛ рдЕрдзрд┐рдХ рдкрд╕рдВрдж рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рд░рдЦрд╛:


 apt install nano 

sudo рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрдбрд╝ рд╣реИрдВред рдлрд╝рд╛рдЗрд▓ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ /etc/apt/source.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 рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛


рдкрд╣рд▓реА рд╕рдорд╕реНрдпрд╛ рдореЗрд░реЗ рд╕рд╛рдордиреЗ рдЖрдИ - рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдЯрд░реНрдорд┐рдирд▓ рдПрдореБрд▓реЗрдЯрд░ рдореЗрдВ рдмреИрд╢-рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░, рдЗрд╕реЗ рд╣рд▓реНрдХреЗ рдврдВрдЧ рд╕реЗ, рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдПрдореБрд▓реЗрдЯрд░ рдЯреИрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдПрдХ рдирдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕рдм рдХреБрдЫ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдЕрд▓рдЧ init рдХреЗ рд╕рд╛рде (рдЬреЛ, рд╡реИрд╕реЗ, рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рдореИрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЯрд░реНрдорд┐рдирд▓ рдПрдореБрд▓реЗрдЯрд░ рдЪрд╛рд╣рддрд╛ рдерд╛, рдХреБрдЫ рдЕрдиреНрдп рдЬреАрдпреВрдЖрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧ, рд╕рд╛рде рд╣реА рдПрдХ рд╕реЙрдХреЗрдЯ рдпрд╣ рд╕рдм рдЬрд▓реНрджреА рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред


рдЬрдм рдореИрдВрдиреЗ рдЗрд╕ рд╕рд╡рд╛рд▓ рдХреЛ рдЯрд╛рд▓ рджрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╕рд╛рдордиреЗ рдЖрдИрдВ, рдЬреИрд╕реЗ dbus рдХреЛ tcp рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ред рдлрд┐рд▓рд╣рд╛рд▓, рдРрд╕реА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдпреВрдирд┐рдХреНрд╕-рдбреЛрдореЗрди-рд╕реЙрдХреЗрдЯ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдЙрдирдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╢рд╛рдВрддрд┐ рд╕реЗ рд╕рдВрдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИред


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдПрдХ рдПрдХреНрд╕-рд╕рд░реНрд╡рд░ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЦреНрдп рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд (рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ)ред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВ рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП VcXsrv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ - рд╡рд┐рдВрдбреЛрдЬ рдкрд░ X11 рдкреЛрд░реНрдЯред рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рд╛рдЗрдЯ рдЕрдм рдЗрд╕реЗ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдХреЛ Google рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдм рдХреБрдЫ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред


рдЬрдм рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреНрд░рдЧрддрд┐ рдкрд░ рд╣реИ, рддреЛ рд╣рдо рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдЯрд░реНрдорд┐рдирд▓ рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВ, рдирд┐рдХрд╛рд╕ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╣рдо рд╡рд╛рдкрд╕ рд░реВрдЯ рдкрд░ рдирд┐рдХрд▓ рдЬрд╛рддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд░реВрд╕реА рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:


 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 рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП:


  1. 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" /> 
  2. x-run.vbs - WSL рд╣рдореЗрд╢рд╛ рдЕрдкрдиреЗ рдЯрд░реНрдорд┐рдирд▓ рдПрдореБрд▓реЗрдЯрд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ; рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдмрдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреА рд╕рднреА рдмрд╛рд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреАред рддрд╛рдХрд┐ рдпрд╣ рдЦрд┐рдбрд╝рдХреА рдЖрдВрдЦреЗрдВ рдирд╣реАрдВ рдмреБрд▓рд╛рддреА рд╣реИ, рдЗрд╕реЗ рдЫрд┐рдкрд╛рдХрд░ рдЪрд▓рд╛рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд 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 рдХреЛ cd /home/user1; DISPLAY=:0 LANG=ru_RU.UTF-8 su user1 -c xfce4-session рд╕рд╛рде wsl рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддреЗ рд╣реИрдВ cd /home/user1; DISPLAY=:0 LANG=ru_RU.UTF-8 su user1 -c xfce4-session cd /home/user1; DISPLAY=:0 LANG=ru_RU.UTF-8 su user1 -c xfce4-session , рд╕реНрдЯрд╛рд░реНрдЯ рдлреЛрд▓реНрдбрд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЦрд╛рд▓реА рд▓рд╛рдЗрди, рдУрдкрди рдПрдХреНрд╢рди - рд╕реНрдЯрд╛рд░реНрдЯ, 0 - рд╣рд┐рдбрди рдореЛрдбред рд╣рдо wsl рдХреЛ рдЦреБрдж рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдХрдорд╛рдВрдб рджреЗрддреЗ рд╣реИрдВ: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ, рдлрд┐рд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ (X- рд╕рд░реНрд╡рд░ рдбрд┐рд╕реНрдкреНрд▓реЗ) рдФрд░ LANG (рдкреНрд░рдпреБрдХреНрдд рд▓реЛрдХреЗрд▓) рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╣рдо xfce4- рд╕рддреНрд░ рдХреЛ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо 1 рдХреА рдУрд░ рд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ (su рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж)


  3. start.bat - рдмреИрдЪ рдлрд╝рд╛рдЗрд▓ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдЖрдк рдЗрд╕реЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдореЗрдВ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ
     start config.xlaunch wscript x-run.vbs 

рдЕрдЧрд▓рд╛, рд╣рдо рдЕрдкрдирд╛ start.bat рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рд▓рд┐рдП Xfce рдкреИрдирд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣рд╛рдВ рдореБрдЭреЗ рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдЖрдИ - рдкреИрдирд▓ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рднреА рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЗ рдКрдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд┐рдВрдбреЛрдЬ рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ рдПрдХ рдкреИрдирд▓ рдХреА рддрд░рд╣ рдЕрдкрдиреЗ рд▓рд┐рдП рдЬрдЧрд╣ рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдкрддрд╛ рд╣реИ, рддреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВред


рдЗрд╕ рднрд╛рдЧ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдореЗрд░реЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдХрд╛ рдПрдХ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ:



рд╡рд┐рдВрдбреЛрдЬ рд╡рд╛рддрд╛рд╡рд░рдг рдФрд░ рд▓рд┐рдирдХреНрд╕ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдХреА рдмрд╛рддрдЪреАрдд


рдЖрдк рдПрдХ рд╣реА 3 рдХрдорд╛рдВрдб - рдмреИрд╢, wsl рдпрд╛ ubuntu рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рд╕реЗ рд╕реАрдзреЗ рд▓рд┐рдирдХреНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЙрдиреНрдЪ рд░реВрдЯ рд╕реЗ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ su рдорд╛рдзреНрдпрдо рд╕реЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдХрдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЖрдкрдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ DISPLAY =: 0 рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдПрдХреНрд╕ рд╕рд░реНрд╡рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЖрдкрдХреЛ рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рднреА рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ WSL рдХреЗ рдЕрдВрджрд░ рд╕реАрдбреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓рд┐рдирдХреНрд╕ md5sum рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рд╕реНрдХ D рдкрд░ file.txt рдХреЗ рд▓рд┐рдП md5 рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ:


 wsl md5sum < d:\file.txt 

рд▓рд┐рдирдХреНрд╕ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рддрдХ рдкрд╣реБрдБрдЪ рднреА рдЙрдкрд▓рдмреНрдз рд╣реИ, рдпрд╣ %localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИред рдЖрдк рдЗрд╕ рддрд░рд╣ рд╕реЗ рдлрд╛рдЗрд▓реЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд▓рд┐рдЦрдирд╛ рдЙрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ; рдЖрдк рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬ рд▓рд┐рдирдХреНрд╕ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдФрд░ рдорд╛рд▓рд┐рдХреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред


рд▓рд┐рдирдХреНрд╕ рд╕реЗ, рдЖрдк рд╡рд┐рдВрдбреЛрдЬ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рднреА рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╕ рдПрдХреНрд╕-рд╢рдирд┐рдХ рдХреЛ рдЪрд▓рд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдореБрдЦреНрдп рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред


рд╡рд┐рдВрдбреЛрдЬ рдбреНрд░рд╛рдЗрд╡ рдХреЛ рдЙрдирдХреЗ рдирд┐рдЪрд▓реЗ рдЕрдХреНрд╖рд░реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ /mnt рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреНрд░рд╛рдЗрд╡ D рдХреЛ /mnt/d рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд▓рд┐рдирдХреНрд╕ рд╕реЗ, рдЖрдк рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рд╡рд┐рдВрдбреЛрдЬ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдкрдврд╝ рдФрд░ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдЙрди рдкрд░ рд╕рд╣рд╛рдиреБрднреВрддрд┐ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЕрдзрд┐рдХрд╛рд░ рд╣рдореЗрд╢рд╛ 0777 рд╣реЛрдЧрд╛, рдФрд░ рдорд╛рд▓рд┐рдХ рд░реВрдЯ рд╣реЛрдЧрд╛ред


рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдЯреИрдХ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд╕рд╛рде рдЖрдо рд╣реИред рд▓рд┐рдирдХреНрд╕ рдкрд░ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рд╕рд░реНрд╡рд░ рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдХреНрд╕-рдбреЛрдореЗрди-рд╕реЙрдХреЗрдЯ рд╕рд┐рд░реНрдл рдПрдХ рдЦрд╛рд▓реА рдлрд╛рдЗрд▓ рд╣реЛрдЧреА, рдЖрдк рдЗрд╕реЗ рдХреЗрд╡рд▓ рд▓рд┐рдирдХреНрд╕ рдХреЗ рдЕрдВрджрд░ рд╣реА рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдмрд╛рд╣рд░реА рдиреЗрдЯрд╡рд░реНрдХ рддрдХ рдкрд╣реБрдВрдЪ рднреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рд╕реБрдирдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЕрдЧрд░ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдЗрд╕ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВ рд▓рдЧрд╛рддрд╛ рд╣реИред
ifconfig рд▓рд┐рдирдХреНрд╕ рдкрд░ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ ipconfig рдиреЗрдЯрд╡рд░реНрдХ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╣реА рдЬрд╛рдирдХрд╛рд░реА рджреЗрддреЗ рд╣реИрдВред


рд╡рд┐рдВрдбреЛрдЬ рдЯрд╛рд╕реНрдХ рдореИрдиреЗрдЬрд░ рд╕реЗ, рдЖрдк рд▓рд┐рдирдХреНрд╕ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЕрдВрджрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╣рд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд▓рд┐рдирдХреНрд╕ рдХреЗрд╡рд▓ рдЗрд╕рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдЧрд╛ред


рд╕реБрд╡рд┐рдзрд╛рдПрдБ, рд╕реАрдорд╛рдПрдБ рдФрд░ рдиреБрдХрд╕рд╛рди


WSL рдореЗрдВ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдПрдореБрд▓реЗрдЯрд░ рдкрд░рдд рд╣реИ, рдЬреЛ рд▓рд┐рдирдХреНрд╕-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЦреБрдж рдХрд░рддрд╛ рд╣реИ, рдФрд░ рднрд╛рдЧ рд╕реАрдзреЗ winNT рдХрд░реНрдиреЗрд▓ рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдПрдкреАрдЖрдИ рд▓рд╛рдЧреВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рднреА рдирд╣реАрдВред рдЖрдк рдЕрдкрдиреЗ рдХрд░реНрдиреЗрд▓ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рдФрд░ рди рд╣реА рдЖрдк рдХрд░реНрдиреЗрд▓ рдореЙрдбреНрдпреВрд▓ (.ko, рдХрд░реНрдиреЗрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ) рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


WSL init рдкреНрд░рдХреНрд░рд┐рдпрд╛ рднреА рдЕрдкрдиреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, system.d рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдореБрдЭреЗ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдПрдХ рдбреЗрдореЙрди рдореИрдиреЗрдЬрд░ рд▓рд┐рдЦрдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рдереА, рдЬреЛ рдХрд┐ system.d рдпреВрдирд┐рдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рдорд╛рди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рднреА рд╣рд╛рде рдирд╣реАрдВ рдкрд╣реБрдВрдЪрддреЗ рд╣реИрдВред


OpenFUSE рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ; рддрджрдиреБрд╕рд╛рд░, рдПрдХ рдЖрднрд╛рд╕реА рдпрд╛ рджреВрд░рд╕реНрде рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдорд╛рдЙрдВрдЯ рдХрд░рдирд╛ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдорд╛рдЙрдВрдЯ рдмрдирд╛рдирд╛ рднреА рдЕрд╕рдВрднрд╡ рд╣реИ, рдорд╛рдЙрдВрдЯ рдпрд╣рд╛рдВ рдмрд╛рдВрдзрдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред


рд▓рд┐рдирдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХрдИ рд╡рд┐рднрд╛рдЬрдиреЛрдВ / рдбрд┐рд╕реНрдХ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред


рд▓реЛрд╣реЗ рддрдХ рд╕реАрдзреА рдкрд╣реБрдВрдЪ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИред рд╕рднреА рд╕рдорд╛рди, рд╣рдо рд╡рд┐рдВрдбреЛрдЬ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдореЗрдВ рд╣реИрдВ, рдФрд░ рдкреВрд░реНрдг рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдирд╣реАрдВред / dev рдФрд░ / sys рдмрд┐рд▓реНрдХреБрд▓ рдЦрд╛рд▓реА рд╣реИрдВ, рдЙрдирдореЗрдВ рдХреЗрд╡рд▓ рд╡рд░реНрдЪреБрдЕрд▓ рдбрд┐рд╡рд╛рдЗрд╕ рд╣реИрдВред GPU рддрдХ рдкрд╣реБрдВрдЪ - рдХреЗрд╡рд▓ рдПрдХреНрд╕-рд╕рд░реНрд╡рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рд╕реАрдзреЗ - рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рд╡рд┐рдВрдбреЛрдЬ рдореЗрдВ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред


рдЬреЗрдПрд╕ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ, рдореБрдЭреЗ рдЗрд╕ рддрдереНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХрд┐ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдореЗрдВ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди.рдЬреЗрдПрд╕ рдиреЗ рдЪрд▓рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛, рдореБрдЭреЗ рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдиреЛрдб.рдЬреЗрдПрд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рдирдХрд▓ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред


рдкрд░рд┐рдгрд╛рдо


рд▓реЗрдЦ рдХрд╛рдлреА рд▓рдВрдмрд╛ рдирд┐рдХрд▓рд╛, рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред
рдореЗрд░реЗ рд▓рд┐рдП WSL рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдЙрдкрдХрд░рдг рдирд┐рдХрд▓рд╛ рдЬреЛ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ fullstack рдмреИрдХрдПрдВрдб рдбреЗрд╡рд▓рдкрд░ред рдЫрд╣ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП, рд▓рд┐рдирдХреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдЖрднрд╛рд╕реА рдорд╢реАрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереАред рд╕рд╛рдорд╛рдиреНрдп рднрд╛рд╡рдирд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рдВрдбреЛрдЬ + рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рд▓рд┐рдирдХреНрд╕ + рд╡рд╛рдЗрди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╣реИред


рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦрддреЗ рд╕рдордп, рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдбреЗрдмрд┐рдпрди 9.3 рдХреЗ рд╕рд╛рде рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдЕрд╕реЗрдВрдмрд▓реА рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╕реНрдЯреЛрд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреА рдереА, рдпрд╣ рд╡рд┐рддрд░рдг рдореЗрд░реЗ рд▓рд┐рдП рдЙрдмрдВрдЯреВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред

Source: https://habr.com/ru/post/hi412633/


All Articles