win10下linux系统的设置,Windows10内置Linux子系统初体验

by admin on 2019年2月13日

home88一必发 1

WSL

Windows
10预览版14316中早就提供bash组件,暗中同意关闭的,启用的法门是先选中“开头->设置->更新和保山->针对开发人员->开发人士方式”,然后按 Win+X,F 打开“程序和意义”,点击左侧的“启用或关闭Windows功效”,然后找到并勾选 Windows Subsystem for Linux
(Beta) ,确定后会提醒重启运维系统。

windows系统和linux系统平素是水火不容,而在新式的win10系统却周全合作了linux系统,那不得不说是开发者的仙音。当然那几个linux系统默许是不安装的,须要用户手动安装,下边小编就来介绍一下哪些打开win10下的linux系统,这些系统是ubuntu系统。

macOS一而再自BSD Unix,
Linux则是从内核起始再次编辑但一连Unix使用方法的Unix。所以mac还有linux程序员,一般都算是*nix程序员,纵然其中还有好多的界别。
Windows从版本10发端做出的最大转移,可能就是放置的linux子系统,原本的设置方式很粗略,网上广大介绍,一般就是三步:1.安装中开辟开发人员情势;2.windows组件中安装linux子系统;3.在DOS窗口中执行bash,随后经历一场旷日持久而令人可望的安装。
win10下linux系统的设置,Windows10内置Linux子系统初体验。后来以此点子不灵了,因为尽管win10大概马不解鞍的更新了不少本子,其中的linux仍旧维持着beta状态,下载的源网站也在海外,而因为大家都知晓的因由,那个网站在境内访问进一步忙绿。
有聪明人想了艺术,比如首先从第三方下载tar安装包,利用fiddle之类的软件截获win10安装linux子系统时候的下载路径,随后替换为地方的tar文件,固然麻烦点,但仍能很快的落成安装。后来,又是后来,那一个办法也失效了,win10的内置下载路径已经不可以再被修改替换。
那时候说“上帝关上一扇门,总是又为你打开一扇窗”是还是不是有点矫情?

前言


前段时间,机子上的win10又悄悄升级到了一周年正式版,相比无奈。然而之前听大人讲这几个版本已经支持内置的linux子系统,于是就怀着好奇心试玩了一把。固然时期遭逢了广大题材,但全部来说那些子系统体验还不易,在此间就享受部分关键步骤和境遇的难点,剩下的我们温馨折腾吗。。

home88一必发 2

工具/原料

但真相就是那般,Win10
本田CR-VS3过后的Linux子系统,终于转正成正规版了,从而登上了Win10的应用程序商店,并且还有了Ubuntu/Suse
Linux等八个版本供选取,据书上说还会有更加多正在到来的旅途,嗯,那扇窗开的不算小吗?
不论你的Win10使用了怎么着版本,打开应用公司,都曾经能检索到那个Linux应用,然而,就如唯有陆风X8S3之后的本子才方可下载,此外版本的win10只美观看介绍,然后就只可以洗洗睡了。
实际,正确的打开格局是那样:

启用linux子系统


设置(16215版之后不再须求开发人士形式)

Windows功能

安装ing…

  1. 系统升级到一周年正式版及以上(1607)

  2. 依次在 设置更新与安全针对开发人员
    选项中,启用”开发人士形式

  3. 在财富管理器中开拓 控制面板\所有控制面板项\程序和功能 , 打开
    启用或关闭 Windows功能 , 勾选 适用于Linux的Windows子系统(Beta)

  4. 重启电脑

  5. 命令行运营 lxrun /install /y 初阶安装
    设置速度取决于互联网状态,下载的文本在 %localappdata%\lxss 目录下
    lxss.tar.gz (181M),解压后大致500M, rootfs
    目录即为子系统根目录。

  6. 命令行运转 bash 进入Ubuntu
    暗中同意使用的 root 帐号登录,通过指令 passwd 设置密码。

  7. 说到底爱折腾,难免会把子系统环境(lxss目录)玩坏掉,因而干正事前最好先备份下以便迅速还原。注意,不要平昔右键复制恐怕打包,只怕会促成文件权限丢失的。
    xcopy %localappdata%\lxss %localappdata%\lxss.bak /E

  8. 自然,即便你相比随便也可以不实施上一步的备份操作,通过命令行运维
    lxrun /uninstall /full
    轻松卸载子系统,重复下边的步子即可重装,然则要留意下载速度时好时坏哦。

