windows10的bashshell并不正式支持图形化Linux桌面应用程序。微软说,这个功能是专为那些想运行Linux终端实用程序的开发人员设计的。但是底层的“Windows Linux子系统”比微软所允许的更强大。
在windows10中运行图形化Linux应用程序是可能的,但请记住它并没有得到官方的支持。并非所有的Linux软件都能正常工作,图形应用程序更为复杂,测试更少。但随着时间的推移,随着微软对Linux底层Windows子系统的改进,这些系统应该会变得更加稳定。
windows10的bashshell只支持64位二进制文件,因此不能安装和运行32位Linux软件。
相关:如何在windows10上安装和使用Linux Bash Shell
首先,让我们详细介绍一下它是如何工作的,这样您就可以了解我们在这里做什么。
windows10包含一个底层的“Windows Subsystem for Linux”,它允许windows10通过将Linux系统调用转换为Windows系统调用来运行Linux软件。
Advertisement
当您运行像Ubuntu这样的Linux发行版时,它会下载并在您的计算机上安装一个完整的Ubuntu用户空间映像。这包括了在Ubuntu上运行的完全相同的二进制文件或应用程序。“Bash-on-Ubuntu-on-Windows”环境之所以能正常工作,得益于Linux的底层Windows子系统。
微软不想花任何时间在图形软件上,因为这个特性是为命令行开发工具设计的。但是图形应用程序不受支持的主要技术原因是它们需要一个“X服务器”来提供图形界面。在典型的Linux桌面上,当您启动计算机时,“X服务器”会自动出现,并呈现整个桌面和您使用的应用程序。
但是,在Windows上尝试从Bash打开一个图形应用程序,它会抱怨无法打开显示。
不过,您可以在Windows桌面上安装X服务器应用程序。通常,它们用于呈现在其他计算机上运行的Linux应用程序,“X11”协议相当旧,设计时具有通过网络连接运行的能力。
如果在Windows桌面上安装了X服务器应用程序并更改了bashshell中的设置,应用程序将把它们的图形输出发送到X服务器应用程序,它们将出现在Windows桌面上。假设这些应用程序不依赖于Windows子系统还不支持的Linux系统调用,那么一切都应该正常工作。
有几种不同的X服务器可以安装在Windows上,但我们建议使用Xming。下载并安装到你的Windows10电脑上。
安装过程很简单:您可以只接受默认设置。然后它会自动启动并在系统托盘中运行,等待您运行图形程序。
相关:如何在windows10的ubuntubashshell中安装Linux软件
在基于Ubuntu的Bash环境中使用apt-get命令,可以像安装任何其他程序一样安装图形化Linux桌面程序。例如,假设您希望安装基于GTK的图形化vim编辑器。在Bash窗口中运行以下命令:
sudo apt-get install vim-gtk它将在命令行窗口中完成安装过程,就像在Ubuntu上一样。
现在,您需要将“DISPLAY”环境变量设置为指向运行在Windows10 PC上的X服务器。如果不这样做,图形应用程序将无法启动。
为此,请在Bash环境中运行以下命令:
export DISPLAY=:0此设置仅适用于当前Bash会话。如果你关上窗户,巴什会忘记的。每次重新打开Bash并希望运行图形应用程序时,都必须运行此命令。
现在,您可以通过键入可执行文件的名称来启动图形应用程序,就像键入任何其他命令一样。例如,要启动vim gtk,您可以运行:
gvimAdvertisement
就这么简单。如果应用程序在启动后崩溃,那么Windows Subsystem for Linux可能不支持它所需的Linux系统调用。你对此无能为力。但是试一试,你可能会发现你需要的应用程序运行得很好!
如果你愿意,你也可以把第三步和第四步结合起来。您只需使用以下命令运行图形应用程序,而不是为整个Bash shell会话导出一次DISPLAY变量:
DISPLAY=:0 command例如,要启动gvim,您可以运行:
DISPLAY=:0 gvim请记住,这不是官方支持的,因此在使用更复杂的应用程序时可能会遇到错误。对于在windows10上运行许多图形化Linux桌面应用程序来说,虚拟机是一个更可靠的解决方案,但是对于一些更简单的东西来说,这是一个整洁的解决方案。
...生产力的使用。它为企业提供了一套现成的、强大的业务应用程序和高级支持。为了让企业用户熟悉,默认桌面的布局模仿了windows10。 ...
...NodeJS和Perl等编程语言的支持。虽然Bash不适用于运行图形应用程序,但它是可以实现的。 ...
... X服务器允许您访问Linux应用程序或桌面环境的图形用户界面(GUI)。Linux系统依赖于X来显示桌面,但是它也可以通过网络使用。 ...
...Windows软件包管理器通过运行一个命令就可以轻松地安装应用程序。下面是如何尝试新的“winget”命令,以及为什么这个Linux风格的包管理器对windows10的未来如此令人兴奋。 什么是windows包管理器(the windows package manager)? 包管理...
...贴它。它们遵循C复制V**的相同约定。 在大多数Linux图形应用程序中,如editor gedit或LibreOffice,也可以使用这些按键套间.Ctrl+C复制高亮显示的文本,并按Ctrl+V将其粘贴到光标处。我们的Linux新手可能甚至没有考虑到这样一个事实,...
...。 事实上,随着微软创建了一个功能强大的新Windows终端应用程序,命令行正变得比以往任何时候都更受尊重。windows10的PowerShell环境非常强大,但微软仍然特意为windows10添加了对基本上完整的Linux命令行环境的支持。 命令行曾...
...ws10正在获得一个Linux内核,所有新的chromebook都将运行Linux应用程序。未来购买的大多数台式机将包含Linux内核并运行Linux软件。 windows正在获得一个内置的linux内核 传统的Linux发行版可能不会占领世界,但Linux正变得比以往任何...
Chromebooks现在可以运行Linux桌面应用程序,为Chrome OS用户提供一个全新的软件世界。你也可以在你的电脑上安装像Ubuntu这样的Linux发行版。但是Linux有哪些可用的应用程序呢? 网络浏览器(现在也有netflix) 大多数Linux发行版都...