当前位置: 首页 > news >正文

docker(wsl)命令 帮助文档

WSL

wsl使用教程
wsl -l -v 列出所有已安装的 Linux 发行版
wsl -t Ubuntu-22.04 --shutdown 关闭所有正在运行的WSL发行版。如果你只想关闭特定的发行版
wsl -d Ubuntu-22.04 登录到Ubuntu环境
wsl --list --running 查看正在wsl中运行的linux发行版
wsl --unregister (系统名称) 注销

wsl --unregister Ubuntu-20.04

wsl --import (发行版) (安装位置) (文件路径以及文件名称)

wsl --import Ubuntu-20.04 D:\WSL\Ubuntu-20.04 D:\Ubuntu-20.04.tar --version 2,–version 2表示是wsl2导出的系统

wsl --status 检查 WSL 状态
wsl df -h / 输出将包括文件系统、大小、已用、可用、使用百分比和装载位置等信息
free -m 查看内存、swap大小
cat /proc/cpuinfo| grep "processor"| wc -l 查看处理器个数

凡是不带wsl的命令都需要进入Linux子系统后敲

WSL 官网命令

调整WSL占用内存和空间

装完WSL后,查看任务管理器时发现vmmem进程占用内存过高。
WSL内存默认值是电脑内存的一半,CPU默认值是电脑处理器个数,swap空间默认值是电脑内存的四分之一

  • wsl2使用的虚拟硬盘(VHD)默认大小为1TB
  • WSL2虚拟机默认分配的内存是Windows上总内存的50%或8GB,以较小者为准
  • WSL2的交换空间默认是Windows上25%的内存大小四舍五入到最接近的GB
    交换空间类似于Windows的虚拟内存,是当物理内存不足时使用的基于磁盘的RAM

WSL2使用一个轻量级的虚拟机来运行Linux内核,从而提供完整的Linux环境。然而,WSL2并不是设计来消耗如此大量的内存的,实际上,它通常使用的内存远小于1TB。如果你想要为WSL2分配1TB的内存,这在技术上是不可行的。但请注意,这并不意味着WSL2能够使用超过你物理内存限制的内存。

通常,WSL2的内存使用量会根据你的Linux发行版和运行的应用程序来动态调整。如果你需要更多的内存来运行特定的Linux应用程序,你可以考虑:

  • 增加物理内存:如果你的电脑支持,可以增加更多的RAM。
  • 优化应用程序:调整Linux中的应用程序,使其更高效地使用内存。
  • 使用交换空间:通过增加WSL2的交换空间来模拟更多的内存,但这会显著降低性能,因为硬盘的速度远慢于RAM。
交换空间

WSL(Windows Subsystem for Linux)交换文件(swap file)的作用与Linux系统中的交换文件类似,它是一种内存管理技术,用于扩展系统的物理内存当系统的物理内存(RAM)不足以容纳当前所有活跃的进程时,操作系统会使用交换文件(或交换分区)作为临时存储空间,将一部分内存中的数据移动到硬盘上,以便为新的进程或数据腾出空间

WSL2的虚拟内存大小可以通过配置文件进行调整.wslconfig

第一步:关闭所有运行的系统

# 查看wsl版本
wsl -l -v
# 查看正在wsl中运行的linux发行版
wsl --list --running
# 关闭所有正在wsl中运行的linux发行版
wsl --shutdown

第二步:修改.wslconfig配置文件

  • .wslconfig文件存放于当前用户的目录,即绝对路径为C:\Users\你的用户名.wslconfig,没有的话就新建一个。
  • 也可以打开文件管理器后,在地址栏输入%UserProfile%跳转至用户目录,再新建或编辑.wslconfig文件。
# Settings apply across all Linux distros running on WSL 2
[wsl2]# Limits VM memory to use no more than 2 GB, this can be set as whole numbers using GB or MB
memory=4GB # Sets the VM to use two virtual processors设置指定WSL 2虚拟机使用的虚拟处理器的数量
processors=4# Sets amount of swap storage space to 2GB, default is 25% of available RAM
swap=4GB# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
# swapfile=C:\\temp\\wsl-swap.vhdx