由此地点的手续,已经启用了win10自带的linux子系统(WSL),感觉逼格升高了成千成万。当然,怎么能知足于此呢,接下去就要做一些环境的布署和进一步的发掘。

系统重启完毕后,按 Win+X,A
打开命令指示符(可能按 Win+中华V 打开运营对话框),输入 bash
回车,第一次运营会从网上下载Ubuntu
linux组件,按提醒输入y。

计算机

  1. 率先登陆微软官网,使用本人的微软账号登陆进去,把团结的账号转换成开发者账号,若是找不到登陆链接,能够直接从底下第2步链接账号的地点进入。
  2. 食谱路径是:开首菜单->齿轮图标进入安装->更新和保山->Windows预览体验布置,先选用链接Microsoft账户,使用你的微软账号捆绑到Win10系统,然后在上头的收获Insider
    Preview中,打开开发者预览作用。
  3. 同一个安装界面中,选取最上边的Windows更新,那时候你会找到很多预览版的升级,踏踏实实升级到这一个最新的预览版。你问是否平安?你个*win10下linux系统的设置,Windows10内置Linux子系统初体验。nix码农,关怀Win10平静不安静干啥?

更换数据源(参考)


Ubuntu下大家得以因而
apt-get命令
很有益于的设置/卸载软件,由于暗中认同的软件包仓库是位于海外的,安装软件的时候就或者境遇各类网络难点如故下载到的一对能源不完整,由此就须要切换数据源为国内的镜像站点来革新。

# 1.备份原来的数据源配置文件
cp /etc/apt/sources.list /etc/apt/sources.list_backup
# 2.编辑数据源配置文件
vim /etc/apt/sources.list
# 在这里我使用的是阿里云的数据源:
#==============================================================================================
# deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
# deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
# deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
# deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
# deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
#===============================================================================================
# 3.更新配置
apt-get update
-- Beta feature --
This will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms

Type "y" to continue: y
Downloading from the Windows Store... 100%
Extracting filesystem, this will take a few minutes...
????! ???????...
root@localhost:~#

win10系统

晋级会消耗比较长的时刻,一旦升级成功,打开应用商店,选一个您喜爱的linux版本,下载就好了。

与Windows通讯


近期子系统与Windows之间通过以下二种办法开展报导

  1. 因而tcp协议进行报道(简单点说就是用网络,端口都以通的)
  2. 通过 /mnt/【盘符】/目录 的法子访问Windows目录

试过在Windows的财富管理器中一向对子系统环境目录下的文本所做的改动不能被子系统所识别,因而需求在bash下进展操作。

查看版本音信和分区映射:

方法步骤

————————————————————————————————————————————————

接纳bash客户端软件cmder(参考)


Windows自带的通令指示符cmd并不是很好用(文本选中、复制粘贴等等操作),在那边运用cmder作为替代品,体验效果很好。去cmder官网下载mini版(完整版附带了效仿的bash环境,由于已经安装linux子系统,就不再须要了)的解压即可使用。

root@localhost:~# uname -a
Linux localhost 3.4.0+ #1 PREEMPT Thu Aug 1 17:06:05 CST 2013 x86_64 x86_64 x86_64 GNU/Linux
root@localhost:~# cat /etc/issue
Ubuntu 14.04.4 LTS \n \l
root@localhost:~# ls -al /mnt
total 24
drwxrwxr-x 2 root 1000 0 Apr  7 07:22 .
drwxrwxr-x 2 root root 0 Apr  7 07:22 ..
drwxrwxrwx 2 root root 0 Apr  7 06:58 c
drwxrwxrwx 2 root root 0 Apr  7 04:59 d
root@localhost:~# sudo ls /dev
adss   fb0    kmsg  ptmx  random  tty   urandom
block  input  null  pts   shm     tty0  zero
root@localhost:~#

