折腾了几天 Ubuntu on Windows 之后我决定放弃了

2017-06-28 23:24:06 +08:00
 linnn2

配了一台 PC,好久没有用 windows 了,最近又看到 windows 的好多消息,微软的硬件软件都有了很大的进步,于是决定试试在 windows 上进行开发

可是,Bash on windows 现在还真的用不了。。问题还是挺多的,不知道大家对于 windows 环境的开发有什么好的实践经验,目前我遇到过的问题有:

  1. bash 启动后有时需要手动 source ~/.bashrc
  2. 遇到过在 npm install 之后,项目代码无法删除,只能通过 windows 的安全模式中删除
  3. 现在启动 bash 报错 Error: EINVAL: invalid argument, mkdir '/mnt/c/Users/***/C:\ProgramData\Microsoft\VisualStudio\MDA\372b13c4\taco-toolset-6.3.1
  4. 在 windows 环境下修改代码,通常还得配置一份 windows 的开发环境
  5. ...

总之,用的心累,决定放弃,等到正式版来了之后再看吧。。

16743 次点击
所在节点    程序员
50 条回复
isCyan
2017-06-29 10:27:31 +08:00
Windows 跑 Linux 虚拟机都还是有文件系统问题,还是实体机省心
DevNet
2017-06-29 10:29:54 +08:00
前几天刚放弃,部署不了开发环境,装不了 mysql
kingwkb
2017-06-29 10:32:45 +08:00
@ProjectAmber Hyper-V 不能共享目录
forcecharlie
2017-06-29 10:38:42 +08:00
我觉得十有八九是你的配置出问题了,比如 `invalid argument, mkdir '/mnt/c/Users/***/C:\ProgramData\Microsoft\VisualStudio\MDA\372b13c4\taco-toolset-6.3.1` 这个路径肯定是错的,正常的路径是这种。 `/mnt/c/Users/ProgramData/Microsoft/VisualStudio/MDA/372b13c4/taco-toolset-6.3.1` 我觉得你可以回忆下进行了什么操作。
Ryuuzaki7
2017-06-29 10:47:44 +08:00
有些底层命令还是没有,想要完整功能还是要装虚拟机或者双系统
chingli
2017-06-29 11:27:47 +08:00
坚持用了一个月,最后发现还是不如 cygwin。
Kongyuan
2017-06-29 11:32:00 +08:00
从换新电脑 就没装回 debain 用 ubuntu on bash 来代替原来的工作环境。systemctl 什么的基本废了。 写点简单的 python 脚本 加网站什么还是可以的。 刚开始各种奇葩问题 尤其是网络和 windows 文件系统互相访问以致于我怀疑自己的代码问题。 现在好很多了,配合 xming 写 GUI 工具也很容易。 之所以忍者不换回 linux 是因为要打 LOL 和 steam (逃)。 不过相对以前开个 vbox 虚拟机要快很多。 (之前是 debain+虚拟机跑 windows。 虚拟机里面的 Windows 恶心的一逼。)
yanxijian
2017-06-29 11:36:32 +08:00
Hyper-V 装了个 Server 版 Ubuntu,效果不错,占用资源也小。
Kongyuan
2017-06-29 11:41:42 +08:00
@chingli 考虑用 Cmder 体验比 windows 自带的终端好了不知道多少倍。配上 tmux 加成,
devtiange
2017-06-29 13:24:48 +08:00
@Kongyuan 展开说说 "现在好很多了"?
shadownet
2017-06-29 13:36:57 +08:00
当我第一次折腾后,果断放弃并退出 insider program. 问题太多
Kongyuan
2017-06-29 13:52:15 +08:00
@devtiange

1. 最新的 ubuntu 版本

从 14.x 升级到这个版本:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial

2. 底层打通了文件系统和 linux 的文件系统:
C: on /mnt/c type drvfs (rw,noatime)
之前还不稳定(删除打开文件出错),现在好很多。我的所有 code 和项目都在 windows 目录,用 linux 访问。

3. linux 下的进程可以在 windows 的管理器里面看到。甚至可以 kill。 速度要快很多。

4. 网络部分和 windows 共享。 即调试代码的时候和本地完全没有区别。 ( linux 内部开启网站:5000, 再 windows 开 chrome 调试 127.0.0.1:5000 )
但目前 ping 还是存在 bug

5. ubuntu 的各种软件无缝支持。 正常编译没有问题。(还没试过编译替换内核,估计不行。 微软应该做了很多驱动和底层的修改,自己编译内核估计起不来吧)

相对于其余方案:

1. cygwin - 比 cygwin 速度要快。和 windows 更加紧密。 完整的 ubuntu 生态环境 而非简单的兼容工具集。
2. 虚拟机 - 需要 ssh 过去,需要考虑虚拟机网络模式,如果是 nat 还要端口映射,麻烦许多。
3. 远程服务器 - 网络慢的时候,砸电脑的心都有了。
4. 直接跑 linux ( archlinux 之类的) - 没办法玩 LOL,stream 的游戏库。

所以相对而言 是个值得选择的方案~
Charkey
2017-06-29 13:58:04 +08:00
我折腾了半天,我就放弃了。。。
yuchenyang1994
2017-06-29 15:33:51 +08:00
新东西确实要折腾一些,毕竟各种玩意儿的支持还没跟上,比如编辑器的路径配置,所以你要在 windows 下配置一个相同环境
1.bash 的终端模拟器,windows 上太垃圾,实在受不鸟,你可以使用 wsltty
https://github.com/mintty/wsltty
或者
https://github.com/ethanhs/WSL-Programs
然后安装 zsh,等工具就行了,我现在是这样的
https://ooo.0o0.ooo/2017/06/29/5954aa6938cac.png
然后呢,npm install 是能删除的,你该不会是 sudo npm install 吧,我前几天看微软的 blog,权限问题,我是没啥问题
你说还得配一个 windows 环境,我觉得大可不必吧,你可以用 vim 啊
https://ooo.0o0.ooo/2017/06/29/5954abbc9f93b.png
fzf Youcompleteme git 反正我用到的还没有不能工作的,其他的,我觉得吧,前端其实不怎么需要,python 可以用 ssh 来选择 wsl 下的 python 解释器,java 什么的也可以啊
剩下的我遇到得几个问题
nvm,pyenv 这两个不要装,不然你会很卡,pyenv 我用 miniconda 替代了,git 进入 windows 磁盘目录得项目,如果项目大了会很卡,不过这好像是 ntfs 得问题,听说下个版本就能解决,剩下的东西,比如一些服务,redis 啊,mysql 啊,直接开启 hyper-v 上 docker for windows,这些服务有时候会调用内核得东西,说实话,wsl 还只是个皮,内核是没有的,走的 NT 内核
你第三个问题肯定是 bashrc 搞错了
XuweiatTuSDK
2017-06-29 15:49:43 +08:00
虚拟机走起~~
season4675
2017-06-29 19:50:22 +08:00
我现在的电脑就是 ubuntu ……然后装个 windows 的虚拟机……
40huo
2017-06-29 21:10:37 +08:00
@yuchenyang1994 #34 这字体看上去不错啊,怎么配置的?
neroxps
2017-06-30 13:14:59 +08:00
感觉最大的问题就是,windows 想用 linux 程序来动 windows 的东西。程序员会不会精神错乱?
linnn2
2017-06-30 20:42:39 +08:00
@shierji 意思是用虚拟机吗?
linnn2
2017-06-30 20:43:00 +08:00
@shihira 可能还是需要时间吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/371795

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX