在床缝捡了个u盘做启动盘 :O
明天我就可以带着我的linux远行
bios让我的风扇飞舞,第一次盘做失败了重做一下然后明天继续
第一次失败了
重做了启动盘,但舍友都睡觉了,只能明早再在bios里重设启动路径了
佬友们明天等我消息!
在床缝捡了个u盘做启动盘 :O
明天我就可以带着我的linux远行
bios让我的风扇飞舞,第一次盘做失败了重做一下然后明天继续
以下是我自己之前折腾记录的:
管理员权限启动 PowerShell 运行一下代码
# 启用适用于 Linux 的 Windows 子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 启用虚拟机功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
或在Windows搜索 启用或关闭Windows功能
开启 启用适用于 Linux 的 Windows 子系统
和 启用虚拟机功能
后需要重启电脑
启用 WSL 功能
wsl --install # 此时会默认安装最新的Ubuntu发行版
wsl --update
将WSL2设置为默认版本
wsl --set-default-version 2
查看所有 Linux 系统版本
wsl --list --online
安装指定版本
wsl --install -d <发行版名称>
通过如下指令,查看电脑装了哪些Linux系统,并进行卸载:
# 查看本机安装了哪些子系统:
wsl --list --all
wsl -l -v
# 卸载:
wsl --unregister <System_name>
转移到D盘
mkdir D:\WSL
# 导出已安装的Ubuntu
wsl --export Ubuntu-24.04 D:\WSL\Ubuntu-latest.tar
# 注销(删除)原来的分发版
wsl --unregister Ubuntu-24.04
# 重新导入到D盘
wsl --import Ubuntu-24.04 D:\WSL\Ubuntu D:\WSL\Ubuntu-latest.tar
# 删除临时文件
Remove-Item D:\WSL\Ubuntu-latest.tar
wsl --shutdown
解决“wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理
”的问题
在Windows中的C:\Users\<your_username>目录下创建一个.wslconfig文件,然后在文件中写入如下内容:
(以下配置设置:限制内存、自动清理内存、网络)
[wsl2]
memory=1GB
swap=512MB
[experimental]
autoMemoryReclaim=gradual
sparseVhd=true
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true
然后用wsl --shutdown
关闭WSL,之后再重启,提示就消失了。
Linux查看ip
ifconfig # 需要 sudo apt install net-tools
hostname -I
ip addr show eth0
ip addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}'
配置
# 更新源
sudo apt update && sudo apt upgrade -y
一般来说安装好了之后Windows会自动设置好了,终端可以直接开一个新的Ubuntu-24.04的标签页。
如果没有的话,那就手动添加一个,本质还是命令行启动罢了。
C:\WINDOWS\system32\wsl.exe -d Ubuntu-24.04 -u root --cd ~
这个命令行的意思是启动wsl的Ubuntu-24.04发行版,以root身份登录,默认启动目录是~(即用户默认目录),Ubuntu-24.04
可以改成自己对应的发行版;参数-u
可选添加,后面填写登录的用户名;--cd
参数可选,后面写启动目录。
添加新的终端配置填入以上的命令行即可食用,其他设置可根据个人喜好,这个Windows终端配置文件本身是一个JSON文件
参考:
{
"adjustIndistinguishableColors": "always",
"bellStyle": "taskbar",
"colorScheme": "One Half Dark",
"commandline": "C:\\WINDOWS\\system32\\wsl.exe -d Ubuntu-24.04 -u root --cd ~",
"cursorShape": "emptyBox",
"font":
{
"face": "MesloLGS NF",
"size": 13.0
},
"guid": "{dcf338c3-49c9-4536-ae80-d621c8dd0813}",
"hidden": false,
"historySize": 32768,
"icon": "D:\\WSL\\Ubuntu\\shortcut.ico",
"name": "Ubuntu-24.04 (ROOT)",
"suppressApplicationTitle": true
}
备注:**MesloLGS NF
**字体需要另外安装,这是一款适合zsh的p10k主题的字体。
sudo apt purge -y acpid acpi-support modemmanager
sudo apt-mark hold acpid acpi-support modemmanager
# 安装GNOME桌面
sudo apt install ubuntu-desktop -y
# 安装xrdp服务
sudo apt install xrdp -y
# 启动xrdp服务:
sudo systemctl start xrdp
# 将xrdp用户添加到ssl-cert用户组
sudo adduser xrdp ssl-cert
# 重启xrdp服务
sudo systemctl restart xrdp
修改xrdp默认端口(可选)
由于xrdp
安装好后默认配置使用的是和Windows远程桌面相同的3389
端口,为了防止和Windows系统远程桌面冲突,建议修改成其他的端口
$ sudo vim /etc/xrdp/xrdp.ini
# 修改下面这一行,将默认的3389改成其他端口即可
port=3390
在Windows上使用远程桌面连接(mstsc):
localhost:3389
或 localhost:3390
进一步:使用 Xfce4 桌面环境和轻量级桌面xubuntu
# 安装 Xfce4 桌面环境:
sudo apt install xfce4 xfce4-goodies -y
# 安装xfce4过程中会出现选择显示管理DM选择的提示,建议用lightdm
# 如果错过了安装过程中出现的这个向导,那么可以在安装完成后执行下面的命令重新设置DM
sudo dpkg-reconfigure lightdm
解决黑屏:
sudo nano /etc/xrdp/startwm.sh
添加以下内容:
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
. $HOME/.profile
创建或修改XRDP启动脚本:
sudo nano /etc/xrdp/startwm.sh
在文件末尾注释掉这两行(如果存在):
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession
添加以下行:
startxfce4
为当前用户指定登录session类型
vim ~/.xsession #写入 xfce4-session
或
echo xfce4-session > ~/.xsession
如何使用 WSL 在 Windows 上安装 Linux – Microsoft
开始通过适用于 Linux 的 Windows 子系统使用 Visual Studio Code – Microsoft
超详细的WSL教程:Windows上的Linux子系统 - 技术爬爬虾 - BiliBili
【保姆级教程】Windows上安装Linux子系统,搞台虚拟机玩玩
ping www.google.com
sudo vi ~/.bashrc
source ~/.bashrc
由于默认是安装在C盘,这里使用以下命令进行自定义路径安装:
cmd:
start /w "" "Docker Desktop Installer.exe" install --installation-dir=D:\Docker
PowerShell:
Start-Process -FilePath "Docker Desktop Installer.exe" -ArgumentList "install --installation-dir=D:\Docker" -Wait
安装完了之后并打开,使用命令 wsl -l -v
会发现多出了一个docker-desktop
和之前安装的Ubuntu发行版一起在运行。
额外:在全新安装的 Docker Desktop 4.30 及更高版本中,
docker-desktop-data
不再被创建。相反,Docker Desktop 会创建并管理自己的虚拟硬盘用于存储。docker-desktop
发行版仍然会被创建并用于运行 Docker 引擎。
1、设置Settings -> General -> Use WSL 2 based engine
:
勾选开启,然后点击Apply & restart
应用并重启docker
2、设置Settings -> Resources -> WSL integration
:
选择需要集成的Linux发行版比如Ubuntu-24.04勾选开启,然后点击Apply & restart
应用并重启docker
这时候对应的Linux发行版就能使用docker
命令了如docker -v
查看docker版本
Docker Desktop默认安装的wsl2磁盘镜像在C:\Users\[USERNAME]\AppData\Local\Docker\wsl
路径下,可以在Settings -> Resources -> Advanced
下进行修改目录
Settings -> Resources -> Proxies
填入:
http://localhost:7890
关闭更新提示和自动更新!
如果发现无法正常使用,建议卸载清空重装
.docker
、..\AppData\Local\Docker
、..\username\AppData\Roaming\Docker
删除清空
C:\Users\username\AppData\Roaming\Docker\settings-store.json
:Docker Desktop 设置
C:\Users\username\AppData\Roaming\Docker Desktop
C:\Users\username\AppData\Local\Docker\log
:日志
C:\Users\username\.docker
:
daemon.json和windows-daemon.json 守护进程配置文件
C:\ProgramData\DockerDesktop
添加普通用户到docker
组
#查看docker组是否存在
getent group docker
#不存在则创建
sudo groupadd docker
#将用户添加到docker组
sudo usermod -aG docker $USER
在Windows11下基于WSL安装的 Docker Desktop 中的 volumes (数据卷) 存储实际在:
\\wsl.localhost\docker-desktop\mnt\docker-desktop-disk\data\docker\volumes
也就是 docker-desktop
这个wsl虚拟机中的 /mnt/docker-desktop-disk/data/docker/volumes
目录
而不是在/var/lib/docker/volumes
(只安装 Docker Engine)
WSL 2 上的 Docker 远程容器入门 - Microsoft
命令 | 说明 | 常用选项/示例 |
---|---|---|
`docker images | docker ls` | 列出本地镜像 |
docker pull <镜像名>[:标签] |
从仓库拉取镜像 | docker pull nginx:latest |
docker push <镜像名>[:标签] |
推送镜像到仓库 | docker push username/image:tag |
`docker rmi <镜像名或ID> | docker image rm <镜像名或ID> ` | 删除镜像 |
docker save -o <output_file.tar> <镜像名或ID> |
导出镜像 | docker save -o my_image_v1.0.tar my_image:v1.0 |
docker load -i <FILE> |
导入镜像 | docker load -i my_image.tar |
docker build -t <镜像名> <构建路径> |
从Dockerfile 创建镜像 |
docker build -t myapp:1.0 . |
docker history <镜像名或ID> |
查看镜像历史 | |
docker commit <容器ID> <镜像名> |
从容器创建镜像 | docker commit c3f279d17e0a myapp:latest |
docker tag <源镜像>[:标签] <目标镜像>[:标签] |
给镜像添加标签 | docker tag nginx:latest mynginx:v1 |
docker search <关键词> |
搜索Docker Hub上的镜像 | --filter stars=3 :筛选星级大于3的镜像 |
docker inspect <镜像名或ID> |
查看镜像详细信息 | --format :格式化输出 |
命令 | 说明 | 常用选项/示例 |
---|---|---|
docker run <容器名或ID> |
创建并启动容器 | -d 后台运行 -p <宿主机端口>:<容器端口> 端口映射 -v <主机目录>:<容器目录> 挂载卷或绑定目录 --name 指定名称 --mount type=bind,src=<主机目录>,dst=<容器目录> 目录绑定挂载 --network <网络名> 连接网络 |
docker start/stop/restart/kill <容器名或ID> |
启动/停止/重启/杀死容器 | docker start mycontainer |
`docker ps | docker container ls` | 列出运行中的容器 |
`docker rm <容器名或ID> | docker container rm ` | 删除容器 |
docker exec <容器名或ID> <命令> |
在运行的容器中执行命令 | -it :交互模式 docker exec -it mycontainer sh ,docker exec -it mynginx bin/bash |
docker logs <容器名或ID> |
查看容器日志 | -f :实时查看日志 --tail <行数> :显示最近的日志 |
docker cp <源路径> <目标路径> |
在容器和本地间复制文件 | docker cp mycontainer:/app/data.txt ./local/ docker cp ./local/file.txt mycontainer:/app/ |
docker export -o <文件名>.tar <容器名或ID> |
导出容器为文件 | docker export -o nginx.tar nginx_container |
docker import <文件名>.tar <容器名或ID> |
导入容器快照 | docker import my_container.tar my_new_image:latest |
docker commit <容器ID> <镜像名> |
从容器创建镜像 | docker commit c3f279d17e0a myapp:latest |
docker container inspect <容器名或ID> |
查看容器详细信息 | docker container inspect mynginx |
默认存储位置在/var/lib/docker/volumes
,
但在Windows11下基于WSL安装的 Docker Desktop 中的 volumes (数据卷) 存储实际在:
\\wsl.localhost\docker-desktop\mnt\docker-desktop-disk\data\docker\volumes
也就是 docker-desktop
这个wsl虚拟机中的 /mnt/docker-desktop-disk/data/docker/volumes
目录
命令 | 说明 | 常用选项/示例 |
---|---|---|
docker run -v </主机目录>:<容器目录> <镜像名或ID> |
创建容器并卷绑定然后启动容器 | docker run -d --name mynginx -p 88:80 -v nginx_config:/etc/nginx nginx |
docker volume create <数据卷名> |
创建数据卷 | docker volume create my-volume |
docker volume ls |
查看所有数据卷 | 列出所有卷 |
docker volume inspect <数据卷名> |
查看数据卷详细信息 | docker volume inspect my-volume |
docker volume rm <数据卷名> |
删除数据卷 | docker volume rm my-volume |
docker volume prune |
清理无用数据卷 | 删除未被容器使用的数据卷 |
172.17.0.*
的IP(可通过docker inspect
查看"IPAddress"
选项可知),容器之间可通过此IP相互访问。命令 | 说明 | 常用选项/示例 |
---|---|---|
docker network ls |
查看Docker网络 | 显示所有网络 |
docker network create <网络名> |
创建自定义网络 | docker network create my-network |
docker network connect <网络名> <容器名或ID> |
将容器连接到网络 | docker network connect my-network mycontainer |
docker network disconnect <网络名> <容器名或ID> |
将容器从网络断开 | docker network disconnect my-network mycontainer |
docker network inspect <网络名> |
查看网络详细信息 | docker network inspect bridge |
docker network rm <网络名> |
删除网络 | docker network rm my-network |
命令 | 说明 |
---|---|
docker version |
查看Docker版本 |
docker info |
查看Docker系统信息 |
docker [command] --help |
查看Docker帮助文档 |
docker login/logout |
登录/退出DockerHub |
命令 | 说明 | 常用选项/示例 |
---|---|---|
docker compose up |
创建并启动服务 | -d :后台运行,--build :强制重新构建 |
docker compose down |
停止并删除服务 | --volumes :同时删除声明的卷 --rmi all :删除所有镜像 |
docker compose ps |
列出服务 | 显示所有服务状态 |
docker compose cp |
在容器和本地间复制文件 | 相当于docker container cp |
docker compose build |
构建服务镜像 | --no-cache :不使用缓存 |
docker compose logs |
查看服务日志 | -f :实时查看 --tail <行数> :显示最近的日志 |
docker compose exec <服务名> <命令> |
在运行的服务中执行命令 | docker-compose exec web bash |
docker compose restart |
重启服务 | docker-compose restart web |
docker compose rm |
删除服务容器 | -f :强制删除 -v :同时删除卷 |
docker ps -a #列出所有容器
docker rm #删除一个或多个容器
docker rmi #删除一个或多个镜像。
docker volume #管理数据卷
docker-compose up #启动 Compose 定义的服务
docker-compose down #停止并删除 Compose 服务
然后后面就买了服务器,搭起了网站,有了现在的公益站~
具体你可以看我主页吧,一路走过来发的贴。
这个比 WTG 好搞多了
我当时折腾 WTG 还搞废了我原系统
准备上什么系统做第一次呀,我觉得Linux Mint不错,我推荐给我朋友也是这个入门
感谢分享,只有win11的wsl2才足够好用吧?具体是哪个版本bug少点儿呢?
在 LINUX DO 不聊 Linux
玩笑,玩笑
尝试Linux你很狼狈。
Day1 启动盘失败
Day2 怎么还是失败
Day3 终于好了,不过驱动怎么都没用?
Day4 这系统太丑了,美化一下
Day n-1 怎么开机不了,哪里出问题了
Day n 算了我还是用 Windows 吧
不着急,慢慢来。第一次在超极本上安装debian,因为没有网口只有无线网卡,并且第一次安装甚至不知道怎么挂代理,很自然的只安装了cd rom的东西,网卡驱动,
修了好几天
入门linux真心不建议折腾这些安装什么的,已经有windows的话直接启动wsl,最佳linux发行版可不是盖的
第一次在linuxdo 看到真的讨论linux的
window更新教你做人ww
对的,昨天格式错了没识别到u盘,我进启动设置里找路径,点哪个都不对,听建议重装盘了
重装后一插就识别在优先级这个框里了,好开心
我电脑就是win11,目前wsl还是比较好用的了,你安装输入几条命令就完事了。
装Linux感觉最头疼的是找各硬件厂家的驱动……然后发现有的组件没有开发Linux的驱动……
笑死,我之前双系统用arch的时候就是这样,最后在期末周前两天内核莫名其妙崩了(好像是滚挂了,快照也恢复不回去),然后一直懒得修,就用回windows了
nv显卡??
建议还是别用了吧。。。
用ubuntu也得用kubuntu或者xubuntu这两个换了桌面环境的
gnome适合触碰屏幕设备
kubuntu用的kde触碰和键鼠都行,xfce比较老就只适合键鼠
flatpak会好一点ubuntu的gnome snap store会把你卡的怀疑人生
软盘起步的飘过。