www.zsanjin.de
Open in
urlscan Pro
2a06:98c1:3121::3
Public Scan
Submitted URL: https://zsanjin.de/ext4-vhdx-wsl2-linux-docker.html
Effective URL: https://www.zsanjin.de/ext4-vhdx-wsl2-linux-docker.html
Submission: On November 02 via api from US — Scanned from DE
Effective URL: https://www.zsanjin.de/ext4-vhdx-wsl2-linux-docker.html
Submission: On November 02 via api from US — Scanned from DE
Form analysis
3 forms found in the DOMPOST https://www.zsanjin.de/wp-comments-post.php
<form action="https://www.zsanjin.de/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate="">
<p style="font-style:italic"><a href="https://segmentfault.com/markdown" target="_blank"><i class="fa-brands fa-markdown" style="color:var(--comment_area_matching);"></i></a> Markdown Supported while <i class="fa-solid fa-code"></i> Forbidden</p>
<div class="comment-textarea"><textarea placeholder="你是我一生只会遇见一次的惊喜 ..." name="comment" class="commentbody" id="comment" rows="5" tabindex="4"></textarea><label class="input-label">你是我一生只会遇见一次的惊喜 ...</label></div>
<div id="upload-img-show"></div>
<!--插入表情面版-->
<p id="emotion-toggle" class="no-select">
<span class="emotion-toggle-off">戳我呀 OωO</span>
<span class="emotion-toggle-on">嘿嘿嘿 ヾ(≧∇≦*)ゝ</span>
</p>
<div class="emotion-box no-select">
<table class="motion-switcher-table">
<tbody>
<tr>
<th onclick="motionSwitch('.menhera')" class="menhera-bar">(=・ω・=)</th>
<th onclick="motionSwitch('.tieba')" class="tieba-bar">Tieba</th>
</tr>
</tbody>
</table>
<div class="menhera-container motion-container">
<a class="emoji-item">(⌒▽⌒)</a>
<a class="emoji-item">( ̄▽ ̄)</a>
<a class="emoji-item">(=・ω・=)</a>
<a class="emoji-item">(`・ω・´)</a>
<a class="emoji-item">(〜 ̄△ ̄)〜</a>
<a class="emoji-item">(・∀・)</a>
<a class="emoji-item">(°∀°)ノ</a>
<a class="emoji-item">( ̄3 ̄)</a>
<a class="emoji-item">╮( ̄▽ ̄)╭</a>
<a class="emoji-item">(´_ゝ`)</a>
<a class="emoji-item">←_←</a>
<a class="emoji-item">→_→</a>
<a class="emoji-item">(<_<)</a>
<a class="emoji-item">(>_>)</a>
<a class="emoji-item">(;¬_¬)</a>
<a class="emoji-item">("▔□▔)/</a>
<a class="emoji-item">(゚Д゚≡゚д゚)!?</a>
<a class="emoji-item">Σ(゚д゚;)</a>
<a class="emoji-item">Σ( ̄□ ̄||)</a>
<a class="emoji-item">(’;ω;‘)</a>
<a class="emoji-item">(/TДT)/</a>
<a class="emoji-item">(^・ω・^ )</a>
<a class="emoji-item">(。・ω・。)</a>
<a class="emoji-item">(● ̄(エ) ̄●)</a>
<a class="emoji-item">ε=ε=(ノ≧∇≦)ノ</a>
<a class="emoji-item">(’・_・‘)</a>
<a class="emoji-item">(-_-#)</a>
<a class="emoji-item">( ̄へ ̄)</a>
<a class="emoji-item">( ̄ε(# ̄)Σ</a>
<a class="emoji-item">ヽ(‘Д’)ノ</a>
<a class="emoji-item">(#-_-)┯━┯</a>
<a class="emoji-item">(╯°口°)╯(┴—┴</a>
<a class="emoji-item">←◡←</a>
<a class="emoji-item">( ♥д♥)</a>
<a class="emoji-item">_(:3」∠)_</a>
<a class="emoji-item">Σ>―(〃°ω°〃)♡→</a>
<a class="emoji-item">⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄</a>
<a class="emoji-item">(╬゚д゚)▄︻┻┳═一</a>
<a class="emoji-item">・*・:≡( ε:)</a>
<a class="emoji-item">(笑)</a>
<a class="emoji-item">(汗)</a>
<a class="emoji-item">(泣)</a>
<a class="emoji-item">(苦笑)</a>
</div>
<div class="tieba-container motion-container" style="display:none;"><span title="good" onclick="grin('good',type = 'tieba')"><img loading="lazy" src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_good.png"></span><span
title="han" onclick="grin('han',type = 'tieba')"><img loading="lazy" src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_han.png"></span><span title="spray" onclick="grin('spray',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_spray.png"></span><span title="Grievance" onclick="grin('Grievance',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_Grievance.png"></span><span title="shui" onclick="grin('shui',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_shui.png"></span><span title="reluctantly" onclick="grin('reluctantly',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_reluctantly.png"></span><span title="anger" onclick="grin('anger',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_anger.png"></span><span title="tongue" onclick="grin('tongue',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_tongue.png"></span><span title="se" onclick="grin('se',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_se.png"></span><span title="haha" onclick="grin('haha',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_haha.png"></span><span title="rmb" onclick="grin('rmb',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_rmb.png"></span><span title="doubt" onclick="grin('doubt',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_doubt.png"></span><span title="tear" onclick="grin('tear',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_tear.png"></span><span title="surprised2" onclick="grin('surprised2',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_surprised2.png"></span><span title="Happy" onclick="grin('Happy',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_Happy.png"></span><span title="ku" onclick="grin('ku',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_ku.png"></span><span title="surprised" onclick="grin('surprised',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_surprised.png"></span><span title="theblackline" onclick="grin('theblackline',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_theblackline.png"></span><span title="smilingeyes" onclick="grin('smilingeyes',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_smilingeyes.png"></span><span title="spit" onclick="grin('spit',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_spit.png"></span><span title="huaji" onclick="grin('huaji',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_huaji.png"></span><span title="bbd" onclick="grin('bbd',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_bbd.png"></span><span title="hu" onclick="grin('hu',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_hu.png"></span><span title="shame" onclick="grin('shame',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_shame.png"></span><span title="naive" onclick="grin('naive',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_naive.png"></span><span title="rbq" onclick="grin('rbq',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_rbq.png"></span><span title="britan" onclick="grin('britan',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_britan.png"></span><span title="aa" onclick="grin('aa',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_aa.png"></span><span title="niconiconi" onclick="grin('niconiconi',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_niconiconi.png"></span><span title="niconiconi_t" onclick="grin('niconiconi_t',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_niconiconi_t.png"></span><span title="niconiconit" onclick="grin('niconiconit',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_niconiconit.png"></span><span title="awesome" onclick="grin('awesome',type = 'tieba')"><img loading="lazy"
src="https://vision-main.zsanjin.de/vision-main/smilies/tiebapng/icon_awesome.png"></span></div>
</div>
<!--表情面版完-->
<div class="cmt-info-container">
<div class="comment-user-avatar"><img src="https://vision-main.zsanjin.de/vision-main/basic/avatar.jpeg">
<div class="socila-check qq-check"><i class="fa-brands fa-qq"></i></div>
<div class="socila-check gravatar-check"><i class="fa-solid fa-face-kiss-wink-heart"></i></div>
</div>
<div class="popup cmt-popup cmt-author" onclick="cmt_showPopup(this)"><span class="popuptext" id="thePopup" style="margin-left: -115px;width: 230px;">输入QQ号将自动拉取昵称和头像</span><input type="text" placeholder="昵称或QQ号 (昵称 )" name="author" id="author"
value="" size="22" autocomplete="off" tabindex="1" aria-required="true"></div>
<div class="popup cmt-popup" onclick="cmt_showPopup(this)"><span class="popuptext" id="thePopup" style="margin-left: -65px;width: 130px;">你将收到回复通知</span><input type="text" placeholder="邮箱 (必须* )" name="email" id="email" value="" size="22"
tabindex="1" autocomplete="off" aria-required="true"></div>
<div class="popup cmt-popup" onclick="cmt_showPopup(this)"><span class="popuptext" id="thePopup" style="margin-left: -55px;width: 110px;">禁止小广告😀</span><input type="text" placeholder="网站" name="url" id="url" value="" size="22" autocomplete="off"
tabindex="1"></div>
</div><label class="siren-checkbox-label"><input class="siren-checkbox-radio" type="checkbox" name="no-robot"><span class="siren-no-robot-checkbox siren-checkbox-radioInput"></span>我不是机器人</label><label class="siren-checkbox-label"><input
class="siren-checkbox-radio" type="checkbox" name="is-private"><span class="siren-is-private-checkbox siren-checkbox-radioInput"></span>私密评论</label><label class="siren-checkbox-label"><input class="siren-checkbox-radio" type="checkbox"
name="mail-notify"><span class="siren-mail-notify-checkbox siren-checkbox-radioInput"></span>邮件通知</label>
<input type="text" placeholder="QQ" name="new_field_qq" id="qq" value="" style="display:none" autocomplete="off"><!--此栏不可见-->
<p class="comment-form-comment-subscribe"><label for="cren_subscribe_to_comment"><input id="cren_subscribe_to_comment" name="cren_subscribe_to_comment" type="checkbox" value="on" checked="">如果有人回复我的评论,请通过电子邮件通知我。</label></p>
<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"> <label for="wp-comment-cookies-consent">在此浏览器中保存我的显示名称、邮箱地址和网站地址,以便下次评论时使用。</label></p>
<p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="BiuBiuBiu~" style="width: 100%;"> <input type="hidden" name="comment_post_ID" value="1086" id="comment_post_ID">
<input type="hidden" name="comment_parent" id="comment_parent" value="0">
</p>
<p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="e1147b0e48"></p>
<p style="display: none !important;" class="akismet-fields-container" data-prefix="ak_"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js"
value="1730561018542">
<script>
document.getElementById("ak_js_1").setAttribute("value", (new Date()).getTime());
</script>
</p>
</form>
GET https://www.zsanjin.de
<form class="m-search-form" method="get" action="https://www.zsanjin.de" role="search">
<input class="m-search-input" type="search" name="s" placeholder="搜索..." required="">
</form>
GET https://www.zsanjin.de
<form class="js-search search-form search-form--modal" method="get" action="https://www.zsanjin.de" role="search">
<div class="search-form__inner">
<div class="micro">
<input id="search-input" class="text-input" type="search" name="s" placeholder="想要找点什么呢?" required="">
</div>
<div class="ins-section-wrapper">
<a id="Ty" href="#"></a>
<div class="ins-section-container" id="PostlistBox"></div>
</div>
</div>
<div class="search_close"></div>
</form>
Text Content
zsanjin&p之首页 登录 * p之首页-all posts * sanjin.喵 * 杂谈 * 教程(个人笔记) * 归档 * 2023年04月 * 2023年05月 * 2023年06月 * 2023年07月 * 2023年08月 * 2023年09月 * 2023年10月 * 2023年11月 * 2023年12月 * 2024年01月 * 2024年02月 * 2024年04月 * 2024年05月 * 2024年06月 * 2024年08月 * 2024年09月 * 资源 * 时光轴 * 本站主要服务状态查看 ZSANJIN 还有多久 才能够在你身边 解决WSL2的LINUX镜像EXT4.VHDX占用过大的问题 发布于 2024-05-02 61 次阅读 -------------------------------------------------------------------------------- AI 摘要 吾家爱猫娇美,威严如太阳,助惠主人,写二三事。WSL2镜像ext4.vhdx过肥,存图犹如山高,吾主于之求解。镜像压缩工具不足,求助终渴望解。导出、取消、再导入,削足适履。殊途同归,望彼此睦相处。 ext4.vhdx从几G眼睁睁看它涨到九十多G,原因一般就是在镜像写入数据后,即使删除这部分数据,依然被视为可用空间,一般是docker更新的镜像后堆积的旧版本docker镜像导致,即使我用了镜像压缩工具“diskpart”也依然无法解决,这时候就需要导出镜像,取消注册,重新导入镜像即可。 相关链接:试试 WSL2?它是一款免费、极速的服务器解决方案,再也不用租高价低配的服务器啦! 具体方法: Table of Contents Toggle * 1、先尝试压缩Linux镜像 * 2、重新注册镜像 * 3、避免再次无限扩展镜像容量 1、先尝试压缩LINUX镜像 在 Linux 系统中使用 fstrim 命令来释放未使用的空间。启动你的 WSL2 发行版,然后在终端中运行: sudo fstrim -v / 确保你的 Linux 发行版已经关闭。你可以在 PowerShell 中运行以下命令来关闭所有运行的 WSL 实例: wsl --shutdown 然后,使用 diskpart 工具来压缩 VHDX 文件。打开 PowerShell 或命令提示符,输入以下命令: diskpart 在 diskpart 提示符下,使用以下命令,替换 "C:\path\to\your\ext4.vhdx" 为你的 VHDX 文件的实际路径: select vdisk file="C:\path\to\your\ext4.vhdx" attach vdisk readonly compact vdisk detach vdisk exit 现在 VHDX 文件应该有小一点,但是微乎其微,继续下一步,导出镜像 2、重新注册镜像 确定你想要备份的 WSL2 发行版的名称。可以通过在 PowerShell 中运行以下命令来列出所有安装的发行版: wsl -l -v 关闭所有运行的 WSL2 实例,以避免在导出过程中发生数据不一致。使用这个命令: wsl --shutdown 导出并备份发行版。选择一个你想要保存备份的位置,并使用以下命令导出,将 <DistributionName> 替换为你的发行版名称,例如 CentOS7,并将 <BackupFilePath.tar> 替换为你想要保存的文件路径,例如 E:\centos_backup.tar ,注意如果目录不存在则会报错: wsl --export <DistributionName> <BackupFilePath.tar> #举例 wsl --export CentOS7 E:\centos_backup.tar 注意,下面操作会删除目前的镜像,所以做好备份,卸载指定的WSL2发行版: wsl --unregister <DistributionName> #举例 wsl --unregister CentOS7 导入先前导出的镜像。选择你想要安装镜像的位置和名称,使用以下命令,将 <NewDistributionName> 替换为你想要的新发行版名称,<InstallLocation> 替换为你想要安装的位置,例如 C:\centos,并将 <BackupFilePath.tar> 替换为你备份的文件路径,例如 E:\centos\centos_backup20240502.tar ,注意如果目录不存在则会报错: wsl --import <NewDistributionName> <InstallLocation> <BackupFilePath.tar> #举例 wsl --import CentOS7 C:\centos E:\centos\centos_backup20240502.tar 启动新的 WSL2 实例。通过指定你在导入时设置的发行版名称来启动它: wsl -d <NewDistributionName> #举例 wsl -d CentOS7 3、避免再次无限扩展镜像容量 因为目前的原因是docker旧版应用镜像的堆积导致,所以设置一个自动定期清理脚本即可,一般这种情况是使用宝塔面板自动更新docker镜像导致,所以直接在宝塔定时任务中添加命令,docker 将自动扫描所有无用的镜像并在删除前列出,然后直接删除它们,不会提示确认。如果只想删除临时镜像(none 标记的),可以省略 -a 参数: docker image prune -a --force #或者 docker image prune --force 感谢请我吃辣条 感谢请我吃泡面 感谢请我喝奶茶 * zsanjin 加油 p 最后更新于 2024-05-02 docker ext4.vhdx WSL2 导出镜像 自动清理脚本 重新导入镜像 镜像压缩 1. 1、先尝试压缩Linux镜像 2. 2、重新注册镜像 3. 3、避免再次无限扩展镜像容量 上一篇文章 [本站原创工具]EDITCFDNS–批量更新修改托管在CLOUDFLARE的DNS设置 -------------------------------------------------------------------------------- 下一篇文章 本站主要服务状态查看 -------------------------------------------------------------------------------- 查看评论 - NOTHING COMMENTS NOTHING 暂无评论 取消回复 Markdown Supported while Forbidden 你是我一生只会遇见一次的惊喜 ... 戳我呀 OωO 嘿嘿嘿 ヾ(≧∇≦*)ゝ (=・ω・=) Tieba (⌒▽⌒) ( ̄▽ ̄) (=・ω・=) (`・ω・´) (〜 ̄△ ̄)〜 (・∀・) (°∀°)ノ ( ̄3 ̄) ╮( ̄▽ ̄)╭ (´_ゝ`) ←_← →_→ (<_<) (>_>) (;¬_¬) ("▔□▔)/ (゚Д゚≡゚д゚)!? Σ(゚д゚;) Σ( ̄□ ̄||) (’;ω;‘) (/TДT)/ (^・ω・^ ) (。・ω・。) (● ̄(エ) ̄●) ε=ε=(ノ≧∇≦)ノ (’・_・‘) (-_-#) ( ̄へ ̄) ( ̄ε(# ̄)Σ ヽ(‘Д’)ノ (#-_-)┯━┯ (╯°口°)╯(┴—┴ ←◡← ( ♥д♥) _(:3」∠)_ Σ>―(〃°ω°〃)♡→ ⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄ (╬゚д゚)▄︻┻┳═一 ・*・:≡( ε:) (笑) (汗) (泣) (苦笑) 输入QQ号将自动拉取昵称和头像 你将收到回复通知 禁止小广告😀 我不是机器人私密评论邮件通知 如果有人回复我的评论,请通过电子邮件通知我。 在此浏览器中保存我的显示名称、邮箱地址和网站地址,以便下次评论时使用。 Δ 尾页 Copyright © by ZSanJin All Rights Reserved. 劳动人民团结起来一起抵制996! 公安备案号:苏公网安备11010554924235号 ICP备案号:苏ICP证549222号 大本钟下送快递——上面摆,下面寄。——记得「饭堂周末夜」 Theme Sakurairo by Fuukei * p之首页-all posts * sanjin.喵 * 杂谈 * 教程(个人笔记) * 归档 * 2023年04月 * 2023年05月 * 2023年06月 * 2023年07月 * 2023年08月 * 2023年09月 * 2023年10月 * 2023年11月 * 2023年12月 * 2024年01月 * 2024年02月 * 2024年04月 * 2024年05月 * 2024年06月 * 2024年08月 * 2024年09月 * 资源 * 时光轴 * 本站主要服务状态查看 * * * * * *