如何在Windows下安装ubuntu子系统

2023-05-16

[TOCM]

如何在Windows下安装ubuntu子系统

1. windows设置

首先打开控制面板,Windows设置,勾选Windows下的linux系统

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VIP7KdnI-1679018115695)(null)]

勾选后重启电脑

或者管理员启动cmd or powershell,输入

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

2. 下载ubuntu

可通过Windows store下载对应的版本,建议ubuntu18.04版本,下载后会得到后缀为.appx的文件,直接安装即可。
如果Windows store速度太慢可以下载文中附件(如果需要其他版本请点击链接)

需要注意,此方法默认系统装在C盘,如果需要安装到其他磁盘,请将*.appx改为*.rar,然后在需要放置的磁盘处解压,最后会得到对应的文件夹,如下图所示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TqalmjWL-1679018115729)(null)]

点击ubuntu1804.exe进入下一步。

3. 启动服务

点击ubuntu1804.exe后进入命令行界面。首次进入后需等待启动

注意:启动后会要求注册用户名和密码,其PID=1,默认为超级用户(super user)。此步骤中不可中途退出,退出后再次登录将会采用系统用户(system user, root)登录。linux为防止错误操作,非必要不可root。第一次注册的用户将会默认登录,遗忘密码用passwd更改。

此时linux系统就已经装好了。指令已经可以正常使用了。

4. 更改apt镜像源

ubuntu默认下载工具是apt,~yum不是这个系统的~。国外的系统太慢,需更改。系统文件处于/etc/apt/sources.list中。在终端中输入以下指令

sudo cp /etc/apt/sources.list /etc/apt/source_copy.list

此措施防止改了过后改崩了,还能有东西回档。

然后执行

sudo vim /etc/apt/sources.list

启用管理员是因为soruces.list是系统文件,权限是read-only, sudo打开后选择edit anyway,如果使用清华镜像源,请将文件内容替换成

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse

保存,执行 apt update, 就安装好镜像源了。其他镜像源同理。如果安装有问题请查看7.1

5. 安装可视化工具

请按照流程执行以下步骤,5.1至5.6可执行附件中的脚本,只需要按Y和同意即可。使用方法为解压到e盘,命令行执行

bash /mnt/e/xrdp_install.sh

5.1 安装xorg

Xorg是X Server和X Client的结合体。X Server是基于X11 协议的服务端,管理硬件设备(驱动),键盘鼠标显示器等。X Client基于X11 协议的客户端;X Client 最重要的工作就是处理来自 X Server 的指令,实现界面化指令的处理。X11又是X的升级版,主要的内容是建立桌面机制。Xorg是X server的升级版,提供了一个 X11 窗口系统,该系统也可充当X Client使用。运行如下指令安装Xorg

sudo apt-get install xorg

5.2 安装xfce4

xfce是一个桌面显示系统,ubuntu中最开始在home下是没有desktop的,xfce新建了一个desktop文件夹,并结合上文的Xorg,将文件夹中内容以桌面图标形式呈现在窗口中。运行如下指令安装Xorg

sudo apt-get install xfce4

5.3 安装并配置xrdp

Xrdp 通过远程桌面的方式来访问另外一台主机,方便后续开发中直接使用Windows访问ubuntu

sudo apt-get install xrdp

5.4 设置使用3390端口

修改xrdp.ini文件,sed -i等同于直接操作文本,将3389端口修改为3390端口。这是由于3389是个硬件端口,不适合使用具体原因还在了解,大体原因是这样,更换其他端口也没问题。暴力一点,直接vim修改也不是不行

sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini

5.5 向xsession中写入xfce4-session

该指令的作用是将xfce4写入个人目录,这是由于xrdp与unity冲突导致的。如果开启不同的用户,需要在不同的用户目录下安装

sudo echo xfce4-session >~/.xsession

PS:有的大牛说需要再运行cat .xsession,实测不运行也可以,如果使用者发现.xsession没有配置好,运行cat试试

