上手指南:開(kāi)啟你的Windows平臺(tái)Linux子系統(tǒng)之路
譯文【51CTO.com快譯】 在我的Windows開(kāi)發(fā)者PC端安裝了兩個(gè)Linux發(fā)行版,它們不是虛擬機(jī)或雙啟動(dòng)系統(tǒng),也沒(méi)有去尋找下載頁(yè)面和解壓縮安裝文件通常路線(xiàn),而是到Windows商店搜索Linux,選擇想要的發(fā)行版并且安裝上。下載完畢之后,打開(kāi)終端窗口并填寫(xiě)用戶(hù)名和密碼,開(kāi)始安裝。
我運(yùn)行了***版本的Windows10系統(tǒng),添加了Windows平臺(tái)Linux子系統(tǒng)***功能。引入了Windows10周年升級(jí)版和Windows10***升級(jí)版本。Windows平臺(tái)Linux子系統(tǒng)(WSL)是微軟對(duì)于"如何讓開(kāi)發(fā)人員再次使用Windows"***的回答。
微軟如何讓開(kāi)發(fā)者使用Windows
如何讓開(kāi)發(fā)者再次使用Windows?問(wèn)題很簡(jiǎn)單,要了解開(kāi)發(fā)人員的切實(shí)需求。但是從Windows得到答案卻不是那么簡(jiǎn)單?;贛acOS和Linux的開(kāi)發(fā)商使用命令行工具在Linux服務(wù)器的云中工作,他們已經(jīng)有了自己的工具鏈,應(yīng)用程序和腳本在Docker、GitHub、Jenkins、Ansible、Chef和TravisCI中使用。那么,怎么才能讓開(kāi)發(fā)者來(lái)使用Windows呢?
***步是以一種無(wú)縫的方式將Unix引入熟悉的Windows桌面。MacOS有內(nèi)在優(yōu)勢(shì)的Unix用戶(hù),因?yàn)樗墙⒃谝粋€(gè)BSDUnix內(nèi)核的實(shí)現(xiàn),通過(guò)對(duì)每一臺(tái)Mac終端應(yīng)用程序訪(fǎng)問(wèn)。
但是Windows的NT內(nèi)核有一個(gè)傳統(tǒng),可以運(yùn)行多種字符,而不是建立熟悉的工具新版本,然后在Windows中重新編譯它們。為什么不直接在Windows中運(yùn)行Linux二進(jìn)制程序?通過(guò)在阿斯托利亞項(xiàng)目中為WindowsPhone和Windows10的微微進(jìn)程模型提供取消的Android兼容層,微軟可以提供一個(gè)新的操作系統(tǒng)子系統(tǒng),它可以將Linux系統(tǒng)調(diào)用轉(zhuǎn)換為Windows,允許代碼無(wú)需更改即可運(yùn)行。
與Ubuntu合作的初始版本提供了一個(gè)bashshell在與Windows相似的終端上運(yùn)行(可以同時(shí)在cmd和PowerShell中使用)。Windows內(nèi)部人員的***個(gè)測(cè)試構(gòu)建是有限的,但是隨著Windows10周年紀(jì)念版升級(jí)的臨近,測(cè)試構(gòu)建迅速升級(jí),允許復(fù)雜的控制臺(tái)應(yīng)用程序運(yùn)行,支持Ubuntu的APT安裝程序,以便快速訪(fǎng)問(wèn)工具和服務(wù)庫(kù)。隨著開(kāi)發(fā)升級(jí),微軟和Canonical能夠WSLUbuntu的***長(zhǎng)期支持版本--16.04版本。
WSL:在Linux控制臺(tái)的Linux二進(jìn)制程序
從技術(shù)上講,WSL是控制臺(tái)應(yīng)用程序,提供開(kāi)發(fā)工具和遠(yuǎn)程訪(fǎng)問(wèn)的處所,在公有云上運(yùn)行的Linux服務(wù)器的外殼支持變得更靈活,雖然這不是正式的支持。用戶(hù)安裝和運(yùn)行基于X的GUI應(yīng)用程序,使用WindowsX服務(wù)器提供一個(gè)完整的Linux桌面體驗(yàn)WSL。
使用任何的個(gè)人Windows平臺(tái)Linux子系統(tǒng)就像使用Linux一樣。您可以訪(fǎng)問(wèn)shell,并通過(guò)它訪(fǎng)問(wèn)命令行。安裝應(yīng)用程序就如同使用Ubuntu的apt-get或者在Suse中使用yast或zypper一樣。當(dāng)在windows中使用Fedore時(shí),你會(huì)用到y(tǒng)um。
早期的WSL構(gòu)建存在問(wèn)題,在運(yùn)行一些應(yīng)用時(shí),主要的附屬應(yīng)用不支持。但是自從Windows10周年更新發(fā)布以來(lái),WSL就變得簡(jiǎn)單多了,現(xiàn)在即便是像Docker這樣復(fù)雜的程序也可以安裝和運(yùn)行。
當(dāng)然,WSL的模式相似,你需要在你的PC上做跨平臺(tái)的開(kāi)發(fā)和管理工具。原生的Linux服務(wù)器今年晚些時(shí)候在Windows服務(wù)器上運(yùn)行,WSL作為企業(yè)系統(tǒng)的一個(gè)關(guān)鍵組件工具集將變得越來(lái)越重要。事實(shí)上,你應(yīng)該已經(jīng)將它安裝在你的開(kāi)發(fā)和操作WindowsPC上了。(WSL在Windows服務(wù)器不支持大規(guī)模的Linux工作負(fù)載或服務(wù)器,但它會(huì)給你一個(gè)直接管理連接到托管的Linux容器,支持現(xiàn)有的管理腳本和工具。)
如何整合Linux和Windows工具鏈
微軟已經(jīng)可以實(shí)現(xiàn)從WSL轉(zhuǎn)向Windows或者從Windows轉(zhuǎn)向WSL。你可以從Windows命令行調(diào)用Linux二進(jìn)制程序,使用WSL默認(rèn)用戶(hù)。您可以從Windows調(diào)用Windows二進(jìn)制文件(并且在VisualStudio代碼中可以從終端訪(fǎng)問(wèn),并允許您在不離開(kāi)開(kāi)發(fā)工具、不離開(kāi)Windows的情況下測(cè)試UNIX代碼)。
像VisualStudio這樣的工具對(duì)于WSL的支持非常好。如果微軟能夠成功地讓開(kāi)發(fā)人員接受其平臺(tái),其平臺(tái)的工具必須能夠在Windows的Linux子系統(tǒng)上直接運(yùn)行。提供一種混合工作方式,將***的Windows和Linux連接在一起??梢韵胂笪磥?lái)在VisualStudio集成Linux終端,在WSL服務(wù)運(yùn)行中推出webhook和其他API。
WSL是擴(kuò)展在Windows中的Linux發(fā)行版
關(guān)于Windows平臺(tái)的Linux子系統(tǒng)研發(fā)最近又有新動(dòng)作。兩個(gè)新的Linux發(fā)行版的發(fā)布,將與現(xiàn)有的Ubuntu發(fā)行版一起運(yùn)行。除了現(xiàn)有的Ubuntu發(fā)布:openSUSE和SUSE企業(yè)服務(wù)器。Suse發(fā)布在Windows商店,可供內(nèi)部程序用戶(hù)使用。
添加更多的Linux版本是件好事;不是每個(gè)人都喜歡Ubuntu模式或者Suse的模式。Fedore也加入了WSL,可以使用Linux工具、服務(wù)和熟悉的工作方式,將腳本和二進(jìn)制文件從現(xiàn)有的工具鏈帶到WindowsPC上。WSL甚至可以在每個(gè)單獨(dú)的終端,一次呈現(xiàn)出幾種Linux的特性。
支持許多不同的Linux發(fā)行版是很有意義的。在過(guò)去的幾年中,不同的供應(yīng)商和團(tuán)隊(duì)專(zhuān)注于不同的案例,從相同的虛擬組件中構(gòu)建不同的平臺(tái)。順序分布像Fedora和Ubuntu非常通用的操作系統(tǒng)。從開(kāi)發(fā)人員的角度來(lái)看,使用它們是有意義的。就像容器聚焦于CoreOS一樣,未來(lái),WSL還會(huì)推出更多的專(zhuān)業(yè)版本。
作者:SimonBisson
原文鏈接:
http://www.infoworld.com/article/3204592/linux/get-started-with-the-windows-subsystem-for-linux.html
劉妮娜譯
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】