翻开win10系统版本,并创新到最新版本。设置->更新和黑河->windows更新(左边)。

很多unix程序员的干活办法都以ssh登陆,然后vi修改程序,接着make编译。
到了win10您会意识,同样的ssh不管用了……
事实上的情景是那样,win10暗许的ssh留给了团结的CMD应用,也等于Windows命令行,你不得不选择Win10的管理员登陆,比如一般默许的Administrator,约等于说,你应该用接近:

设置:

1.启动cmder平素运维bash:

  1. 进入”Settings>Startup>Startup options”,
  2. 选择Command line,输入”bash -cur_console:p”

伊始直接运营bash

2.经过软件底部的加号按钮新开标签页并进入bash:

  1. 进入”Settings>Startup>Startup options>Tasks”,
  2. 分选”bash::bash”,将指令修改为”cmd /c “bash” -cur_console:p
    -new_console:d:%USERPROFILE%”

新标签页

小贴士:将cmder目录添加到环境变量path中或者复制快捷方式到C:\Windows\System32"目录下,就可通过win+R快捷键快速打开了

瞩目是root用户,/dev 下也一贯可是多的设备,输入 exit 可脱离bash。

ssh Administrator@192.168.1.100

运营图形界面程序(参考)


何以!linux不是就这么个黑白界面的窗口吗?是的,你没看错,就是图形界面,那里运用的是Xserver那几个东东,至于原理什么的诸位自行度娘吧。

Xming

  1. 安装Xming
    下载地址

  2. 设置完直接打开 Xming 即可

  3. 设置一个 firefox 测试
    apt-get install firefox

  4. 运作(在先后指令前增进”DISPLAY=:0 “)
    DISPLAY=:0 firefox

  5. 简化配置
    老是运营程序都要输入 DISPLAY=:0
    挺累的,执行下列指令后重启bash即可省去那几个手续
    echo "export DISPLAY=:0.0" >> ~/.bashrc

Sublime Text 3安装


既是都足以运营图形界面了,编辑器也要换成可视化的,终归vim还是不太符合本身。

cd /
# 下载
wget https://download.sublimetext.com/sublime-text_build-3126_amd64.deb
# 安装
dpkg -i sublime-text_build-3126_amd64.deb
# 运行
subl

什么鬼,报错了!

有道是是少了哪些正视包,嗯,安装下化解。

apt-get -y install libgtk2.0-0

 /root 目录对应Windows系统的 %localappdata%\lxss\root 文件夹(注意,不要删除lxss目录,bash会败北)。

home88一必发 3

这么来登陆到Win10,随后可以用bash运营linux。
但是若是linux已经在电脑桌面其余的CMD窗口运维了如何是好?那时候bash命令会报错,说已经有此外实例运营,怎么化解吧?可以在桌面进入linux子系统,编辑一下/etc/ssh/sshd_config文件,把内部的22号端口,修改为比如23,修改完是那样子的:

启航xfce桌面环境(参考)


图形界面程序都能运作了,不尝试ubuntu的桌面环境怎么能甘心,于是又是噼里啪啦一顿搜索。一开始参考那篇海外的教程煎熬了遥远,每一回运维总是报一个composite的插件没加载进来,各样软件包安装一通照旧那多少个,后来实际上失去耐心就废弃了那条路。后来看来类似有人成功运维了xfce,但一贯不具体步骤,只可以协调一顿摸索,结果还真误打误撞成功了。

# 1.安装xfce4
apt-get install xfce4
# 2.安装xubuntu桌面及附带应用
apt-get install xubuntu-desktop
# 3.启动
xfce4-session

运转报错了

消除办法:(参考)

