wsl安装ubuntu

article/2025/9/22 12:00:56

WSL

用管理员打开powershell

wsl --install

重启

用管理员打开powershell
启用适用于 Linux 的 Windows 子系统

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

安装这个(也有可能你安装过了)
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

继续打开powershell(管理员)

wsl --set-default-version 2

安装

然后

wsl -l -o

列出可以安装的系统
在这里插入图片描述
比如安装ubuntu18

wsl --install -d Ubuntu-18.04

然后设置账号密码
在这里插入图片描述

换源

https://blog.csdn.net/qq_39942341/article/details/120394844

转移到其他的盘/备份

比如说,转移到d:\ubuntu

# 备份
wsl --export Ubuntu-18.04 d:\ubuntu18.04.tar
# 还原
wsl --unregister Ubuntu-18.04
md d:\ubuntu
wsl --import Ubuntu-18.04 d:\ubuntu\Ubuntu-18.04 d:\ubuntu18.04.tar --version 2
ubuntu1804 config --default-user test
del d:\ubuntu18.04.tar

其中test是你当时设置的用户名

重启方法

net stop LxssManager	//停止
net start LxssManager	//启动

启用systemd

sudo apt install -y git
cd ~
git clone https://github.com/DamionGans/ubuntu-wsl2-systemd-script.git
cd ubuntu-wsl2-systemd-script/
bash ubuntu-wsl2-systemd-script.sh

重启
如果你有装zsh
可能每次要

exec bash
exec zsh

然后才可以用systemctl了

安装桌面

xfce4

貌似要systemd(或者你失败了在来装也可以)

sudo apt install -y lightdm

如果出现了这个画面,就选lightdm
//没出现就没出现吧
在这里插入图片描述

sudo apt install -y xfce4 xrdp

然后

sudo dpkg-reconfigure lightdm

如果跳那个界面,就选lightdm
然后改端口

sudo vim /etc/xrdp/xrdp.ini

port=3389改成port=3390(或者其他端口,貌似3389连不上)
在这里插入图片描述

sudo vim ~/.xsession

然后添加xfce4-session
在这里插入图片描述
然后重启(指前面那种重启)

sudo /etc/init.d/xrdp start

然后就可以了
在这里插入图片描述在这里插入图片描述

ubuntu-desktop

先启用systemd
然后

sudo apt install -y ubuntu-desktop xrdp gnome-software gnome-tweaks gnome-shell-extensions
sudo systemctl status xrdpsudo adduser xrdp ssl-cert
sudo systemctl enable xrdp
sudo systemctl restart xrdp

接着修改

sudo vim /etc/xrdp/xrdp.ini

这里port=3389改成port=3390(或者其他端口,3389好像连不上)
在这里插入图片描述
接着启用刚刚的端口

sudo ufw allow 3390

修改

sudo vim /etc/polkit-1/localauthority/50-local.d/45-allow-colord.pkla

添加