查看内存和交换空间使用情况:free -m
查看查看WSL2虚拟内存大小:wsl --list --verbose
cat /proc/cpuinfo| grep "processor"| wc -l 查看处理器个数
查看交换文件大小:cat /proc/swaps

查看可用宿主机可用物理内存

systeminfo

在这里插入图片描述
我新建的.wslconfig配置文件位置:C:\Users\HUAWEI
修改内容如下:

# Settings apply across all Linux distros running on WSL 2
[wsl2]# Limits VM memory to use no more than 2 GB, this can be set as whole numbers using GB or MB 第一次只修改了这里
memory=8GB # Sets the VM to use two virtual processors
processors=4# Sets amount of swap storage space to 2GB, default is 25% of available RAM
swap=4GB# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
# swapfile=C:\\temp\\wsl-swap.vhdx

修改好配置文件后,重启wsl2,让配置生效

wsl --shutdown

解析文档还是卡在83%~~
在这里插入图片描述

WSL从C盘迁移到其它盘

wsl安装的系统默认在c盘,为节省c盘空间进行迁移

cd到目标盘后执行导出命令:wsl --export Ubuntu-20.04 ./Ubuntu-20.04.tar ,将系统导出到D盘
注销原来的环境,命令格式为wsl --unregister (系统名称) ,具体案例为: wsl --unregister Ubuntu-20.04
执行导入命令 ,命令格式为 wsl --import (发行版) (安装位置) (文件路径以及文件名称) ,具体案例为:wsl --import Ubuntu-20.04 D:\WSL\Ubuntu-20.04 D:\Ubuntu-20.04.tar --version 2,–version 2表示是wsl2导出的系统。
启动wsl系统,执行df -h查看是否成功

参考原文

wsl空间清理

【琐碎问题】WSL2空间清理
Windows WSL2 占用磁盘空间清理释放

Docker

sudo chmod +x /usr/local/bin/docker-compose #添加可执行权限
docker-compose -v #查看版本
sudo su 进入管理员模式
systemctl restart docker 重新启动docker
sudo vim /etc/docker/daemon.json 为docker添加镜像源
sudo systemctl daemon-reload 修改配置文件后重载
sudo systemctl restart ollama 重启服务
查看所有镜像:docker images
查看当前运行的容器:docker ps
停止一个正在运行的容器:docker stop 《容器ID或名称》
启动docker:systemctl start docker
重启docker:service docker restart
查看版本:sudo docker version
查看镜像:sudo docker images
删除:docker rmi <iamge_name>:或者docker rmi <image_id>
强制删除:docker rmi -f <image_name>:
删除悬空镜像(从未使用过的):docker iamge prune
docker iamge prune -a (所有悬空镜像)

相关文章:

docker(wsl)命令 帮助文档