sed -i 's$<listen>.*</listen>$<listen>tcp:host=localhost,port=0</listen>$' /etc/dbus-1/session.conf

再度尝试打开,以往可以观望Xming打开了三个窗口,分别是桌面、任务栏、菜单栏。逼格是进步了成千上万,不过真正很卡。

xfce4

只要不幸删除了lxss或许其余原因 bash
运营失利。可以在CMD里用上面两条命令卸载再重新安装:

echo y|lxrun /uninstall
echo y|lxrun /install

更新linux子系统,在CMD里运行:

lxrun /update                    // 更新linux子系统
// - 或者 -
lxrun /update /critical          // 只更新关键更新,更新完成后会强制关闭linux进程

win10下linux系统的设置(开启)和利用

Port 23

在子系统上运转nginx


因工作项目中用到了 ssi 技术,而现已windows上一度编译好的 nginx
是不帮助相对路径引用的(急需修改源码重新编译),只好委屈求全用着
Apache 。可是既然未来都能跑linux了,这就试试在linux上运转
nginx,然后在windows上拓展调用。

行义务令 apt-get
安装软件前提议先在 /etc/apt/sources.list
文件前端添加国内的镜像服务器,  是163的镜像源:

比方您的win10开了防火墙,记着修改防火墙设置,允许传入的连接申请(allow
incoming traffic)到23号端口,以便允许你远程登陆。
linux子系统重新启航之后,ssh -p 23 username@192.168.1.100就足以登陆到linux之中了。
如若您根本不使用windows本人的命令行,那在win10 services中关闭SSH Server
Broker、SSH Server
Proxy两项,就足以让出去22号端口,从而不修改linux子系统的ssh端口,那样也是可以的。然则我不提出如此,比如您想远程关机,就只可以在CMD中推行,Linux子系统根本未曾那么些权力。
此刻还留存一个标题,如若win10双重起动,而linux子系统还未曾运维,ssh是无法登陆到linux的,解决那些题材,然则个细节了,大致经过那一个手续:

1. 经过apt-get方式安装
apt-get install nginx
# 启动报错了:
nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)
# 80端口实际没被占用,那应该就是ipv6的问题,将其禁用: 
vim /etc/nginx/sites-available/default
# 找到default_server ipv6only=on;注释掉
# 再次启动没报错,不过浏览器无法访问,80端口也没被使用,查看error.log
cat /var/log/nginx/error.log
# 看到错误信息:
ioctl(FIOASYNC) failed while spawning "worker process" (22: Invalid argument)

# 解决方法:禁用master进程模式
sed -i '1 a\master_process off;' /etc/nginx/nginx.conf

再一次运转,终于没报错了,Windows中开拓浏览器访问127.0.0.1,还真的实验成功了,可是nginx版本有点老,是1.4.6的。

deb http://mirrors.163.com/ubuntu trusty main restricted universe multiverse
deb http://mirrors.163.com/ubuntu trusty-upadates main restricted universe multi
verse
deb http://mirrors.163.com/ubuntu trusty-security main restricted universe multiverse

home88一必发 4

  • 在linux子系统中实践:sudo dpkg-reconfigure openssh-server生成ssh服务器端证书。
  • sudo vi /etc/ssh/sshd_config,再一次编辑sshd的陈设文件,把UsePrivilegeSeparation yes这一行最终的yes修改成no。
  • 此起彼伏修改那些文件,把PasswordAuthentication no修改成PasswordAuthentication yes
  • 保存/etc/ssh/sshd_config退出vi。(嗯,写给小白,保存退出vi的艺术是:ESC键->”:”键->x然后回车)
  • 运行sudo visudo编纂sudoers文件,扩展一行:$USER ALL = (root) NOPASSWD: /usr/sbin/sshd -D,注意那里把$USETiguan替换成你的linux子系统用户名。保存退出。倘诺visudo有任何报错一定仔细检查修改直到不荒谬,否则你的linux将不能够再登陆!!!
  • 在Win10边际建立一个vbs脚本文件,比如叫autostartssh.vbs,内容为:
