当前位置: 首页>>技术教程>>正文


在Windows上,Linux的Windows子系统和Ubuntu上的bash有什么区别?

, , ,

问题描述

  1. 它们的功能有何不同?是其中之一更兼容还是其他?微软为什么要麻烦开发这两个看起来相同的东西?

  2. 文件位置。 Windows上的Ubuntu上bash的文件位于C:\Users\<username>\AppData\Local\lxss中,但WSL的文件在哪里?有一个答案声称它们位于C:\Users\<username>\AppData\Local\Lxss\rootfs,但我发现它为空。

  3. WSL是否有”.exe”?对于Windows上的Ubuntu上的bash来说是"C:\Windows\sysnative\bash.exe"。 WSL是否有类似的内容,因此我可以在Visual Studio Code中使用它?

最佳回答

“ Windows上的Ubuntu上的Bash”基于Linux的Windows子系统。 WSL是Windows NT内核上Linux系统调用的实现,它使您可以运行未经修改的Linux可执行文件(就像Wine对于Ubuntu一样)。 “ Windows上的Ubuntu上的Bash”只是WSL的一种应用程序。其他Linux发行版(例如openSUSE或Fedora)是available or will soon be available

WSL有”exe”。最初是曾经使用过bash.exe,然后是wsl.exe,现在是ubuntu.exeopenSUSE-42.exe。大概fedora.exe将很快出现。从MSDN帖子Manage multiple Linux Distributions in WSL

There are three ways to launch and run WSL:

  • wsl.exe or bash.exe
  • wsl -c [command] or bash -c [command]
  • [distro], i.e., ubuntu — this is the same as launching the installed app from the Windows menu.

In the first two cases, WSL must pick a distribution to run – a default distribution. If you don’t explicitly set a default, it will be the first one installed.

WSL文件的位置取决于发行版,因为它们是从the store安装的应用程序:

Each distribution you install through the store is installed to that application’s appdata directory. For example: C:\Users\<username>\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8701.html,未经允许,请勿转载。