5.6 重启xrdp服务

因为更改了ini和session,需重启服务才能生效

sudo service xrdp restart

5.7 打开Windows的桌面远程工具

输入localhost:3390, 账号名,勾选登录凭证,关闭防火墙,输入密码,完成

6. 安装anaconda

6.1 理想安装

如果你网速够快,直接执行指令

mkdir /opt/Anaconda
cd /opt/Anaconda
sudo wget https://repo.continuum.io/archive/Anaconda3-4.4.0-Linux-x86_64.sh #这里选择你需要的版本
bash Anaconda3-4.4.0-Linux-x86_64.sh

中间有一个询问安装路径的,放入/opt/Anaconda下,其余一路yes,完事。最后再检查一下环境变量有没有问题。执行

vi ~/.bashrc

最后一行输入
export PATH=“/opt/Anaconda/bin:$PATH”。
然后
source ~/.bashrc
完工。

但是大部分人的网速是不够的,至少公司网不支持。个人建议先本地下载

6.2 本地安装

首先进入anaconda的官网,下载需要的版本,此处推荐Anaconda3-2021.04-Linux-x86_64.sh,python版本为3.8.8。下载后放入opt文件夹。(PS:默认是home/user下,但是考虑到多用户的习惯,建议放入/opt下,这样每个用户都可以使用),然后

./Anaconda3-2021.04-Linux-x86_64.sh

等待安装,然后修改环境变量.

理论上此时应该安装完毕。在命令行中输入conda和python,查看是否是正确版本。重点查看python是否为3.8.8。如果没问题就可以正常使用了,pycharm和VScode安装方式和Windows相同,在此不再赘述。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tUBmS9vg-1679018115712)(null)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0jx4PoPT-1679018115782)(null)]

7. Others

7.1 镜像源无法安装的问题

sudo vim /etc/apt/sources.list

把https改成http,执行 apt update后即可。考虑到http协议有风险,可继续执行以下步骤

sudo apt-get install ca-certificates

然后再把sources.list改回来,重新 apt update。

7.2 怎么卸载linux

Windows将ubuntu子系统视为一个应用程序。直接卸载应用程序即可,然后仿照步骤1关闭linux子系统服务

7.3 怎么重启linux

进入系统后发现系统只有logout,没有reboot,直接下发reboot指令也不行。考虑到linux依托Windows的LxssManager服务,因此只需重启该服务即可。在Windows的cmd/powershell中以管理员运行以下指令

net stop LxssManager  
net start LxssManager 

重启后需要重新执行5.4~5.7才可以打开界面

7.4 设置界面为中文

先查看界面有哪些语言

locale -a

中文是 zh_CN.utf-8先看看有没有,如果没有,执行以下指令下载(目的是安装中文语言和中文显示字体,此处以黑体为例)

sudo apt-get install language-pack-zh-han*

sudo apt-get install ttf-wqy-microhei

然后更改语言,进入locale文件

sudo vim /etc/default/locale

不出意外里面应该只有一句话 LANG=C.UTF-8

更改为

LANG = zh_CN.utf-8
LANGUAGE = "zh_CN:zh"

保存,退出

7.5 不会用vim怎么办

此处提供两个选择。

  • 下载gedit,然后gedit (source)实现编辑source文件。
    ~ shell
    sudo vim /etc/default/locale

不出意外里面应该只有一句话  LANG=C.UTF-8

更改为

LANG = zh_CN.utf-8
LANGUAGE = “zh_CN:zh”

保存,退出

## 7.5 不会用vim怎么办