2. 透过编译源码的方法安装
# 1.安装依赖包
apt-get -y install build-essential autoconf libtool libxml2-dev openssl libcurl4-openssl-dev libbz2-dev libjpeg-dev libpng12-dev libfreetype6-dev libldap2-dev libmcrypt-dev libmysqlclient-dev libxslt1-dev libxt-dev libpcre3-dev libreadline-dev
# 2.下载源码
wget http://tengine.taobao.org/download/tengine-2.1.1.tar.gz
# 3.解压
tar -zxvf tengine-2.1.1.tar.gz
# 4.进入目录
cd tengine-2.1.1
# 修改源码...
# 5.配置
./configure --prefix=/usr/anyesu/nginx
# 6.编译&安装
make && make install
# 7.修改配置文件
sed -i '1 a\master_process off;' /usr/anyesu/nginx/conf/nginx.conf
# 8.启动
/usr/anyesu/sbin/nginx

下面的步调,作者试了两台计算机,其中一台报错:

nginx: [emerg] invalid port in resolver “fec0:0:0:ffff::1” in
/usr/anyesu/nginx/conf/nginx.conf:123

/etc/resolv.conf

出现的 fec0:0:0:ffff::1
是个如何鬼,度娘了一番,貌似是dsn,打开dns配置文件 /etc/resolv.conf
果然发现了那东西,应该是Windows下只分红了1个dns,所以linux就给了如此七个暗中同意值的吧。将它们诠释掉,重新起动nginx,成功运转
Tengine/2.1.1

注意,每次重启bash都会重置dns配置的

可用vi编辑:

vi /etc/apt/sources.list

style=”font-size: 12px;”>按3yy复制原来的3行,按Shift+G到终极,按p粘贴。输入
:1,3s/\w*\.ubuntu/mirrors.163/
替换前3行事163的镜像,Shift+ZZ保存退出。

win10下linux系统的装置(开启)和行使

启用ssh(参考)


当地可以由此命令行打开bash,若是要远程访问(就像访问线上服务器一样),那么就须求启用ssh。

# 1.安装ssh(一般不需要这步)
apt-get install openssh-server
# 2.修改配置文件
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
vim /etc/ssh/sshd_config
#=======(修改以下选项内容)=========#
# Port 23(22端口已被占用)        #
# (取消注释)ListenAddress 0.0.0.0 #
# UsePrivilegeSeparation no      #
# PermitRootLogin yes            #
# (注释)StrictModes yes         #
# PasswordAuthentication yes     #
#================================#
# 3.启动ssh
service ssh start
# 4.如果提示“sshd error: could not load host key”,则用下面的命令重新生成
rm /etc/ssh/ssh*key
dpkg-reconfigure openssh-server

接纳终端工具访问,那里自个儿用的是 WinSCP + PuTTY

WinSCP

PuTTY

然后用 apt-get
update 命令更新源(163的更新源最终会现出一些校验警告,可以忽略)。

set ws=wscript.createobject("wscript.shell")
ws.run "C:\Windows\System32\bash.exe -c 'sudo /usr/sbin/sshd -D'",0

WSL开机运行


职务管理器

开辟职分管理器大家得以窥见,在运转子系统的时候,后台其实有一个bash的经过在运作,大家每开一个命令行窗口就会多一个
bash.exe,要是大家把持有的 bash.exe
都关闭则那么些bash进度就关门了(也等于是子系统关机了),跟着前边在子系统中开拓的次第如nginx、sshd等也随后关闭了。为了让linux程序可以在后台继续运转,那里通过
vbs 脚本在后台打开一个 bash.exe
来保险bash进度一向开着。当然,仍能透过Windows的安排职务落到实处开机运维WSL并打开其中的先后。

