关于windows环境子系统的信息

windows子系统 * Docker is not running问题

win10系统安装的ubuntu 的子系统,安装上docker后运行 service docker start ,显示OK,然后docker ps查看报错:

成都创新互联是专业的齐齐哈尔网站建设公司,齐齐哈尔接单;提供网站设计、网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行齐齐哈尔网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

wtf? 查看服务状态

竟然没有运行成功,后来各种折腾还是不行,网上查了相关资料后基本认定我这个子系统是运行不起来了,原因是 目前 wsl 是不支持 docker 的守护进程的

于是乎,想要方便的在 wsl Ubuntu 上使用 docker 的想法近乎破灭。想要使用还是有方法的,可以参考这篇博客 在Linux的Windows子系统上(WSL)使用Docker(Ubuntu) 。

我们知道docker是cs架构的,即分为client端和server端,本地都是通过socket协议通讯的,如果本地client要连接远程的docker服务,则需要在client上导出以下环境变量

export DOCKER_HOST=tcp://your docker server ip:2375

2375是默认的连接端口,当然你可以在服务器端指定其他端口。

执行docker ps, ok没问题,打印出了远端host的docker容器信息。

这样我的子系统就变成了docker client端。

over!

win10安装适用于Linux的Windows子系统

1、通过快捷键"windows键+R",打开运行窗口,输入:control appwiz.cpl。

2、在打开的控制面板的程序和功能界面,点击左边的“启用或关闭windows功能”。

3、在弹出的“windows功能”窗口中找到“适用于Linux的windows子系统”,勾选中然后点击“确定”。

4、从开始菜单中找到并点击“Microsoft Store”图标并进入windows应用商店。

5、在windows应用商店中搜索“linux”关键字,从结果中选择“在windows上运行Linux”。

6、在新打开的页面中,会显示可以在windows 10上安装的linux系统,选择自己想要安装的一款,然后跟从向导安装。

windows11的子系统没啥卵用

windows11的子系统是有用的。据查询公开资料显示windows11的安卓子系统体验上还是很好的,应用都很流畅,像Word、Chrome、以及其它普通windows桌面应用程序可以共同运行。微软官方宣布,已正式推出Windows11安卓子系统WSAv1,允许Windows11用户通过亚马逊应用商店运行Android应用。

Windows10上安装使用Linux子系统(WSL)

Linux的Windows子系统让开发人员可以直接在Windows上运行Linux环境(包括大多数命令行工具,实用程序和应用程序),而无需建立在虚拟机的开销之上,整个系统共200多M,但包含了你能用到的所有功能,并且和windows完美互操作(省去Linux挂载本地windows分区或目录的操作),目前Linux的windows子系统已经相当完善,可当作完整linux系统使用.

您可以:

从Windows应用商店中 选择您最喜爱的Linux发行版。

运行常用的命令行实用程序,如grep,sed,awk等。

运行Bash shell脚本和Linux命令行应用程序,包括:

工具:vim,emacs,tmux

语言:Javascript / node.js,Ruby,Python,C / C ++,C#和F#,Rust,Go等

服务:sshd,MySQL,Apache,lighttpd

使用发行版的内置包管理器(apt-get)安装其他Linux工具。

从Linux控制台调用Windows应用程序。

在Windows上调用Linux应用程序。

1、打开 [控制面板]

2、找到 [程序与功能] 处的 [启用或关闭windows功能]

3、在 [适用于linux的windows子系统] 一栏处打上勾

4、点击确定并重启电脑

注:以上步骤在win10专业版上测试,win10家庭版可能不支持

使用快捷键: 微软光标键+S 搜索 "功能"

进入功能

勾选适用于Linux的Windows子系统

或者直接PowerShell中运行以下命令

然后出现提示重新启动计算机

在应用商店搜索“Linux”,选择您喜欢的Linux版本,推荐安装Ubuntu

注意:应用商店的程序使用默认路径,不要更换到其他盘符

安装完毕后开始菜单出现Ubuntu图标

现在可以在里面进行任何和linux相关的命令

或者在Windows商店里直接启动

进入Ubuntu系统会自动初始化并安装,稍等几分钟即可

Enjoy !

切记:小心执行 mkdir -rf mnt

环境子系统的Win32 子系统

Win32 子系统提供 Win32 API 。符合 Win32 API 的应用程序可以不加修改地运行在所有32位平台上。Win32 子系统DLL (如 Kernel32.dll , Advapi32.dll , User32.dll , Gdi32.dll )实现了Win32 API 函数。

Windows拥有一个内核, 多个子系统.

Window的环境子系统其实就是内核的client, 内核为环境子系统提供服务.

最早时设计了三个环境子系统, OS/2, POSIX, Windows. 到今天Windows操作系统中就只剩下了Windows环境子系统了.

Windows的环境子系统的服务器进程是CSRSS.EXE, 全称是Client/Server Runtime Server Subsystem. 它包括三个DLL.

WINSRV.DLL 最基本的dll, 提供包括管理控制台窗口, hard error(内核的驱动程序发起, 有csrss.exe报告的错误).

CSRSRV.DLL 进程,线程维护, 调试

BASESRV.DLL 负责安全和登录.

Windows子系统还有一个内核模块, 它工作在内核之中, Win32K.sys

包括

GDI, 窗口绘制.

USER 用户输入

pycharm使用windows10子系统ubuntu环境运行python

在Microsoft Store中搜索ubuntu 找到后点击安装、启动进入ubuntu界面设置账号密码

进入页面后输入cat /etc/lsb-release 查看系统版本 我安装的是ubuntu 20.04.1 LTS

先更新下包

可以在pycharm的terminal中用ssh请求连接测试一下,发现连接被拒绝了。

因为这里默认使用端口22连接,而22已经被windows占用。打开配置文件,

修改端口为2222

保存退出后启动ssh

发现启动失败提示sshd error: could not load host key

使用命令安装

完成后查看启动ssh启动状态成功

再在pycharm中连接测试下,发现已经可以连接了

但是又发现一个新问题

再用ssh连接,发现root账号登陆总是不成功,需要使用启动ubuntu设置的账号密码登录,注意现在使用2222端口连接

接下来在pycharm中点击Tools Deployment Configuration 增加sftp连接,填入刚刚ssh连接的配置信息,点击Test Connection连接成功

在Setting-Project:Intepreter中选择SSH Intepreter 使用刚刚添加的连接

点击运行发现找不到远程文件

最后再运行一次,成功!

pip安装包时遇到gcc问题


分享题目:关于windows环境子系统的信息
新闻来源:http://ybzwz.com/article/hpcpps.html