此处提供两个选择。
* 下载gedit,然后gedit (source)实现编辑source文件。
* 如果下载网速太慢,使用nano,同样也是直接编辑文件,编辑完后Ctrl+X,按Y保存退出。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Windows下安装ubuntu子系统 的相关文章

  • 堆排序——手工模拟+程序实现

    堆排序的算法思想 xff1a 将待排序列构造成一个大顶堆 xff0c 此时 xff0c 整个序列的最大值就是堆顶元素 输出堆顶元素 xff0c 将堆顶元素与堆底最后一个元素进行交换 xff0c 然后 xff0c 将剩余n 1个元素重新构造成
  • 设计模式详解:原型模式

    本篇来看一下创建型模式中的第四种模式 xff1a 原型模式 仍然是先看两张图 xff0c 复习模式类型 xff0c 加深记忆 定义 xff1a 原型模式 xff1a 使用原型实例指定待创建对象的类型 xff0c 并且 通过复制这个原型来创建
  • maven镜像源及代理配置

    在公司使用网络一般需要设置代理 xff0c 我在idea中创建springboot工程时 xff0c 发现依赖下载不了 xff0c 原以为只要浏览器设置代理 xff0c 其他的网络访问都会走代理 xff0c 经过查资料设置了以下几个地方后工
  • IDEA SpotBugs代码安全审计插件

    IDEA SpotBugs代码安全审计插件 在寻找idea代码审计插件的时候 xff0c 发现Findbugs已经停止更新 xff0c 无法在idea2020 01版本运行 xff0c 由此找到SpotBugs SpotBugs介绍 Spo
  • 洛谷P1233 木棍加工

    题目描述 一堆木头棍子共有n根 xff0c 每根棍子的长度和宽度都是已知的 棍子可以被一台机器一个接一个地加工 机器处理一根棍子之前需要准备时间 准备时间是这样定义的 xff1a 第一根棍子的准备时间为1分钟 xff1b 如果刚处理完长度为
  • 如何用python写一个计算日期间隔的程序?

    如何用python写一个计算日期间隔的程序 xff1f 文章目录 如何用python写一个计算日期间隔的程序 xff1f 前言问题梳理问题解决写在后面 前言 为什么想起来写一个这样的程序呢 xff1f 前几天聊天的时候 xff0c 突然想计
  • Ubuntu 中软件包缓存文件损坏问题

    终端输入 xff1a sudo apt get update 出现如下问题 解决方法 xff1a 输入 sudo rm rf var lib apt lists
  • linux开机自启系统服务的大致原理

    Linux启动系统服务 init启动 init读取 etc inittab文件 xff0c 获取运行等级 span class token comment The default runlevel 启动时的运行等级 span id 5 in
  • apache2 配置https

    配置Apache2 https 开启ssl模块 span class token function sudo span a2enmod ssl 启用ssl站点 span class token function sudo span a2en
  • JAVA对数字+字符串,中文一二三四等特殊格式字符串进行特殊排序

    提示 xff1a 对数字 43 字符串 中文一二三四 格式字符串去重 排序 重组 可以对customSort 类的46 53行进行修改 查看新排序效果 代码如下 xff08 示例 xff09 1 SortTest 类 xff1a span
  • Linux安装Jenkins

    手把手教你在Linux上安装jenkins xff0c 废话不多说 xff0c 直接上教程 1 xff0c 用windows到官网下载jenkins 2 346 1 1 noarch rpm xff0c 下载链接 xff1a https w
  • 舵机控制(STM32F103C8T6)

    前言 本文是以STM32F103C8T6作为主控芯片 xff0c 通过PB6端口输出PWM xff0c 实现控制180 舵机 一 舵机控制原理 xff08 一 xff09 概述 舵机是一种位置伺服驱动器器 xff0c 是一种带有输出轴的小装
  • 设计模式详解:建造者模式

    今天来看一下创建新模式中的第五种模式 xff1a 建造者模式 仍然是先看两张图 xff0c 复习模式类型 xff0c 加深记忆 定义 xff1a 建造者模式 xff1a 将一个复杂对象的构建与它的表示分离 xff0c 使得同样的构建过程可以
  • 动态数码管显示(STM32F103C8T)

    一 前言 本实验是通过使用STM32F103C8T6作为主控 xff0c 八段数码 xff08 共阴极 xff09 是通过74HC245双向缓冲器控制数段选 xff0c 74HC138译码器控制位选 每个数码管显示与位号相对应的数字 xff
  • 取字模软件的使用

    1 点击运行 取字模软件 EXE 2 输入文本 xff0c 完成后按Ctrl 43 Enter按键结束输入 xff0c 如下图 3 设置字体显示的大小16 16 xff0c 如下图 xff1a 4 设置字体格式 xff0c 字体大小 xff
  • 51单片机应用篇-- --数码管60秒计时,独立按键可调

    开篇先说一句废话 本旺名字叫萨摩耶 xff0c xff0c Please 叫我旺财 xff0c xff0c xff0c 哈哈 xff0c 招财进宝嘛 xff01 缘由 本来按照我的学习计划 xff0c 我现在应该是单片机的学习过程 xff0
  • SOLIDWORKS生成URDF文件后部分文件散乱分布

    问题 xff1a SOLIDWORKS生成URDF文件在正确配置关节坐标系的情况下 xff0c 依然出现了部分零件散乱分布的情况 xff0c 例如图所示 xff1a 问题原因 xff1a 同样的零件多次装配 解决办法 xff1a 要插入同一
  • Matlab笔记:Matlab function生成C代码并运行

    1 Matlab函数 xff0c 输入 x y z roll pitch yaw xff0c 输出out为8 6的数组 2 点击Matlab coder 3 选择要生成的函数 4 定义输入类型 xff0c 输入的六个数选择double数值
  • matlab接收ROS发布的话题通信数据并实时画图

    版本说明 matlab R2021b ROS noetic matlab与ROS通信连接 在matlab和ROS连接之前 xff0c 需要先运行ROS核心 xff0c 记录ROS端的IP地址 再查找并记录matlab端 xff08 我这里是
  • simulink联合STM32CubeMX开发串口通信程序

    摘要 使用SIMULINK联合STM32CubeMX生成STM32F407串口发送数据代码 xff0c 发送的数据为正弦函数波形 再用SIMULINK写一个串口接收数据模型 xff0c 接收来自STM32发送的数据 xff0c 最后绘制出波

