热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

win10子系统centos_在win10中使用WSL搭建Linux开发平台

使用Windows机器进行开发的同学看见使用LinuxMac的同学在shell里面敲两条命令就搭建好了开发环境,表示十分羡慕.那么Win10自带的WSL(WindowsSubsys

使用Windows机器进行开发的同学看见使用Linux/Mac的同学在shell里面敲两条命令就搭建好了开发环境,表示十分羡慕.

那么Win10自带的WSL(Windows Subsystem for Linux)就是使用Windows进行开发同学的福利了.

本文件介绍了在win10上使用WSL搭建Linux的开发环境的方法,大家可以参考.

前提条件

WSL在win10才有,所以需要win10系统,而且确保升级到最新的版本.win7/8系统没有这个功能,如果是win7系统,要实现这样的功能,就只能安装虚拟机了.

操作步骤

1.开启win10的开发人员模式

2d6c3343555e36bbb0ccf3f454d6a2a8.png

2.开启win10的适用于linux的windows子系统

f50fdef77958f8ae76d2c9afb9ab8068.png

这一步完成之后机器会重启,重启之后再执行下面的操作

3.安装ubuntu

打开microsoft store,搜索ubuntu,然后安装

951b24256a96b10b27b91e657f2962c5.png

安装完成之后,启动ubuntu

ba066af0567349d3ea5c4e3af783d49e.png

等一会儿会有一个黑框弹出来,里面会让输入新用户的密码,自己随便输入一个就可以了.

4.设置ubuntu的默认用户为root

默认安装好的ubuntu登录的用户是自己刚才新建的,比如我的就是cxy. 执行很多命令的时候需要使用sudo,比较不方便. 可以将默认用户设置为root.

以管理员身份打开windows的cmd命令行

c:甥敳獲xxxAppDataLocalMicrosoftWindowsApps甥畢瑮u.exe config --default-user root

其中xxx换成自己的用户名

aae1012cc27989de770a2ef5cd0c0033.png

然后再启动ubuntu应用,就能看到默认是root用户登录的了.

5.安装最新版本的mobaxterm方便操作

直接使用上面的命令窗口也可以操作,但是很多复制粘贴都不方便.

可以下载最新版本的mobaxterm(我的是11.1),其可以直接支持wsl.

1c5e228d6130945371f36d8f9d6a1e57.png

新建session的时候选择WSL,然后默认选项就可以了

59dcda7059bbc0566cf2923306b340e3.png

最后安装得到的结果,可以看到这个是最新版本的ubuntu 18.04 LTS版本.但是内核不是Linux的,而是Microsoft.

ced081392b5464b4eac798361b3950bd.png

搭建好的环境

使用小技巧

1.可以把下面的两行加入到~/.bashrc的最后.

PS1让提示更加好看.

PATH保证只有linux需要的路径包含在里面,因为默认情况下会将windows的PATH也包含,导致有些命令会冲突.

export PS1=' UBU e[1;37m[e[me[1;32mue[me[1;33m@e[me[1;35mHe[m e[4mwe[me[1;37m]e[me[1;36me[m $(echo $?) $'export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games'

76148d53c2246e23486d5b494fc72e81.png

2.路径映射

wsl的根目录/是在C盘一个比较深的隐藏路径下面

使用df -hT,可以看到我机器的C:,D:盘分别是/mnt/c和/mnt/d.

平时使用的时候,最好不要把大的东西直接放到/root下面,不然C盘很快就满了.

887817a85fd625380d5039ca7b498f5e.png

如果文件需要在windows下面也看到,需要到/mnt/x相应的路径下面操作,不然在windows的文件管理器里面不好找到.

其他
  1. 本来开始想安装centos或者rhel的,但是现在wsl还没有. 我们就安装了ubuntu来用. 在windows store里面搜索linux,能看到好几个其他的发型版本,如果有自己觉得使用更方便的,可以去安装. WSL各个发行版是相互独立的,可以同时安装. 效果就像是装了好几台虚拟机.
  2. WSL的东西和真正在裸机/虚拟机装的linux还是有些区别的,可以认为各种要操作硬件的东西都是不行的.毕竟kernel是windows的.但是上层的应用都是没有问题的.
  3. 如果用pycharm写python脚本,pycharm可以配置成使用WSL里面的python而不是windows自己的,比较方便.



推荐阅读
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 使用C++编写程序实现增加或删除桌面的右键列表项
    本文介绍了使用C++编写程序实现增加或删除桌面的右键列表项的方法。首先通过操作注册表来实现增加或删除右键列表项的目的,然后使用管理注册表的函数来编写程序。文章详细介绍了使用的五种函数:RegCreateKey、RegSetValueEx、RegOpenKeyEx、RegDeleteKey和RegCloseKey,并给出了增加一项的函数写法。通过本文的方法,可以方便地自定义桌面的右键列表项。 ... [详细]
  • 本文详细介绍了在Centos7上部署安装zabbix5.0的步骤和注意事项,包括准备工作、获取所需的yum源、关闭防火墙和SELINUX等。提供了一步一步的操作指南,帮助读者顺利完成安装过程。 ... [详细]
  • 安装oracle软件1创建用户组、用户和目录bjdb节点下:[rootnode1]#groupadd-g200oinstall[rootnode1]#groupad ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 本文介绍了Shell中for命令的基本格式和用法,通过提供一个值列表来迭代执行一系列命令。同时还介绍了如何读取列表中的值,并给出了for命令与其他命令的结合使用示例。 ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 如何查询zone下的表的信息
    本文介绍了如何通过TcaplusDB知识库查询zone下的表的信息。包括请求地址、GET请求参数说明、返回参数说明等内容。通过curl方法发起请求,并提供了请求示例。 ... [详细]
  • 本文总结了Linux下多线程执行shell脚本的4种方法,包括切换到工作目录执行、使用绝对路径执行、直接使用bash或sh执行。同时介绍了为什么需要加上"./"来执行脚本的原因。 ... [详细]
  • STM32与FPGA的对比及学习建议
    本文对比了野火STM32F103指南针板和Xilinx的PYNQ-Z2板(ZYNQ-7020),介绍了野火STM32F103指南针板的学习资料和讲解视频的详细程度,建议初学者学习野火的资料。同时,介绍了STM32开发所用的Keil程序和C指针的重要性。对于ZYNQ-7020的开发,提到了其自带的Linux、Ubuntu18.4系统以及使用SD卡烧入镜像的方法。 ... [详细]
  • AFNetwork框架(零)使用NSURLSession进行网络请求
    本文介绍了AFNetwork框架中使用NSURLSession进行网络请求的方法,包括NSURLSession的配置、请求的创建和执行等步骤。同时还介绍了NSURLSessionDelegate和NSURLSessionConfiguration的相关内容。通过本文可以了解到AFNetwork框架中使用NSURLSession进行网络请求的基本流程和注意事项。 ... [详细]
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
author-avatar
fo切為祢
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有