介绍

WSL(windows下的Linux子系统)

Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu 14.04 "Trusty Tahr"映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。

碎碎念

想要搞这个子系统主要是为了方便调用kali中常用工具,虚拟机占用资源高, terminal调用子系统使用效率较高,更为方便快捷。安装过程中有参阅其他教程,但是还是问题多多可以说踩了不少坑,这里给出一份完整详细的WSL安装教程

2020.8.11亲测可用

!请严格安装教程操作 错误操作顺序可能导致报错

前提条件

1)至少是 Windows 10 Anniversary Update, 推荐使用 Creators Update

2)必须是 64 bit

打开设置->系统->关于 可查看操作系统版本

//如果你的 OS Build 低于 14393, 请先尝试更新

安装

1. 关闭杀软以及Windows defener实时保护

亲测安装过程中可能误报导致安装出错

打开 Windows defener->病毒和威胁防护->“病毒和威胁防护”设置

关闭实时保护

//不放心的话可以把下面几个也都关了

2. 控制面板开启WSL功能

打开 控制面板->程序->启用或关闭Windows功能

勾选 适用于Linux的Windows子系统

90%情况下都可以从这里开启 笔者有遇到不能更新的问题

亲测可用命令行开启此功能

以管理员权限打开 PowerShell, 运行以下命令:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

3. 开启开发人员模式

打开 设置->更新和安全->开发者选项, 选择“开发人员模式”

4. 在Microsoft store下载所需Linux系统

//这里以kali为例

5. 启动Linux

打开刚才下载的Linux

这里有提示可能需要几分钟

然后提示输入Linux账户名和密码

此时Linux账户创建成功

6. 启用root账户

/* 后续操作笔者在Windows Terminal上完成

Windows Terminal可在Microsoft store

!需要windows 10版本 18362.0或更高版本

使用cmd或者PowerShell应该也能完成后续操作(未测试)*/

1) 设置root账户密码

使用命令

sudo passwd

键入之前设置的账户密码 然后设置root账户密码

2) 启用root账户

使用如下命令

su root

然后输入刚才设置的root账户密码

7. 安装完整版kali

Microsoft store下载的kali不包含任何工具 需要后续安装完整版kali

1) 安装vim

先更新源 使用命令

apt-get update

!这里注意要先更新源不然不能安装vim

使用如下命令安装vim

sudo apt-get install vim

vim安装完成

2) 更换kali源

使用如下命令

sudo vim /etc/apt/sources.list

然后复制下面的源

#中科大
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib #阿里云
deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib #清华大学
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free #浙大
deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
deb-src http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free #东软大学
deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
deb-src http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib #官方源
deb http://http.kali.org/kali kali-rolling main non-free contrib
deb-src http://http.kali.org/kali kali-rolling main non-free contrib

//其实只复制中科大的源也可以 源只影响下载速度 网络以及其他因素可能导致差异 大部分教程用的都是中科大的源

在这个界面先按i(insert)插入(进入编辑模式)

然后粘贴刚才复制的源

然后按esc(进入命令模式)

输入

:wq!

然后使用如下命令查看源是否更换成功

cat /etc/apt/sources.list

如图更换成功

3) 更新源并安装完整版kali

使用如下命令

sudo apt-get update     #更新源
sudo apt-get dist-upgrade #更新软件
sudo apt-get install kali-linux-large #安装完整版kali

许多教程这里的安装命令都是 sudo apt-get install kali-linux 或 sudo apt-get install kali-linux-full

这里也是找了很久才知道主要数据包名字改了 导致很多教程现在都失效了

链接:https://www.kali.org/news/major-metapackage-makeover/

执行完第二条命令后有一个报错提示

/* 这个报错笔者第一次安装时没有遇到 但是后续多次尝试都有遇到这个问题= =

暂时不清楚原因 */

执行如下命令修复可解决

sudo mv /var/lib/dpkg/info/ /var/lib/dpkg/info_old/
sudo mkdir /var/lib/dpkg/info/
sudo apt-get update

sudo apt-get -f install

sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info_old/
sudo rm -rf /var/lib/dpkg/info
sudo mv /var/lib/dpkg/info_old/ /var/lib/dpkg/info/

参考:https://blog.csdn.net/heray1990/article/details/47803541

然后再执行第三条命令安装完整版kali

如果更新源后没有更新软件直接执行第三条命令

可使用

sudo apt-get install kali-linux-large --fix-missing

这里中途会有一些图形化界面的选择选项 类似这种

这里用翻译软件自行翻译选择合适选项

//有教程写有Yes选Yes有OK选OK 最后一个选“from inetd”

安装时大致查看过这些选项影响应该不大请自行斟酌

然后就等着黑框框里闪啊闪啊 等待安装完成

这里提一下Windows Terminal从PowerShell进入子系统只需使用kali或者bash命令

其中bash命令是在当前目录进入子系统

CTRL+D可以回到PowerShell/cmd

安装完成后简单的测试一下

可以发现kali内置Python2 Python3 以及binwalk可以正常使用

至此 安装结束。

这里谈一下个人感受吧 之前在Linux下安装过其他软件

大致感觉Linux软件包的依赖关系很复杂 然后对Linux的不熟悉导致处处碰壁

另外应该是图形化界面用的多 Linux的命令行操作不是很熟悉

子系统只是为了方便调用一些基本工具 可能之后很多情况下还是会使用虚拟机

其他教程也有安装图形化界面的 笔者觉得没必要 直接使用虚拟机更为方便