随机推荐

  • element 默认主题样式

    使用方法 span class token keyword import span ElementUI span class token keyword from span span class token string 39 elemen
  • 深入RUST标准库内核(一)标准库内容概述

    本书github链接 inside rust std library 本书前面章节 xff1a 深入RUST标准库内核 xff08 序言 深入RUST标准库内核 引言概述本书目的目标读者本书约定 RUST标准库体系概述core库编译器内置i
  • 深入RUST标准库内核(序言)

    对RUST的兴趣来自于Linus认真考虑将RUST作为Linux内核开发语言的新闻报道 因此开始了对RUST探索 xff0c 不久后基本上就从心底里认同了这门语言 xff0c RUST不仅是高性能及安全的语言 xff0c 它的语法设计也会带
  • 手记:把代码上传到Gitee等远程仓库的过程记录及常见问题

    很久没用git了 xff0c 指令都有点生疏了 xff0c 今天上传了一些代码到码云上 xff0c 先把过程记录下来供使用git的朋友参考 没有用图形化界面 xff0c 因为只有熟悉指令才能真正的理解领会 步骤一 xff1a 1 安装git
  • I2C总线协议原理

    首先I2C总线一共分为2根 xff0c 一根是SCL xff08 serial clock xff09 xff0c 还有一根是SDA xff08 serial data xff09 xff0c 一根是用来同步时钟的 xff0c 一根是发送接
  • 常用默认端口+URL解析+HTTP详解

    常用默认端口 http端口80 https端口443 tomcat端口8080 URL详解 http www aspxfans com 8080 news index asp boardID 61 5 amp ID 61 24618 amp
  • Vue3.0 setup函数

    setup 1 Vue3 0中一个新的配置项 xff0c 值为一个函数 2 setup是所有Composition API 组合API 表演舞台 3 组件中所用到的 xff1a 数据 方法等等 xff0c 均要配置在setup中 4 set
  • 【青训营】Go的高质量编程

    Go的高质量编程 本文内容总结自字节跳动青年训练营 第五届 后端组 什么是高质量 xff1f 各种边界条件是否完备异常情况能正常处理 xff0c 稳定性有保障易读易维护 Go语言开发者Dave Cheney指出 xff0c 编程需要遵循以下
  • c++取一个整数a从右端开始的4~7位。(注意考虑多种情况)

    c 43 43 取一个整数a从右端开始的4 xff5e 7位 xff08 注意考虑多种情况 xff09 1 思路分析及原理 4 7位的范围是10 3 10 7 1 xff0c 我们可以利用这个来判断数字的长度 从右端截取一个整数的4 7位
  • 您备案的网站未指向阿里云国内节点(不含香港)服务器,备案号可能被取消接入

    解决方法 xff1a 将你的域名添加一个二级域名 xff0c 解析到某些阿里云国内节点服务器上就行了 例如我博客域名为 www hyzhad com xff0c 就可以添加一个或者两个 A 记录 xff0c 记录值为阿里云国内节点服务器的
  • centos相关软件下载地址

    CentOS7 6 下载地址 CentOS 7 x86 64 DVD 1810 iso CentOS 7 6 DVD 版 4G http mirrors 163 com centos 7 6 1810 isos x86 64 CentOS
  • C++笔记(《C++新经典》)

    C 43 43 新经典 第1章 C C 43 43 1 1 C和C 43 43 语言的起源 特点 关系与讲解范畴1 2 C C 43 43 语言市场需求与就业需求分析1 3 再谈C C 43 43 就业1 4 搭建开发语言环境 第2章 数据
  • FileZilla连接ubuntu

    我新搭建了一个ubuntu 1 查看ssh的状态 xff1a sudo service sshd status 如果出现 xff1a ssh span class token punctuation span service span cl
  • office2016 excel复制粘贴就卡死

    原因 可能和这个帐户的缓存有关系 xff0c 或第三方软件有关系 xff0c 1 xff1a 重新安装office无效 2 xff1a 按照微软 xff0c 点文件 选项 com加载项 把里面复选框都去掉 xff0c 均无效 网上好多类似文
  • 路虽远,行则将至;事虽难,做则必成。

    新年第一天 xff0c 以奋斗为起点
  • Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools“的解决办法

    在Windows系统上使用pip安装一些软件时 xff0c 会出现下面这样的问题 error Microsoft Visual C 43 43 14 0 or greater is required Get it with Microsof
  • tp5 A non-numeric value encountered解决方法

    报错信息如下 解决方法 xff1a 在对应的控制器方法加入下面这行代码即可 ini set 34 error reporting 34 34 E ALL amp E NOTICE 34
  • 自学Python day05-for循环

    语法 for 临时变量 in 序列名 xff1a xxxx 序列的意思是 xff0c 一个数据是由多个数据组成的 xff0c 例如列表 xff1a 1 2 xff0c 3 xff0c 3 xff0c 4 5 xff0c 6 7 xff0c
  • 并查集--解析关押罪犯问题(二)

    在网上看到一道ACM竞赛题 xff0c 很巧妙的运用了并查集解决了一个现实生活的问题 xff0c 然而网上的解析太少 xff0c 在这里贴出来我的思考 xff1a 题目 xff1a S 城现有两座监狱 xff0c 一共关押着N 名罪犯 xf
  • 如何在Windows下安装ubuntu子系统

    TOCM 如何在Windows下安装ubuntu子系统 1 windows设置 首先打开控制面板 xff0c Windows设置 xff0c 勾选Windows下的linux系统 外链图片转存失败 源站可能有防盗链机制 建议将图片保存下来直