V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mengjue
V2EX  ›  分享发现

MS-Linux 快要诞生了!

  •  3
     
  •   mengjue · 2016-03-30 16:48:26 +08:00 · 7882 次点击
    这是一个创建于 2921 天前的主题,其中的信息可能已经有所发展或是发生改变。

    http://www.zdnet.com/article/microsoft-and-canonical-partner-to-bring-ubuntu-to-windows-10/

    According to sources at Canonical, Ubuntu Linux's parent company, and Microsoft, you'll soon be able to run Ubuntu on Windows 10.

    This will be more than just running the Bash shell on Windows 10. After all, thanks to programs such as Cygwin or MSYS utilities, hardcore Unix users have long been able to run the popular Bash command line interface (CLI) on Windows.

    So is this MS-Linux? No. Is it a major step forward in the integration of Windows and Linux on the developer desktop? Yes, yes it is.

    第 1 条附言  ·  2016-03-31 13:15:36 +08:00
    62 条回复    2016-03-31 22:23:52 +08:00
    daocheng
        1
    daocheng  
       2016-03-30 16:57:31 +08:00
    如果两个操作可以同时运行,这绝对会给 OSX 重重一击,相信很多开发者会选择 windows10 作为开发环境。
    majunbo
        2
    majunbo  
       2016-03-30 16:59:23 +08:00
    再把字体问题一解决,上个 mac-type ,

    完美!
    baozijun
        3
    baozijun  
       2016-03-30 17:01:29 +08:00
    有了命令行的 win 确实是最好的 win 啊
    clino
        4
    clino  
       2016-03-30 17:02:14 +08:00
    "Ubuntu will primarily run on a foundation of native Windows libraries"
    那大概是怎么个用法? 类似于开个虚拟机这样去在 windows 上去跑 ubuntu 吗?
    GordianZ
        5
    GordianZ  
    MOD
       2016-03-30 17:05:12 +08:00   ❤️ 1
    感觉就是一个反向的 WINE.
    Andy1999
        6
    Andy1999  
       2016-03-30 17:06:31 +08:00 via iPhone
    OSX 上用 wine 也可以跑 Windows 的程序啊 怎么会有打击这一说
    而且我估计就是一个容器,不能全局的
    strahe
        7
    strahe  
       2016-03-30 17:07:41 +08:00
    原本就使用 Linux 桌面的人,会觉得怪怪的
    mengjue
        8
    mengjue  
    OP
       2016-03-30 17:12:04 +08:00
    文中说的是要做桌面,貌似是要 linux 核+windows 皮?但是没有看到原来的 nt 核要咋办。
    SpicyCat
        9
    SpicyCat  
       2016-03-30 17:15:57 +08:00
    看成了 MS-Linux 快要生了。。。
    sgissb1
        10
    sgissb1  
       2016-03-30 17:19:48 +08:00   ❤️ 1
    以前 windows 有 os/2 posix 等子系统,可以使用部分*inx 系列的软件。

    如今要让 ubtuntu 在 windows 上跑(具体怎么跑不懂),我想应该可以做到,毕竟以前 M$就干过这类事情。技术或许不是难度,商业目的才是根本的驱动力
    cevincheung
        11
    cevincheung  
       2016-03-30 17:23:00 +08:00
    MS 的自己丑的不能再丑。
    Frapples
        12
    Frapples  
       2016-03-30 19:06:36 +08:00
    看了标题感觉微软吊炸天。。。
    congeec
        13
    congeec  
       2016-03-30 19:09:21 +08:00
    @sgissb1 希望不是虚拟机。容器也能接受。要是更新 posix 子系统就更完美了,我会立马扔了 macbook
    bulldozer
        14
    bulldozer  
       2016-03-30 19:15:49 +08:00 via iPhone
    估计类似于 jvm 跑在其他操作系统或者安卓跑在 linux 之上
    KexyBiscuit
        15
    KexyBiscuit  
       2016-03-30 19:21:30 +08:00 via Android
    Linux 子系统。
    ax003d
        16
    ax003d  
       2016-03-30 19:24:22 +08:00 via Android
    可以有 Linux-MS 么?
    VmuTargh
        17
    VmuTargh  
       2016-03-30 19:37:18 +08:00
    @Andy1999 win10 有一个完整的 linux 子系统的, 只不过版本有点低, 2.x
    Tink
        18
    Tink  
       2016-03-30 19:56:05 +08:00 via iPhone
    我觉的其实就是个应用程序,打开就进入 shell 了
    Izual
        19
    Izual  
       2016-03-30 21:17:15 +08:00
    微软以前就是做 Xenix 的,然后转手卖给 SCO 了,自己开始折腾 NT
    RqPS6rhmP3Nyn3Tm
        20
    RqPS6rhmP3Nyn3Tm  
       2016-03-30 21:35:27 +08:00 via Android
    如果真的是 Linux 核+MS 的私有 GUI …前排出售 MacBook 啦
    然而这并不可能
    iloveayu
        21
    iloveayu  
       2016-03-30 22:14:17 +08:00 via Android
    Explorer + Bash
    kingwkb
        22
    kingwkb  
       2016-03-30 22:24:24 +08:00 via iPhone
    方向对了,就看做出来的体验了
    jimages
        23
    jimages  
       2016-03-31 00:36:50 +08:00 via Android
    只是 bush 。
    jsq2627
        24
    jsq2627  
       2016-03-31 01:56:23 +08:00
    只是 bash 而已
    hjc4869
        25
    hjc4869  
       2016-03-31 02:05:43 +08:00
    @jimages
    @jsq2627

    bash.exe 只是一个 stub 而已,它启动的是一个运行在 Linux 子系统中的 Ubuntu 的 elf 程序
    Trim21
        26
    Trim21  
       2016-03-31 02:10:19 +08:00
    叫 Winux 如何..
    andrewpsy
        27
    andrewpsy  
       2016-03-31 02:10:22 +08:00
    http://www.hanselman.com/blog/DevelopersCanRunBashShellAndUsermodeUbuntuLinuxBinariesOnWindows10.aspx
    还没有意识到这个东西多给力的可以看看这片文章。

    "I'm using bash to run Redis while writing ASP.NET apps in Visual Studio that use the Redis cache."
    wolfan
        28
    wolfan  
       2016-03-31 03:09:47 +08:00 via Android
    话说,两者内样好似不一样吧,那 linux 应该是作为子系统存在吧,然后 win 取消盘符的概念,增加终端操作功能什么的么?
    JamesRuan
        29
    JamesRuan  
       2016-03-31 03:16:39 +08:00
    不知道 /dev /proc /sys 之类是怎么弄的,这些都是动态文件系统啊。
    还有大小写问题, chmod 问题,文件打开时 unlink 问题。
    twl007
        30
    twl007  
       2016-03-31 07:21:44 +08:00 via iPhone
    难道是把 linux 的基础类库编译一个 windiws 版?
    xi_lin
        31
    xi_lin  
       2016-03-31 07:52:12 +08:00
    有 linux kernel 吗?
    bulldozer
        32
    bulldozer  
       2016-03-31 08:36:14 +08:00 via iPhone
    看到报道,是模拟器级别的,相当于利用 wine 运行 windows 程序,目前已经可以运行包括 lamp 在内的数万程序。这种官方操刀对开源系统的模拟器,开发人员来使用肯定绰绰有余。完成后直接部署到生产环境。
    bulldozer
        33
    bulldozer  
       2016-03-31 08:39:15 +08:00 via iPhone
    重点在于所有这些 linux 程序原生运行,不要重新编译。 apt-get 回来直接 start
    Reficul
        34
    Reficul  
       2016-03-31 08:43:10 +08:00 via Android
    @bulldozer
    那么什么时候才能用到呢?
    bulldozer
        35
    bulldozer  
       2016-03-31 08:48:00 +08:00 via iPhone
    beta 版据说放出了呀。我没有 win10 ,不清楚
    palxex
        36
    palxex  
       2016-03-31 09:02:42 +08:00
    桌面还是别想太多。这次看报导明显控制台不是基于 fb 实现的(否则启动时不可能经过 cmd ),所以内建 X 没指望;内核明显是 syscall 转接实现,所以跟 linux 内核牵扯过深的 wayland 我猜指望也不大。 windows 上免费 X server 是啥样,我觉得折腾过 colinux 的应该还都记得吧?
    至于 server 用途,微软又明确指出了后端应用别指望这个,请继续指望 Hyper-V ——我猜 foreign linux 碰到的 fork(3)无法高效实现的问题恐怕微软也遇到了。
    权限问题,一个用户态实现能怎么做,猜猜会不会看见.DS_store 的翻版?
    综合看下来,恐怕也就是个 toy 用途。如果这种兼容层真能起多大作用,那我就搞不懂为啥同样有 Linux 二进制兼容层的 FreeBSD 没把 Linux 干挺了。
    yangzh
        37
    yangzh  
       2016-03-31 09:34:20 +08:00
    Linux geeks can think of it sort of the inverse of "wine" -- Ubuntu binaries running natively in Windows.

    http://blog.dustinkirkland.com/2016/03/ubuntu-on-windows.html?m=1
    chengzhoukun
        38
    chengzhoukun  
       2016-03-31 10:05:55 +08:00
    @Reficul
    @bulldozer
    估计下一次 insider 版本或者等夏季更新包
    am241
        39
    am241  
       2016-03-31 10:08:06 +08:00
    内核版的 cygwin1.dll?
    starqoq
        40
    starqoq  
       2016-03-31 11:49:33 +08:00
    微软以前出个一个类似的东西,叫 Unix Subsystem 。那个时候希望能抢占一些 Unix 服务器的份额。在 WIN2k XP 时代还是有的,后来由于无人问津被搁置, Win7 以后被移除。
    如果你使用 Win7 ,应该还能在控制面板里的添加删除功能里看到。

    http://www.microsoft.com/en-us/download/details.aspx?id=23754
    https://msdn.microsoft.com/zh-cn/library/cc786798(v=ws.10).aspx

    另外我也用过 Cygwin ,但是 API 实现质量不高。
    neoblackcap
        41
    neoblackcap  
       2016-03-31 11:51:03 +08:00
    此特性乃 linux 子系统,实现里没有 GPL 的代码。至于 @mengjue 你所说的 NT 核,现在跑的就是 NT 内核啊,这就是 NT 架构的特性, David Cutler 的先见啊, win32 都是子系统,跑个 linux 子系统完全没有问题。偏微内核的操作系统就是能这么搞。
    Felldeadbird
        42
    Felldeadbird  
       2016-03-31 12:18:40 +08:00
    那么问题来了。 MS-LINUX 运行软件的 IP 端 是直接用母鸡 127.0.0.1 还是 虚拟网中的呢?如果直接 127.0.0.1 就爽爆了。
    同时运行 WIN + LINUX 的 BASH
    hjc4869
        43
    hjc4869  
       2016-03-31 12:39:29 +08:00 via iPhone
    @palxex FreeBSD 到现在连一个好用的显卡驱动模型都没有,装真机就是死,干 linux 就是扯……
    20015jjw
        44
    20015jjw  
       2016-03-31 12:40:22 +08:00
    @daocheng 然而并不会

    既然这波支持 apt-get 是不是可以

    ```
    sudo apt-get install gnome-shell
    sudo apt-get install ubuntu-gnome-desktop
    ```

    (.__.)
    xenme
        45
    xenme  
       2016-03-31 12:56:06 +08:00 via iPhone
    @Felldeadbird 看视频有演示。就是个 subsystem ,所以立即本身没有网卡的概念,还是使用的 NT kernel 的网络
    leitwolf
        46
    leitwolf  
       2016-03-31 13:04:14 +08:00
    看了视频,是全局的,可以操作整个电脑的文件,在底层是通过实时 linux 指令-->windows 指令实现的。 apt-get 直接安装就可以使用。
    zealic
        47
    zealic  
       2016-03-31 13:21:27 +08:00
    Amazing

    其实我更期待的是不仅仅可以跑 Ubuntu ,从原理上来看是没有问题的。
    看最终结果了~
    ipconfiger
        48
    ipconfiger  
       2016-03-31 13:44:51 +08:00
    这 TM 和在 windows 下跑 vagrant 有啥区别?

    用 vagrant 我想用 ubuntu 就是 ubuntu, 想用 centos 就是 centos, 想是 arch 就是 arch
    tairan2006
        49
    tairan2006  
       2016-03-31 14:44:28 +08:00
    挺不错的,希望能变成生产力工具吧~~
    hjc4869
        50
    hjc4869  
       2016-03-31 14:46:35 +08:00
    @ipconfiger 能直接用 127.0.0.1 通讯,而且不占额外的内存,互相访问文件系统也比虚拟机高效太多。
    jimmyye
        51
    jimmyye  
       2016-03-31 14:47:41 +08:00
    刚才没看到这贴,还自己发了一个,上截图:
    menc
        52
    menc  
       2016-03-31 14:50:01 +08:00
    @20015jjw 不可以, bash on win 只能跑 user mode 的应用程序, X 这种偏硬件的跑不了
    ipconfiger
        53
    ipconfiger  
       2016-03-31 15:07:24 +08:00
    @hjc4869 那么, 除了给搞服务端开发的猿类提供便利之外, 依然没有什么卵用啊. 不占额外的内存这个...... 呵呵 ,
    hjc4869
        54
    hjc4869  
       2016-03-31 15:19:09 +08:00
    @ipconfiger Server 2016 似乎可以用 linux 子系统跑 linux docker 。
    Windows 10 又不是服务器操作系统,还想要什么功能?是 GNOME 3 on Windows 还是 GNU/NT ?
    caoyue
        55
    caoyue  
       2016-03-31 15:35:00 +08:00
    目前看来并不是虚拟机,而是类似 Wine 的 API 翻译
    微软还是希望提供各式各样的工具链,让所有平台的开发者都来使用 Windows 开发
    至于服务器,反正 Azure 也支持 Linux 嘛……

    这样的工程也只有微软能做了,而且开源界和微软都能获得实实在在的好处
    不得不说,干得漂亮!
    ooh
        56
    ooh  
       2016-03-31 15:35:04 +08:00
    只想有一个好用的 Terminal
    caoyue
        57
    caoyue  
       2016-03-31 15:41:38 +08:00
    @caoyue
    现在想想,这个项目应该是天国的 Project Astoria 君的余热啊=-=
    tankb52
        58
    tankb52  
       2016-03-31 16:00:08 +08:00   ❤️ 2
    然后看大家反馈很好,于是下个版本就取消了。
    strwei
        59
    strwei  
       2016-03-31 16:28:51 +08:00
    win 和 linux 交配版?
    yangff
        60
    yangff  
       2016-03-31 16:37:27 +08:00
    和 wine 不同……

    相当于在 linux 上实现一个 nt kernel (然而并不存在)

    https://www.zhihu.com/question/41967910/answer/93024444?group_id=698906579851808768#comment-127306099
    xujif
        61
    xujif  
       2016-03-31 17:43:27 +08:00
    之前说 win server2016 会支持容器,也就是 docker ,估计这个类似
    hantsy
        62
    hantsy  
       2016-03-31 22:23:52 +08:00
    好像愚人节到了。。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5276 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 09:18 · PVG 17:18 · LAX 02:18 · JFK 05:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.