[Allow Colord all Users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manager.create-profile;org.freedesktop.color-manager.delete-device;org.freedesktop.color-manager.delete-profile;org.freedesktop.color-manager.modify-device;org.freedesktop.color-manager.modify-profile
ResultAny=no
ResultInactive=no
ResultActive=yes

修改

sudo vim /etc/polkit-1/localauthority/50-local.d/46-allow-packagekit.pkla

添加

[Allow Refresh Repository all Users]
Identity=unix-user:*
Action=org.freedesktop.packagekit.system-sources-refresh
ResultAny=no
ResultInactive=no
ResultActive=yes

参考(https://blog.csdn.net/wu_weijie/article/details/108481456)
然后重启

sudo systemctl restart xrdp

就可以远程了
(有一个没解决的问题,就是你每一次重启,都要执行这个命令,不然就远程不了)
在这里插入图片描述

ssh

sudo apt purge -y openssh-server
sudo apt install -y openssh-server
sudo systemctl enable ssh

接着

sudo vim /etc/pam.d/sshd

把这一行注释了
在这里插入图片描述
重启

sudo systemctl start ssh

(有一个没解决的问题,就是你每一次重启,都要执行这个命令,不然就远程不了)
然后就可以用xshell或者其他工具连接了
在这里插入图片描述


http://chatgpt.dhexx.cn/article/AP7nStUP.shtml

相关文章

ubuntu安装详细步骤

文章目录 前言一、ubuntu是什么?二、安装环境三、安装步骤1.将下载好的iso镜像文件装入磁盘2.启动机器,进入安装界面 前言 作为Linux发行版中的后起之秀,Ubuntu 在短短几年时间里便迅速成长为从Linux初学者到实验室用计算机/服务器都适合使用…

python中read() readline()以及readlines()区别 .

.read() 每次读取整个文件,它通常将读取到底文件内容放到一个字符串变量中,也就是说 .read() 生成文件内容是一个字符串类型,如下图; .readline()每只读取文件的一行,通常也是读取到的一行内容放到一个字符串变量中&am…

java 中readline

https://www.cnblogs.com/dongrilaoxiao/p/6688107.html 小结,使用readLine()一定要注意: 读入的数据要注意有/r或/n或/r/n没有数据时会阻塞,在数据流异常或断开时才会返回null使用socket之类的数据流时,要避免使用readLine()&a…

Python中read()、readline()和readlines()的用法简单案例

首先我们先建立一个测试文件,test.txt 1.read() 用法: 从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止,它范围为字符串对象。 # 打开含中文的文本 fileopen("test.txt",encodingu…

readline库的简单使用

readline库的简单使用 这周要实现一个简单的 shell, 平时使用bash, zsh这些shell的时候, 如果文件名或命令太长,又或者要频繁执行几条命令的话,最常用的应该就是tab键补全和上下键切换历史命令了。 想要在自己的shell里面实现这两个功能很困难&#xf…

readlines()的使用与readline()的使用

readlines()的使用 readlines可以按照行的方式把整个文件中的内容进行一次性读取 ,并且返回的是一个列表,其中每一行的数据为一个元素。 fopen("text.text",r) af.readlines() print(a) f.close()** 输出的结果是 [“aaa\n”,“bbb”] 因…

Python文件操作----Read()、Readline()与Readlines()详解

前言:在上一篇博文中,我们主讲了文件的操作模式,主讲了写入数据的形式,但是没有讲到如何对文件的数据进行读取,那么本博文主针对读取数据的两种方法来进行细谈。(上一篇博文友情链接python文件操作) 文章目录: 一:Read()方法:1.无参数读取:2.有参数进行读取: 二.Readline()方法…

python:read()/readline()/readlines()区别

在我们使用python打开或者读取txt文件时,我们经常会用到read()/readline()/readlines()三种方法,首先我们贴出结论,即三种方法的异同。 方法类型返回文本read()str以原格式返回全部文本readline()str只返回第一行文本readlines()list以列表的…

python readline()和readlines()

文件对象的方法 描述 fp.readline() 从文件中读取一行内容,并以此作为一个 字符串返回 fp.readlines() 将文件中的每行内容作为一个字符串存入 列表中,并返回该列表 注意事项: readline()和readlines(),都是从当前位置进行读取&am…

f.readline()和f.readline()和f.read()

一、操作文件 [rootnode6 ~]# cat cs.txt 12 13 14 aa bb vv15 cc 16二、f.readline() 整行读取,每次一行,空行也会当做一行读取。 因为文本带了一个 ‘\n’ 了,print 默认也是 ‘\n’,所以读取每一行都会多打印一个空行 [root…

readlines和readline

readlines和readline python之readlines和readline的区别1.txtreadlinesreadline 很久很久没写博客了,这真的是一个很不好的习惯,因为遇到了很多很多说需要技术文章的。。。。 python之readlines和readline的区别 很久很久没有写py脚本了,今…

python中read、readline和readlines的区别

python中有神奇的三种读操作:read、readline和readlines read() : 一次性读取整个文件内容。推荐使用read(size)方法,size越大运行时间越长 readline() :每次读取一行内容。内存不够时使用,一般不太用 readlines(…

read(),readline(),readlines()的区别

这三个方法偶尔会混淆,直接做个记录。 自己随便写了个txt文件: 1、read() read()方法会直接读取整个文本的内容,并将它们保存在字符串变量。 f open(D:\Procedure\pycharm\python\op.txt,)print(f.read()) print(type(f.read())) 2、readl…

关于readline ,readlines, for循环读取文件内容

1、readlines: readlines() 用于一次性读取所有行,然后将它们作为列表中的字符串元素作为每一行返回。 此函数可用于小文件,因为它将整个文件内容读取到内存中,然后将其拆分为单独的行。 我们可以遍历列表并使用 strip() 函数去除换行符“\n”…

Node.js学习六(readline)

文章目录 一、什么是readline二、如何使用readline1、Interface类2、close事件3、readline.createInterface(options) 三、实例:输入输出四、示例:模拟命令行的输入输出 一、什么是readline readline是Node.js里实现标准输入输出的封装好的模块&#xff…

java以前版本下载方式

java以前版本下载 1.创建Oracle账号 2.网址https://www.oracle.com/java/technologies/downloads/archive/

java -version

一、JDK下载 1.官网下载 点击官网下载地址 往下划,找到自己电脑相对应的JDK,点击下载。 二、安装步骤 初学者建议傻瓜式安装,直接点击下一步即可。 三、搭配环境变量 1.Path变量 解决方法:配置Path变量。 右键点击“此电脑”&…

最全的Java版本历史

JDK 1.0(1996) Sun公司发布Java1.0,发布初期叫Oak,后改名为Java(JDK1.0基本上只支持Java语言基础特性) JDK 1.1(1997) 引入内部类引入JDBC: 是Java语言中用来规范客户…

JDK各个版本的区别

jdk1.5的新特性&#xff1a; 1. 泛型 ArrayList listnew ArrayList()------>ArrayList<Integer>listnew ArrayList<Integer>(); 2 自动装箱/拆箱 nt ilist.get(0).parseInt();-------->int ilist.get(0);原始类型与对应的包装类不用显式转换 3 for-eac…

Java 版本区分

Java分为如下三个版本&#xff1a; Java SE&#xff1a;Standard Edition&#xff1a; Java SE就是标准版&#xff0c;包含标准的JVM和标准库。 Java EE&#xff1a;Enterprise Edition 而Java EE是企业版&#xff0c;它只是在Java SE的基础上加上了大量的API和库&#xff0c;…