# 1.新建开机启动脚本
vim /usr/anyesu/boot.sh
# 2.编辑
#================================================================
# #!/bin/sh
# /usr/anyesu/nginx/sbin/nginx
# service ssh start
# $SHELL  #这句很重要,挂起当前脚本进程,进而维持base.exe一直打开
#================================================================
# 3.设置权限
chmod 777 /usr/anyesu/boot.sh
# 4.创建vbs脚本(D:\linux\wsl.vbs)
#==========================================
# Set ws = CreateObject("Wscript.Shell") 
# ws.run "bash /usr/anyesu/boot.sh",vbhide
#==========================================
# 5.创建计划任务

布置职责

开创基本义务

安装任务名称

安装任务触发条件——用户登录

安装职分操作——运行

安装职分操作——运维vbs脚本

运营布置任务

安装 git: 

home88一必发 5

  • 今后可以先测试一下,双击autostartssh.vbs文件,应当能顺风的开拓linux子系统并运转ssh服务器。
  • 一经测试没有失水准,在起初菜单->Windows管理程序文件夹中运行win10的“职务布署程序”,伸张一个开机自动执行义务,操作是运转程序,程序内容就是刚刚编写的那几个autostartssh.vbs脚本。在那边蒙受一个自作者深信是bug,本来触发器应当设置为“电脑运转时”自动执行,但坚定无效,最终设置成了”当其余用户登录时”反而没有任何人登陆就执行了,实际是开机自动执行的功力。

至于Linux发行版本


  • #### 升级Ubuntu版本至Xenial(16.04)

  • #### 使用openSUSE替换Ubuntu

# 打开cmd,进入bash
bash
cd /
# 下载openSUSE
wget -O openSUSE-42.2.tar.xz https://github.com/openSUSE/docker-containers-build/blob/openSUSE-42.2/docker/openSUSE-42.2.tar.xz?raw=true
# 解压
xz -d /openSUSE-42.2.tar.xz
mkdir rootfs
tar -C rootfs -xvf openSUSE-42.2.tar
# 退出bash,返回cmd
exit
# 进入子系统所在路径
cd %localappdata%\lxss
# 备份ubuntu用户空间(看下任务管理器中bash是不是彻底关闭了)
rename rootfs rootfs.ubuntu
# 使用openSUSE用户空间替换默认用户空间
move rootfs.ubuntu\rootfs rootfs
# 设置默认登录用户
lxrun /setdefaultuser root
# 重新进入bash
bash
#查看发行版本
cat /etc/issue
apt-get --assume-yes install git

win10下linux系统的装置(开启)和行使

甭管怎么着,大家想开机自动运营Linux ssh的目标,终于达到了。

合法材质


  • #### github

  • #### 博客

  • #### insider build的换代记录

–assume-yes可选:安装交互全体yes。

敞开win10开发者情势。

————————————————————————————————————————————————

2017-11-21追加


眼前系统又被强更到了1709(16299.64),发现几点变化做个记录:

  1. ping命令已经足以不奇怪使用了
  2. nginx的master情势也能符合规律使用不会报错了
  3. 发觉nginx、ssh之类的,能健康运转不报错但怎么也无从绑定端口。后来查了github上的
    issues
    发现是wegame(原tgp)的锅,原因是运用了一个win10上已失效的表征,wegame的支出表示会飞快修复。临时化解办法:删除文件
    %systemroot%\system32\drivers\QMTgpNetflow764.sys
    后重启bash,如不只怕删除先关闭应用或卸载再重装wegame(最好重启电脑),重装后先删除
    QMTgpNetflow764.sys 再运行wegame。
  4. 基础升级为 4.4.0-43-Microsoft 了,
    带上了微软的标记,揣摸是以此缘故造成千千万万软件包不能不奇怪安装了。

删除用remove替换install。

Win10底下Linux子系统的一般性维护跟正式的Linux系统一样,比如Ubuntu版本也是选用apt举行包管理,平常要时不时开展一些apt update
/
apt upgrade如此那般的操作。感觉上,90%原先服务器端的开销工作,都得以在这些中已毕了。有些用户喜好GUI界面,可以品味安装Xming之类的X11
Windows
Server,官方网址是:https://xming.en.softonic.com,然而本人觉得需求不是很大,开发工具、办公工具以及任何一些常用软件,windows下一度有好多了,真的没有须要自讨无趣。