另外关于Windows Linux macOS三大操作系统相对来说 还是更喜欢macOS

//喜欢不需要理由的

当然目前使用最多的还是Windows

转载请注明出处

本文作者:双份浓缩馥芮白

原文链接:https://www.cnblogs.com/Flat-White/p/13501639.html

版权所有,如需转载请注明出处。

Windows搭建Linux子系统(WSL)详细教程的更多相关文章

  1. Windows搭建Redis集群-详细教程

    一.集群知识 1.集群的概念 所谓的集群,就是通过添加服务器的数量,提供相同的服务,从而让服务器达到一个稳定.高效的状态. 2.使用redis集群的必要性 问题:我们已经部署好了redis,并且能启动 ...

  2. Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程

     Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程 一.准备工具: QT-SDK for Windows:http://get.qt.nokia.com/qtsdk/qt-sd ...

  3. Windows 10 搭建 Django 环境(详细教程)

    Windows 10 搭建 Django 环境(详细教程) https://blog.csdn.net/HappyLittleMouse/article/details/81360272#1.%20P ...

  4. Windows中安装Linux子系统的详细步骤

    早就听说Windows中可以安装Linux子系统,体验了一下,感觉还是不错的,下面直接开始安装和配置步骤吧! 开启Windows中的配置 首先开启开发者模式 打开"所有设置"进入& ...

  5. win10中搭建Linux子系统

    win10自带的Linux子系统,简称WSL(Windows Subsystem for Linux).优点是打通了Linux系统和windows系统,改变了传统虚拟机/双系统造成的两个系统相互隔绝的 ...

  6. Windows安装Linux子系统--安装GUI界面

    原文:Windows安装Linux子系统--安装GUI界面   前段时间发现Windows可以安装Linux子系统了,恰逢电脑换了固态,还没装Linux,不如趁机体验一番! 1.准备工作 1.1.打开 ...

  7. VM虚拟机搭建Linux CentOS7(手把手教程)

    VM虚拟机搭建Linux CentOS7(手把手教程) 目录 VM虚拟机搭建Linux CentOS7(手把手教程) 一.VM虚拟机和Linux镜像文件下载 1. 登录VM虚拟机官方地址: 2. 安装 ...

  8. 使用Windows的Linux子系统搭建嵌入式开发环境

      亲,都9102年了,还在用VMware跑嵌入式交叉编译链吗?   北京时间2019年6月13日,Windows 10发布预览版本18917.版本的主要功能是Linux子系统(windows sub ...

  9. Windows Sublime Text 配置Linux子系统(WSL)下的 gcc/g++ 编译环境

    0. 简介(若已了解背景可以跳过此部分) Windows 10 Build 14316以上版本中加入了"Windows系统的Linux子系统"(Windows Subsystem ...

随机推荐

  1. Egg.js 是什么?

    Egg.js 是什么? 阿里巴巴出 Egg.js 为企业级框架和应用而生,我们希望由 Egg.js 孕育出更多上层框架,帮助开发团队和开发人员降低开发和维护成本. 注:Egg.js 缩写为 Egg 设 ...

  2. 文件下载:报错The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'

    前言:这篇文件下载的后台代码太繁琐,建议参考https://www.cnblogs.com/zwh0910/p/13745947.html 前端: <el-button type="p ...

  3. 用代码来实践Web缓存

    Web缓存是可以自动保存常见文档副本的HTTP设备.当Web请求抵达缓存时,如果本地有"已缓存的副本",就可以从本地存储设备而不是原始服务器中提取这个文档. 上面是<HTTP ...

  4. uni-app创建项目

    下载 HBuilderX   下载地址(https://www.dcloud.io/hbuilderx.html) HBuilderX是通用的前端开发工具,但为uni-app做了特别强化. 创建uni ...

  5. Java垃圾回收机制详解

    前言 Java 相比 C/C++ 最显著的特点便是引入了自动垃圾回收 (下文统一用 GC 指代自动垃圾回收),它解决了 C/C++ 最令人头疼的内存管理问题,让程序员专注于程序本身,不用关心内存回收这 ...

  6. Pytorch1.7报错 Output 0 of UnbindBackward is a view and is being modified inplace

    utils里内容改成 if scale_each is True: for idx, _ in enumerate([jj for jj in tensor]): t = tensor[idx] # ...

  7. 【Azure 云服务】Azure Cloud Service在发布新部署后遇见不能RDP(远程连接)到实例时如何处理?

    Azure 云服务是PaaS 的一个示例. 与 Azure 应用服务一样,此技术设计用于支持可缩放.可靠且运营成本低廉的应用程序. 同样,应用服务托管在虚拟机 (VM) 上,Azure 云服务也是如此 ...

  8. 使用wireshark 抓取 http https tcp ip 协议进行学习

    使用wireshark 抓取 http https tcp ip 协议进行学习 前言 本节使用wireshark工具抓包学习tcp ip http 协议 1. tcp 1.1 tcp三次握手在wire ...

  9. Apache配置 1. 默认虚拟主机

    编辑httpd.conf搜索httpd-vhosts,去掉#号 # vi /usr/local/apache2.4/conf/httpd.conf Include conf/extra/httpd-v ...

  10. pyspider的环境安装

    第一:确认自己的Python版本3.6.x(因该版本与pyspider较为适应,其他版本易出错) 如果不是3.6版本的,且想将版本替换成3.6版本的有以下处理方法: 1.再装一个3.6版本python ...