WSL wsl使用教程 wsl -l -v 列出所有已安装的 Linux 发行版 wsl -t Ubuntu-22.04 --shutdown 关闭所有正在运行的WSL发行版。如果你只想关闭特定的发行版 wsl -d Ubuntu-22.04 登录到Ubuntu环境 wsl --list --running 查看正在wsl中运行的linux发行版 wsl --unregister (系统名…...

nginx 拦截指定ip访问指定 url

nginx 拦截指定ip访问指定 url 这里需要注意的是一定要用$http_x_forwarded_for 这个变量 upstream myapp1 { # 定义一个名为myapp1的服务器组 server backend1.example.com weight5; # 添加一个服务器&#xff0c;并设置权重为5 server backend2.example.com; # 添加另…...

git仓库的基本概念和流程以及一些基本命令

什么是版本库&#xff1f;版本库又名仓库&#xff0c;英文名repository,你可以简单的理解一个目录&#xff0c;这个目录里面的所有文件都可以被Git管理起来&#xff0c;每个文件的修改&#xff0c;删除&#xff0c;Git都能跟踪&#xff0c;以便任何时刻都可以追踪历史&#xff…...

Intel-ECI之Codesys PLC + Ethercat 远端IO + Codesys IDE编程

目录 一、 准备工作 二、安装Codesys 软件 PLC 三、 使用Codesys IDE 编程测试 CODESYS* 是领先的独立于制造商的 IEC 61131-3 自动化软件&#xff0c;适用于工程控制系统。它用于 Intel Edge Controls for Industrial&#xff08;Intel ECI 或 ECI&#xff09;&#xff0c;…...

互联网医院系统,互联网医院系统源码可供

互联网医院系统开发&#xff0c;其功能特点和优势在于实现了线上医疗服务与信息技术的深度融合。此系统旨在构建一个更为高效、便捷的医疗服务平台&#xff0c;提升患者的就医体验和医疗服务的效率。 一、功能特点 1、预约挂号与在线咨询 患者可通过系统进行预约挂号&#xf…...

Marin说PCB之POC电路layout设计仿真案例---06

我们书接上回啊&#xff0c;对于上面的出现原因我这个美女同事安娜说会不会你把POC电感下面的相邻两层的CUT_OUT的尺寸再去加大一些会不会变得更好呢&#xff1f;这个难道说是真的有用吗&#xff1f;小编我先自己算一卦看下结果。 本期文章我们就接着验证通过改善我们的单板POC…...

windwos defender实现白名单效果(除了指定应用或端口其它一律禁止)禁止服务器上网

一、应用场景说明 当我们的一台windows服务器中毒&#xff0c;变成别人肉鸡&#xff0c;不断向外请示非法网站或攻击其它服务器。 要彻底清除相关木马或病毒往往需要的时间比较长&#xff0c;比较有效的方法是禁止服务器主动向外发包除了网站端口和远程程序除外。 其实这就是一…...

Fiddler勾选https后google浏览器网页访问不可用

一、说明 最近电脑重新安装系统后&#xff0c;之前的所有工具都需要重新安装和配置&#xff0c;有个项目需要抓包https包查看一下请求的内容&#xff0c;通过Fiddler工具&#xff0c;但是开启后&#xff0c;发现https的无法抓取&#xff0c;同时google浏览器也不无法访问互联网…...

机器视觉检测相机基础知识 | 颜色 | 光源 | 镜头 | 分辨率 / 精度 / 公差

注&#xff1a;本文为 “keyence 视觉沙龙中机器视觉检测基础知识” 文章合辑。 机器视觉检测基础知识&#xff08;一&#xff09;颜色篇 视觉检测硬件构成的基本部分包括&#xff1a;处理器、相机、镜头、光源。 其中&#xff0c;和光源相关的最重要的两个参数就是光源颜色和…...

解决pytorch安装中的三个错误

查明已安装python版本为3.12.7后&#xff0c;创建虚拟环境。 报错内容&#xff1a;ArgumentError: one of the arguments -n/–name -p/–prefix is required 解决方式&#xff1a; 输入 conda create -n pytorch python3.8即可安装成功。 参考文章&#xff1a;https://blo…...

用Python开发高级游戏:实现3D迷宫游戏

Python虽然被认为是一门简单易学的语言,但它在游戏开发领域同样具有强大的潜力,尤其是结合诸如Pygame、Panda3D、PyOpenGL等框架,可以开发出复杂的游戏。 在本文中,我们将通过一个示例,介绍如何使用Python开发一个高级3D迷宫游戏。本文使用的框架是 Panda3D,一个专为3D游…...

基于 uniapp 开发 android 播放 webrtc 流

一、播放rtsp协议流 如果 webrtc 流以 rtsp 协议返回&#xff0c;流地址如&#xff1a;rtsp://127.0.0.1:5115/session.mpg&#xff0c;uniapp的 <video> 编译到android上直接就能播放&#xff0c;但通常会有2-3秒的延迟。 二、播放webrtc协议流 如果 webrtc 流以 webrt…...

Unity引擎学习总结------动画控件

左侧窗格可以在参数视图和图层视图之间切换。参数视图允许您创建、查看和编辑动画控制器参数。这些是您定义的变量&#xff0c;用作状态机的输入。要添加参数&#xff0c;请单击加号图标并从弹出菜单中选择参数类型。要删除参数&#xff0c;请在列表中选择该参数并按删除键&…...

Pytorch | 从零构建GoogleNet对CIFAR10进行分类

Pytorch | 从零构建GoogleNet对CIFAR10进行分类 CIFAR10数据集GoogleNet网络结构特点网络整体架构应用与影响Inceptionv1到Inceptionv2 GoogleNet结构代码详解结构代码代码详解Inception 类初始化方法前向传播 forward GoogleNet 类初始化方法前向传播 forward 训练过程和测试结…...

基于SIFT的目标识别算法

基于SIFT&#xff08;Scale-Invariant Feature Transform&#xff09;的目标识别算法是一种经典的计算机视觉算法&#xff0c;用于在图像中寻找和匹配具有尺度不变性的特征点&#xff0c;从而实现目标的快速而准确的识别。 SIFT算法的主要步骤包括以下几个阶段&#xff1a; 尺…...

计算机组成原理的学习笔记(4)--数据的表示与运算·其三 补码的乘法以及原码补码的除法

学习笔记 前言 本文主要是对于b站尚硅谷的计算机组成原理的学习笔记&#xff0c;仅用于学习交流。 1.补码乘法 基本操作 与正常原码乘法差不多&#xff0c;逐位乘&#xff0c;随后相加&#xff0c;而与符号位有关的一项也叫校正项 Booth算法 从乘数的最低位开始&#xff0c…...

压缩glb模型文件

使用?gltf-pipeline进行压缩&#xff1a; GitHub地址[这里是图片001]https://github.com/CesiumGS/gltf-pipeline 1. 安装gltf-pipeline npm install -g gltf-pipeline2. 在glb文件目录打开cmd进行命令行压缩&#xff1a; // cmd: gltf-pipeline -i glb.glb -d -s以下是 -…...

vertx idea快速使用

目录 1.官网下载项目 2.修改代码 2.1拷贝代码方式 为了能够快速使用&#xff0c;我另外创建一个新的maven项目&#xff0c;将下载项目的src文件和pom文件拷贝到新建的maven项目。 2.2删除.mvn方式 3.更新配置 4.配置application 5.idea启动项目 1.官网下载项目 从vert…...

如何创建属于自己的大语言模型:从零开始的指南

如何创建属于自己的大语言模型&#xff1a;从零开始的指南 为什么要创建自己的大语言模型&#xff1f; 随着人工智能的快速发展&#xff0c;大语言模型&#xff08;LLM&#xff09;在各种场景中表现出了卓越的能力&#xff0c;例如文本生成、对话交互和内容总结等。虽然市场上…...

debian linux 连网自动调整时间 (报错 Unit systemd-timesyncd.service could not be found.)

debian linux 连网自动调整时间 如果有报错 Unit systemd-timesyncd.service could not be found. 就用 apt 装一下 systemd-timesyncd 吧 参考: https://github.com/MichaIng/DietPi/issues/5472 sudo apt-get install systemd-timesyncd... ┌──(kali㉿kali)-[~] └─$ t…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别

一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

线程同步:确保多线程程序的安全与高效!

全文目录&#xff1a; 开篇语前序前言第一部分&#xff1a;线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分&#xff1a;synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展&#xff0c;消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁&#xff0c;不仅优化了客户体验&#xff0c;还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用&#xff0c;并…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...

STM32---外部32.768K晶振(LSE)无法起振问题

晶振是否起振主要就检查两个1、晶振与MCU是否兼容&#xff1b;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容&#xff08;CL&#xff09;与匹配电容&#xff08;CL1、CL2&#xff09;的关系 2. 如何选择 CL1 和 CL…...

Web后端基础(基础知识)

BS架构&#xff1a;Browser/Server&#xff0c;浏览器/服务器架构模式。客户端只需要浏览器&#xff0c;应用程序的逻辑和数据都存储在服务端。 优点&#xff1a;维护方便缺点&#xff1a;体验一般 CS架构&#xff1a;Client/Server&#xff0c;客户端/服务器架构模式。需要单独…...

go 里面的指针

指针 在 Go 中&#xff0c;指针&#xff08;pointer&#xff09;是一个变量的内存地址&#xff0c;就像 C 语言那样&#xff1a; a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10&#xff0c;通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...