2017-11-30追加


动用商店

目前 ( 1709 版本 16299.64 )
已经得以在合营社中查找安装多个例外版本的子系统了,根路径为
%localappdata%\Packages\【根据子系统名找到对应的应用文件夹】\LocalState\rootfs
。同时还新增了七个命令行工具: wsl.exewslconfig.exe

其中 wsl.exe 应该对等于 bash.exe ,
两者之间的细微差距暂时还没觉察。至于 wslconfig.exe
的功效重点为(参考):

1. 查看安装具有已设置的子系统: wslconfig /l

适用于 Linux 的 Windows 子系统:
Ubuntu (默认)
Legacy

其中 Ubuntu 是商店中下载的本子,Legacy 是按老方法安装的专断认同wsl。

2. 切换bash.exe暗许使用的子系统: wslconfig /s <DistributionName>

其中 <DistributionName> 替换为 UbuntuLegacy ,
只怕其他已设置的子系统。

3. 卸载已设置的子系统: wslconfig /u <DistributionName>
同上替换 <DistributionName> 。经测试发现,此 "卸载"
并不会卸载商店中设置的 Ubuntu 应用, 即再度实施该应用又会重新安装了。

home88一必发,自动移除:

home88一必发 6

已知有几项限制,开发进度中可能会蒙受:

写在结尾


WSL折腾完有一段时间了,只是一向没时间记录下来(或然是懒吧)。在此在此之前,由于工作急需,偶尔专职运营的角色,折腾下服务器什么的,就很业余的求学了一些linux指令。之前装过vmware,体验不是很好就不想装了,所以写shell脚本、编译源码什么的都以在信用社测试服务器上练兵的,今后有了WSL之后就足以在大团结本地陶冶了(肆意折腾,哈哈哈)。使用方面,体验和行使终端工具连接远程服务器是基本上的;质量方面,子系统(bash进程)本人是不占多少内存的,运行程序大约约等于运营Windows程序了,不显示图形界面内存都占用相比较小,肯定优于”印象中的虚拟机”。总的来说,WSL照旧相比较值得推荐去折腾的,也正如相符新手学习linux,尽管自身也只是个小白⊙﹏⊙


apt-get autoremove

win10下linux系统的安装(开启)和应用

  • 实质上Linux子系统或然接近虚机的运作格局,由此,比较偏向底层的网络编程,比如socks
    udp操作,测试的时候你要考虑到实际linux是经过win10的互连网系列转发的,难以描述确切的症状,由此可见会遇到很多无法达标预期的处境,那类程序调试,恐怕您要么须求一台linux恐怕mac真机。
  • tcpdump之类的工具,在linux子系统上是无能为力不荒谬执行的,由此一旦要抓包,预计你只好借助windows下的软件了,然而不管怎么着只怕达不到tcpdump那样便于。sad…
  • 地方提到过,类似关机、重启之类这样的操作,在linux子系统中无法已毕,那样的功用,依然要求真机调试。

转发请声明出处:http://www.jianshu.com/p/bc38ed12da1d

查询7z软件:

(你有没有好奇后日的题头图作者没有说图文毫无干系?事实上那幅图片是Win10预置的桌面壁纸之一,不算非亲非故吧?)

apt-cache search 7z

home88一必发 7


win10下linux系统的设置(开启)和行使

上边是设置swift编译环境的例证(未成功):

拉开windows成效。按win+x键->选取控制面板(只怕直接打开控制面板)->启用或关闭windows效用->适用于Linux的windows子系统。选中后点确定。

  1. 安装 CLang 和 libicu-dev

    apt-get install clang libicu-dev

2.
下载swift发行包(到swift.org里找ubuntu14.04平台的本子,近日DEV快照是Swift3.0预览版本)

home88一必发 8

