Windows10 系統的 Linux Subsystem與真正的 Linux 有什麼區別?
MSDN有四篇blog寫這個:
Windows Subsystem for Linux Overview?blogs.msdn.microsoft.com這是第一篇,裡面有其他三篇的鏈接。
這東西同你通常見到的Linux發行版差距還是挺大的,比如init就不是流行的systemd,這樣一來好多腳本和軟體包就跪了。
替代cygwin可以,替代Linux不行。
你可以拿一本Linux的書來對照著學,在你學到"文件"那一節之前你會在WSL里享受一段歲月靜好的時光。
linux子系統不能擁有獨立的圖形界面,而獨立的linux系統可以有子系統的root用戶許可權低於windows管理員許可權,如果你不以管理員運行子系統shell的話,有些操作(例如設置防火牆)會有莫名其妙的錯誤。
總之,想用子系統,請每次以管理員方式運行shell
補充一個具體而微的,跑不了docker
首先,你連linux都能打錯,所以他們的區別對你來說不是很重要。
其次,這兩個東西完全不是一回事,不能比較,win10的子系統只是為了方便開發者。第一個重點詞:「方便」,僅僅只是為了提供linux的一些常用功能而已,還有許多功能做的不是太好,甚至有bug。第二個重點詞:「開發者」,win10的子系統主要面向開發者,一般用戶基本用不到(當然你想裝沒人攔你),所以只提供命令行界面以及配色(許多linux上的配色在子系統上顯示效果很差),當然,對於開發者而已,命令行已經足夠了,即使是我電腦里安裝了Ubuntu(linux的其中一個發行版),我用到的也只是命令行,系統本身自帶的其他功能不怎麼用,因為命令行已經足夠了!!!
最後,因為種種原因,win10的子系統在一定程度上運行速度比linux慢很多,最主要體現在安裝軟體的時候,linux一般10秒能完成的事情,win10子系統需要一分鐘以上,甚至更多。
總而言之,條件允許的話,建議安裝雙系統,條件不允許的話,可以用win10子系統嘗嘗鮮,相信在你努力專研linux的命令之後,你也會和我一樣愛上linux的。
差別大了
橘生於淮南則為橘,生於淮北則為枳 大概就是這麼個意思吧
你自己去實際裝一個linux就知道差別了。
內核不一樣啊,那麼對底層硬體的支持和處理方式也不一樣。我認為win出wsl一個重要原因是方便使用docker。
謝邀
其實區別有許多,下面以最有名的Linux發行版——Ubuntu(以下簡稱母系統)及Windows10下面的Ubuntu子系統(以下簡稱子系統)舉例
1.母系統在安裝時有圖形化界面,雖然對Windows用戶說不太好看,而子系統只有命令型,沒有圖形化界面
2.母系統圖形化界面安裝在安裝時和Windows途徑一樣——安裝包安裝,商店安裝,當然還有一個命令型安裝(Windows更多為10裡面的系統應用安裝,比如商店),而子系統,你確定能安裝什麼東西?
3.母系統只要會一點基本操作的人就OK(雖然調查出來大部分人不會用這個界面),而子系統更多的是針對開發者使用,不一樣
如果一定要用Linux,推薦虛擬機,只要設置內存和硬碟大,性能夠用就可以用了;或者雙系統也不錯。除非你是Windows端開發者,可以嘗試使用
Linux系統是用來幹嘛的呢?
1.伺服器系統
2.開發人員工具
3.因為需求
Windows10子系統Linux能幹嘛呢?
裝x咯!可能更方便吧!
說個最簡單的,TCP協議實現就不完善,例如:
向一個socket寫入大量數據,寫到一半就讓對方關閉此埠
如果是正常的協議實現,在自己的程序下一次寫埠時應該得到一個ECONNRESET,但是實際上得到的是EPIPE
而向一個已經關閉的埠上寫入數據,得到的是EPIPE(這個是對的)
也就是說WSL中linux子系統沒有百分百的按照TCP協議實現TCP棧,在這個子系統上使用一些軟體可以(當然也有可能遇到神奇的BUG),但是涉及到做實驗及觀察現象時,請用虛擬機或者真機
推薦閱讀:
TAG:操作系統 | Linux | Ubuntu | Windows10 | WindowsSubsystemforLinux |