curl -O https://swift.org/builds/development/ubuntu1404/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar.gz

win10下linux系统的装置(开启)和接纳

注:可以先在Windows系统中用下载工具下载好,然后用touch命令在linux文件系统里先创建个同名的文本

root@localhost:~# touch swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar.gz

home88一必发 9

接下来再用Windows进行文件复制,覆盖到 %localappdata%\lxss\root 文件夹里。

win10下linux系统的安装(开启)和行使

  1. 解压tar.gz包。

    tar xzf swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar.gz

万一暴发了之类错误:

home88一必发 10

root@localhost:~# tar zxf swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.ta
r.gz
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin/swift-autolink-extract: Cannot create symlink to ‘swift’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin/swiftc: Cannot create symlink to ‘swift’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin/lldb-server: Cannot create symlink to ‘lldb-server-3.9.0’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin/lldb: Cannot create symlink to ‘lldb-3.9.0’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin/lldb-mi: Cannot create symlink to ‘lldb-mi-3.9.0’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/lib/liblldb.so: Cannot create symlink to ‘liblldb.so.3.9.0’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/lib/python2.7/site-packages/lldb/_lldb.so: Cannot create symlink to ‘../../../../lib/liblldb.so’: Invalid argument
tar: swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/lib/python2.7/site-packages/lldb/lldb-argdumper: Cannot create symlink to ‘../../../../bin/lldb-argdumper’: Invalid argument
tar: Exiting with failure status due to previous errors

win10下linux系统的装置(开启)和利用

改用7z来解压,设置可举行权限。

重启电脑。然后点击左下角 起头->windows
系统->命令提醒符.输入bash,然后enter,界面提醒您是不是下载linux系统,输入Y
然后enter,这么些必要一会,下载完结以往会活动安装,安装到位须要您输入linux账号和密码,下图有示。(因为俺的早已设置到位,忘记截图,前面俩张图示从网上找的,所以和自身的截图不太搭,如果侵权请联系小编删除。)

rm -rf swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04
apt-get install p7zip-full
7z x swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar.gz
7z x swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar
rm swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04.tar
chmod +x /root/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin/*

 4. 布署环境变量,编辑 ~/.bashrc 文件,结尾参与

home88一必发 11

export PATH=/root/swift-DEVELOPMENT-SNAPSHOT-2016-03-24-a-ubuntu14.04/usr/bin:"${PATH}"

win10下linux系统的安装(开启)和应用

  1. 重新载入配置,查看结果:

    root@localhost:~# source ~/.bashrc
    root@localhost:~# swift –version
    Swift version 3.0-dev (LLVM b010debd0e, Clang 3e4d01d89b, Swift 7182c58cb2)
    Target: x86_64-unknown-linux-gnu
    root@localhost:~#

  2. 当下仍不恐怕跻身REPL环境照旧编译swift文件。

编译错误:

home88一必发 12

<unknown>:0: error: could not load the swift standard library

win10下linux系统的设置(开启)和应用

在Windows 10上用Bash运转有图表用户界面Ubuntu应用 
http://www.linuxidc.com/Linux/2016-04/130125.htm

Windows 10上使用Bash on Ubuntu 
http://www.linuxidc.com/Linux/2016-04/130016.htm

home88一必发 13

正文永久更新链接地址:http://www.linuxidc.com/Linux/2016-04/130163.htm

win10下linux系统的安装(开启)和选拔

home88一必发 14

home88一必发 15

win10下linux系统的设置(开启)和利用

创造完账号就足以用linux了,那个窗口就是linux的shell窗口,可以在其间实践linux的指令以及安装linux的软件,当然也席卷linux的桌面。
下次运维linxu的时候可以一贯打开命令指示符,没错就是丰裕黑框,然后在中间输入bash然后enter,就会活动进入到linxu系统。

home88一必发 16

win10下linux系统的装置(开启)和采用

END

注意事项

linux上边删除东西一定要慎重,因为linux没有回收站。删了就删了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图