1
0
wiki/Technology/OperatingSystem/Linux/2.安装/GRUB-引导程序.html

1210 lines
586 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="zh"><head><title>GRUB 引导程序</title><meta charset="utf-8"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com"/><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=IBM Plex Mono&amp;family=Noto Serif Simplified Chinese:wght@400;700&amp;family=Source Sans Pro:ital,wght@0,400;0,600;1,400;1,600&amp;display=swap"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta property="og:title" content="GRUB 引导程序"/><meta property="og:description" content="GRUB是Linux系统中广泛使用的引导加载器支持多操作系统引导、内核参数传递、错误恢复等功能。它通过模块化设计和自动配置简化了引导过程并能适应UEFI和传统BIOS环境。."/><meta property="og:image" content="https://wiki.7wate.com/static/og-image.png"/><meta property="og:width" content="1200"/><meta property="og:height" content="675"/><link rel="icon" href="../../../../static/icon.png"/><meta name="description" content="GRUB是Linux系统中广泛使用的引导加载器支持多操作系统引导、内核参数传递、错误恢复等功能。它通过模块化设计和自动配置简化了引导过程并能适应UEFI和传统BIOS环境。."/><meta name="generator" content="Quartz"/><link href="../../../../index.css" rel="stylesheet" type="text/css" spa-preserve/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.9/katex.min.css" rel="stylesheet" type="text/css" spa-preserve/><script src="../../../../prescript.js" type="application/javascript" spa-preserve></script><script type="application/javascript" spa-preserve>const fetchData = fetch("../../../../static/contentIndex.json").then(data => data.json())</script></head><body data-slug="Technology/OperatingSystem/Linux/2.安装/GRUB-引导程序"><div id="quartz-root" class="page"><div id="quartz-body"><div class="left sidebar"><h2 class="page-title"><a href="../../../..">🪴 X·Eden</a></h2><div class="spacer mobile-only"></div><div class="search"><button class="search-button" id="search-button"><p>搜索</p><svg role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19.9 19.7"><title>Search</title><g class="search-path" fill="none"><path stroke-linecap="square" d="M18.5 18.3l-5.4-5.4"></path><circle cx="8" cy="8" r="7"></circle></g></svg></button><div id="search-container"><div id="search-space"><input autocomplete="off" id="search-bar" name="search" type="text" aria-label="搜索些什么" placeholder="搜索些什么"/><div id="search-layout" data-preview="true"></div></div></div></div><button class="darkmode" id="darkmode"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="dayIcon" x="0px" y="0px" viewBox="0 0 35 35" style="enable-background:new 0 0 35 35" xml:space="preserve" aria-label="暗色模式"><title>暗色模式</title><path d="M6,17.5C6,16.672,5.328,16,4.5,16h-3C0.672,16,0,16.672,0,17.5 S0.672,19,1.5,19h3C5.328,19,6,18.328,6,17.5z M7.5,26c-0.414,0-0.789,0.168-1.061,0.439l-2,2C4.168,28.711,4,29.086,4,29.5 C4,30.328,4.671,31,5.5,31c0.414,0,0.789-0.168,1.06-0.44l2-2C8.832,28.289,9,27.914,9,27.5C9,26.672,8.329,26,7.5,26z M17.5,6 C18.329,6,19,5.328,19,4.5v-3C19,0.672,18.329,0,17.5,0S16,0.672,16,1.5v3C16,5.328,16.671,6,17.5,6z M27.5,9 c0.414,0,0.789-0.168,1.06-0.439l2-2C30.832,6.289,31,5.914,31,5.5C31,4.672,30.329,4,29.5,4c-0.414,0-0.789,0.168-1.061,0.44 l-2,2C26.168,6.711,26,7.086,26,7.5C26,8.328,26.671,9,27.5,9z M6.439,8.561C6.711,8.832,7.086,9,7.5,9C8.328,9,9,8.328,9,7.5 c0-0.414-0.168-0.789-0.439-1.061l-2-2C6.289,4.168,5.914,4,5.5,4C4.672,4,4,4.672,4,5.5c0,0.414,0.168,0.789,0.439,1.06 L6.439,8.561z M33.5,16h-3c-0.828,0-1.5,0.672-1.5,1.5s0.672,1.5,1.5,1.5h3c0.828,0,1.5-0.672,1.5-1.5S34.328,16,33.5,16z M28.561,26.439C28.289,26.168,27.914,26,27.5,26c-0.828,0-1.5,0.672-1.5,1.5c0,0.414,0.168,0.789,0.439,1.06l2,2 C28.711,30.832,29.086,31,29.5,31c0.828,0,1.5-0.672,1.5-1.5c0-0.414-0.168-0.789-0.439-1.061L28.561,26.439z M17.5,29 c-0.829,0-1.5,0.672-1.5,1.5v3c0,0.828,0.671,1.5,1.5,1.5s1.5-0.672,1.5-1.5v-3C19,29.672,18.329,29,17.5,29z M17.5,7 C11.71,7,7,11.71,7,17.5S11.71,28,17.5,28S28,23.29,28,17.5S23.29,7,17.5,7z M17.5,25c-4.136,0-7.5-3.364-7.5-7.5 c0-4.136,3.364-7.5,7.5-7.5c4.136,0,7.5,3.364,7.5,7.5C25,21.636,21.636,25,17.5,25z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="nightIcon" x="0px" y="0px" viewBox="0 0 100 100" style="enable-background:new 0 0 100 100" xml:space="preserve" aria-label="亮色模式"><title>亮色模式</title><path d="M96.76,66.458c-0.853-0.852-2.15-1.064-3.23-0.534c-6.063,2.991-12.858,4.571-19.655,4.571 C62.022,70.495,50.88,65.88,42.5,57.5C29.043,44.043,25.658,23.536,34.076,6.47c0.532-1.08,0.318-2.379-0.534-3.23 c-0.851-0.852-2.15-1.064-3.23-0.534c-4.918,2.427-9.375,5.619-13.246,9.491c-9.447,9.447-14.65,22.008-14.65,35.369 c0,13.36,5.203,25.921,14.65,35.368s22.008,14.65,35.368,14.65c13.361,0,25.921-5.203,35.369-14.65 c3.872-3.871,7.064-8.328,9.491-13.246C97.826,68.608,97.611,67.309,96.76,66.458z"></path></svg></button><div class="explorer desktop-only"><button type="button" id="explorer" data-behavior="collapse" data-collapsed="collapsed" data-savestate="true" data-tree="[{&quot;path&quot;:&quot;Personal&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2018&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2020&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2021&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2022&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2023&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2024&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/个人成长&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/医学健康&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/历史&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/哲学宗教&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/心理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/政治军事&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/教育学习&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/文学&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/生活百科&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/社会文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/科学技术&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/经济理财&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/艺术&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/计算机&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W34&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W35&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W36&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W37&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W38&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W39&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W41&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W42&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W43&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W44&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W45&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W46&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W47&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W48&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W49&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W50&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W2&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W3&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W5&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W6&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W7&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W8&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W10&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W12&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W14&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W16&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W22&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W23&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W24&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W25&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W26&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W31&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W32&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W33&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W35&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W36&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W37&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W40&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W45&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W46&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W48&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W49&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W50&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W8&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W10&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W11&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W12&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W14&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W16&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W17&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W22&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W23&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W24&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W29&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W30&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W33&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W35&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W40&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W41&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Company&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Company/数字化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Company/数字化/规范&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Project&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Project/RSSky&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/data-engineer&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/权益保障&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/求职经验&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/简历攻略&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/职业规划&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/职场心得&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/薪酬攻略&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/面试法则&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/sre-engineer&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/English&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government/中国&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government/中国/标准&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government/中国/法律&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/CloudService&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/CloudService/基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/Nginx&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/公共服务&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/应用服务&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/网络协议&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/网络基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/信息安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/信息安全/OpenPGP&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/密码学&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/用户安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/用户安全/权限设计&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/用户安全/用户鉴权&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/系统安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/系统安全/防火墙&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/网络安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/网络安全/OpenSSH&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/网络安全/OpenSSL&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerStorage&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem/PostgreSQL&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem/SQL-语言&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem/基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具/PowerShell&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具/Shell&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具/Vim&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/开源指南&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/文本处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制/Git&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制/Git/入门&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制/Git/进阶&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Automation&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker/基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker/进阶&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker/高级&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/1.文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/2.安装&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/3.基础操作&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/4.系统管理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/5.安全配置&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/6.网络管理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/7.存储管理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Virtualization&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Virtualization/1.虚拟化概述&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Virtualization/2.KVM虚拟化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Windows&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Windows/文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/入门&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/WEB开发&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/数据处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/文本处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/系统交互&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/网络处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/进阶&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/项目&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/项目/虚拟环境&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/项目/风格指南&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/协作规范&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/文档规范&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/架构设计&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/自动化流程&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/自动化流程/工具使用&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/StructuresAlgorithms&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/0.Overview&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/1.Browser&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/2.HTML&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/3.CSS&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/4.JavaScript&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/7.Tools&quot;,&quot;collapsed&quot;:true}]" aria-controls="explorer-content" aria-expanded="false"><h2>探索</h2><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="fold"><polyline points="6 9 12 15 18 9"></polyline></svg></button><div id="explorer-content"><ul class="overflow" id="explorer-ul"><li><div class="folder-outer open"><ul style="padding-left:0;" class="content" data-folderul><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal"><button class="folder-button"><span class="folder-title">Personal</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog"><button class="folder-button"><span class="folder-title">Blog</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2018"><button class="folder-button"><span class="folder-title">2018</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2018"><li><a href="../../../../Personal/Blog/2018/11月28日晚-星期三-霾" data-for="Personal/Blog/2018/11月28日晚-星期三-霾">11月28日 晚 星期三 霾</a></li><li><a href="../../../../Personal/Blog/2018/BombSquad-炸弹人小分队" data-for="Personal/Blog/2018/BombSquad-炸弹人小分队">BombSquad-炸弹人小分队</a></li><li><a href="../../../../Personal/Blog/2018/如何免费创建一个属于自己的网站" data-for="Personal/Blog/2018/如何免费创建一个属于自己的网站">如何免费创建一个属于自己的网站</a></li><li><a href="../../../../Personal/Blog/2018/英雄联盟-S8-全球总决赛" data-for="Personal/Blog/2018/英雄联盟-S8-全球总决赛">英雄联盟 S8 全球总决赛</a></li><li><a href="../../../../Personal/Blog/2018/螺蛳粉" data-for="Personal/Blog/2018/螺蛳粉">螺蛳粉</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2020"><button class="folder-button"><span class="folder-title">2020</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2020"><li><a href="../../../../Personal/Blog/2020/Don`t-Starve-饥荒" data-for="Personal/Blog/2020/Don`t-Starve-饥荒">Don't Starve-饥荒</a></li><li><a href="../../../../Personal/Blog/2020/中国传统历法" data-for="Personal/Blog/2020/中国传统历法">中国传统历法</a></li><li><a href="../../../../Personal/Blog/2020/初号机,起飞!" data-for="Personal/Blog/2020/初号机,起飞!">初号机,起飞!</a></li><li><a href="../../../../Personal/Blog/2020/吉普赛满天星" data-for="Personal/Blog/2020/吉普赛满天星">吉普赛满天星</a></li><li><a href="../../../../Personal/Blog/2020/夏日花记" data-for="Personal/Blog/2020/夏日花记">夏日花记</a></li><li><a href="../../../../Personal/Blog/2020/幸福的事情都是需要等待的" data-for="Personal/Blog/2020/幸福的事情都是需要等待的">幸福的事情都是需要等待的</a></li><li><a href="../../../../Personal/Blog/2020/开源软件之道" data-for="Personal/Blog/2020/开源软件之道">开源软件之道</a></li><li><a href="../../../../Personal/Blog/2020/我的小羊肖恩" data-for="Personal/Blog/2020/我的小羊肖恩">我的小羊肖恩</a></li><li><a href="../../../../Personal/Blog/2020/数据恢复杂谈" data-for="Personal/Blog/2020/数据恢复杂谈">数据恢复杂谈</a></li><li><a href="../../../../Personal/Blog/2020/注定不平凡的一年" data-for="Personal/Blog/2020/注定不平凡的一年">注定不平凡的一年</a></li><li><a href="../../../../Personal/Blog/2020/浅谈个人服务器架构" data-for="Personal/Blog/2020/浅谈个人服务器架构">浅谈个人服务器架构</a></li><li><a href="../../../../Personal/Blog/2020/球鞋日记" data-for="Personal/Blog/2020/球鞋日记">球鞋日记</a></li><li><a href="../../../../Personal/Blog/2020/記拾月" data-for="Personal/Blog/2020/記拾月">記拾月</a></li><li><a href="../../../../Personal/Blog/2020/长安游记" data-for="Personal/Blog/2020/长安游记">长安游记</a></li><li><a href="../../../../Personal/Blog/2020/骑行在路上" data-for="Personal/Blog/2020/骑行在路上">骑行在路上</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2021"><button class="folder-button"><span class="folder-title">2021</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2021"><li><a href="../../../../Personal/Blog/2021/2021" data-for="Personal/Blog/2021/2021">2021</a></li><li><a href="../../../../Personal/Blog/2021/VIVO-IQOO-Neo3-开箱测评" data-for="Personal/Blog/2021/VIVO-IQOO-Neo3-开箱测评">VIVO IQOO Neo3 开箱测评</a></li><li><a href="../../../../Personal/Blog/2021/上有天堂、下有苏杭" data-for="Personal/Blog/2021/上有天堂、下有苏杭">上有天堂、下有苏杭</a></li><li><a href="../../../../Personal/Blog/2021/我开发的第一款软件" data-for="Personal/Blog/2021/我开发的第一款软件">我开发的第一款软件</a></li><li><a href="../../../../Personal/Blog/2021/我站立的地方是中国" data-for="Personal/Blog/2021/我站立的地方是中国">我站立的地方是中国</a></li><li><a href="../../../../Personal/Blog/2021/我还在……" data-for="Personal/Blog/2021/我还在……">我还在……</a></li><li><a href="../../../../Personal/Blog/2021/星光不问赶路人" data-for="Personal/Blog/2021/星光不问赶路人">星光不问赶路人</a></li><li><a href="../../../../Personal/Blog/2021/济南呀济南的泰山之旅" data-for="Personal/Blog/2021/济南呀济南的泰山之旅">济南呀济南的泰山之旅</a></li><li><a href="../../../../Personal/Blog/2021/涝疫结合" data-for="Personal/Blog/2021/涝疫结合">涝疫结合</a></li><li><a href="../../../../Personal/Blog/2021/申请-Jetbrains-开源项目授权" data-for="Personal/Blog/2021/申请-Jetbrains-开源项目授权">申请 Jetbrains 开源项目授权</a></li><li><a href="../../../../Personal/Blog/2021/真·长安游记" data-for="Personal/Blog/2021/真·长安游记">真·长安游记</a></li><li><a href="../../../../Personal/Blog/2021/记拾月" data-for="Personal/Blog/2021/记拾月">记拾月</a></li><li><a href="../../../../Personal/Blog/2021/贰号机、落幕" data-for="Personal/Blog/2021/贰号机、落幕">贰号机、落幕</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2022"><button class="folder-button"><span class="folder-title">2022</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2022"><li><a href="../../../../Personal/Blog/2022/「引用」博客的本质是电线杆子" data-for="Personal/Blog/2022/「引用」博客的本质是电线杆子">「引用」博客的本质是电线杆子</a></li><li><a href="../../../../Personal/Blog/2022/2022" data-for="Personal/Blog/2022/2022">2022</a></li><li><a href="../../../../Personal/Blog/2022/Halo-主题-Redemption-首发版" data-for="Personal/Blog/2022/Halo-主题-Redemption-首发版">Halo 主题 Redemption 首发版</a></li><li><a href="../../../../Personal/Blog/2022/Hello-Halo" data-for="Personal/Blog/2022/Hello-Halo">Hello Halo</a></li><li><a href="../../../../Personal/Blog/2022/Redemption" data-for="Personal/Blog/2022/Redemption">Redemption</a></li><li><a href="../../../../Personal/Blog/2022/Redemption-主题-0.2.1-版本" data-for="Personal/Blog/2022/Redemption-主题-0.2.1-版本">Redemption 主题 0.2.1 版本</a></li><li><a href="../../../../Personal/Blog/2022/一线城市拥有一亩三分地是什么体验" data-for="Personal/Blog/2022/一线城市拥有一亩三分地是什么体验">一线城市拥有一亩三分地是什么体验</a></li><li><a href="../../../../Personal/Blog/2022/三步为你博客文章分析情感关键字" data-for="Personal/Blog/2022/三步为你博客文章分析情感关键字">三步为你博客文章分析情感关键字</a></li><li><a href="../../../../Personal/Blog/2022/不要在饿的时候吃螺蛳粉!" data-for="Personal/Blog/2022/不要在饿的时候吃螺蛳粉!">不要在饿的时候吃螺蛳粉!</a></li><li><a href="../../../../Personal/Blog/2022/习惯养成第一步" data-for="Personal/Blog/2022/习惯养成第一步">习惯养成第一步</a></li><li><a href="../../../../Personal/Blog/2022/人在囧途——青海湖" data-for="Personal/Blog/2022/人在囧途——青海湖">人在囧途——青海湖</a></li><li><a href="../../../../Personal/Blog/2022/人格类型测试" data-for="Personal/Blog/2022/人格类型测试">人格类型测试</a></li><li><a href="../../../../Personal/Blog/2022/你还记得曾经的梦想么?" data-for="Personal/Blog/2022/你还记得曾经的梦想么?">你还记得曾经的梦想么?</a></li><li><a href="../../../../Personal/Blog/2022/使用-Docusaurus-搭建优秀个人wiki" data-for="Personal/Blog/2022/使用-Docusaurus-搭建优秀个人wiki">使用 Docusaurus 搭建优秀个人wiki</a></li><li><a href="../../../../Personal/Blog/2022/关于感情的事情" data-for="Personal/Blog/2022/关于感情的事情">关于感情的事情</a></li><li><a href="../../../../Personal/Blog/2022/关于花" data-for="Personal/Blog/2022/关于花">关于花</a></li><li><a href="../../../../Personal/Blog/2022/关于郑州的互联网记忆" data-for="Personal/Blog/2022/关于郑州的互联网记忆">关于郑州的互联网记忆</a></li><li><a href="../../../../Personal/Blog/2022/再游嵩山" data-for="Personal/Blog/2022/再游嵩山">再游嵩山</a></li><li><a href="../../../../Personal/Blog/2022/最近在折腾什么……" data-for="Personal/Blog/2022/最近在折腾什么……">最近在折腾什么……</a></li><li><a href="../../../../Personal/Blog/2022/最近的生活" data-for="Personal/Blog/2022/最近的生活">最近的生活</a></li><li><a href="../../../../Personal/Blog/2022/写十万字的博客是一种什么感觉" data-for="Personal/Blog/2022/写十万字的博客是一种什么感觉">写十万字的博客是一种什么感觉</a></li><li><a href="../../../../Personal/Blog/2022/写博客的正确姿势---先行版" data-for="Personal/Blog/2022/写博客的正确姿势---先行版">写博客的正确姿势 - 先行版</a></li><li><a href="../../../../Personal/Blog/2022/写博客的正确姿势---测试版" data-for="Personal/Blog/2022/写博客的正确姿势---测试版">写博客的正确姿势 - 测试版</a></li><li><a href="../../../../Personal/Blog/2022/原点" data-for="Personal/Blog/2022/原点">原点</a></li><li><a href="../../../../Personal/Blog/2022/如何免费获得-Jetbrains-正版授权" data-for="Personal/Blog/2022/如何免费获得-Jetbrains-正版授权">如何免费获得 Jetbrains 正版授权</a></li><li><a href="../../../../Personal/Blog/2022/我是关系户" data-for="Personal/Blog/2022/我是关系户">我是关系户</a></li><li><a href="../../../../Personal/Blog/2022/我要拔智齿!!!" data-for="Personal/Blog/2022/我要拔智齿!!!">我要拔智齿!!!</a></li><li><a href="../../../../Personal/Blog/2022/数字文化遗产" data-for="Personal/Blog/2022/数字文化遗产">数字文化遗产</a></li><li><a href="../../../../Personal/Blog/2022/新冠笔记" data-for="Personal/Blog/2022/新冠笔记">新冠笔记</a></li><li><a href="../../../../Personal/Blog/2022/新手村村长" data-for="Personal/Blog/2022/新手村村长">新手村村长</a></li><li><a href="../../../../Personal/Blog/2022/是微风、是晚霞、是来日方长" data-for="Personal/Blog/2022/是微风、是晚霞、是来日方长">是微风、是晚霞、是来日方长</a></li><li><a href="../../../../Personal/Blog/2022/月季到了" data-for="Personal/Blog/2022/月季到了">月季到了</a></li><li><a href="../../../../Personal/Blog/2022/浅谈一下自己折腾的网站" data-for="Personal/Blog/2022/浅谈一下自己折腾的网站">浅谈一下自己折腾的网站</a></li><li><a href="../../../../Personal/Blog/2022/番茄开花啦-~" data-for="Personal/Blog/2022/番茄开花啦-~">番茄开花啦 ~</a></li><li><a href="../../../../Personal/Blog/2022/种下了一些瓜果蔬菜" data-for="Personal/Blog/2022/种下了一些瓜果蔬菜">种下了一些瓜果蔬菜</a></li><li><a href="../../../../Personal/Blog/2022/罪恶应该被遗传么" data-for="Personal/Blog/2022/罪恶应该被遗传么">罪恶应该被遗传么?</a></li><li><a href="../../../../Personal/Blog/2022/自律的痛苦······" data-for="Personal/Blog/2022/自律的痛苦······">自律的痛苦······</a></li><li><a href="../../../../Personal/Blog/2022/论成年人的睡眠" data-for="Personal/Blog/2022/论成年人的睡眠">论成年人的睡眠</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」">谈谈我的「数字文具盒」</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---NextCloud" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---NextCloud">谈谈我的「数字文具盒」 - NextCloud</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---Obsidian" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---Obsidian">谈谈我的「数字文具盒」 - Obsidian</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---心得体会" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---心得体会">谈谈我的「数字文具盒」 - 心得体会</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---数字基建" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---数字基建">谈谈我的「数字文具盒」 - 数字基建</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(上)" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(上)">谈谈我的「数字文具盒」 - 生产力工具(上)</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(下)" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(下)">谈谈我的「数字文具盒」 - 生产力工具(下)</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---番外篇" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---番外篇">谈谈我的「数字文具盒」 - 番外篇</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---运行平台" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---运行平台">谈谈我的「数字文具盒」 - 运行平台</a></li><li><a href="../../../../Personal/Blog/2022/这个周末" data-for="Personal/Blog/2022/这个周末">这个周末</a></li><li><a href="../../../../Personal/Blog/2022/通货膨胀的猪" data-for="Personal/Blog/2022/通货膨胀的猪">通货膨胀的猪</a></li><li><a href="../../../../Personal/Blog/2022/闭门锁网" data-for="Personal/Blog/2022/闭门锁网">闭门锁网</a></li><li><a href="../../../../Personal/Blog/2022/非黑即白" data-for="Personal/Blog/2022/非黑即白">非黑即白</a></li><li><a href="../../../../Personal/Blog/2022/首页加载速度优化方案" data-for="Personal/Blog/2022/首页加载速度优化方案">首页加载速度优化方案</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2023"><button class="folder-button"><span class="folder-title">2023</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2023"><li><a href="../../../../Personal/Blog/2023/2023-年度微信读书报告" data-for="Personal/Blog/2023/2023-年度微信读书报告">2023 年度微信读书报告</a></li><li><a href="../../../../Personal/Blog/2023/Docusaurus-搭建" data-for="Personal/Blog/2023/Docusaurus-搭建">Docusaurus 搭建</a></li><li><a href="../../../../Personal/Blog/2023/Obsidian-使用-Templater-插件的个性化脚本" data-for="Personal/Blog/2023/Obsidian-使用-Templater-插件的个性化脚本">Obsidian 使用 Templater 插件的个性化脚本</a></li><li><a href="../../../../Personal/Blog/2023/YubiKey-漂流记" data-for="Personal/Blog/2023/YubiKey-漂流记">YubiKey 历险记</a></li><li><a href="../../../../Personal/Blog/2023/不要把幸福建立在别人的痛苦之上" data-for="Personal/Blog/2023/不要把幸福建立在别人的痛苦之上">不要把幸福建立在别人的痛苦之上</a></li><li><a href="../../../../Personal/Blog/2023/为什么不推开那扇门?" data-for="Personal/Blog/2023/为什么不推开那扇门?">为什么不推开那扇门?</a></li><li><a href="../../../../Personal/Blog/2023/你愿意嫁给自己么?" data-for="Personal/Blog/2023/你愿意嫁给自己么?">你愿意嫁给自己么</a></li><li><a href="../../../../Personal/Blog/2023/最近半年的生活" data-for="Personal/Blog/2023/最近半年的生活">最近半年的生活</a></li><li><a href="../../../../Personal/Blog/2023/写博客的正确姿势" data-for="Personal/Blog/2023/写博客的正确姿势">写博客的正确姿势</a></li><li><a href="../../../../Personal/Blog/2023/唯有热爱可抵岁月漫长" data-for="Personal/Blog/2023/唯有热爱可抵岁月漫长">唯有热爱、可抵岁月漫长</a></li><li><a href="../../../../Personal/Blog/2023/回首-2022-展望-2023" data-for="Personal/Blog/2023/回首-2022-展望-2023">回首 2022 展望 2023</a></li><li><a href="../../../../Personal/Blog/2023/大学回忆录" data-for="Personal/Blog/2023/大学回忆录">大学回忆录</a></li><li><a href="../../../../Personal/Blog/2023/如何不写错别字!" data-for="Personal/Blog/2023/如何不写错别字!">如何不写错别字!</a></li><li><a href="../../../../Personal/Blog/2023/如何拍好一张照片" data-for="Personal/Blog/2023/如何拍好一张照片">如何拍好一张照片</a></li><li><a href="../../../../Personal/Blog/2023/家里的三块地" data-for="Personal/Blog/2023/家里的三块地">家里的三块地</a></li><li><a href="../../../../Personal/Blog/2023/岁月是把猪饲料,把我喂的嘎嘎胖" data-for="Personal/Blog/2023/岁月是把猪饲料,把我喂的嘎嘎胖">岁月是把猪饲料,把我喂的嘎嘎胖</a></li><li><a href="../../../../Personal/Blog/2023/拾月游记" data-for="Personal/Blog/2023/拾月游记">拾月游记</a></li><li><a href="../../../../Personal/Blog/2023/揭晓你的博客一年之最,尽在-EndOfYear" data-for="Personal/Blog/2023/揭晓你的博客一年之最,尽在-EndOfYear">揭晓你的博客一年之最,尽在 EndOfYear</a></li><li><a href="../../../../Personal/Blog/2023/早起、阅读、写作、运动、冥想" data-for="Personal/Blog/2023/早起、阅读、写作、运动、冥想">早起、冥想、阅读、写作、运动</a></li><li><a href="../../../../Personal/Blog/2023/浅尝-Gitea-的-Actions" data-for="Personal/Blog/2023/浅尝-Gitea-的-Actions">浅尝 Gitea 的 Actions</a></li><li><a href="../../../../Personal/Blog/2023/独立生活能力清单" data-for="Personal/Blog/2023/独立生活能力清单">独立生活能力清单</a></li><li><a href="../../../../Personal/Blog/2023/电脑坏了,我换了-Ubuntu" data-for="Personal/Blog/2023/电脑坏了,我换了-Ubuntu">电脑坏了,我换了 Ubuntu</a></li><li><a href="../../../../Personal/Blog/2023/看-V2Ex-的-ChatGPT-老哥浅谈办公室政治" data-for="Personal/Blog/2023/看-V2Ex-的-ChatGPT-老哥浅谈办公室政治">看 V2Ex 的 ChatGPT 老哥浅谈办公室政治</a></li><li><a href="../../../../Personal/Blog/2023/破万卷书,行万里路!" data-for="Personal/Blog/2023/破万卷书,行万里路!">破万卷书,行万里路!</a></li><li><a href="../../../../Personal/Blog/2023/谈谈我的「数字文具盒」---个人工作流" data-for="Personal/Blog/2023/谈谈我的「数字文具盒」---个人工作流">谈谈我的「数字文具盒」 - 个人工作流</a></li><li><a href="../../../../Personal/Blog/2023/长安三万里" data-for="Personal/Blog/2023/长安三万里">长安三万里</a></li><li><a href="../../../../Personal/Blog/2023/黄山归来不看岳" data-for="Personal/Blog/2023/黄山归来不看岳">黄山归来不看岳</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2024"><button class="folder-button"><span class="folder-title">2024</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2024"><li><a href="../../../../Personal/Blog/2024/「救赎之路」更名「向阳而生」" data-for="Personal/Blog/2024/「救赎之路」更名「向阳而生」">「救赎之路」更名「向阳而生」</a></li><li><a href="../../../../Personal/Blog/2024/回顾-2023" data-for="Personal/Blog/2024/回顾-2023">2023 年终总结</a></li><li><a href="../../../../Personal/Blog/2024/2023-年终问答" data-for="Personal/Blog/2024/2023-年终问答">2023 年终问答</a></li><li><a href="../../../../Personal/Blog/2024/CityWalk——公车挑战" data-for="Personal/Blog/2024/CityWalk——公车挑战">CityWalk——公车挑战探索未知的城市</a></li><li><a href="../../../../Personal/Blog/2024/Python-项目终极部署解决方案" data-for="Personal/Blog/2024/Python-项目终极部署解决方案">Python 项目终极部署解决方案</a></li><li><a href="../../../../Personal/Blog/2024/一命二运三风水" data-for="Personal/Blog/2024/一命二运三风水">一命二运三风水</a></li><li><a href="../../../../Personal/Blog/2024/乌兰哈达火山银河之旅" data-for="Personal/Blog/2024/乌兰哈达火山银河之旅">乌兰哈达火山银河之旅</a></li><li><a href="../../../../Personal/Blog/2024/冰箱,让你我错过了多少新鲜的生活?" data-for="Personal/Blog/2024/冰箱,让你我错过了多少新鲜的生活?">冰箱,让你我错过了多少新鲜的生活?</a></li><li><a href="../../../../Personal/Blog/2024/回读者信──240816" data-for="Personal/Blog/2024/回读者信──240816">回读者信──240816</a></li><li><a href="../../../../Personal/Blog/2024/夜泊西湖听雨声" data-for="Personal/Blog/2024/夜泊西湖听雨声">夜泊西湖听雨声</a></li><li><a href="../../../../Personal/Blog/2024/如何开好一场会?" data-for="Personal/Blog/2024/如何开好一场会?">如何开好一场会?</a></li><li><a href="../../../../Personal/Blog/2024/如何打破信息茧房?" data-for="Personal/Blog/2024/如何打破信息茧房?">如何打破信息茧房?</a></li><li><a href="../../../../Personal/Blog/2024/富人的红灯与穷人的绿灯" data-for="Personal/Blog/2024/富人的红灯与穷人的绿灯">富人的红灯与穷人的绿灯</a></li><li><a href="../../../../Personal/Blog/2024/师从-ChatGPT" data-for="Personal/Blog/2024/师从-ChatGPT">师从 ChatGPT</a></li><li><a href="../../../../Personal/Blog/2024/我又从-Ubunut-换成了-Fedora" data-for="Personal/Blog/2024/我又从-Ubunut-换成了-Fedora">我又从 Ubunut 换成了 Fedora</a></li><li><a href="../../../../Personal/Blog/2024/我的一天" data-for="Personal/Blog/2024/我的一天">我的一天</a></li><li><a href="../../../../Personal/Blog/2024/打工三年记" data-for="Personal/Blog/2024/打工三年记">打工三年记</a></li><li><a href="../../../../Personal/Blog/2024/新奇的-HR-经历" data-for="Personal/Blog/2024/新奇的-HR-经历">新奇的 HR 经历</a></li><li><a href="../../../../Personal/Blog/2024/穷则独善其身,达则兼济天下" data-for="Personal/Blog/2024/穷则独善其身,达则兼济天下">穷则独善其身,达则兼济天下</a></li><li><a href="../../../../Personal/Blog/2024/继续开荒我那一亩三分地" data-for="Personal/Blog/2024/继续开荒我那一亩三分地">继续开荒我那一亩三分地</a></li><li><a href="../../../../Personal/Blog/2024/記伍月" data-for="Personal/Blog/2024/記伍月">記伍月</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book"><button class="folder-button"><span class="folder-title">Book</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/个人成长"><button class="folder-button"><span class="folder-title">个人成长</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/个人成长"><li><a href="../../../../Personal/Book/个人成长/习惯的力量(新版)" data-for="Personal/Book/个人成长/习惯的力量(新版)">习惯的力量(新版)</a></li><li><a href="../../../../Personal/Book/个人成长/以极简的方式去生活" data-for="Personal/Book/个人成长/以极简的方式去生活">以极简的方式去生活</a></li><li><a href="../../../../Personal/Book/个人成长/写出我心:普通人如何通过写作表达自己" data-for="Personal/Book/个人成长/写出我心:普通人如何通过写作表达自己">写出我心:普通人如何通过写作表达自己</a></li><li><a href="../../../../Personal/Book/个人成长/刻意练习:如何从新手到大师" data-for="Personal/Book/个人成长/刻意练习:如何从新手到大师">刻意练习:如何从新手到大师</a></li><li><a href="../../../../Personal/Book/个人成长/十分钟冥想" data-for="Personal/Book/个人成长/十分钟冥想">十分钟冥想</a></li><li><a href="../../../../Personal/Book/个人成长/即兴表达" data-for="Personal/Book/个人成长/即兴表达">即兴表达</a></li><li><a href="../../../../Personal/Book/个人成长/学习之道" data-for="Personal/Book/个人成长/学习之道">学习之道</a></li><li><a href="../../../../Personal/Book/个人成长/学会写作:自我进阶的高效方法" data-for="Personal/Book/个人成长/学会写作:自我进阶的高效方法">学会写作:自我进阶的高效方法</a></li><li><a href="../../../../Personal/Book/个人成长/底层逻辑" data-for="Personal/Book/个人成长/底层逻辑">底层逻辑</a></li><li><a href="../../../../Personal/Book/个人成长/底层逻辑:看清这个世界的底牌" data-for="Personal/Book/个人成长/底层逻辑:看清这个世界的底牌">底层逻辑:看清这个世界的底牌</a></li><li><a href="../../../../Personal/Book/个人成长/当下的力量(白金版)" data-for="Personal/Book/个人成长/当下的力量(白金版)">当下的力量(白金版)</a></li><li><a href="../../../../Personal/Book/个人成长/我的第一本人生规划手册" data-for="Personal/Book/个人成长/我的第一本人生规划手册">我的第一本人生规划手册</a></li><li><a href="../../../../Personal/Book/个人成长/超级面试官:快速提升识人技能的面试实战手册" data-for="Personal/Book/个人成长/超级面试官:快速提升识人技能的面试实战手册">超级面试官:快速提升识人技能的面试实战手册</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/医学健康"><button class="folder-button"><span class="folder-title">医学健康</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/医学健康"><li><a href="../../../../Personal/Book/医学健康/你是你吃出来的套装共2册" data-for="Personal/Book/医学健康/你是你吃出来的套装共2册">你是你吃出来的套装共2册</a></li><li><a href="../../../../Personal/Book/医学健康/小小药箱护健康教您用好家庭小药箱" data-for="Personal/Book/医学健康/小小药箱护健康教您用好家庭小药箱">小小药箱护健康教您用好家庭小药箱</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/历史"><button class="folder-button"><span class="folder-title">历史</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/历史"><li><a href="../../../../Personal/Book/历史/信息简史" data-for="Personal/Book/历史/信息简史">信息简史</a></li><li><a href="../../../../Personal/Book/历史/这里是中国2" data-for="Personal/Book/历史/这里是中国2">这里是中国2</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/哲学宗教"><button class="folder-button"><span class="folder-title">哲学宗教</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/哲学宗教"><li><a href="../../../../Personal/Book/哲学宗教/半小时漫画中国哲学史套装全2册" data-for="Personal/Book/哲学宗教/半小时漫画中国哲学史套装全2册">半小时漫画中国哲学史套装全2册</a></li><li><a href="../../../../Personal/Book/哲学宗教/第一性原理" data-for="Personal/Book/哲学宗教/第一性原理">第一性原理</a></li><li><a href="../../../../Personal/Book/哲学宗教/结构化思维" data-for="Personal/Book/哲学宗教/结构化思维">结构化思维</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/心理"><button class="folder-button"><span class="folder-title">心理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/心理"><li><a href="../../../../Personal/Book/心理/乌合之众(果麦经典)" data-for="Personal/Book/心理/乌合之众(果麦经典)">乌合之众(果麦经典)</a></li><li><a href="../../../../Personal/Book/心理/十分钟冥想" data-for="Personal/Book/心理/十分钟冥想">十分钟冥想</a></li><li><a href="../../../../Personal/Book/心理/认知觉醒:开启自我改变的原动力" data-for="Personal/Book/心理/认知觉醒:开启自我改变的原动力">认知觉醒:开启自我改变的原动力</a></li><li><a href="../../../../Personal/Book/心理/认知驱动:做成一件对他人很有用的事" data-for="Personal/Book/心理/认知驱动:做成一件对他人很有用的事">认知驱动:做成一件对他人很有用的事</a></li><li><a href="../../../../Personal/Book/心理/谈性说爱写给女性的性心理24讲" data-for="Personal/Book/心理/谈性说爱写给女性的性心理24讲">谈性说爱写给女性的性心理24讲</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/政治军事"><button class="folder-button"><span class="folder-title">政治军事</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/政治军事"><li><a href="../../../../Personal/Book/政治军事/实践论" data-for="Personal/Book/政治军事/实践论">实践论</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/教育学习"><button class="folder-button"><span class="folder-title">教育学习</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/教育学习"><li><a href="../../../../Personal/Book/教育学习/如何阅读一本书" data-for="Personal/Book/教育学习/如何阅读一本书">如何阅读一本书</a></li><li><a href="../../../../Personal/Book/教育学习/赖世雄的英语学习法" data-for="Personal/Book/教育学习/赖世雄的英语学习法">赖世雄的英语学习法</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/文学"><button class="folder-button"><span class="folder-title">文学</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/文学"><li><a href="../../../../Personal/Book/文学/凤凰项目一个IT运维的传奇故事修订版" data-for="Personal/Book/文学/凤凰项目一个IT运维的传奇故事修订版">凤凰项目一个IT运维的传奇故事修订版</a></li><li><a href="../../../../Personal/Book/文学/老舍谈写作" data-for="Personal/Book/文学/老舍谈写作">老舍谈写作</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/生活百科"><button class="folder-button"><span class="folder-title">生活百科</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/生活百科"><li><a href="../../../../Personal/Book/生活百科/聂卫平围棋教程从15级到10级" data-for="Personal/Book/生活百科/聂卫平围棋教程从15级到10级">聂卫平围棋教程从15级到10级</a></li><li><a href="../../../../Personal/Book/生活百科/聂卫平围棋教程从入门到15级" data-for="Personal/Book/生活百科/聂卫平围棋教程从入门到15级">聂卫平围棋教程从入门到15级</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/社会文化"><button class="folder-button"><span class="folder-title">社会文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/社会文化"><li><a href="../../../../Personal/Book/社会文化/人体简史" data-for="Personal/Book/社会文化/人体简史">人体简史</a></li><li><a href="../../../../Personal/Book/社会文化/你不可不知的法律常识" data-for="Personal/Book/社会文化/你不可不知的法律常识">你不可不知的法律常识</a></li><li><a href="../../../../Personal/Book/社会文化/半小时漫画《论语》" data-for="Personal/Book/社会文化/半小时漫画《论语》">半小时漫画《论语》</a></li><li><a href="../../../../Personal/Book/社会文化/民法典与百姓生活100问" data-for="Personal/Book/社会文化/民法典与百姓生活100问">民法典与百姓生活100问</a></li><li><a href="../../../../Personal/Book/社会文化/这里是中国" data-for="Personal/Book/社会文化/这里是中国">这里是中国</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/科学技术"><button class="folder-button"><span class="folder-title">科学技术</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/科学技术"><li><a href="../../../../Personal/Book/科学技术/贝尔实验室与美国革新大时代" data-for="Personal/Book/科学技术/贝尔实验室与美国革新大时代">贝尔实验室与美国革新大时代</a></li><li><a href="../../../../Personal/Book/科学技术/高性能Linux服务器运维实战shell编程、监控告警、性能优化与实战案例" data-for="Personal/Book/科学技术/高性能Linux服务器运维实战shell编程、监控告警、性能优化与实战案例">高性能Linux服务器运维实战shell编程、监控告警、性能优化与实战案例</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/经济理财"><button class="folder-button"><span class="folder-title">经济理财</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/经济理财"><li><a href="../../../../Personal/Book/经济理财/人力资源管理从入门到精通" data-for="Personal/Book/经济理财/人力资源管理从入门到精通">人力资源管理从入门到精通</a></li><li><a href="../../../../Personal/Book/经济理财/十分钟冥想" data-for="Personal/Book/经济理财/十分钟冥想">十分钟冥想</a></li><li><a href="../../../../Personal/Book/经济理财/半小时漫画股票实战法" data-for="Personal/Book/经济理财/半小时漫画股票实战法">半小时漫画股票实战法</a></li><li><a href="../../../../Personal/Book/经济理财/小米创业思考" data-for="Personal/Book/经济理财/小米创业思考">小米创业思考</a></li><li><a href="../../../../Personal/Book/经济理财/底层逻辑:半秒钟看透问题本质" data-for="Personal/Book/经济理财/底层逻辑:半秒钟看透问题本质">底层逻辑:半秒钟看透问题本质</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/艺术"><button class="folder-button"><span class="folder-title">艺术</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/艺术"><li><a href="../../../../Personal/Book/艺术/江湖丛谈(注音注释插图本)" data-for="Personal/Book/艺术/江湖丛谈(注音注释插图本)">江湖丛谈(注音注释插图本)</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/计算机"><button class="folder-button"><span class="folder-title">计算机</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/计算机"><li><a href="../../../../Personal/Book/计算机/Flask-Web开发基于Python的Web应用开发实战第2版" data-for="Personal/Book/计算机/Flask-Web开发基于Python的Web应用开发实战第2版">Flask Web开发基于Python的Web应用开发实战第2版</a></li><li><a href="../../../../Personal/Book/计算机/IT基础架构系统运维实践" data-for="Personal/Book/计算机/IT基础架构系统运维实践">IT基础架构系统运维实践</a></li><li><a href="../../../../Personal/Book/计算机/Linux命令行与shell脚本编程大全第4版" data-for="Personal/Book/计算机/Linux命令行与shell脚本编程大全第4版">Linux命令行与shell脚本编程大全第4版</a></li><li><a href="../../../../Personal/Book/计算机/Linux是怎样工作的" data-for="Personal/Book/计算机/Linux是怎样工作的">Linux是怎样工作的</a></li><li><a href="../../../../Personal/Book/计算机/Python工匠案例、技巧与工程实践" data-for="Personal/Book/计算机/Python工匠案例、技巧与工程实践">Python工匠案例、技巧与工程实践</a></li><li><a href="../../../../Personal/Book/计算机/Python编程从入门到实践第2版" data-for="Personal/Book/计算机/Python编程从入门到实践第2版">Python编程从入门到实践第2版</a></li><li><a href="../../../../Personal/Book/计算机/Python编程轻松进阶" data-for="Personal/Book/计算机/Python编程轻松进阶">Python编程轻松进阶</a></li><li><a href="../../../../Personal/Book/计算机/SQL必知必会第5版" data-for="Personal/Book/计算机/SQL必知必会第5版">SQL必知必会第5版</a></li><li><a href="../../../../Personal/Book/计算机/SREGoogle运维解密" data-for="Personal/Book/计算机/SREGoogle运维解密">SREGoogle运维解密</a></li><li><a href="../../../../Personal/Book/计算机/UNIX传奇历史与回忆" data-for="Personal/Book/计算机/UNIX传奇历史与回忆">UNIX传奇历史与回忆</a></li><li><a href="../../../../Personal/Book/计算机/VMware-vSphere-7.0云平台运维与管理第2版" data-for="Personal/Book/计算机/VMware-vSphere-7.0云平台运维与管理第2版">VMware vSphere 7.0云平台运维与管理第2版</a></li><li><a href="../../../../Personal/Book/计算机/人人都懂设计模式从生活中领悟设计模式Python实现" data-for="Personal/Book/计算机/人人都懂设计模式从生活中领悟设计模式Python实现">人人都懂设计模式从生活中领悟设计模式Python实现</a></li><li><a href="../../../../Personal/Book/计算机/从0到1HTML+CSS快速上手" data-for="Personal/Book/计算机/从0到1HTML+CSS快速上手">从0到1HTML+CSS快速上手</a></li><li><a href="../../../../Personal/Book/计算机/从0到1HTML5+CSS3修炼之道" data-for="Personal/Book/计算机/从0到1HTML5+CSS3修炼之道">从0到1HTML5+CSS3修炼之道</a></li><li><a href="../../../../Personal/Book/计算机/从0到1JavaScript-快速上手" data-for="Personal/Book/计算机/从0到1JavaScript-快速上手">从0到1JavaScript 快速上手</a></li><li><a href="../../../../Personal/Book/计算机/从0到1jQuery快速上手" data-for="Personal/Book/计算机/从0到1jQuery快速上手">从0到1jQuery快速上手</a></li><li><a href="../../../../Personal/Book/计算机/明解Python" data-for="Personal/Book/计算机/明解Python">明解Python</a></li><li><a href="../../../../Personal/Book/计算机/每天5分钟玩转Docker容器技术" data-for="Personal/Book/计算机/每天5分钟玩转Docker容器技术">每天5分钟玩转Docker容器技术</a></li><li><a href="../../../../Personal/Book/计算机/流畅的Python" data-for="Personal/Book/计算机/流畅的Python">流畅的Python</a></li><li><a href="../../../../Personal/Book/计算机/硅谷之火个人计算机的诞生与衰落第3版" data-for="Personal/Book/计算机/硅谷之火个人计算机的诞生与衰落第3版">硅谷之火个人计算机的诞生与衰落第3版</a></li><li><a href="../../../../Personal/Book/计算机/秒懂设计模式" data-for="Personal/Book/计算机/秒懂设计模式">秒懂设计模式</a></li><li><a href="../../../../Personal/Book/计算机/程序员的README" data-for="Personal/Book/计算机/程序员的README">程序员的README</a></li><li><a href="../../../../Personal/Book/计算机/精通Python设计模式第2版" data-for="Personal/Book/计算机/精通Python设计模式第2版">精通Python设计模式第2版</a></li><li><a href="../../../../Personal/Book/计算机/网络安全等级保护2.0:定级、测评、实施与运维" data-for="Personal/Book/计算机/网络安全等级保护2.0:定级、测评、实施与运维">网络安全等级保护2.0:定级、测评、实施与运维</a></li><li><a href="../../../../Personal/Book/计算机/网络工程师红宝书:思科华为华三实战案例荟萃" data-for="Personal/Book/计算机/网络工程师红宝书:思科华为华三实战案例荟萃">网络工程师红宝书:思科华为华三实战案例荟萃</a></li><li><a href="../../../../Personal/Book/计算机/网络是怎样连接的" data-for="Personal/Book/计算机/网络是怎样连接的">网络是怎样连接的</a></li><li><a href="../../../../Personal/Book/计算机/网络运维亲历记-(网络运维纪实文学)" data-for="Personal/Book/计算机/网络运维亲历记-(网络运维纪实文学)">网络运维亲历记 (网络运维纪实文学)</a></li><li><a href="../../../../Personal/Book/计算机/虚拟化工程师运维实战VMware服务器虚拟化+Citrix桌面应用虚拟化+Veeam备份+Zabbix监控" data-for="Personal/Book/计算机/虚拟化工程师运维实战VMware服务器虚拟化+Citrix桌面应用虚拟化+Veeam备份+Zabbix监控">虚拟化工程师运维实战VMware服务器虚拟化+Citrix桌面/应用虚拟化+Veeam备份+Zabbix监控</a></li><li><a href="../../../../Personal/Book/计算机/计算机:一部历史" data-for="Personal/Book/计算机/计算机:一部历史">计算机:一部历史</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal"><button class="folder-button"><span class="folder-title">Journal</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022"><button class="folder-button"><span class="folder-title">2022</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W34"><button class="folder-button"><span class="folder-title">W34</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W34"><li><a href="../../../../Personal/Journal/2022/W34/2022-08-24" data-for="Personal/Journal/2022/W34/2022-08-24">2022-08-24</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-25" data-for="Personal/Journal/2022/W34/2022-08-25">2022-08-25</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-26" data-for="Personal/Journal/2022/W34/2022-08-26">2022-08-26</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-27" data-for="Personal/Journal/2022/W34/2022-08-27">2022-08-27</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-28" data-for="Personal/Journal/2022/W34/2022-08-28">2022-08-28</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-W34" data-for="Personal/Journal/2022/W34/2022-W34">2022-W34</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W35"><button class="folder-button"><span class="folder-title">W35</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W35"><li><a href="../../../../Personal/Journal/2022/W35/2022-08-29" data-for="Personal/Journal/2022/W35/2022-08-29">2022-08-29</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-08-30" data-for="Personal/Journal/2022/W35/2022-08-30">2022-08-30</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-08-31" data-for="Personal/Journal/2022/W35/2022-08-31">2022-08-31</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-09-01" data-for="Personal/Journal/2022/W35/2022-09-01">2022-09-01</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-W35" data-for="Personal/Journal/2022/W35/2022-W35">2022-W35</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W36"><button class="folder-button"><span class="folder-title">W36</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W36"><li><a href="../../../../Personal/Journal/2022/W36/2022-09-05" data-for="Personal/Journal/2022/W36/2022-09-05">2022-09-05</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-09-06" data-for="Personal/Journal/2022/W36/2022-09-06">2022-09-06</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-09-07" data-for="Personal/Journal/2022/W36/2022-09-07">2022-09-07</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-09-08" data-for="Personal/Journal/2022/W36/2022-09-08">2022-09-08</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-W36" data-for="Personal/Journal/2022/W36/2022-W36">2022-W36</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W37"><button class="folder-button"><span class="folder-title">W37</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W37"><li><a href="../../../../Personal/Journal/2022/W37/2022-09-12" data-for="Personal/Journal/2022/W37/2022-09-12">2022-09-12</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-13" data-for="Personal/Journal/2022/W37/2022-09-13">2022-09-13</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-14" data-for="Personal/Journal/2022/W37/2022-09-14">2022-09-14</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-15" data-for="Personal/Journal/2022/W37/2022-09-15">2022-09-15</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-16" data-for="Personal/Journal/2022/W37/2022-09-16">2022-09-16</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-17" data-for="Personal/Journal/2022/W37/2022-09-17">2022-09-17</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-18" data-for="Personal/Journal/2022/W37/2022-09-18">2022-09-18</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-W37" data-for="Personal/Journal/2022/W37/2022-W37">2022-W37</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W38"><button class="folder-button"><span class="folder-title">W38</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W38"><li><a href="../../../../Personal/Journal/2022/W38/2022-09-19" data-for="Personal/Journal/2022/W38/2022-09-19">2022-09-19</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-09-20" data-for="Personal/Journal/2022/W38/2022-09-20">2022-09-20</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-09-21" data-for="Personal/Journal/2022/W38/2022-09-21">2022-09-21</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-09-22" data-for="Personal/Journal/2022/W38/2022-09-22">2022-09-22</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-W38" data-for="Personal/Journal/2022/W38/2022-W38">2022-W38</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W39"><button class="folder-button"><span class="folder-title">W39</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W39"><li><a href="../../../../Personal/Journal/2022/W39/2022-09-28" data-for="Personal/Journal/2022/W39/2022-09-28">2022-09-28</a></li><li><a href="../../../../Personal/Journal/2022/W39/2022-09-29" data-for="Personal/Journal/2022/W39/2022-09-29">2022-09-29</a></li><li><a href="../../../../Personal/Journal/2022/W39/2022-W39" data-for="Personal/Journal/2022/W39/2022-W39">2022-W39</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W41"><button class="folder-button"><span class="folder-title">W41</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W41"><li><a href="../../../../Personal/Journal/2022/W41/2022-10-10" data-for="Personal/Journal/2022/W41/2022-10-10">2022-10-10</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-11" data-for="Personal/Journal/2022/W41/2022-10-11">2022-10-11</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-12" data-for="Personal/Journal/2022/W41/2022-10-12">2022-10-12</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-13" data-for="Personal/Journal/2022/W41/2022-10-13">2022-10-13</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-14" data-for="Personal/Journal/2022/W41/2022-10-14">2022-10-14</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-16" data-for="Personal/Journal/2022/W41/2022-10-16">2022-10-16</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-W41" data-for="Personal/Journal/2022/W41/2022-W41">2022-W41</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W42"><button class="folder-button"><span class="folder-title">W42</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W42"><li><a href="../../../../Personal/Journal/2022/W42/2022-10-17" data-for="Personal/Journal/2022/W42/2022-10-17">2022-10-17</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-10-18" data-for="Personal/Journal/2022/W42/2022-10-18">2022-10-18</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-10-19" data-for="Personal/Journal/2022/W42/2022-10-19">2022-10-19</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-10-21" data-for="Personal/Journal/2022/W42/2022-10-21">2022-10-21</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-W42" data-for="Personal/Journal/2022/W42/2022-W42">2022-W42</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W43"><button class="folder-button"><span class="folder-title">W43</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W43"><li><a href="../../../../Personal/Journal/2022/W43/2022-10-24" data-for="Personal/Journal/2022/W43/2022-10-24">2022-10-24</a></li><li><a href="../../../../Personal/Journal/2022/W43/2022-10-26" data-for="Personal/Journal/2022/W43/2022-10-26">2022-10-26</a></li><li><a href="../../../../Personal/Journal/2022/W43/2022-W43" data-for="Personal/Journal/2022/W43/2022-W43">2022-W43</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W44"><button class="folder-button"><span class="folder-title">W44</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W44"><li><a href="../../../../Personal/Journal/2022/W44/2022-11-02" data-for="Personal/Journal/2022/W44/2022-11-02">2022-11-02</a></li><li><a href="../../../../Personal/Journal/2022/W44/2022-W44" data-for="Personal/Journal/2022/W44/2022-W44">2022-W44</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W45"><button class="folder-button"><span class="folder-title">W45</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W45"><li><a href="../../../../Personal/Journal/2022/W45/2022-11-10" data-for="Personal/Journal/2022/W45/2022-11-10">2022-11-10</a></li><li><a href="../../../../Personal/Journal/2022/W45/2022-11-11" data-for="Personal/Journal/2022/W45/2022-11-11">2022-11-11</a></li><li><a href="../../../../Personal/Journal/2022/W45/2022-11-12" data-for="Personal/Journal/2022/W45/2022-11-12">2022-11-12</a></li><li><a href="../../../../Personal/Journal/2022/W45/2022-11-13" data-for="Personal/Journal/2022/W45/2022-11-13">2022-11-13</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W46"><button class="folder-button"><span class="folder-title">W46</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W46"><li><a href="../../../../Personal/Journal/2022/W46/2022-11-18" data-for="Personal/Journal/2022/W46/2022-11-18">2022-11-18</a></li><li><a href="../../../../Personal/Journal/2022/W46/2022-11-20" data-for="Personal/Journal/2022/W46/2022-11-20">2022-11-20</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W47"><button class="folder-button"><span class="folder-title">W47</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W47"><li><a href="../../../../Personal/Journal/2022/W47/2022-11-21" data-for="Personal/Journal/2022/W47/2022-11-21">2022-11-21</a></li><li><a href="../../../../Personal/Journal/2022/W47/2022-11-22" data-for="Personal/Journal/2022/W47/2022-11-22">2022-11-22</a></li><li><a href="../../../../Personal/Journal/2022/W47/2022-W47" data-for="Personal/Journal/2022/W47/2022-W47">2022-W47</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W48"><button class="folder-button"><span class="folder-title">W48</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W48"><li><a href="../../../../Personal/Journal/2022/W48/2022-11-28" data-for="Personal/Journal/2022/W48/2022-11-28">2022-11-28</a></li><li><a href="../../../../Personal/Journal/2022/W48/2022-11-29" data-for="Personal/Journal/2022/W48/2022-11-29">2022-11-29</a></li><li><a href="../../../../Personal/Journal/2022/W48/2022-12-01" data-for="Personal/Journal/2022/W48/2022-12-01">2022-12-01</a></li><li><a href="../../../../Personal/Journal/2022/W48/2022-12-04" data-for="Personal/Journal/2022/W48/2022-12-04">2022-12-04</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W49"><button class="folder-button"><span class="folder-title">W49</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W49"><li><a href="../../../../Personal/Journal/2022/W49/2022-12-06" data-for="Personal/Journal/2022/W49/2022-12-06">2022-12-06</a></li><li><a href="../../../../Personal/Journal/2022/W49/2022-W49" data-for="Personal/Journal/2022/W49/2022-W49">2022-W49</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W50"><button class="folder-button"><span class="folder-title">W50</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W50"><li><a href="../../../../Personal/Journal/2022/W50/2022-12-12" data-for="Personal/Journal/2022/W50/2022-12-12">2022-12-12</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023"><button class="folder-button"><span class="folder-title">2023</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W2"><button class="folder-button"><span class="folder-title">W2</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W2"><li><a href="../../../../Personal/Journal/2023/W2/2023-W2" data-for="Personal/Journal/2023/W2/2023-W2">2023-W2</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W3"><button class="folder-button"><span class="folder-title">W3</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W3"><li><a href="../../../../Personal/Journal/2023/W3/2023-01-16" data-for="Personal/Journal/2023/W3/2023-01-16">2023-01-16</a></li><li><a href="../../../../Personal/Journal/2023/W3/2023-01-18" data-for="Personal/Journal/2023/W3/2023-01-18">2023-01-18</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W5"><button class="folder-button"><span class="folder-title">W5</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W5"><li><a href="../../../../Personal/Journal/2023/W5/2023-W5" data-for="Personal/Journal/2023/W5/2023-W5">2023-W5</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W6"><button class="folder-button"><span class="folder-title">W6</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W6"><li><a href="../../../../Personal/Journal/2023/W6/2023-W6" data-for="Personal/Journal/2023/W6/2023-W6">2023-W6</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W7"><button class="folder-button"><span class="folder-title">W7</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W7"><li><a href="../../../../Personal/Journal/2023/W7/2023-02-14" data-for="Personal/Journal/2023/W7/2023-02-14">2023-02-14</a></li><li><a href="../../../../Personal/Journal/2023/W7/2023-02-15" data-for="Personal/Journal/2023/W7/2023-02-15">2023-02-15</a></li><li><a href="../../../../Personal/Journal/2023/W7/2023-02-16" data-for="Personal/Journal/2023/W7/2023-02-16">2023-02-16</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W8"><button class="folder-button"><span class="folder-title">W8</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W8"><li><a href="../../../../Personal/Journal/2023/W8/2023-02-20" data-for="Personal/Journal/2023/W8/2023-02-20">2023-02-20</a></li><li><a href="../../../../Personal/Journal/2023/W8/2023-02-22" data-for="Personal/Journal/2023/W8/2023-02-22">2023-02-22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W10"><button class="folder-button"><span class="folder-title">W10</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W10"><li><a href="../../../../Personal/Journal/2023/W10/2023-W10" data-for="Personal/Journal/2023/W10/2023-W10">2023-W10</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W12"><button class="folder-button"><span class="folder-title">W12</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W12"><li><a href="../../../../Personal/Journal/2023/W12/2023-03-20" data-for="Personal/Journal/2023/W12/2023-03-20">2023-03-20</a></li><li><a href="../../../../Personal/Journal/2023/W12/2023-03-21" data-for="Personal/Journal/2023/W12/2023-03-21">2023-03-21</a></li><li><a href="../../../../Personal/Journal/2023/W12/2023-W12" data-for="Personal/Journal/2023/W12/2023-W12">2023-W12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W14"><button class="folder-button"><span class="folder-title">W14</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W14"><li><a href="../../../../Personal/Journal/2023/W14/2023-04-08" data-for="Personal/Journal/2023/W14/2023-04-08">2023-04-08</a></li><li><a href="../../../../Personal/Journal/2023/W14/2023-W14" data-for="Personal/Journal/2023/W14/2023-W14">2023-W14</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W16"><button class="folder-button"><span class="folder-title">W16</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W16"><li><a href="../../../../Personal/Journal/2023/W16/2023-04-21" data-for="Personal/Journal/2023/W16/2023-04-21">2023-04-21</a></li><li><a href="../../../../Personal/Journal/2023/W16/2023-04-23" data-for="Personal/Journal/2023/W16/2023-04-23">2023-04-23</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W22"><button class="folder-button"><span class="folder-title">W22</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W22"><li><a href="../../../../Personal/Journal/2023/W22/2023-05-31" data-for="Personal/Journal/2023/W22/2023-05-31">2023-05-31</a></li><li><a href="../../../../Personal/Journal/2023/W22/2023-06-01" data-for="Personal/Journal/2023/W22/2023-06-01">2023-06-01</a></li><li><a href="../../../../Personal/Journal/2023/W22/2023-W22" data-for="Personal/Journal/2023/W22/2023-W22">2023-W22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W23"><button class="folder-button"><span class="folder-title">W23</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W23"><li><a href="../../../../Personal/Journal/2023/W23/2023-06-05" data-for="Personal/Journal/2023/W23/2023-06-05">2023-06-05</a></li><li><a href="../../../../Personal/Journal/2023/W23/2023-06-08" data-for="Personal/Journal/2023/W23/2023-06-08">2023-06-08</a></li><li><a href="../../../../Personal/Journal/2023/W23/2023-W23" data-for="Personal/Journal/2023/W23/2023-W23">2023-W23</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W24"><button class="folder-button"><span class="folder-title">W24</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W24"><li><a href="../../../../Personal/Journal/2023/W24/2023-06-12" data-for="Personal/Journal/2023/W24/2023-06-12">2023-06-12</a></li><li><a href="../../../../Personal/Journal/2023/W24/2023-06-13" data-for="Personal/Journal/2023/W24/2023-06-13">2023-06-13</a></li><li><a href="../../../../Personal/Journal/2023/W24/2023-06-15" data-for="Personal/Journal/2023/W24/2023-06-15">2023-06-15</a></li><li><a href="../../../../Personal/Journal/2023/W24/2023-W24" data-for="Personal/Journal/2023/W24/2023-W24">2023-W24</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W25"><button class="folder-button"><span class="folder-title">W25</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W25"><li><a href="../../../../Personal/Journal/2023/W25/2023-W25" data-for="Personal/Journal/2023/W25/2023-W25">2023-W25</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W26"><button class="folder-button"><span class="folder-title">W26</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W26"><li><a href="../../../../Personal/Journal/2023/W26/2023-06-26" data-for="Personal/Journal/2023/W26/2023-06-26">2023-06-26</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W31"><button class="folder-button"><span class="folder-title">W31</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W31"><li><a href="../../../../Personal/Journal/2023/W31/2023-W31" data-for="Personal/Journal/2023/W31/2023-W31">2023-W31</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W32"><button class="folder-button"><span class="folder-title">W32</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W32"><li><a href="../../../../Personal/Journal/2023/W32/2023-08-07" data-for="Personal/Journal/2023/W32/2023-08-07">2023-08-07</a></li><li><a href="../../../../Personal/Journal/2023/W32/2023-08-08" data-for="Personal/Journal/2023/W32/2023-08-08">2023-08-08</a></li><li><a href="../../../../Personal/Journal/2023/W32/2023-W32" data-for="Personal/Journal/2023/W32/2023-W32">2023-W32</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W33"><button class="folder-button"><span class="folder-title">W33</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W33"><li><a href="../../../../Personal/Journal/2023/W33/2023-W33" data-for="Personal/Journal/2023/W33/2023-W33">2023-W33</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W35"><button class="folder-button"><span class="folder-title">W35</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W35"><li><a href="../../../../Personal/Journal/2023/W35/2023-W35" data-for="Personal/Journal/2023/W35/2023-W35">2023-W35</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W36"><button class="folder-button"><span class="folder-title">W36</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W36"><li><a href="../../../../Personal/Journal/2023/W36/2023-W36" data-for="Personal/Journal/2023/W36/2023-W36">2023-W36</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W37"><button class="folder-button"><span class="folder-title">W37</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W37"><li><a href="../../../../Personal/Journal/2023/W37/2023-W37" data-for="Personal/Journal/2023/W37/2023-W37">2023-W37</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W40"><button class="folder-button"><span class="folder-title">W40</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W40"><li><a href="../../../../Personal/Journal/2023/W40/2023-W40" data-for="Personal/Journal/2023/W40/2023-W40">2023-W40</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W45"><button class="folder-button"><span class="folder-title">W45</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W45"><li><a href="../../../../Personal/Journal/2023/W45/2023-11-12" data-for="Personal/Journal/2023/W45/2023-11-12">2023-11-12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W46"><button class="folder-button"><span class="folder-title">W46</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W46"><li><a href="../../../../Personal/Journal/2023/W46/2023-11-15" data-for="Personal/Journal/2023/W46/2023-11-15">2023-11-15</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W48"><button class="folder-button"><span class="folder-title">W48</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W48"><li><a href="../../../../Personal/Journal/2023/W48/2023-W48" data-for="Personal/Journal/2023/W48/2023-W48">2023-W48</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W49"><button class="folder-button"><span class="folder-title">W49</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W49"><li><a href="../../../../Personal/Journal/2023/W49/2023-12-07" data-for="Personal/Journal/2023/W49/2023-12-07">2023-12-07</a></li><li><a href="../../../../Personal/Journal/2023/W49/2023-W49" data-for="Personal/Journal/2023/W49/2023-W49">2023-W49</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W50"><button class="folder-button"><span class="folder-title">W50</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W50"><li><a href="../../../../Personal/Journal/2023/W50/2023-12-12" data-for="Personal/Journal/2023/W50/2023-12-12">2023-12-12</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024"><button class="folder-button"><span class="folder-title">2024</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W8"><button class="folder-button"><span class="folder-title">W8</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W8"><li><a href="../../../../Personal/Journal/2024/W8/2024-02-22" data-for="Personal/Journal/2024/W8/2024-02-22">2024-02-22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W10"><button class="folder-button"><span class="folder-title">W10</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W10"><li><a href="../../../../Personal/Journal/2024/W10/2024-03-05" data-for="Personal/Journal/2024/W10/2024-03-05">2024-03-05</a></li><li><a href="../../../../Personal/Journal/2024/W10/2024-03-06" data-for="Personal/Journal/2024/W10/2024-03-06">2024-03-06</a></li><li><a href="../../../../Personal/Journal/2024/W10/2024-03-07" data-for="Personal/Journal/2024/W10/2024-03-07">2024-03-07</a></li><li><a href="../../../../Personal/Journal/2024/W10/2024-W10" data-for="Personal/Journal/2024/W10/2024-W10">2024-W10</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W11"><button class="folder-button"><span class="folder-title">W11</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W11"><li><a href="../../../../Personal/Journal/2024/W11/2024-03-11" data-for="Personal/Journal/2024/W11/2024-03-11">2024-03-11</a></li><li><a href="../../../../Personal/Journal/2024/W11/2024-03-12" data-for="Personal/Journal/2024/W11/2024-03-12">2024-03-12</a></li><li><a href="../../../../Personal/Journal/2024/W11/2024-03-13" data-for="Personal/Journal/2024/W11/2024-03-13">2024-03-13</a></li><li><a href="../../../../Personal/Journal/2024/W11/2024-W11" data-for="Personal/Journal/2024/W11/2024-W11">2024-W11</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W12"><button class="folder-button"><span class="folder-title">W12</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W12"><li><a href="../../../../Personal/Journal/2024/W12/2024-03-20" data-for="Personal/Journal/2024/W12/2024-03-20">2024-03-20</a></li><li><a href="../../../../Personal/Journal/2024/W12/2024-W12" data-for="Personal/Journal/2024/W12/2024-W12">2024-W12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W14"><button class="folder-button"><span class="folder-title">W14</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W14"><li><a href="../../../../Personal/Journal/2024/W14/2024-W14" data-for="Personal/Journal/2024/W14/2024-W14">2024-W14</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W16"><button class="folder-button"><span class="folder-title">W16</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W16"><li><a href="../../../../Personal/Journal/2024/W16/2024-W16" data-for="Personal/Journal/2024/W16/2024-W16">2024-W16</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W17"><button class="folder-button"><span class="folder-title">W17</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W17"><li><a href="../../../../Personal/Journal/2024/W17/2024-04-24" data-for="Personal/Journal/2024/W17/2024-04-24">2024-04-24</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W22"><button class="folder-button"><span class="folder-title">W22</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W22"><li><a href="../../../../Personal/Journal/2024/W22/2024-06-02" data-for="Personal/Journal/2024/W22/2024-06-02">2024-06-02</a></li><li><a href="../../../../Personal/Journal/2024/W22/2024-W22" data-for="Personal/Journal/2024/W22/2024-W22">2024-W22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W23"><button class="folder-button"><span class="folder-title">W23</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W23"><li><a href="../../../../Personal/Journal/2024/W23/2024-06-03" data-for="Personal/Journal/2024/W23/2024-06-03">2024-06-03</a></li><li><a href="../../../../Personal/Journal/2024/W23/2024-06-04" data-for="Personal/Journal/2024/W23/2024-06-04">2024-06-04</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W24"><button class="folder-button"><span class="folder-title">W24</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W24"><li><a href="../../../../Personal/Journal/2024/W24/2024-06-12" data-for="Personal/Journal/2024/W24/2024-06-12">2024-06-12</a></li><li><a href="../../../../Personal/Journal/2024/W24/2024-W24" data-for="Personal/Journal/2024/W24/2024-W24">2024-W24</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W29"><button class="folder-button"><span class="folder-title">W29</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W29"><li><a href="../../../../Personal/Journal/2024/W29/2024-W29" data-for="Personal/Journal/2024/W29/2024-W29">2024-W29</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W30"><button class="folder-button"><span class="folder-title">W30</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W30"><li><a href="../../../../Personal/Journal/2024/W30/2024-07-22" data-for="Personal/Journal/2024/W30/2024-07-22">2024-07-22</a></li><li><a href="../../../../Personal/Journal/2024/W30/2024-07-25" data-for="Personal/Journal/2024/W30/2024-07-25">2024-07-25</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W33"><button class="folder-button"><span class="folder-title">W33</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W33"><li><a href="../../../../Personal/Journal/2024/W33/2024-08-12" data-for="Personal/Journal/2024/W33/2024-08-12">2024-08-12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W35"><button class="folder-button"><span class="folder-title">W35</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W35"><li><a href="../../../../Personal/Journal/2024/W35/2024-08-31" data-for="Personal/Journal/2024/W35/2024-08-31">2024-08-31</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W40"><button class="folder-button"><span class="folder-title">W40</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W40"><li><a href="../../../../Personal/Journal/2024/W40/2024-W40" data-for="Personal/Journal/2024/W40/2024-W40">2024-W40</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W41"><button class="folder-button"><span class="folder-title">W41</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W41"><li><a href="../../../../Personal/Journal/2024/W41/2024-10-09" data-for="Personal/Journal/2024/W41/2024-10-09">2024-10-09</a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional"><button class="folder-button"><span class="folder-title">Professional</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Company"><button class="folder-button"><span class="folder-title">Company</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Company"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Company/数字化"><button class="folder-button"><span class="folder-title">数字化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Company/数字化"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Company/数字化/规范"><button class="folder-button"><span class="folder-title">规范</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Company/数字化/规范"><li><a href="../../../../Professional/Company/数字化/规范/企业计算机命名规范" data-for="Professional/Company/数字化/规范/企业计算机命名规范">企业计算机命名规范</a></li><li><a href="../../../../Professional/Company/数字化/规范/企业域名分配规范" data-for="Professional/Company/数字化/规范/企业域名分配规范">域名分配规范</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Project"><button class="folder-button"><span class="folder-title">Project</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Project"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Project/RSSky"><button class="folder-button"><span class="folder-title">RSSky</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Project/RSSky"><li><a href="../../../../Professional/Project/RSSky/项目计划书" data-for="Professional/Project/RSSky/项目计划书">项目计划书</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work"><button class="folder-button"><span class="folder-title">Work</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/data-engineer"><button class="folder-button"><span class="folder-title">data-engineer</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/data-engineer"><li><a href="../../../../Professional/Work/data-engineer/home" data-for="Professional/Work/data-engineer/home">数据工程师data-engineer</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap"><button class="folder-button"><span class="folder-title">roadmap</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/权益保障"><button class="folder-button"><span class="folder-title">权益保障</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/权益保障"><li><a href="../../../../Professional/Work/roadmap/权益保障/仲裁指南" data-for="Professional/Work/roadmap/权益保障/仲裁指南">仲裁指南</a></li><li><a href="../../../../Professional/Work/roadmap/权益保障/职场维权实战经验" data-for="Professional/Work/roadmap/权益保障/职场维权实战经验">职场维权实战经验</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/求职经验"><button class="folder-button"><span class="folder-title">求职经验</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/求职经验"><li><a href="../../../../Professional/Work/roadmap/求职经验/互联网行业-郑州" data-for="Professional/Work/roadmap/求职经验/互联网行业-郑州">互联网行业-郑州</a></li><li><a href="../../../../Professional/Work/roadmap/求职经验/写给软件工程师的建议" data-for="Professional/Work/roadmap/求职经验/写给软件工程师的建议">写给软件工程师的建议</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/简历攻略"><button class="folder-button"><span class="folder-title">简历攻略</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/简历攻略"><li><a href="../../../../Professional/Work/roadmap/简历攻略/IT-类简历" data-for="Professional/Work/roadmap/简历攻略/IT-类简历">IT 类简历</a></li><li><a href="../../../../Professional/Work/roadmap/简历攻略/简历原则" data-for="Professional/Work/roadmap/简历攻略/简历原则">简历原则</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/职业规划"><button class="folder-button"><span class="folder-title">职业规划</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/职业规划"><li><a href="../../../../Professional/Work/roadmap/职业规划/开发者职业路线图" data-for="Professional/Work/roadmap/职业规划/开发者职业路线图">开发者职业路线图</a></li><li><a href="../../../../Professional/Work/roadmap/职业规划/职业宏观规划图" data-for="Professional/Work/roadmap/职业规划/职业宏观规划图">职业宏观规划图</a></li><li><a href="../../../../Professional/Work/roadmap/职业规划/职业宏观路线图" data-for="Professional/Work/roadmap/职业规划/职业宏观路线图">职业宏观路线图</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/职场心得"><button class="folder-button"><span class="folder-title">职场心得</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/职场心得"><li><a href="../../../../Professional/Work/roadmap/职场心得/华为新员工的-8-个阶段" data-for="Professional/Work/roadmap/职场心得/华为新员工的-8-个阶段">华为新员工的 8 个阶段</a></li><li><a href="../../../../Professional/Work/roadmap/职场心得/如何平衡工作和生活" data-for="Professional/Work/roadmap/职场心得/如何平衡工作和生活">如何平衡工作和生活</a></li><li><a href="../../../../Professional/Work/roadmap/职场心得/如何度过新手村" data-for="Professional/Work/roadmap/职场心得/如何度过新手村">如何度过新手村</a></li><li><a href="../../../../Professional/Work/roadmap/职场心得/如何有效应对职场政治" data-for="Professional/Work/roadmap/职场心得/如何有效应对职场政治">如何有效应对职场政治</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/薪酬攻略"><button class="folder-button"><span class="folder-title">薪酬攻略</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/薪酬攻略"><li><a href="../../../../Professional/Work/roadmap/薪酬攻略/社会保障" data-for="Professional/Work/roadmap/薪酬攻略/社会保障">社会保障</a></li><li><a href="../../../../Professional/Work/roadmap/薪酬攻略/绩效考核" data-for="Professional/Work/roadmap/薪酬攻略/绩效考核">绩效考核</a></li><li><a href="../../../../Professional/Work/roadmap/薪酬攻略/薪酬制度" data-for="Professional/Work/roadmap/薪酬攻略/薪酬制度">薪酬制度</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/面试法则"><button class="folder-button"><span class="folder-title">面试法则</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/面试法则"><li><a href="../../../../Professional/Work/roadmap/面试法则/反向面试" data-for="Professional/Work/roadmap/面试法则/反向面试">反向面试</a></li><li><a href="../../../../Professional/Work/roadmap/面试法则/面试-10-大常见问题" data-for="Professional/Work/roadmap/面试法则/面试-10-大常见问题">面试 10 大常见问题</a></li></ul></div></li><li><a href="../../../../Professional/Work/roadmap/home" data-for="Professional/Work/roadmap/home">求职之路</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/sre-engineer"><button class="folder-button"><span class="folder-title">sre-engineer</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/sre-engineer"><li><a href="../../../../Professional/Work/sre-engineer/home" data-for="Professional/Work/sre-engineer/home">SRE (站点可靠性工程师)</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences"><button class="folder-button"><span class="folder-title">SocialSciences</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/English"><button class="folder-button"><span class="folder-title">English</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/English"><li><a href="../../../../SocialSciences/English/字母音标" data-for="SocialSciences/English/字母音标">字母音标</a></li><li><a href="../../../../SocialSciences/English/语法基础" data-for="SocialSciences/English/语法基础">语法基础</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government"><button class="folder-button"><span class="folder-title">Government</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government/中国"><button class="folder-button"><span class="folder-title">中国</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government/中国"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government/中国/标准"><button class="folder-button"><span class="folder-title">标准</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government/中国/标准"><li><a href="../../../../SocialSciences/Government/中国/标准/标准组织" data-for="SocialSciences/Government/中国/标准/标准组织">标准组织</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government/中国/法律"><button class="folder-button"><span class="folder-title">法律</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government/中国/法律"><li><a href="../../../../SocialSciences/Government/中国/法律/法律文书" data-for="SocialSciences/Government/中国/法律/法律文书">法律文书</a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology"><button class="folder-button"><span class="folder-title">Technology</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/CloudService"><button class="folder-button"><span class="folder-title">CloudService</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/CloudService"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/CloudService/基础"><button class="folder-button"><span class="folder-title">基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/CloudService/基础"><li><a href="../../../../Technology/CloudService/基础/IT-基础架构" data-for="Technology/CloudService/基础/IT-基础架构">IT 基础架构</a></li><li><a href="../../../../Technology/CloudService/基础/云计算" data-for="Technology/CloudService/基础/云计算">云计算概述</a></li><li><a href="../../../../Technology/CloudService/基础/功能即服务FaaS" data-for="Technology/CloudService/基础/功能即服务FaaS">功能即服务FaaS</a></li><li><a href="../../../../Technology/CloudService/基础/基础架构即服务IaaS" data-for="Technology/CloudService/基础/基础架构即服务IaaS">基础架构即服务IaaS</a></li><li><a href="../../../../Technology/CloudService/基础/平台即服务PaaS" data-for="Technology/CloudService/基础/平台即服务PaaS">平台即服务PaaS</a></li><li><a href="../../../../Technology/CloudService/基础/软件即服务SaaS" data-for="Technology/CloudService/基础/软件即服务SaaS">软件即服务SaaS</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork"><button class="folder-button"><span class="folder-title">ComputerNetwork</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/Nginx"><button class="folder-button"><span class="folder-title">Nginx</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/Nginx"><li><a href="../../../../Technology/ComputerNetwork/Nginx/概述" data-for="Technology/ComputerNetwork/Nginx/概述">Nginx 概述</a></li><li><a href="../../../../Technology/ComputerNetwork/Nginx/内容缓存" data-for="Technology/ComputerNetwork/Nginx/内容缓存">内容缓存</a></li><li><a href="../../../../Technology/ComputerNetwork/Nginx/基础配置" data-for="Technology/ComputerNetwork/Nginx/基础配置">基础配置</a></li><li><a href="../../../../Technology/ComputerNetwork/Nginx/负载均衡" data-for="Technology/ComputerNetwork/Nginx/负载均衡">负载均衡</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/公共服务"><button class="folder-button"><span class="folder-title">公共服务</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/公共服务"><li><a href="../../../../Technology/ComputerNetwork/公共服务/IPv4-DNS-服务" data-for="Technology/ComputerNetwork/公共服务/IPv4-DNS-服务">IPv4 DNS 服务</a></li><li><a href="../../../../Technology/ComputerNetwork/公共服务/IPv6-DNS-服务" data-for="Technology/ComputerNetwork/公共服务/IPv6-DNS-服务">IPv6 DNS 服务</a></li><li><a href="../../../../Technology/ComputerNetwork/公共服务/Mirror-镜像站" data-for="Technology/ComputerNetwork/公共服务/Mirror-镜像站">Mirror 镜像站</a></li><li><a href="../../../../Technology/ComputerNetwork/公共服务/NTP-服务器" data-for="Technology/ComputerNetwork/公共服务/NTP-服务器">NTP 服务器</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/应用服务"><button class="folder-button"><span class="folder-title">应用服务</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/应用服务"><li><a href="../../../../Technology/ComputerNetwork/应用服务/CDN-内容分发网络" data-for="Technology/ComputerNetwork/应用服务/CDN-内容分发网络">CDN 内容分发网络</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/网络协议"><button class="folder-button"><span class="folder-title">网络协议</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/网络协议"><li><a href="../../../../Technology/ComputerNetwork/网络协议/DHCP-动态主机配置协议" data-for="Technology/ComputerNetwork/网络协议/DHCP-动态主机配置协议">DHCP 动态主机配置协议</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/DNS-域名系统" data-for="Technology/ComputerNetwork/网络协议/DNS-域名系统">DNS 域名系统</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/IP-网际协议" data-for="Technology/ComputerNetwork/网络协议/IP-网际协议">IP 网际协议</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/TCP-传输控制协议" data-for="Technology/ComputerNetwork/网络协议/TCP-传输控制协议">TCP 传输控制协议</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/UDP-用户数据报协议" data-for="Technology/ComputerNetwork/网络协议/UDP-用户数据报协议">UDP 用户数据报协议</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/网络基础"><button class="folder-button"><span class="folder-title">网络基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/网络基础"><li><a href="../../../../Technology/ComputerNetwork/网络基础/网络基础" data-for="Technology/ComputerNetwork/网络基础/网络基础">网络基础</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity"><button class="folder-button"><span class="folder-title">ComputerSecurity</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/信息安全"><button class="folder-button"><span class="folder-title">信息安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/信息安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/信息安全/OpenPGP"><button class="folder-button"><span class="folder-title">OpenPGP</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/信息安全/OpenPGP"><li><a href="../../../../Technology/ComputerSecurity/信息安全/OpenPGP/GnuPG-简明指南" data-for="Technology/ComputerSecurity/信息安全/OpenPGP/GnuPG-简明指南">GnuPG 简明指南</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/密码学"><button class="folder-button"><span class="folder-title">密码学</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/密码学"><li><a href="../../../../Technology/ComputerSecurity/密码学/简明指南" data-for="Technology/ComputerSecurity/密码学/简明指南">简明指南</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/用户安全"><button class="folder-button"><span class="folder-title">用户安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/用户安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/用户安全/权限设计"><button class="folder-button"><span class="folder-title">权限设计</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/用户安全/权限设计"><li><a href="../../../../Technology/ComputerSecurity/用户安全/权限设计/主流权限系统的设计" data-for="Technology/ComputerSecurity/用户安全/权限设计/主流权限系统的设计">主流权限系统的设计</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/用户安全/用户鉴权"><button class="folder-button"><span class="folder-title">用户鉴权</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/用户安全/用户鉴权"><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/HTTP-基本鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/HTTP-基本鉴权">HTTP 基本鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/JWTJSON-Web-Token鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/JWTJSON-Web-Token鉴权">JWT 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/OAuth-鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/OAuth-鉴权">OAuth 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/Session-Cookie-鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/Session-Cookie-鉴权">Session-Cookie 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/单点登录Single-Sign-On" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/单点登录Single-Sign-On">SSO 单点登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/Token-鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/Token-鉴权">Token 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/一键登录适用于原生APP" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/一键登录适用于原生APP">一键登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/唯一登录" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/唯一登录">唯一登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/扫码登录" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/扫码登录">扫码登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/联合登录和信任登录" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/联合登录和信任登录">联合登录和信任登录</a></li></ul></div></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/简明指南" data-for="Technology/ComputerSecurity/用户安全/简明指南">简明指南</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/系统安全"><button class="folder-button"><span class="folder-title">系统安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/系统安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/系统安全/防火墙"><button class="folder-button"><span class="folder-title">防火墙</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/系统安全/防火墙"><li><a href="../../../../Technology/ComputerSecurity/系统安全/防火墙/网络端口大全" data-for="Technology/ComputerSecurity/系统安全/防火墙/网络端口大全">网络端口大全</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/网络安全"><button class="folder-button"><span class="folder-title">网络安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/网络安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/网络安全/OpenSSH"><button class="folder-button"><span class="folder-title">OpenSSH</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/网络安全/OpenSSH"><li><a href="../../../../Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-使用方法" data-for="Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-使用方法">OpenSSH 使用方法</a></li><li><a href="../../../../Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-概述" data-for="Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-概述">OpenSSH 概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/网络安全/OpenSSL"><button class="folder-button"><span class="folder-title">OpenSSL</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/网络安全/OpenSSL"><li><a href="../../../../Technology/ComputerSecurity/网络安全/OpenSSL/简明指南" data-for="Technology/ComputerSecurity/网络安全/OpenSSL/简明指南">简明指南</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerStorage"><button class="folder-button"><span class="folder-title">ComputerStorage</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerStorage"><li><a href="../../../../Technology/ComputerStorage/0.-大纲" data-for="Technology/ComputerStorage/0.-大纲">0. 大纲</a></li><li><a href="../../../../Technology/ComputerStorage/1.-存储基础" data-for="Technology/ComputerStorage/1.-存储基础">1. 存储基础</a></li><li><a href="../../../../Technology/ComputerStorage/2.-存储硬件" data-for="Technology/ComputerStorage/2.-存储硬件">2. 存储硬件</a></li><li><a href="../../../../Technology/ComputerStorage/3.-存储架构" data-for="Technology/ComputerStorage/3.-存储架构">3. 存储架构</a></li><li><a href="../../../../Technology/ComputerStorage/4.-文件系统" data-for="Technology/ComputerStorage/4.-文件系统">4. 文件系统</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem"><button class="folder-button"><span class="folder-title">DatabaseSystem</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem/PostgreSQL"><button class="folder-button"><span class="folder-title">PostgreSQL</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem/PostgreSQL"><li><a href="../../../../Technology/DatabaseSystem/PostgreSQL/基本概念" data-for="Technology/DatabaseSystem/PostgreSQL/基本概念">基本概念</a></li><li><a href="../../../../Technology/DatabaseSystem/PostgreSQL/安装配置" data-for="Technology/DatabaseSystem/PostgreSQL/安装配置">安装配置</a></li><li><a href="../../../../Technology/DatabaseSystem/PostgreSQL/简介" data-for="Technology/DatabaseSystem/PostgreSQL/简介">简介</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem/SQL-语言"><button class="folder-button"><span class="folder-title">SQL 语言</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem/SQL-语言"><li><a href="../../../../Technology/DatabaseSystem/SQL-语言/基础语法" data-for="Technology/DatabaseSystem/SQL-语言/基础语法">基础语法</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem/基础"><button class="folder-button"><span class="folder-title">基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem/基础"><li><a href="../../../../Technology/DatabaseSystem/基础/关系型数据库" data-for="Technology/DatabaseSystem/基础/关系型数据库">关系型数据库</a></li><li><a href="../../../../Technology/DatabaseSystem/基础/数据库概述" data-for="Technology/DatabaseSystem/基础/数据库概述">数据库概述</a></li><li><a href="../../../../Technology/DatabaseSystem/基础/非关系型数据库" data-for="Technology/DatabaseSystem/基础/非关系型数据库">非关系型数据库</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted"><button class="folder-button"><span class="folder-title">GettingStarted</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具"><button class="folder-button"><span class="folder-title">命令行工具</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具/PowerShell"><button class="folder-button"><span class="folder-title">PowerShell</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具/PowerShell"><li><a href="../../../../Technology/GettingStarted/命令行工具/PowerShell/PowerShell-入门" data-for="Technology/GettingStarted/命令行工具/PowerShell/PowerShell-入门">PowerShell 入门</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/PowerShell/PowerShell-进阶" data-for="Technology/GettingStarted/命令行工具/PowerShell/PowerShell-进阶">PowerShell 进阶</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/PowerShell/PowerShell-高级" data-for="Technology/GettingStarted/命令行工具/PowerShell/PowerShell-高级">PowerShell 高级</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具/Shell"><button class="folder-button"><span class="folder-title">Shell</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具/Shell"><li><a href="../../../../Technology/GettingStarted/命令行工具/Shell/Shell-命令操作" data-for="Technology/GettingStarted/命令行工具/Shell/Shell-命令操作">Linux 命令行操作</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Shell/Shell-必备锦囊" data-for="Technology/GettingStarted/命令行工具/Shell/Shell-必备锦囊">Shell 必备锦囊</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Shell/Shell-是什么" data-for="Technology/GettingStarted/命令行工具/Shell/Shell-是什么">Shell 是什么</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具/Vim"><button class="folder-button"><span class="folder-title">Vim</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具/Vim"><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/5.Vim-参考手册" data-for="Technology/GettingStarted/命令行工具/Vim/5.Vim-参考手册">Vim 参考手册</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/4.Vim-实用技巧" data-for="Technology/GettingStarted/命令行工具/Vim/4.Vim-实用技巧">Vim 实用技巧</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/6.Vim-帮助文档" data-for="Technology/GettingStarted/命令行工具/Vim/6.Vim-帮助文档">Vim 帮助文档</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/1.Vim-入门" data-for="Technology/GettingStarted/命令行工具/Vim/1.Vim-入门">Vim 快速入门</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/2.VIM-配置管理" data-for="Technology/GettingStarted/命令行工具/Vim/2.VIM-配置管理">VIM 配置管理</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/3.Vim-高级功能" data-for="Technology/GettingStarted/命令行工具/Vim/3.Vim-高级功能">Vim 高级功能</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/开源指南"><button class="folder-button"><span class="folder-title">开源指南</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/开源指南"><li><a href="../../../../Technology/GettingStarted/开源指南/如何向开源社区提问" data-for="Technology/GettingStarted/开源指南/如何向开源社区提问">如何向开源社区提问</a></li><li><a href="../../../../Technology/GettingStarted/开源指南/如何有效报告-BUG" data-for="Technology/GettingStarted/开源指南/如何有效报告-BUG">如何有效报告 BUG</a></li><li><a href="../../../../Technology/GettingStarted/开源指南/开源指北" data-for="Technology/GettingStarted/开源指南/开源指北">开源指北</a></li><li><a href="../../../../Technology/GettingStarted/开源指南/提问的智慧" data-for="Technology/GettingStarted/开源指南/提问的智慧">提问的智慧</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/文本处理"><button class="folder-button"><span class="folder-title">文本处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/文本处理"><li><a href="../../../../Technology/GettingStarted/文本处理/正则表达式" data-for="Technology/GettingStarted/文本处理/正则表达式">正则表达式</a></li><li><a href="../../../../Technology/GettingStarted/文本处理/结构化文件" data-for="Technology/GettingStarted/文本处理/结构化文件">结构化文件</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制"><button class="folder-button"><span class="folder-title">版本控制</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制/Git"><button class="folder-button"><span class="folder-title">Git</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制/Git"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制/Git/入门"><button class="folder-button"><span class="folder-title">入门</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制/Git/入门"><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/分支" data-for="Technology/GettingStarted/版本控制/Git/入门/分支">分支</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/协议" data-for="Technology/GettingStarted/版本控制/Git/入门/协议">协议</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/基础" data-for="Technology/GettingStarted/版本控制/Git/入门/基础">基础</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/起步" data-for="Technology/GettingStarted/版本控制/Git/入门/起步">起步</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制/Git/进阶"><button class="folder-button"><span class="folder-title">进阶</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制/Git/进阶"><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/Git-LFS" data-for="Technology/GettingStarted/版本控制/Git/进阶/Git-LFS">Git-LFS</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/参考手册" data-for="Technology/GettingStarted/版本控制/Git/进阶/参考手册">参考手册</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/工作流" data-for="Technology/GettingStarted/版本控制/Git/进阶/工作流">工作流</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/常用命令" data-for="Technology/GettingStarted/版本控制/Git/进阶/常用命令">常用命令</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/常用技巧" data-for="Technology/GettingStarted/版本控制/Git/进阶/常用技巧">常用技巧</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/思维导图" data-for="Technology/GettingStarted/版本控制/Git/进阶/思维导图">思维导图</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/钩子" data-for="Technology/GettingStarted/版本控制/Git/进阶/钩子">钩子</a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem"><button class="folder-button"><span class="folder-title">OperatingSystem</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Automation"><button class="folder-button"><span class="folder-title">Automation</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Automation"><li><a href="../../../../Technology/OperatingSystem/Automation/Ansible" data-for="Technology/OperatingSystem/Automation/Ansible">Ansible</a></li><li><a href="../../../../Technology/OperatingSystem/Automation/Cloud-init-快速部署" data-for="Technology/OperatingSystem/Automation/Cloud-init-快速部署">Cloud-init</a></li><li><a href="../../../../Technology/OperatingSystem/Automation/PXE--系统部署" data-for="Technology/OperatingSystem/Automation/PXE--系统部署">PXE 自动化部署</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker"><button class="folder-button"><span class="folder-title">Docker</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker/基础"><button class="folder-button"><span class="folder-title">基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker/基础"><li><a href="../../../../Technology/OperatingSystem/Docker/基础/基础概念" data-for="Technology/OperatingSystem/Docker/基础/基础概念">基础概念</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/基础/安装配置" data-for="Technology/OperatingSystem/Docker/基础/安装配置">安装配置</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/基础/简介" data-for="Technology/OperatingSystem/Docker/基础/简介">简介</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker/进阶"><button class="folder-button"><span class="folder-title">进阶</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker/进阶"><li><a href="../../../../Technology/OperatingSystem/Docker/进阶/Docker-Compose" data-for="Technology/OperatingSystem/Docker/进阶/Docker-Compose">Docker Compose</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/进阶/Docker-Dockerfile" data-for="Technology/OperatingSystem/Docker/进阶/Docker-Dockerfile">Docker Dockerfile</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/进阶/Docker-使用" data-for="Technology/OperatingSystem/Docker/进阶/Docker-使用">Docker 使用</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker/高级"><button class="folder-button"><span class="folder-title">高级</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker/高级"><li><a href="../../../../Technology/OperatingSystem/Docker/高级/Docker-命令手册" data-for="Technology/OperatingSystem/Docker/高级/Docker-命令手册">Docker 命令手册</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/高级/Docker-存储" data-for="Technology/OperatingSystem/Docker/高级/Docker-存储">Docker 存储</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/高级/Docker-网络" data-for="Technology/OperatingSystem/Docker/高级/Docker-网络">Docker 网络</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux"><button class="folder-button"><span class="folder-title">Linux</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/1.文化"><button class="folder-button"><span class="folder-title">1.文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/1.文化"><li><a href="../../../../Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-历史与发展" data-for="Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-历史与发展">GNU&amp;Linux 历史与发展</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-社区与文化" data-for="Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-社区与文化">GNU&amp;Linux 社区与文化</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/1.文化/开源软件的概念与重要性" data-for="Technology/OperatingSystem/Linux/1.文化/开源软件的概念与重要性">开源软件的概念与重要性</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/2.安装"><button class="folder-button"><span class="folder-title">2.安装</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/2.安装"><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/GRUB-引导程序" data-for="Technology/OperatingSystem/Linux/2.安装/GRUB-引导程序">GRUB 引导程序</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-下-0-1-手动安装-Arch-Linux" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-下-0-1-手动安装-Arch-Linux">Linux 下 0-1 手动安装 Arch Linux</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-下源代码编译与安装实战" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-下源代码编译与安装实战">Linux 下源代码编译与安装实战</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-发行版镜像" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-发行版镜像">Linux 发行版镜像</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-安装和配置" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-安装和配置">Linux 安装和配置</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-无法启动排查指南" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-无法启动排查指南">Linux 无法启动排查指南</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/3.基础操作"><button class="folder-button"><span class="folder-title">3.基础操作</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/3.基础操作"><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-包管理器" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-包管理器">Linux 包管理器</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Shell-命令行操作" data-for="Technology/OperatingSystem/Linux/3.基础操作/Shell-命令行操作">Linux 命令行操作</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-文件管理" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-文件管理">Linux 文件管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-环境变量" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-环境变量">Linux 环境变量</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-用户和权限" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-用户和权限">Linux 用户和权限</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/4.系统管理"><button class="folder-button"><span class="folder-title">4.系统管理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/4.系统管理"><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-内核管理" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-内核管理">Linux 内核管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-基本配置" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-基本配置">Linux 基本配置</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-日志管理" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-日志管理">Linux 日志管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-服务管理" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-服务管理">Linux 服务管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-系统启动详解" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-系统启动详解">Linux 服务管理</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/5.安全配置"><button class="folder-button"><span class="folder-title">5.安全配置</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/5.安全配置"><li><a href="../../../../Technology/OperatingSystem/Linux/5.安全配置/Linux-系统安全与防护" data-for="Technology/OperatingSystem/Linux/5.安全配置/Linux-系统安全与防护">Linux 系统安全与防护</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/6.网络管理"><button class="folder-button"><span class="folder-title">6.网络管理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/6.网络管理"><li><a href="../../../../Technology/OperatingSystem/Linux/6.网络管理/Linux-网络管理" data-for="Technology/OperatingSystem/Linux/6.网络管理/Linux-网络管理">Linux 网络管理</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/7.存储管理"><button class="folder-button"><span class="folder-title">7.存储管理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/7.存储管理"><li><a href="../../../../Technology/OperatingSystem/Linux/7.存储管理/fio-存储性能测试" data-for="Technology/OperatingSystem/Linux/7.存储管理/fio-存储性能测试">fio 存储性能测试</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/7.存储管理/Linux-文件系统" data-for="Technology/OperatingSystem/Linux/7.存储管理/Linux-文件系统">Linux 文件系统</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Virtualization"><button class="folder-button"><span class="folder-title">Virtualization</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Virtualization"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Virtualization/1.虚拟化概述"><button class="folder-button"><span class="folder-title">1.虚拟化概述</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Virtualization/1.虚拟化概述"><li><a href="../../../../Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化平台简介" data-for="Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化平台简介">虚拟化平台简介</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化概述" data-for="Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化概述">虚拟化概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Virtualization/2.KVM虚拟化"><button class="folder-button"><span class="folder-title">2.KVM虚拟化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Virtualization/2.KVM虚拟化"><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/1.-KVM-概述" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/1.-KVM-概述">1. KVM 概述</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/2.-KVM-安装配置" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/2.-KVM-安装配置">2. KVM 安装配置</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/3.-KVM-管理工具" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/3.-KVM-管理工具">3. KVM 管理工具</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/4.-KVM-网络配置" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/4.-KVM-网络配置">4. KVM 网络配置</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/5.-KVM-存储管理" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/5.-KVM-存储管理">5. KVM 存储管理</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/6.-KVM-性能优化" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/6.-KVM-性能优化">6. KVM 性能优化</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/7.-KVM-系统监控" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/7.-KVM-系统监控">7. KVM 系统监控</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Windows"><button class="folder-button"><span class="folder-title">Windows</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Windows"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Windows/文化"><button class="folder-button"><span class="folder-title">文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Windows/文化"><li><a href="../../../../Technology/OperatingSystem/Windows/文化/微软及其Windows系统的历史发展" data-for="Technology/OperatingSystem/Windows/文化/微软及其Windows系统的历史发展">微软及其Windows系统的历史发展</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage"><button class="folder-button"><span class="folder-title">ProgrammingLanguage</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python"><button class="folder-button"><span class="folder-title">Python</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/入门"><button class="folder-button"><span class="folder-title">入门</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/入门"><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/函数方法" data-for="Technology/ProgrammingLanguage/Python/入门/函数方法">函数方法</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/基础语法" data-for="Technology/ProgrammingLanguage/Python/入门/基础语法">基础语法</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/控制语句" data-for="Technology/ProgrammingLanguage/Python/入门/控制语句">控制语句</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/数据类型" data-for="Technology/ProgrammingLanguage/Python/入门/数据类型">数据类型</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/数据结构" data-for="Technology/ProgrammingLanguage/Python/入门/数据结构">数据结构</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/模块和包" data-for="Technology/ProgrammingLanguage/Python/入门/模块和包">模块和包</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/面对对象" data-for="Technology/ProgrammingLanguage/Python/入门/面对对象">面对对象</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/文化"><button class="folder-button"><span class="folder-title">文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/文化"><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/发展历史" data-for="Technology/ProgrammingLanguage/Python/文化/发展历史">发展历史</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/生命周期" data-for="Technology/ProgrammingLanguage/Python/文化/生命周期">生命周期</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/社区文化" data-for="Technology/ProgrammingLanguage/Python/文化/社区文化">社区文化</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/设计哲学" data-for="Technology/ProgrammingLanguage/Python/文化/设计哲学">设计哲学</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/语言特性" data-for="Technology/ProgrammingLanguage/Python/文化/语言特性">语言特性</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块"><button class="folder-button"><span class="folder-title">模块</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/WEB开发"><button class="folder-button"><span class="folder-title">WEB开发</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/WEB开发"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/WEB开发/Jinja-模板引擎" data-for="Technology/ProgrammingLanguage/Python/模块/WEB开发/Jinja-模板引擎">Jinja 模板引擎</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/数据处理"><button class="folder-button"><span class="folder-title">数据处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/数据处理"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/数据处理/configparser-配置文件解析器" data-for="Technology/ProgrammingLanguage/Python/模块/数据处理/configparser-配置文件解析器">configparser 配置文件解析器</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/数据处理/csv-文件读写" data-for="Technology/ProgrammingLanguage/Python/模块/数据处理/csv-文件读写">csv 文件读写</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/数据处理/json-编码和解码器" data-for="Technology/ProgrammingLanguage/Python/模块/数据处理/json-编码和解码器">json 编码和解码器</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/文本处理"><button class="folder-button"><span class="folder-title">文本处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/文本处理"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/文本处理/re-----正则表达式操作" data-for="Technology/ProgrammingLanguage/Python/模块/文本处理/re-----正则表达式操作">re --- 正则表达式操作</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/系统交互"><button class="folder-button"><span class="folder-title">系统交互</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/系统交互"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/dotenv-环境变量管理" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/dotenv-环境变量管理">dotenv 环境变量管理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/logging-日志记录工具" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/logging-日志记录工具">logging 日志记录工具</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/loguru-日志库" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/loguru-日志库">loguru 日志库</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/os-多种操作系统接口" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/os-多种操作系统接口">os 多种操作系统接口</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/subprocess-子进程管理" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/subprocess-子进程管理">subprocess 子进程管理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/sys-系统相关的形参和函数" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/sys-系统相关的形参和函数">sys 系统相关的形参和函数</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/网络处理"><button class="folder-button"><span class="folder-title">网络处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/网络处理"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/网络处理/requests-HTTP-库" data-for="Technology/ProgrammingLanguage/Python/模块/网络处理/requests-HTTP-库">requests HTTP 库</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/网络处理/socket-底层网络接口" data-for="Technology/ProgrammingLanguage/Python/模块/网络处理/socket-底层网络接口">socket 底层网络接口</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/网络处理/urllib-URL-处理模块" data-for="Technology/ProgrammingLanguage/Python/模块/网络处理/urllib-URL-处理模块">urllib URL 处理模块</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/进阶"><button class="folder-button"><span class="folder-title">进阶</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/进阶"><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/函数式编程" data-for="Technology/ProgrammingLanguage/Python/进阶/函数式编程">函数式编程</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/垃圾回收" data-for="Technology/ProgrammingLanguage/Python/进阶/垃圾回收">垃圾回收</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/并行和并发" data-for="Technology/ProgrammingLanguage/Python/进阶/并行和并发">并行和并发</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/异常处理" data-for="Technology/ProgrammingLanguage/Python/进阶/异常处理">异常处理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/数据库操作" data-for="Technology/ProgrammingLanguage/Python/进阶/数据库操作">数据库操作</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/文件和IO操作" data-for="Technology/ProgrammingLanguage/Python/进阶/文件和IO操作">文件和IO操作</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/测试和调试" data-for="Technology/ProgrammingLanguage/Python/进阶/测试和调试">测试和调试</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/资源管理" data-for="Technology/ProgrammingLanguage/Python/进阶/资源管理">资源管理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/面向对象进阶" data-for="Technology/ProgrammingLanguage/Python/进阶/面向对象进阶">面向对象</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/项目"><button class="folder-button"><span class="folder-title">项目</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/项目"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/项目/虚拟环境"><button class="folder-button"><span class="folder-title">虚拟环境</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/项目/虚拟环境"><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/pip" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/pip">pip</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/pipenv" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/pipenv">pipenv</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/poetry" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/poetry">poetry</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/pyenv" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/pyenv">pyenv</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/virtualenv" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/virtualenv">Virtualenv</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/概述" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/概述">概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/项目/风格指南"><button class="folder-button"><span class="folder-title">风格指南</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/项目/风格指南"><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/风格指南/风格指南" data-for="Technology/ProgrammingLanguage/Python/项目/风格指南/风格指南">Python 风格指南</a></li></ul></div></li></ul></div></li></ul></div></li><li><a href="../../../../Technology/ProgrammingLanguage/home" data-for="Technology/ProgrammingLanguage/home">程序设计语言</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering"><button class="folder-button"><span class="folder-title">SoftwareEngineering</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/协作规范"><button class="folder-button"><span class="folder-title">协作规范</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/协作规范"><li><a href="../../../../Technology/SoftwareEngineering/协作规范/8.交流反馈Issue" data-for="Technology/SoftwareEngineering/协作规范/8.交流反馈Issue">交流反馈Issue</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/1.关于Readme" data-for="Technology/SoftwareEngineering/协作规范/1.关于Readme">关于Readme</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/4.分支Branch" data-for="Technology/SoftwareEngineering/协作规范/4.分支Branch">分支Branch</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/2.开源协议License" data-for="Technology/SoftwareEngineering/协作规范/2.开源协议License">开源协议License</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/5.日志Commit" data-for="Technology/SoftwareEngineering/协作规范/5.日志Commit">日志Commit</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/7.注释Comments" data-for="Technology/SoftwareEngineering/协作规范/7.注释Comments">注释Comments</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/6.版本Tag" data-for="Technology/SoftwareEngineering/协作规范/6.版本Tag">版本Tag</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/3.贡献者协议Contributing" data-for="Technology/SoftwareEngineering/协作规范/3.贡献者协议Contributing">贡献者协议Contributing</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/文档规范"><button class="folder-button"><span class="folder-title">文档规范</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/文档规范"><li><a href="../../../../Technology/SoftwareEngineering/文档规范/3.命名约定" data-for="Technology/SoftwareEngineering/文档规范/3.命名约定">命名约定</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/5.文档内容" data-for="Technology/SoftwareEngineering/文档规范/5.文档内容">文档内容</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/6.文档结构" data-for="Technology/SoftwareEngineering/文档规范/6.文档结构">文档结构</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/2.标点符号" data-for="Technology/SoftwareEngineering/文档规范/2.标点符号">标点符号</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/1.简介" data-for="Technology/SoftwareEngineering/文档规范/1.简介">简介</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/4.语言风格" data-for="Technology/SoftwareEngineering/文档规范/4.语言风格">语言风格</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/7.附录资料" data-for="Technology/SoftwareEngineering/文档规范/7.附录资料">附录资料</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/架构设计"><button class="folder-button"><span class="folder-title">架构设计</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/架构设计"><li><a href="../../../../Technology/SoftwareEngineering/架构设计/REST" data-for="Technology/SoftwareEngineering/架构设计/REST">REST</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/自动化流程"><button class="folder-button"><span class="folder-title">自动化流程</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/自动化流程"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/自动化流程/工具使用"><button class="folder-button"><span class="folder-title">工具使用</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/自动化流程/工具使用"><li><a href="../../../../Technology/SoftwareEngineering/自动化流程/工具使用/GitHub-Actions" data-for="Technology/SoftwareEngineering/自动化流程/工具使用/GitHub-Actions">GitHub Actions</a></li><li><a href="../../../../Technology/SoftwareEngineering/自动化流程/工具使用/GitLab-Runner" data-for="Technology/SoftwareEngineering/自动化流程/工具使用/GitLab-Runner">GitLab Runner</a></li><li><a href="../../../../Technology/SoftwareEngineering/自动化流程/工具使用/Jenkins" data-for="Technology/SoftwareEngineering/自动化流程/工具使用/Jenkins">Jenkins</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/StructuresAlgorithms"><button class="folder-button"><span class="folder-title">StructuresAlgorithms</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/StructuresAlgorithms"><li><a href="../../../../Technology/StructuresAlgorithms/数据结构" data-for="Technology/StructuresAlgorithms/数据结构">数据结构</a></li><li><a href="../../../../Technology/StructuresAlgorithms/算法" data-for="Technology/StructuresAlgorithms/算法">算法</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment"><button class="folder-button"><span class="folder-title">WebDevelopment</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/0.Overview"><button class="folder-button"><span class="folder-title">0.Overview</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/0.Overview"><li><a href="../../../../Technology/WebDevelopment/0.Overview/概述" data-for="Technology/WebDevelopment/0.Overview/概述">概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/1.Browser"><button class="folder-button"><span class="folder-title">1.Browser</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/1.Browser"><li><a href="../../../../Technology/WebDevelopment/1.Browser/2.Chrome" data-for="Technology/WebDevelopment/1.Browser/2.Chrome">Chrome</a></li><li><a href="../../../../Technology/WebDevelopment/1.Browser/4.DevTools" data-for="Technology/WebDevelopment/1.Browser/4.DevTools">DevTools</a></li><li><a href="../../../../Technology/WebDevelopment/1.Browser/3.Firefox" data-for="Technology/WebDevelopment/1.Browser/3.Firefox">Firefox</a></li><li><a href="../../../../Technology/WebDevelopment/1.Browser/1.浏览器概述" data-for="Technology/WebDevelopment/1.Browser/1.浏览器概述">浏览器概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/2.HTML"><button class="folder-button"><span class="folder-title">2.HTML</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/2.HTML"><li><a href="../../../../Technology/WebDevelopment/2.HTML/HTML" data-for="Technology/WebDevelopment/2.HTML/HTML">HTML</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/3.CSS"><button class="folder-button"><span class="folder-title">3.CSS</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/3.CSS"><li><a href="../../../../Technology/WebDevelopment/3.CSS/CSS" data-for="Technology/WebDevelopment/3.CSS/CSS">CSS</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/4.JavaScript"><button class="folder-button"><span class="folder-title">4.JavaScript</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/4.JavaScript"><li><a href="../../../../Technology/WebDevelopment/4.JavaScript/JavaScript" data-for="Technology/WebDevelopment/4.JavaScript/JavaScript">JavaScript</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/7.Tools"><button class="folder-button"><span class="folder-title">7.Tools</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/7.Tools"><li><a href="../../../../Technology/WebDevelopment/7.Tools/PM2-工具" data-for="Technology/WebDevelopment/7.Tools/PM2-工具">PM2 工具</a></li><li><a href="../../../../Technology/WebDevelopment/7.Tools/Webpack" data-for="Technology/WebDevelopment/7.Tools/Webpack">Webpack</a></li><li><a href="../../../../Technology/WebDevelopment/7.Tools/包管理工具" data-for="Technology/WebDevelopment/7.Tools/包管理工具">包管理器</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-outer "><ul style="padding-left:0;" class="content" data-folderul></ul></div></li></ul></div></li><li id="explorer-end"></li></ul></div></div><div class="recent-notes desktop-only"><h3>博客</h3><ul class="recent-ul"><li class="recent-li"><div class="section"><div class="desc"><h3><a href="../../../../Personal/Blog/2024/回读者信──240816" class="internal">回读者信──240816</a></h3></div><p class="meta">2024年8月16日</p></div></li><li class="recent-li"><div class="section"><div class="desc"><h3><a href="../../../../Personal/Blog/2024/乌兰哈达火山银河之旅" class="internal">乌兰哈达火山银河之旅</a></h3></div><p class="meta">2024年6月27日</p></div></li><li class="recent-li"><div class="section"><div class="desc"><h3><a href="../../../../Personal/Blog/2024/冰箱,让你我错过了多少新鲜的生活?" class="internal">冰箱,让你我错过了多少新鲜的生活?</a></h3></div><p class="meta">2024年6月27日</p></div></li></ul></div></div><div class="center"><div class="page-header"><div class="popover-hint"><nav class="breadcrumb-container" aria-label="breadcrumbs"><div class="breadcrumb-element"><a href="../../../../">Home</a><p> </p></div><div class="breadcrumb-element"><a href="../../../../Technology/">Technology</a><p> </p></div><div class="breadcrumb-element"><a href="../../../../Technology/OperatingSystem/">OperatingSystem</a><p> </p></div><div class="breadcrumb-element"><a href="../../../../Technology/OperatingSystem/Linux/">Linux</a><p> </p></div><div class="breadcrumb-element"><a href="../../../../Technology/OperatingSystem/Linux/2.安装/">2.安装</a><p> </p></div><div class="breadcrumb-element"><a href>GRUB 引导程序</a></div></nav><h1 class="article-title">GRUB 引导程序</h1><p show-comma="true" class="content-meta"><span>2024年8月26日</span><span>63分钟阅读</span></p><ul class="tags"><li><a href="../../../../tags/技术/操作系统" class="internal tag-link">技术/操作系统</a></li><li><a href="../../../../tags/Linux/安装" class="internal tag-link">Linux/安装</a></li></ul></div></div><article class="popover-hint"><h2 id="引导加载器">引导加载器<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#引导加载器" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="引导加载器是什么">引导加载器是什么?<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#引导加载器是什么" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><img src="https://static.7wate.com/2024/08/26/eb2655d71fc36.png" alt="Bootloader"/></p>
<p><strong>引导加载器是计算机启动过程中一个至关重要的组件。</strong> 它的主要功能是在硬件自检POST完成后从存储设备中加载并启动操作系统的内核。引导加载器充当了硬件和操作系统之间的桥梁确保操作系统能够顺利运行。具体来说引导加载器的职责包括以下几个方面</p>
<ul>
<li><strong>识别和加载内核</strong>:引导加载器从预定义的启动分区或磁盘位置找到操作系统内核,并将其加载到内存中。</li>
<li><strong>传递启动参数</strong>:引导加载器可以将启动参数传递给内核,以决定操作系统的启动行为。</li>
<li><strong>多操作系统引导管理</strong>:在多操作系统环境中,引导加载器允许用户在多个操作系统之间进行选择。</li>
<li><strong>错误处理和恢复</strong>:当出现启动错误时,引导加载器通常提供恢复选项,以修复引导过程中的问题。</li>
</ul>
<p>引导加载器的发展历史可以追溯到早期的计算机系统。在早期,硬件本身提供了简单的启动机制,通常只支持启动单一操作系统。随着计算机技术的发展,引导加载器逐渐演变出更复杂的功能,以支持多操作系统和复杂的启动配置。</p>
<ul>
<li><strong>早期阶段</strong>:最初的引导加载器非常简单,主要是在特定存储设备上找到一个可执行的程序来启动操作系统。这种简单的引导方法适用于单操作系统环境,但在现代复杂的多操作系统环境中不再适用。</li>
<li><strong>LILOLinux Loader</strong>LILO 是 Linux 早期使用的引导加载器,支持在多操作系统之间进行简单切换。它的配置相对复杂,且不支持动态更新。</li>
<li><strong>GRUB 的出现</strong>:为了克服 LILO 的限制GRUBGrand Unified Bootloader作为更强大的引导加载器被开发出来支持动态更新和更复杂的启动配置。</li>
</ul>
<h2 id="grub-历史发展">GRUB 历史发展<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-历史发展" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<p>GRUBGRand Unified Bootloader作为一种广泛使用的引导加载器其历史发展体现了计算机引导技术的演变。从最初的 GRUB Legacy 到现代的 GRUB 2.x它的功能和特性经历了显著的变化和提升。</p>
<h3 id="grub-0x-和-grub-legacygrub-1x">GRUB 0.x 和 GRUB LegacyGRUB 1.x<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-0x-和-grub-legacygrub-1x" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 的发展始于 1999 年,最早的稳定版本 GRUB 0.97 发布。它被设计为 LILOLInux Loader的替代品主要目标是提供一种灵活的引导方式支持多操作系统和多内核引导。GRUB Legacy或 GRUB 1.x使用 <code>menu.lst</code> 作为其主要配置文件。用户需要手动编辑这个文件来定义启动项和内核参数。虽然配置相对简单,但其缺乏自动化和灵活性,配置更新需手动完成。</p>
<h3 id="grub-2x">GRUB 2.x<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-2x" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>随着技术的发展2010 年 GRUB 2.00 发布,引入了许多新的特性和改进,逐步取代了 GRUB Legacy。GRUB 2.x 的核心改进之一是其配置文件 <code>grub.cfg</code>,这是一个自动生成的文件,用户不再需要直接编辑。配置管理转移到 <code>/etc/default/grub</code><code>/etc/grub.d/</code> 目录中的脚本,通过 <code>update-grub</code> 命令自动生成 <code>grub.cfg</code>,从而减少了手动错误并增强了配置的灵活性。</p>
<p>另一个显著的改进是 GRUB 2.x 引入了模块化设计。它支持动态加载模块,根据启动需求加载或卸载不同的功能模块,如文件系统支持、网络引导、图形界面等。这一设计不仅提高了灵活性,还减少了内存占用,因为只有必要的模块会被加载。</p>
<p>GRUB 2.x 还引入了自动检测操作系统的功能。通过 <code>os-prober</code> 工具GRUB 能够扫描磁盘上的所有操作系统并自动更新启动菜单,这使得多操作系统环境的管理变得更加简便。</p>
<h3 id="与-uefi-的集成">与 UEFI 的集成<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#与-uefi-的集成" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>**随着计算机硬件逐步转向 UEFIUnified Extensible Firmware InterfaceGRUB 也适应了这一变化。**在 2012 年以后GRUB 开始支持 UEFI 模式,使其能够在现代计算机上运行,并与传统 BIOS 模式兼容。**GRUB 在 UEFI 环境中支持 Secure Boot 功能,这是防止未经授权的操作系统加载的安全机制。**为了满足这一要求GRUB 必须经过签名以确保其能够在 Secure Boot 环境中运行。</p>
<h3 id="未来展望">未来展望<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#未来展望" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>展望未来GRUB 可能会继续演进以支持新兴的引导技术和标准。未来的 GRUB 版本可能会进一步增强安全功能,如更全面的加密支持和更严格的 Secure Boot 集成以应对不断演变的安全威胁。同时GRUB 可能会与新兴操作系统和虚拟化技术深度集成,提升对各种操作系统和平台的支持能力。</p>
<h2 id="grub-基础概念">GRUB 基础概念<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-基础概念" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="基本结构">基本结构<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#基本结构" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><img src="https://static.7wate.com/2024/08/26/d1a5b99f9a411.svg" alt="GNU_GRUB_components.svg"/></p>
<h4 id="grub-legacy-的分层结构">GRUB Legacy 的分层结构<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-legacy-的分层结构" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p><img src="https://static.7wate.com/2024/08/26/88911f5a1bbe9.svg" alt="GNU_GRUB_on_MBR_partitioned_hard_disk_drives.svg"/></p>
<p>GRUB Legacy 的结构设计为分阶段加载,以克服早期计算机系统的限制并实现多操作系统引导。</p>
<ul>
<li><strong>Stage 1</strong>GRUB 的 Stage 1 通常位于硬盘的主引导记录MBR中。由于 MBR 只有 512 字节的大小限制Stage 1 的代码非常简短,主要任务是定位并加载 Stage 1.5 或 Stage 2。Stage 1 的目标是让计算机找到并启动 Stage 1.5 或直接启动 Stage 2。</li>
<li><strong>Stage 1.5</strong>Stage 1.5 是 GRUB 特有的一个中间层,通常存储在硬盘的第一个分区之前的空闲区域中。它的主要作用是提供对文件系统的支持,使得 GRUB 能够从特定的文件系统中加载 Stage 2。这一阶段的引入是为了弥补 Stage 1 无法直接处理复杂文件系统的不足。</li>
<li><strong>Stage 2</strong>Stage 2 是 GRUB Legacy 的主要加载器部分负责呈现启动菜单、加载操作系统内核并执行用户命令。Stage 2 通常存储在硬盘的文件系统中,并且支持多操作系统的引导选择。用户可以通过 Stage 2 的菜单界面选择启动不同的操作系统或进入命令行模式进行手动操作。</li>
</ul>
<h4 id="grub-2-的模块化结构和主要组件">GRUB 2 的模块化结构和主要组件<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-2-的模块化结构和主要组件" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p><img src="https://static.7wate.com/2024/08/26/e0349b1621b22.svg" alt="GNU_GRUB_on_GPT_partitioned_hard_disk_drives.svg"/></p>
<p>与 GRUB Legacy 相比GRUB 2.x 采用了更加现代化的模块化结构旨在提高灵活性、可扩展性和易用性。GRUB 2.x 的结构主要包括以下组件:</p>
<ul>
<li><strong>核心映像Core Image</strong>
核心映像是 GRUB 2.x 的基本加载器部分,相当于 GRUB Legacy 的 Stage 1 和 Stage 1.5。它通常包括最低限度的模块化代码,用于加载其他模块和配置文件。</li>
<li><strong>模块Modules</strong>
GRUB 2.x 使用模块来扩展其功能。不同于 GRUB Legacy 的固定功能GRUB 2.x 的模块可以按需加载。这些模块提供文件系统支持、设备驱动、网络引导支持等功能,使 GRUB 2.x 可以适应更复杂的启动需求。</li>
<li><strong>配置文件Configuration File</strong>
GRUB 2.x 的配置文件是 <code>grub.cfg</code>,由系统自动生成,包含启动菜单的配置、内核选项和模块加载指令。与 GRUB Legacy 的 <code>menu.lst</code> 不同,<code>grub.cfg</code> 不应手动编辑,而是通过 <code>/etc/default/grub</code> 和脚本生成。</li>
<li><strong>图形用户界面Graphical User Interface</strong>
GRUB 2.x 支持图形用户界面,通过加载特定模块,可以显示带有背景图片和自定义主题的启动菜单,使用户体验更加友好。</li>
</ul>
<h3 id="核心功能">核心功能<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#核心功能" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<h4 id="引导操作系统内核">引导操作系统内核<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#引导操作系统内核" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>GRUB 的核心功能之一是加载并引导操作系统内核。具体过程包括:</p>
<ol>
<li><strong>内核定位与加载</strong>当计算机启动时GRUB 负责从指定的分区或设备上找到操作系统的内核映像,并将其加载到内存中。这一过程包括读取内核文件(通常是一个压缩的内核映像)并将其拷贝到内存中,为内核执行做准备。</li>
<li><strong>传递启动参数</strong>GRUB 在加载内核之前,可以通过配置文件或启动菜单传递参数给内核。这些参数可以控制内核的行为,如指定根文件系统位置、启用或禁用调试模式、设置单用户模式等。参数传递允许用户在启动时对系统进行定制化配置。</li>
<li><strong>支持多种内核格式</strong>GRUB 支持多种内核格式和引导机制,包括传统的 Linux 内核、内核映像和初始 RAM 磁盘initrd。对于不同的操作系统和内核类型GRUB 提供了相应的支持。</li>
</ol>
<h4 id="提供多操作系统引导菜单">提供多操作系统引导菜单<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#提供多操作系统引导菜单" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>GRUB 允许用户在多操作系统环境中选择要引导的操作系统,具体功能包括:</p>
<ul>
<li><strong>启动菜单的生成与显示</strong>GRUB 在系统启动时提供一个引导菜单,用户可以通过此菜单选择要启动的操作系统或内核版本。菜单可以是文本模式的,也可以是图形化的,具体取决于 GRUB 的配置和主题设置。</li>
<li><strong>自动检测操作系统</strong>GRUB 2.x 的自动检测功能通过 <code>os-prober</code> 工具扫描硬盘上的所有分区,识别已安装的操作系统,并自动生成相应的启动条目。这样,用户无需手动编辑配置文件,就能在新操作系统安装后自动更新启动菜单。</li>
<li><strong>自定义启动项</strong>:用户可以通过编辑 <code>/etc/default/grub</code> 配置文件和 <code>/etc/grub.d/</code> 目录中的脚本来定义和管理启动项。用户可以指定启动顺序、设置超时时间、定义默认启动项等。GRUB 2.x 的配置方式使得多操作系统环境的管理变得更加灵活和方便。</li>
<li><strong>支持多种操作系统</strong>GRUB 支持多种操作系统的引导,包括 Linux、Windows、BSD 等。每个操作系统的引导条目可以根据需要进行配置和调整,支持各种引导需求。</li>
</ul>
<h4 id="提供命令行工具进行手动操作">提供命令行工具进行手动操作<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#提供命令行工具进行手动操作" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>GRUB 提供了一个强大的命令行工具,支持在引导阶段进行手动操作和故障排除,功能包括:</p>
<ul>
<li><strong>命令行模式的进入</strong>:在 GRUB 启动时,用户可以通过按下 <code>c</code> 键进入命令行模式。在这个模式下,用户可以手动输入命令,执行内核加载、根文件系统设置、模块加载等操作。这对于系统管理员和高级用户在遇到引导问题时进行诊断和修复非常有用。</li>
<li><strong>常用命令</strong>
<ul>
<li><code>set</code>:设置或显示 GRUB 环境变量。例如,设置内核启动参数或根文件系统。</li>
<li><code>insmod</code>:加载 GRUB 模块。这允许用户动态添加支持某些文件系统或功能的模块。</li>
<li><code>linux</code>:指定要启动的内核,通常与内核文件路径一起使用。</li>
<li><code>initrd</code>:指定内核的初始 RAM 磁盘映像,用于提供启动时所需的驱动程序和工具。</li>
<li><code>boot</code>:启动加载并执行内核,开始操作系统的引导过程。</li>
<li><code>ls</code>:列出指定设备或分区的内容,帮助用户查找内核和其他引导文件。</li>
</ul>
</li>
<li><strong>命令行调试</strong>:通过命令行模式,用户可以灵活地调试和恢复系统,例如在 GRUB 配置文件损坏或系统引导失败时,用户可以手动加载内核和初始化 RAM 磁盘,逐步解决问题。</li>
</ul>
<p>这些核心功能使 GRUB 成为一个强大而灵活的引导加载器,能够处理多种操作系统的引导需求,提供详细的故障排除能力,并允许用户在复杂环境中进行精细控制。</p>
<h3 id="1x-和-2x-的主要区别">1.x 和 2.x 的主要区别<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#1x-和-2x-的主要区别" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<div class="table-container"><table><thead><tr><th><strong>特性</strong></th><th><strong>GRUB 1.x (Legacy)</strong></th><th><strong>GRUB 2.x</strong></th></tr></thead><tbody><tr><td><strong>配置文件</strong></td><td><code>menu.lst</code></td><td><code>grub.cfg</code><strong>自动生成,不建议直接编辑</strong></td></tr><tr><td><strong>配置方式</strong></td><td>手动编辑 <code>menu.lst</code></td><td>通过 <code>/etc/default/grub</code><code>/etc/grub.d/</code> 脚本管理,通过 <code>update-grub</code> 自动生成</td></tr><tr><td><strong>模块化支持</strong></td><td>固定功能,需重新编译</td><td>模块化设计,动态加载模块,按需加载或卸载功能模块</td></tr><tr><td><strong>功能扩展</strong></td><td>受限,增加功能需重新编译</td><td>支持图形引导界面、脚本支持、LVM、RAID、加密文件系统、PXE 网络引导等高级功能</td></tr><tr><td><strong>引导方式</strong></td><td>仅支持传统的 BIOS 引导</td><td>支持 BIOS 和 UEFI 引导,兼容性更广</td></tr><tr><td><strong>错误处理</strong></td><td>错误提示信息较少,问题排查困难</td><td>提供详细的错误信息和调试模式,支持 <code>grub-rescue</code><code>grub> </code> 命令行模式</td></tr><tr><td><strong>多语言支持</strong></td><td>限制,主要支持英文</td><td>支持多语言,包括对图形界面的本地化支持</td></tr><tr><td><strong>支持的文件系统</strong></td><td>支持的文件系统较少,通常为 ext2/ext3/ext4</td><td>支持多种文件系统,包括 ext2/3/4、Btrfs、XFS、FAT、NTFS 等</td></tr><tr><td><strong>动态发现和配置</strong></td><td>静态配置,需要手动添加新操作系统</td><td>通过 <code>os-prober</code> 自动发现并添加操作系统,支持动态配置</td></tr><tr><td><strong>高级配置</strong></td><td>配置复杂且功能有限</td><td>支持更复杂的配置和脚本,例如条件引导、动态菜单生成等</td></tr><tr><td><strong>引导菜单界面</strong></td><td>基本文本模式</td><td>支持图形界面,自定义主题和菜单布局,提供更友好的用户体验</td></tr><tr><td><strong>性能优化</strong></td><td>性能优化有限</td><td>支持优化和调整,如减少启动超时,按需加载模块以提高启动速度</td></tr></tbody></table></div>
<h2 id="grub-安装">GRUB 安装<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-安装" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="在不同操作系统上安装-grub">在不同操作系统上安装 GRUB<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#在不同操作系统上安装-grub" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<h4 id="linux-发行版">Linux 发行版<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#linux-发行版" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p><strong>在大多数 Linux 发行版中GRUB 通常作为默认的引导加载器自动安装</strong>,但在某些情况下可能需要手动安装或修复。以下是在常见 Linux 发行版上安装 GRUB 的基本步骤:</p>
<ul>
<li>
<p><strong>Ubuntu</strong>Ubuntu 在安装过程中会自动安装 GRUB。若需要手动安装可以使用以下命令</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
<p>其中,<code>/dev/sda</code> 表示要安装 GRUB 的硬盘。<strong>如果需要修复 GRUB例如由于分区表变动导致 GRUB 无法启动),可以使用 Ubuntu Live CD 或 USB 启动系统,然后在 Live 环境下安装和更新 GRUB。</strong></p>
</li>
<li>
<p><strong>CentOS</strong>CentOS 也在安装过程中自动安装 GRUB。手动安装的步骤与 Ubuntu 类似,使用以下命令:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-mkconfig</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -o</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /boot/grub2/grub.cfg</span></span></code></pre></figure>
<p>需要注意的是,在 CentOS 7 及以后GRUB 2 是默认的引导加载器,配置文件位置和命令与 GRUB Legacy 略有不同。</p>
</li>
</ul>
<h4 id="双系统windows--linux">双系统Windows + Linux<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#双系统windows--linux" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>在双系统Windows + Linux环境中GRUB 通常被用来管理启动顺序,使用户可以在系统启动时选择进入 Windows 或 Linux。在这种环境下安装 GRUB需要考虑以下步骤</p>
<ol>
<li>
<p><strong>安装顺序</strong>:通常**建议先安装 Windows再安装 Linux。**这是因为 Windows 的引导加载器会覆盖 MBR而 Linux 在安装时可以自动检测 Windows 并配置 GRUB 以引导 Windows。</p>
</li>
<li>
<p><strong>安装 GRUB</strong>:在安装 Linux 时,选择安装 GRUB 到主硬盘的 MBR通常是 <code>/dev/sda</code>),这将使 GRUB 成为默认的引导加载器。在安装完成后GRUB 将会自动检测 Windows 并在启动菜单中列出。</p>
</li>
<li>
<p>**修复 GRUB**如果 Windows 更新或修复过程中覆盖了 GRUB可以使用 Linux Live CD 启动系统,然后使用以下命令重新安装和配置 GRUB</p>
</li>
</ol>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
<h4 id="在-uefi-和-legacy-bios-模式下安装-grub-的区别">在 UEFI 和 Legacy BIOS 模式下安装 GRUB 的区别<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#在-uefi-和-legacy-bios-模式下安装-grub-的区别" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>在不同启动模式下安装 GRUB 需要考虑不同的配置和操作方法。</p>
<ul>
<li>
<p><strong>Legacy BIOS 模式</strong>
在 Legacy BIOS 模式下GRUB 通常安装在 MBR 中(即硬盘的第一个扇区)。在安装 GRUB 时,需要确保目标磁盘使用 MBR 分区表格式,并在 MBR 中安装 GRUB 的 Stage 1 部分。安装命令一般为:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span></code></pre></figure>
<p>此外,还需要生成或更新 <code>grub.cfg</code> 文件,以确保 GRUB 能够正确加载操作系统。</p>
</li>
<li>
<p><strong>UEFI 模式</strong>
在 UEFI 模式下GRUB 通常安装在 EFI 系统分区ESP并且要求硬盘使用 GPT 分区表格式。UEFI 模式不使用 MBR因此 GRUB 需要安装到 ESP 中,并以 <code>.efi</code> 文件的形式存在。安装 GRUB 时,通常指定 <code>--target=x86_64-efi</code> 参数:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --target=x86_64-efi</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --efi-directory=/boot/efi</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bootloader-id=GRUB</span></span></code></pre></figure>
<p>这会在 ESP 中创建一个 GRUB 目录,并将 GRUB 的 EFI 文件放入其中。</p>
</li>
</ul>
<h3 id="grub2-install-命令"><code>grub2-install</code> 命令<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub2-install-命令" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><code>grub2-install</code> 是用于安装 GRUB 引导加载器的命令。它的基本语法为:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> [选项] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">&lt;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">目标设备</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">></span></span></code></pre></figure>
<p>常见参数包括:</p>
<div class="table-container"><table><thead><tr><th><strong>参数</strong></th><th><strong>描述</strong></th><th><strong>适用情况</strong></th></tr></thead><tbody><tr><td><code>--target</code></td><td>指定目标平台,定义 GRUB 将要安装的架构或平台。常见的值包括 <code>i386-pc</code>Legacy BIOS<code>x86_64-efi</code>UEFI</td><td>用于选择 GRUB 安装的架构或平台。</td></tr><tr><td><code>--efi-directory</code></td><td>指定 EFI 系统分区的挂载点。在 UEFI 模式下使用GRUB 必须安装在此分区的 <code>/EFI</code> 子目录下。</td><td>仅在 UEFI 模式下使用。</td></tr><tr><td><code>--boot-directory</code></td><td>指定 GRUB 安装目录,通常是 <code>/boot</code>。GRUB 的核心文件将被安装在此目录。</td><td>用于定义 GRUB 安装的路径。</td></tr><tr><td><code>--recheck</code></td><td>重新检测目标设备。如果在初次安装时设备信息发生变化,使用此选项可确保 GRUB 正确识别设备。</td><td>用于修正设备检测问题。</td></tr><tr><td><code>--force</code></td><td>强制安装 GRUB即使检测到可能的冲突或警告。适用于在安装过程中遇到错误时进行尝试。</td><td>用于在可能冲突的情况下强制安装。</td></tr></tbody></table></div>
<h4 id="在不同的分区方案mbr-和-gpt下使用-grub-install">在不同的分区方案MBR 和 GPT下使用 <code>grub-install</code><a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#在不同的分区方案mbr-和-gpt下使用-grub-install" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>在使用 <code>grub-install</code> 命令时分区方案MBR 或 GPT决定了 GRUB 的安装位置和方式。</p>
<h5 id="mbrmaster-boot-record">MBRMaster Boot Record<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#mbrmaster-boot-record" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h5>
<p>对于 MBR 分区表,<code>grub-install</code> 通常将 GRUB 的 Stage 1 部分安装到 MBR即硬盘的第一个扇区。这是 Legacy BIOS 模式下的常见方法:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span></code></pre></figure>
<p>安装完成后GRUB 会将控制权转移给 Stage 1.5 或 Stage 2 部分,并加载操作系统内核。</p>
<h5 id="gptguid-partition-table">GPTGUID Partition Table<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#gptguid-partition-table" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h5>
<p>在 GPT 分区表下,如果使用 Legacy BIOS 模式引导GRUB 仍然可以安装在一个特殊的 BIOS 引导分区中。对于 UEFI 模式GRUB 则安装在 EFI 系统分区ESP</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --target=x86_64-efi</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --efi-directory=/boot/efi</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bootloader-id=GRUB</span></span></code></pre></figure>
<p>在这种情况下GRUB 不会占用 MBR而是通过 EFI 固件直接启动。</p>
<h4 id="将-grub-安装到特定磁盘或分区">将 GRUB 安装到特定磁盘或分区<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#将-grub-安装到特定磁盘或分区" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>有时需要将 GRUB 安装到特定的磁盘或分区,例如在多硬盘系统中选择某个硬盘作为主引导盘。可以使用 <code>grub-install</code> 命令指定目标设备:</p>
<h5 id="安装到特定磁盘">安装到特定磁盘<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#安装到特定磁盘" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h5>
<p>如果要将 GRUB 安装到特定的硬盘,例如 <code>/dev/sdb</code>,可以使用:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sdb</span></span></code></pre></figure>
<p>这会将 GRUB 的引导加载器部分安装到 <code>/dev/sdb</code> 的 MBR 或 EFI 系统分区中。</p>
<h5 id="安装到特定分区">安装到特定分区<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#安装到特定分区" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h5>
<p>在某些情况下,可能需要将 GRUB 安装到特定分区(例如双引导设置中)。这种情况下,需要特别小心,因为在分区中安装 GRUB 可能会带来一些引导问题,通常不推荐这种做法,但可以通过指定目标分区来实现:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span></span></code></pre></figure>
<p>这会将 GRUB 的 Stage 1 部分安装到指定的分区中,但通常这种方式仅用于链式引导等特殊情况。</p>
<h2 id="grub-配置文件">GRUB 配置文件<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-配置文件" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="grubcfg-文件"><code>grub.cfg</code> 文件<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grubcfg-文件" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><code>grub.cfg</code> 是 GRUB 2.x 的主要配置文件,通常位于 <code>/boot/grub/</code><code>/boot/grub2/</code> 目录下。这个文件由 <code>grub-mkconfig</code> 工具自动生成,包含了 GRUB 启动菜单的所有配置项。<code>grub.cfg</code> 的结构包括以下几个主要部分:</p>
<ul>
<li><strong>Global Settings全局设置</strong>:定义 GRUB 的全局设置,如默认启动项、超时时间、终端输出等。通常位于文件的开头部分。</li>
<li><strong>Menu Entries菜单项</strong>:定义每个操作系统或内核的启动项。每个启动项通常以 <code>menuentry</code> 关键字开头,后面跟随启动项的名称和启动配置。</li>
<li><strong>Modules and Additional Settings模块和其他设置</strong>:包含 GRUB 加载的模块以及其他特定设置,例如图形界面、密码保护等。</li>
</ul>
<h3 id="grub-基本语法">Grub 基本语法<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-基本语法" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<div class="table-container"><table><thead><tr><th><strong>语法元素</strong></th><th><strong>说明</strong></th><th><strong>示例</strong></th></tr></thead><tbody><tr><td><strong>注释</strong></td><td>使用 <code>#</code> 符号添加注释。注释内容不会被 GRUB 解析,用于在配置文件中添加说明或备注。</td><td><code># 这是一个注释</code></td></tr><tr><td><strong>变量</strong></td><td>使用 <code>set</code> 关键字定义和设置变量。变量可用于存储配置选项,如默认启动项、根文件系统路径等。</td><td><code>set default=0</code> <code>set root=(hd0,1)</code></td></tr><tr><td><strong>命令和选项</strong></td><td>GRUB 使用类似脚本的语法定义启动选项。常用命令包括:</td><td></td></tr><tr><td><strong><code>set</code></strong></td><td>用于定义和设置环境变量,如设置启动项、根目录等。</td><td><code>set default=0</code> <code>set timeout=10</code></td></tr><tr><td><strong><code>linux</code></strong></td><td>加载内核并指定内核参数。通常用于定义启动的内核文件及其参数。</td><td><code>linux /vmlinuz root=/dev/sda1</code></td></tr><tr><td><strong><code>initrd</code></strong></td><td>指定初始 RAM 磁盘映像initramfs为内核启动提供必要的驱动程序和工具。</td><td><code>initrd /initrd.img</code></td></tr><tr><td><strong><code>boot</code></strong></td><td>启动内核和初始 RAM 磁盘,开始操作系统的引导过程。</td><td><code>boot</code></td></tr><tr><td><strong><code>menuentry</code></strong></td><td>定义启动菜单中的条目,每个条目表示一个可启动的操作系统或内核版本。</td><td><code>menuentry &quot;Ubuntu&quot; { ... }</code></td></tr><tr><td><strong><code>insmod</code></strong></td><td>加载 GRUB 模块,用于添加支持特定功能的模块,如文件系统、网络等。</td><td><code>insmod ext2</code></td></tr><tr><td><strong><code>search</code></strong></td><td>搜索指定的设备或分区,通常用于查找启动文件或内核。</td><td><code>search --no-floppy --fs-uuid --set=root</code></td></tr><tr><td><strong><code>configfile</code></strong></td><td>引用另一个配置文件。用于将配置文件分成多个部分,以简化管理。</td><td><code>configfile /boot/grub/custom.cfg</code></td></tr><tr><td><strong><code>if</code><code>else</code></strong></td><td>条件判断,允许根据不同条件执行不同的配置或命令。</td><td><code>if [ &quot;$grub_platform&quot; = &quot;efi&quot; ]; then ...</code></td></tr></tbody></table></div>
<p>虽然 <code>grub.cfg</code> 是可以手动编辑的,但不建议直接修改这个文件,原因如下:</p>
<ul>
<li><strong>自动生成</strong><code>grub.cfg</code> 通常由 <code>grub-mkconfig</code> 自动生成,手动编辑的修改在下次更新时可能会被覆盖。</li>
<li><strong>复杂性</strong><code>grub.cfg</code> 文件可能包含复杂的逻辑和脚本,手动修改容易引入错误,导致系统无法启动。</li>
<li><strong>安全性</strong>:错误的配置可能导致系统无法启动或引发安全漏洞,因此建议通过修改 <code>/etc/default/grub</code> 和相关脚本来间接配置 GRUB然后生成新的 <code>grub.cfg</code> 文件。</li>
</ul>
<h3 id="grub-菜单项的定义和配置">GRUB 菜单项的定义和配置<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-菜单项的定义和配置" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><code>grub.cfg</code> 文件中,菜单项是由 <code>menuentry</code> 关键字定义的,每个菜单项通常包括以下内容:</p>
<ul>
<li><strong>菜单项名称</strong><code>menuentry 'Ubuntu'</code> 定义了显示在启动菜单中的名称。</li>
<li><strong>内核加载</strong>:使用 <code>linux</code> 命令加载指定的内核映像,例如 <code>linux /vmlinuz-5.4.0-42-generic root=/dev/sda1</code></li>
<li><strong>初始内存盘</strong>:使用 <code>initrd</code> 命令加载内核的初始内存盘initrd例如 <code>initrd /initrd.img-5.4.0-42-generic</code></li>
<li><strong>额外参数</strong>:可以为内核传递额外的启动参数,例如 <code>quiet splash</code>,这些参数通常通过 <code>GRUB_CMDLINE_LINUX_DEFAULT</code> 变量定义。</li>
</ul>
<h3 id="etcdefaultgrub-配置文件"><code>/etc/default/grub</code> 配置文件<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#etcdefaultgrub-配置文件" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><code>/etc/default/grub</code> 是 GRUB 的主配置文件之一,用户可以通过修改该文件来影响 GRUB 的行为。常见的配置选项包括:</p>
<div class="table-container"><table><thead><tr><th><strong>配置项</strong></th><th><strong>说明</strong></th><th><strong>作用</strong></th><th><strong>示例</strong></th></tr></thead><tbody><tr><td><strong><code>GRUB_DEFAULT</code></strong></td><td>设置 GRUB 的默认启动项。可以是菜单项的索引(从 0 开始计数)或 <code>saved</code>(表示上次启动的菜单项)。</td><td>确定系统启动时默认选择的启动项。</td><td><code>GRUB_DEFAULT=0</code> <code>GRUB_DEFAULT=saved</code></td></tr><tr><td><strong><code>GRUB_TIMEOUT</code></strong></td><td>设置 GRUB 启动菜单显示的超时时间单位为秒。超时后GRUB 将自动启动默认项。如果设置为 <code>-1</code>,则菜单将无限期显示。</td><td>控制 GRUB 菜单显示的时间长度。</td><td><code>GRUB_TIMEOUT=5</code> <code>GRUB_TIMEOUT=-1</code></td></tr><tr><td><strong><code>GRUB_DISTRIBUTOR</code></strong></td><td>指定 GRUB 菜单中显示的操作系统名称。通常由发行版自动设置,不建议手动修改。</td><td>设置菜单中显示的操作系统名称。</td><td><code>GRUB_DISTRIBUTOR=&quot;Ubuntu&quot;</code></td></tr><tr><td><strong><code>GRUB_CMDLINE_LINUX</code></strong></td><td>为所有 Linux 内核启动项传递通用的内核参数。这些参数将在所有启动项中生效。</td><td>定义内核启动时使用的通用参数,影响所有内核启动项。</td><td><code>GRUB_CMDLINE_LINUX=&quot;nomodeset&quot;</code></td></tr><tr><td><strong><code>GRUB_CMDLINE_LINUX_DEFAULT</code></strong></td><td>为默认启动项传递的内核参数,通常用于设置用户友好的启动体验(如减少启动时的屏幕输出)。仅在默认启动项中生效。</td><td>配置默认启动项时的特定内核参数。</td><td><code>GRUB_CMDLINE_LINUX_DEFAULT=&quot;quiet splash&quot;</code></td></tr><tr><td><strong><code>GRUB_BACKGROUND</code></strong></td><td>设置 GRUB 启动菜单的背景图片。可以指定图片的路径。</td><td>更改 GRUB 启动菜单的视觉效果。</td><td><code>GRUB_BACKGROUND=&quot;/boot/grub/background.png&quot;</code></td></tr><tr><td><strong><code>GRUB_HIDDEN_TIMEOUT</code></strong></td><td>设置隐藏 GRUB 菜单的超时时间(单位为秒)。如果设置为 <code>0</code>,菜单将被隐藏并直接启动默认项。</td><td>控制 GRUB 菜单是否在启动时显示。</td><td><code>GRUB_HIDDEN_TIMEOUT=0</code> <code>GRUB_HIDDEN_TIMEOUT=2</code></td></tr><tr><td><strong><code>GRUB_HIDDEN_TIMEOUT_QUIET</code></strong></td><td>如果启用,将在 GRUB 菜单隐藏时不显示任何提示。</td><td>控制菜单隐藏时是否显示提示。</td><td><code>GRUB_HIDDEN_TIMEOUT_QUIET=true</code></td></tr><tr><td><strong><code>GRUB_GFXMODE</code></strong></td><td>设置 GRUB 菜单的分辨率模式。可以设置为具体的分辨率(如 <code>1024x768</code>)。</td><td>配置 GRUB 菜单的显示分辨率。</td><td><code>GRUB_GFXMODE=1024x768</code></td></tr><tr><td><strong><code>GRUB_TERMINAL</code></strong></td><td>设置 GRUB 的终端类型。可以设置为 <code>console</code><code>gfxterm</code></td><td>决定 GRUB 使用文本模式还是图形模式。</td><td><code>GRUB_TERMINAL=console</code> <code>GRUB_TERMINAL=gfxterm</code></td></tr><tr><td><strong><code>GRUB_TERMINAL_OUTPUT</code></strong></td><td>设置 GRUB 的终端输出方式,可以选择 <code>console</code>(文本模式)或 <code>gfxterm</code>(图形模式)。</td><td>配置 GRUB 的输出显示方式。</td><td><code>GRUB_TERMINAL_OUTPUT=console</code> <code>GRUB_TERMINAL_OUTPUT=gfxterm</code></td></tr><tr><td><strong><code>GRUB_SAVEDEFAULT</code></strong></td><td>如果启用GRUB 将记住上一次启动的菜单项,并在下次启动时默认选择该项。</td><td>使 GRUB 记住并自动选择上次启动的菜单项。</td><td><code>GRUB_SAVEDEFAULT=true</code></td></tr><tr><td><strong><code>GRUB_DISABLE_RECOVERY</code></strong></td><td>如果启用,将禁用 GRUB 菜单中的恢复模式。</td><td>控制是否在 GRUB 菜单中显示恢复模式选项。</td><td><code>GRUB_DISABLE_RECOVERY=true</code></td></tr></tbody></table></div>
<h3 id="使用-grub-mkconfig-生成-grub-配置文件">使用 <code>grub-mkconfig</code> 生成 GRUB 配置文件<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#使用-grub-mkconfig-生成-grub-配置文件" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><code>grub-mkconfig</code> 是生成 <code>grub.cfg</code> 文件的工具,它会自动扫描系统中的操作系统和内核,并生成相应的启动项。基本用法为:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-mkconfig</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -o</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /boot/grub/grub.cfg</span></span></code></pre></figure>
<div class="table-container"><table><thead><tr><th><strong>选项</strong></th><th><strong>说明</strong></th><th><strong>作用</strong></th><th><strong>示例</strong></th></tr></thead><tbody><tr><td><strong><code>-o, --output</code></strong></td><td>指定生成的 GRUB 配置文件的路径。</td><td>用于指定生成的 <code>grub.cfg</code> 文件的位置。</td><td><code>-o /boot/grub/grub.cfg</code></td></tr><tr><td><strong><code>--config-file</code></strong></td><td>指定一个替代的 GRUB 配置文件路径。</td><td>允许使用指定的配置文件而不是默认的 <code>grub.cfg</code> 文件。</td><td><code>--config-file /etc/grub.custom.cfg</code></td></tr><tr><td><strong><code>--directory</code></strong></td><td>指定 GRUB 安装目录,其中包含 GRUB 模块和其他文件。</td><td>用于设置 GRUB 模块的位置。</td><td><code>--directory /boot/grub</code></td></tr><tr><td><strong><code>--default</code></strong></td><td>设置默认启动项。</td><td>配置默认启动项的编号。</td><td><code>--default 1</code></td></tr><tr><td><strong><code>--output-format</code></strong></td><td>设置输出格式,可以是 <code>grub</code><code>plaintext</code></td><td>控制生成的配置文件格式。</td><td><code>--output-format grub</code></td></tr><tr><td><strong><code>--no-nice</code></strong></td><td>禁用生成配置文件时的优雅显示。</td><td>使 <code>grub-mkconfig</code> 不显示任何额外的信息。</td><td><code>--no-nice</code></td></tr><tr><td><strong><code>--no-legacy</code></strong></td><td>禁用旧版 GRUB 配置文件的生成。</td><td>防止生成兼容旧版 GRUB 的配置。</td><td><code>--no-legacy</code></td></tr><tr><td><strong><code>--help</code></strong></td><td>显示帮助信息。</td><td>提供 <code>grub-mkconfig</code> 命令的使用帮助。</td><td><code>--help</code></td></tr><tr><td><strong><code>--version</code></strong></td><td>显示 <code>grub-mkconfig</code> 的版本信息。</td><td>显示当前安装的 <code>grub-mkconfig</code> 版本。</td><td><code>--version</code></td></tr><tr><td><strong><code>--verbose</code></strong></td><td>显示详细输出。</td><td>输出详细的处理信息。</td><td><code>--verbose</code></td></tr><tr><td><strong><code>--quiet</code></strong></td><td>减少输出信息。</td><td>减少生成配置时的屏幕输出。</td><td><code>--quiet</code></td></tr><tr><td><strong><code>--chroot</code></strong></td><td>在指定的 chroot 环境中运行。</td><td>在指定的 chroot 环境中生成 GRUB 配置。</td><td><code>--chroot /mnt/root</code></td></tr><tr><td><strong><code>--force</code></strong></td><td>强制生成配置文件,即使在检测到潜在问题时。</td><td>忽略警告和错误,强制生成配置文件。</td><td><code>--force</code></td></tr></tbody></table></div>
<h2 id="grub-高级配置">GRUB 高级配置<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-高级配置" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="grub-配置文件的结构和语法">GRUB 配置文件的结构和语法<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-配置文件的结构和语法" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>在 GRUB 配置文件 <code>grub.cfg</code> 中,配置的基本单位是 <code>menuentry</code>它定义了启动菜单中的每一个选项。此外GRUB 还支持子菜单(<code>submenu</code>)结构,用于组织复杂的引导选项。</p>
<h4 id="menuentry-块"><code>menuentry</code><a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#menuentry-块" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p><code>menuentry</code> 是定义单个启动项的基本结构。每个启动项通常包括操作系统名称、内核路径、初始化内存盘路径、以及内核参数。例如:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>menuentry 'Ubuntu, with Linux 5.4.0-42-generic' {</span></span>
<span data-line><span> set root='hd0,msdos1'</span></span>
<span data-line><span> linux /vmlinuz-5.4.0-42-generic root=/dev/sda1 ro quiet splash</span></span>
<span data-line><span> initrd /initrd.img-5.4.0-42-generic</span></span>
<span data-line><span>}</span></span></code></pre></figure>
<ul>
<li><code>set root='hd0,msdos1'</code>:设置引导分区。</li>
<li><code>linux</code>:指定内核路径和启动参数。</li>
<li><code>initrd</code>:指定初始化内存盘的路径。</li>
</ul>
<h4 id="submenu-块"><code>submenu</code><a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#submenu-块" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p><code>submenu</code> 用于创建包含多个启动项的子菜单,便于在复杂的多操作系统或多内核环境中管理启动选项。例如:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>submenu 'Advanced options for Ubuntu' {</span></span>
<span data-line><span> menuentry 'Ubuntu, with Linux 5.4.0-42-generic' {</span></span>
<span data-line><span> linux /vmlinuz-5.4.0-42-generic root=/dev/sda1 ro quiet splash</span></span>
<span data-line><span> initrd /initrd.img-5.4.0-42-generic</span></span>
<span data-line><span> }</span></span>
<span data-line><span> menuentry 'Ubuntu, with Linux 5.4.0-40-generic' {</span></span>
<span data-line><span> linux /vmlinuz-5.4.0-40-generic root=/dev/sda1 ro quiet splash</span></span>
<span data-line><span> initrd /initrd.img-5.4.0-40-generic</span></span>
<span data-line><span> }</span></span>
<span data-line><span>}</span></span></code></pre></figure>
<p>在启动菜单中,用户可以选择进入子菜单,然后选择特定的启动项。</p>
<h3 id="使用-insmod-加载模块的配置方法">使用 <code>insmod</code> 加载模块的配置方法<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#使用-insmod-加载模块的配置方法" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 的模块化设计允许通过 <code>insmod</code> 命令按需加载功能模块,例如文件系统支持、图形界面支持等。<code>insmod</code> 通常在 <code>grub.cfg</code> 文件的顶部或 <code>menuentry</code> 块中使用。例如:</p>
<pre><code>insmod part_gpt
insmod ext2
</code></pre>
<ul>
<li><code>part_gpt</code>:加载 GPT 分区表支持模块。</li>
<li><code>ext2</code>:加载 ext2/3/4 文件系统支持模块。</li>
</ul>
<p>加载模块的顺序很重要,因为某些模块可能依赖其他模块。<code>insmod</code> 命令可以在启动时手动使用,也可以在配置文件中自动执行。</p>
<h3 id="通过-set-指令配置-grub-的环境变量">通过 <code>set</code> 指令配置 GRUB 的环境变量<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#通过-set-指令配置-grub-的环境变量" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 允许使用 <code>set</code> 指令配置环境变量,这些变量可以用于控制引导流程的各个方面。例如:</p>
<pre><code>set timeout=5
set default=0
</code></pre>
<ul>
<li><code>timeout</code>:设置引导菜单的超时时间。</li>
<li><code>default</code>:设置默认的启动项。</li>
</ul>
<p>这些变量在启动时会影响 GRUB 的行为。此外,还可以定义自定义变量,用于复杂的引导逻辑控制。例如:</p>
<pre><code>set fallback_entry=2
</code></pre>
<p>自定义变量可以在条件语句中使用,以实现更复杂的启动方案。</p>
<h3 id="使用环境变量和内核参数自定义引导菜单">使用环境变量和内核参数自定义引导菜单<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#使用环境变量和内核参数自定义引导菜单" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><strong>使用 GRUB 环境变量控制引导流程</strong>
GRUB 环境变量用于动态控制引导菜单的行为。这些变量可以通过 <code>set</code> 指令定义,并在 <code>grub.cfg</code> 中使用。例如,使用 <code>GRUB_DEFAULT=saved</code> 可以保存上次的启动选择,并在下次启动时自动选择相同的启动项。</p>
<ul>
<li>
<p><strong>保存上次的选择</strong></p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>set default=saved</span></span>
<span data-line><span>save_env default</span></span></code></pre></figure>
<p>这将允许 GRUB 在每次启动后保存默认启动项,并在下次启动时自动选择。</p>
</li>
<li>
<p><strong>使用条件语句</strong> 可以根据环境变量的值决定不同的启动流程。例如:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>if [ &quot;${timeout}&quot; -eq &quot;0&quot; ]; then</span></span>
<span data-line><span> set timeout_style=hidden</span></span>
<span data-line><span>fi</span></span></code></pre></figure>
<p>这段代码在超时时间为 0 时隐藏启动菜单。</p>
</li>
</ul>
<p><strong>在引导时传递内核参数以影响操作系统的启动行为</strong>
内核参数可以在引导时通过 GRUB 传递,以改变操作系统的启动行为。例如,在 <code>menuentry</code> 块中添加内核参数:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>menuentry 'Ubuntu, with Linux 5.4.0-42-generic' {</span></span>
<span data-line><span> linux /vmlinuz-5.4.0-42-generic root=/dev/sda1 ro quiet splash</span></span>
<span data-line><span> initrd /initrd.img-5.4.0-42-generic</span></span>
<span data-line><span>}</span></span></code></pre></figure>
<ul>
<li><strong><code>ro</code></strong>:使根文件系统以只读模式挂载。</li>
<li><strong><code>quiet splash</code></strong>:减少启动信息并显示启动动画。</li>
</ul>
<p>通过这些内核参数,用户可以控制内核的启动模式、日志输出、硬件配置等。高级用户可以利用这些参数解决特定硬件问题或调试启动过程。</p>
<h2 id="多重引导配置">多重引导配置<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#多重引导配置" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="配置-windows-和-linux-的双重引导">配置 Windows 和 Linux 的双重引导<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#配置-windows-和-linux-的双重引导" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>在同一台计算机上同时运行 Windows 和 Linux 操作系统是许多用户的常见需求GRUB 可以轻松管理这种双重引导配置。</p>
<ol>
<li>
<p><strong>安装顺序</strong>
**一般建议先安装 Windows然后安装 Linux。**这是因为 Windows 安装程序通常会覆盖 MBR 或 EFI 系统分区中的引导加载器,而 Linux 安装程序会检测到已有的 Windows 安装并配置 GRUB 以包含 Windows 的启动选项。</p>
</li>
<li>
<p><strong>Linux 安装时的引导配置</strong>
在 Linux 安装过程中,选择将 GRUB 安装到主硬盘的 MBR 或 EFI 系统分区中。Linux 安装程序通常会自动检测到 Windows 并生成相应的启动菜单项。例如Ubuntu 的安装程序会自动运行 <code>os-prober</code> 来检测 Windows并添加启动项到 GRUB 配置文件中。</p>
</li>
<li>
<p><strong>修复引导问题</strong>
如果 Windows 更新或重新安装后覆盖了 GRUB可以使用 Linux Live CD/USB 启动并修复 GRUB。具体步骤如下</p>
</li>
<li>
<p>启动 Linux Live 环境并打开终端。</p>
</li>
<li>
<p>挂载根分区和 EFI 系统分区(如果适用):</p>
<pre><code>sudo mount /dev/sda1 /mnt
sudo mount /dev/sda2 /mnt/boot/efi
</code></pre>
</li>
<li>
<p>安装 GRUB 并更新配置:</p>
<pre><code>sudo grub2-install --boot-directory=/mnt/boot /dev/sda
sudo chroot /mnt
sudo grub2-mkconfig -o /boot/grub/grub.cfg
</code></pre>
</li>
</ol>
<h3 id="配置多个-linux-发行版的引导">配置多个 Linux 发行版的引导<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#配置多个-linux-发行版的引导" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>在同一台计算机上安装多个 Linux 发行版时GRUB 可以管理这些系统的引导顺序和配置。</p>
<ol>
<li>
<p><strong>选择主引导加载器</strong>
通常选择一个主要的 Linux 发行版作为主引导加载器管理系统,其他发行版的 GRUB 可以安装到其根分区,而不是 MBR 或 EFI 系统分区。例如,使用 Ubuntu 的 GRUB 作为主引导加载器,其它发行版的 GRUB 安装到各自的根分区。</p>
</li>
<li>
<p><strong>更新主引导配置</strong>
在主引导管理系统中,使用 <code>sudo grub2-mkconfig -o /boot/grub/grub.cfg</code> 命令更新 GRUB 配置文件。<code>os-prober</code> 将自动检测到其他 Linux 发行版,并添加相应的启动项。如果检测不到,可以手动添加启动项。例如:</p>
</li>
</ol>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>menuentry 'Fedora' {</span></span>
<span data-line><span> set root='hd0,msdos2'</span></span>
<span data-line><span> linux /vmlinuz-linux root=/dev/sda2 ro quiet</span></span>
<span data-line><span> initrd /initramfs-linux.img</span></span>
<span data-line><span>}</span></span></code></pre></figure>
<ol>
<li><strong>解决冲突和兼容性问题</strong>
在多个 Linux 系统共存的情况下,内核参数或引导设置可能会冲突。例如,某些发行版可能需要特定的内核参数才能正确启动。可以通过调整 <code>grub.cfg</code><code>/etc/default/grub</code> 中的参数来解决这些问题。</li>
</ol>
<p>在多操作系统环境中,可能会出现以下兼容性问题:</p>
<ul>
<li><strong>文件系统兼容性</strong>Windows 通常使用 NTFS 文件系统,而 Linux 使用 ext4、btrfs 等文件系统。GRUB 需要通过加载相应的模块(如 <code>insmod ntfs</code>)来访问这些文件系统。</li>
<li><strong>Secure Boot</strong>:在启用 Secure Boot 的 UEFI 系统中GRUB 和 Linux 内核需要签名才能引导。如果安装的 Linux 发行版没有合适的签名文件,可能需要禁用 Secure Boot 或手动签名 GRUB 和内核。</li>
<li><strong>UEFI 与 Legacy BIOS 模式的混用</strong>:混用 UEFI 和 Legacy BIOS 模式可能导致引导问题,特别是在多操作系统环境中。如果系统采用 UEFI 模式安装,确保所有操作系统都使用相同的模式安装。</li>
</ul>
<h3 id="设置和管理不同操作系统的引导顺序">设置和管理不同操作系统的引导顺序<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#设置和管理不同操作系统的引导顺序" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><strong>调整引导顺序的技巧</strong>
在多系统引导环境中用户可能需要调整操作系统的引导顺序。GRUB 提供了多种方法来实现这一点:</p>
<ul>
<li>
<p><strong>编辑 <code>/etc/default/grub</code> 文件</strong>
修改 <code>GRUB_DEFAULT</code> 变量来设置默认启动项。例如,将默认启动项设置为 Windows</p>
<pre><code>GRUB_DEFAULT=&quot;Windows 10&quot;
</code></pre>
<p>然后运行 <code>update-grub</code> 更新配置文件。</p>
</li>
<li>
<p><strong>使用 <code>grub-set-default</code> 命令</strong>
该命令可以在引导菜单项之间切换默认启动项。查看当前的菜单项列表:</p>
<pre><code>sudo awk -F\' '/menuentry / {print $2}' /boot/grub/grub.cfg
</code></pre>
<p>设置新的默认启动项:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-set-default</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;Windows 10&quot;</span></span></code></pre></figure>
</li>
<li>
<p><strong>临时改变引导顺序</strong>
在 GRUB 启动菜单出现时,可以手动选择一个非默认启动项。按下 <code>e</code> 键可以编辑引导命令,修改后按 <code>F10</code> 键启动。这不会永久更改引导顺序。</p>
</li>
</ul>
<h3 id="解决-grub-更新后引导顺序变化的问题">解决 GRUB 更新后引导顺序变化的问题<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#解决-grub-更新后引导顺序变化的问题" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 更新后,默认启动项可能会意外改变,通常是因为新的内核或操作系统被检测到并设置为默认。</p>
<ul>
<li>
<p><strong>持久化设置</strong>
使用 <code>saved</code> 选项来保存用户的最后一次选择。确保在 <code>/etc/default/grub</code> 中配置如下:</p>
<pre><code>GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
</code></pre>
</li>
<li>
<p><strong>锁定默认项</strong>
如果不希望 GRUB 更新后改变默认启动项,可以在 <code>/etc/default/grub</code> 中设置具体的启动项名称:</p>
<pre><code>GRUB_DEFAULT=&quot;Ubuntu, with Linux 5.4.0-42-generic&quot;
</code></pre>
</li>
<li>
<p><strong>修复 <code>/etc/grub.d/</code> 脚本</strong>
检查 <code>/etc/grub.d/</code> 目录中的脚本,确保没有不必要的脚本导致意外的引导顺序变化。可以通过禁用或删除无用的脚本来控制菜单的生成。</p>
</li>
</ul>
<h3 id="使用-grub-的-os-prober-自动检测并添加其他操作系统">使用 GRUB 的 <code>os-prober</code> 自动检测并添加其他操作系统<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#使用-grub-的-os-prober-自动检测并添加其他操作系统" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p><code>os-prober</code> 是 GRUB 中的一个实用工具,用于自动检测系统中的其他操作系统,并将其添加到 GRUB 的启动菜单中。<code>os-prober</code> 通常与 <code>update-grub</code> 一起使用。</p>
<ul>
<li>
<p><strong>启用 <code>os-prober</code></strong>
默认情况下,<code>os-prober</code> 应该是启用的,可以通过检查 <code>/etc/default/grub</code> 中的设置来确认:</p>
<pre><code>GRUB_DISABLE_OS_PROBER=false
</code></pre>
<p>然后运行以下命令更新 GRUB 配置:</p>
<pre><code>sudo grub2-mkconfig -o /boot/grub/grub.cfg
</code></pre>
</li>
<li>
<p><strong>手动运行 <code>os-prober</code></strong>
如果系统未自动检测到其他操作系统,可以手动运行 <code>os-prober</code> 来检查:</p>
<pre><code>sudo os-prober
</code></pre>
<p>运行完毕后,重新生成 GRUB 配置:</p>
<pre><code>sudo grub2-mkconfig -o /boot/grub/grub.cfg
</code></pre>
</li>
<li>
<p><strong>排查 <code>os-prober</code> 问题</strong>
如果 <code>os-prober</code> 未能检测到某些操作系统,可能是因为文件系统未挂载或缺少文件系统支持模块。确保所有相关分区已挂载,并通过 <code>insmod</code> 加载必要的模块(如 <code>ntfs</code><code>ext2</code> 等)。</p>
</li>
</ul>
<h2 id="grub-命令行模式">GRUB 命令行模式<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-命令行模式" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="如何进入-grub-命令行模式">如何进入 GRUB 命令行模式<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#如何进入-grub-命令行模式" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 命令行模式是一种强大的工具,**允许用户在引导阶段直接输入命令来引导操作系统或进行系统调试。**进入 GRUB 命令行模式有几种方法:</p>
<ul>
<li><strong>从 GRUB 启动菜单进入</strong>
在系统启动时,如果看到 GRUB 启动菜单,可以按下 <code>c</code> 键直接进入 GRUB 命令行模式。这种方法适用于系统正常引导但需要手动控制启动过程的情况。</li>
<li><strong>在引导失败时自动进入</strong>
如果系统引导失败例如无法找到内核或引导配置文件损坏GRUB 可能会自动进入命令行模式。这是一个提示,表明需要手动引导或修复引导配置。</li>
<li><strong>从子菜单进入命令行</strong>
如果在 GRUB 启动菜单的高级选项或子菜单中,用户也可以通过按下 <code>c</code> 键进入命令行模式。这样可以在选择特定启动项之前先检查或修改启动参数。</li>
</ul>
<h3 id="grub-命令行的基本操作">GRUB 命令行的基本操作<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-命令行的基本操作" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>进入 GRUB 命令行模式后,用户会看到一个类似于 shell 的界面,可以直接输入命令。以下是 GRUB 命令行的基本操作特点:</p>
<div class="table-container"><table><thead><tr><th><strong>命令</strong></th><th><strong>说明</strong></th><th><strong>用途</strong></th><th><strong>示例</strong></th></tr></thead><tbody><tr><td><strong><code>set</code></strong></td><td>设置和显示 GRUB 环境变量</td><td>用于设置或显示 GRUB 的环境变量,如根分区、启动参数等。</td><td><strong>显示环境变量</strong> <code>set</code> <strong>设置根分区</strong> <code>set root=(hd0,msdos1)</code> <strong>设置启动参数</strong> <code>set default=0</code></td></tr><tr><td><strong><code>insmod</code></strong></td><td>加载 GRUB 模块</td><td>动态加载模块以支持特定功能,如文件系统或图形模式。</td><td><strong>加载文件系统模块</strong> <code>insmod ext2</code> <strong>加载视频模块</strong> <code>insmod vbe</code> <strong>加载 LVM 模块</strong> <code>insmod lvm</code></td></tr><tr><td><strong><code>linux</code></strong></td><td>指定要启动的内核及其启动参数</td><td>设置要引导的内核和传递给内核的启动参数。</td><td><strong>指定内核和启动参数</strong> <code>linux /vmlinuz-5.4.0-42-generic root=/dev/sda1 ro quiet splash</code></td></tr><tr><td><strong><code>initrd</code></strong></td><td>指定内核的初始 RAM 磁盘映像</td><td>设置内核启动时使用的初始 RAM 磁盘映像。</td><td><strong>指定 initrd 映像</strong> <code>initrd /initrd.img-5.4.0-42-generic</code></td></tr><tr><td><strong><code>boot</code></strong></td><td>启动操作系统</td><td>启动由 <code>linux</code><code>initrd</code> 命令加载的内核。</td><td><strong>启动内核</strong> <code>boot</code></td></tr><tr><td><strong><code>ls</code></strong></td><td>列出设备和分区</td><td>列出可用的磁盘、分区以及指定分区中的文件和目录。</td><td><strong>列出磁盘和分区</strong> <code>ls</code> <strong>查看分区内容</strong> <code>ls (hd0,msdos1)/</code></td></tr><tr><td><strong><code>search</code></strong></td><td>搜索文件或设备</td><td>查找指定的文件或设备,根据给定的条件。</td><td><strong>搜索内核文件</strong> <code>search --file --no-floppy /vmlinuz-5.4.0-42-generic</code></td></tr><tr><td><strong><code>root</code></strong></td><td>设置根分区</td><td>设置启动时的根分区。</td><td><strong>设置根分区</strong> <code>root=(hd0,msdos1)</code></td></tr><tr><td><strong><code>configfile</code></strong></td><td>加载配置文件</td><td>从指定路径加载 GRUB 配置文件。</td><td><strong>加载配置文件</strong> <code>configfile /boot/grub/grub.cfg</code></td></tr><tr><td><strong><code>reboot</code></strong></td><td>重启系统</td><td>重新启动计算机。</td><td><strong>重启系统</strong> <code>reboot</code></td></tr><tr><td><strong><code>halt</code></strong></td><td>关闭系统</td><td>关闭计算机。</td><td><strong>关闭系统</strong> <code>halt</code></td></tr></tbody></table></div>
<h3 id="grub-命令行手动引导操作系统">GRUB 命令行手动引导操作系统<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-命令行手动引导操作系统" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>当自动引导失败或需要临时更改引导参数时,可以手动加载内核并启动操作系统。以下是手动引导 Linux 系统的步骤:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 1. 设置根分区</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">set</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">hd0,msdos1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 2. 加载内核</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">linux</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /vmlinuz-5.4.0-42-generic</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root=/dev/sda1</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ro</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> quiet</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> splash</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 3. 加载 initrd</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">initrd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /initrd.img-5.4.0-42-generic</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 4. 启动系统</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">boot</span></span></code></pre></figure>
<h3 id="常见问题的诊断和修复方法">常见问题的诊断和修复方法<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#常见问题的诊断和修复方法" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>引导失败可能发生在 GRUB 安装或更新后,导致系统无法启动。以下是一些常见的原因和解决方法:</p>
<h4 id="错误的引导加载器安装">错误的引导加载器安装<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#错误的引导加载器安装" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>重新安装 GRUB 可以解决大多数引导失败问题。首先,使用 Live CD/USB 启动系统,挂载系统分区,然后重新安装 GRUB。</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 1. 启动到 Live CD/USB</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 2. 挂载根文件系统</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># (假设 /dev/sda1 是根分区,实际分区可能有所不同)</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 3. 如果使用 UEFI还需要挂载 EFI 分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda2</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/boot/efi</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># (假设 /dev/sda2 是 EFI 分区)</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 4. 安装 GRUB</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub-install</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --root-directory=/mnt</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 5. 更新 GRUB 配置</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> chroot</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">exit</span></span></code></pre></figure>
<h4 id="引导分区丢失或损坏">引导分区丢失或损坏<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#引导分区丢失或损坏" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h4>
<p>如果引导分区丢失或损坏,可以尝试以下步骤来恢复或重新创建引导分区:</p>
<ol>
<li>
<p><strong>检查分区表和分区类型</strong> 确保分区表MBR 或 GPT与当前系统配置一致。使用工具如 <code>fdisk</code><code>parted</code> 检查分区表和分区类型:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> fdisk</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -l</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> parted</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -l</span></span></code></pre></figure>
</li>
<li>
<p><strong>恢复引导分区</strong></p>
<ul>
<li>
<p><strong>创建新的引导分区</strong> 使用分区工具(如 <code>gparted</code><code>fdisk</code>)创建新的引导分区。请确保选择正确的文件系统(如 ext4 或 FAT32取决于你的系统配置</p>
</li>
<li>
<p><strong>重新安装 GRUB</strong> 挂载引导分区和根分区,并重新安装 GRUB。请参考以下步骤</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 假设 /dev/sda1 是根分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/dev</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /proc</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/proc</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /sys</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/sys</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda2</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/boot/efi</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 如果使用 UEFI假设 /dev/sda2 是 EFI 分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> chroot</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">grub-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">update-grub</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">exit</span></span></code></pre></figure>
</li>
</ul>
</li>
<li>
<p><strong>验证分区和 GRUB 配置</strong> 确保分区和 GRUB 配置文件正确无误。检查 <code>/etc/fstab</code> 文件中的分区设置是否正确,以确保系统能够正确挂载分区。</p>
</li>
</ol>
<h3 id="解决-grub-菜单不显示或错误加载的问题">解决 GRUB 菜单不显示或错误加载的问题<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#解决-grub-菜单不显示或错误加载的问题" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>如果 GRUB 菜单不显示或加载错误,可以尝试以下方法解决问题:</p>
<ol>
<li>
<p><strong>检查 GRUB 配置文件</strong> 确保 <code>/etc/default/grub</code> 文件中的配置正确,并且 GRUB 配置文件 <code>/boot/grub/grub.cfg</code> 已正确生成。可以运行以下命令来重新生成配置文件:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
</li>
<li>
<p><strong>重新安装 GRUB</strong> 如果菜单项不显示或 GRUB 引导程序损坏,可以重新安装 GRUB。以下步骤适用于 BIOS 和 UEFI 系统:</p>
<ul>
<li>
<p><strong>BIOS 系统</strong></p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
</li>
<li>
<p><strong>UEFI 系统</strong></p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 假设 /dev/sda1 是根分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/dev</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /proc</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/proc</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bind</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /sys</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/sys</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda2</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/boot/efi</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 假设 /dev/sda2 是 EFI 分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> chroot</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">grub-install</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --target=x86_64-efi</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --efi-directory=/boot/efi</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --bootloader-id=grub</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">update-grub</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">exit</span></span></code></pre></figure>
</li>
</ul>
</li>
<li>
<p><strong>检查文件系统的完整性</strong> 使用 <code>fsck</code> 工具检查并修复文件系统错误。如果 GRUB 菜单项无法加载,可能是由于文件系统损坏:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> fsck</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span></span></code></pre></figure>
</li>
</ol>
<h3 id="使用-live-cd-或-live-usb-修复损坏的-grub-安装">使用 Live CD 或 Live USB 修复损坏的 GRUB 安装<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#使用-live-cd-或-live-usb-修复损坏的-grub-安装" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>Live CD/USB 可以提供一个临时的操作环境,用于修复系统问题,包括 GRUB 安装问题。以下是进入救援模式的步骤:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 1. 启动 Live CD/USB 并进入 Live 环境</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 2. 挂载系统分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 如果使用 UEFI还需挂载 EFI 分区</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda2</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/boot/efi</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 3. 进入 chroot 环境</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> chroot</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 4. 重新安装 GRUB</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">grub-install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 5. 更新 GRUB 配置</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">update-grub</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 6. 退出 chroot 环境并卸载分区</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">exit</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> umount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt/boot/efi</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> umount</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /mnt</span></span></code></pre></figure>
<h2 id="grub-安全配置">GRUB 安全配置<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-安全配置" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="设置-grub-密码保护">设置 GRUB 密码保护<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#设置-grub-密码保护" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 密码保护是一种有效的措施,用于防止未经授权的用户修改 GRUB 菜单项或启动参数,从而提高系统安全性。以下是配置 GRUB 密码保护的步骤:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 1. 生成加密密码</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub-mkpasswd-pbkdf2</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 按提示输入密码后,命令会输出类似于以下的加密字符串</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.&lt;hash></span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 2. 编辑 GRUB 配置文件</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 打开配置文件并添加密码保护设置</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 通常是 /etc/grub.d/40_custom</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'set superusers=&quot;root&quot;'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> tee</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -a</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /etc/grub.d/40_custom</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'password_pbkdf2 root grub.pbkdf2.sha512.10000.&lt;hash>'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> tee</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -a</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /etc/grub.d/40_custom</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 3. 更新 GRUB 配置</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
<p>设置 GRUB 用户和密码涉及以下步骤:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 1. 定义用户</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 打开 /etc/grub.d/40_custom 文件,添加设置用户的指令</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 使用 echo 命令追加到文件中</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'set superusers=&quot;admin&quot;'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> tee</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -a</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /etc/grub.d/40_custom</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 2. 设置密码</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 使用 grub-mkpasswd-pbkdf2 生成加密密码,然后将其添加到配置文件中</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 例如:使用以下命令生成加密密码</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># sudo grub-mkpasswd-pbkdf2</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 输出类似于PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.&lt;hash></span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 将生成的 &lt;hash> 替换到下面命令中</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'password_pbkdf2 admin grub.pbkdf2.sha512.10000.&lt;hash>'</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> tee</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -a</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /etc/grub.d/40_custom</span></span>
<span data-line> </span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 3. 更新 GRUB 配置</span></span>
<span data-line><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 保存更改并更新 GRUB 配置</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
<h3 id="配置用户认证和访问控制">配置用户认证和访问控制<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#配置用户认证和访问控制" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 本身不支持细粒度的权限控制,但可以通过不同的配置文件和密码保护机制来实现基础的用户认证和访问控制。</p>
<ul>
<li><strong>单一用户模式</strong>
如果需要一个简单的保护机制,可以设置一个用户和一个密码,如上所述。这可以防止未授权的用户访问或修改引导菜单。</li>
<li><strong>多用户配置</strong>
虽然 GRUB 不原生支持多用户权限级别,但可以通过多重密码保护和分开管理不同的菜单项来模拟这种控制。例如,可以创建不同的菜单项,每个菜单项都有不同的密码保护。</li>
</ul>
<p>通过使用密码保护配置,可以控制哪些用户能够访问特定的菜单项:</p>
<p><code>/etc/grub.d/40_custom</code> 文件中,可以为每个菜单项设置不同的密码。例如</p>
<p>shell```shell</p>
<p>menuentry “Restricted OS” {</p>
<pre><code>set superusers=&quot;admin&quot;
password_pbkdf2 admin grub.pbkdf2.sha512.10000.&lt;hash>
linux /boot/vmlinuz-linux root=/dev/sda1
</code></pre>
<p>}</p>
<pre><code>
只有提供正确密码的用户才能访问 `&quot;Restricted OS&quot;` 菜单项。在需要高度安全性的环境中,可以考虑以下策略:
- **使用加密和保护配置文件**
确保 `/boot/grub/grub.cfg` 和 `/etc/grub.d/` 目录中的文件受到保护,防止未授权访问和修改。
- **定期更新密码**
定期更换 GRUB 密码,并更新配置文件和 GRUB 设置。
- **监控和审计**
监控系统的引导日志和配置文件的变更,以检测潜在的安全风险。
### 配置 GRUB 以支持系统的磁盘加密
GRUB 能够引导加密的操作系统,但需要额外的配置来处理加密磁盘。以下是配置 GRUB 以支持加密操作系统的步骤:
- **配置 GRUB 以支持 LUKS 加密磁盘**LUKSLinux Unified Key Setup是常用的加密解决方案。在 GRUB 配置文件中,需要确保 GRUB 能够识别和解密加密的磁盘分区。
- **编辑 GRUB 配置文件**:确保 GRUB 能够加载加密磁盘的模块。在 `/etc/grub.d/` 目录下的相关配置文件中,可以添加以下内容来加载加密支持:
```shell
insmod cryptodisk
insmod luks
</code></pre>
<ul>
<li>
<p><strong>配置加密磁盘</strong>:配置加密磁盘的详细信息。例如,如果加密分区是 <code>/dev/sda1</code>,可以在 <code>/etc/grub.d/40_custom</code> 中添加:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">menuentry</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;Encrypted Linux&quot;</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> {</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> insmod</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> cryptodisk</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> insmod</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> luks</span></span>
<span data-line><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> set</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root='cryptomount'</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> cryptomount</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -u</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> UUID</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> linux</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /vmlinuz-5.4.0-42-generic</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root=/dev/mapper/root</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ro</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> quiet</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> splash</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> initrd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /initrd.img-5.4.0-42-generic</span></span>
<span data-line><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></figure>
</li>
</ul>
<p><strong>配置 LUKS 加密磁盘与 GRUB 的兼容性</strong>
LUKS 加密磁盘需要 GRUB 能够正确解密。以下是配置步骤:</p>
<ul>
<li>
<p><strong>创建加密分区</strong>:使用 LUKS 工具创建加密分区。例如:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cryptsetup</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> luksFormat</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span></span></code></pre></figure>
</li>
<li>
<p><strong>打开加密分区</strong>:使用 LUKS 密钥解密分区,并创建映射:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cryptsetup</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> luksOpen</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /dev/sda1</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> cryptroot</span></span></code></pre></figure>
</li>
<li>
<p><strong>配置 initramfs</strong>:确保 <code>initramfs</code> 能够处理 LUKS 加密磁盘。更新 <code>initramfs</code> 以包含 LUKS 支持:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-initramfs</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -u</span></span></code></pre></figure>
</li>
</ul>
<p><strong>实现基于密码的加密磁盘解锁</strong>
加密磁盘解锁通常在引导时需要用户输入密码。以下是配置步骤:</p>
<ul>
<li>
<p><strong>配置 GRUB 提示解锁</strong>:在 GRUB 配置文件中,设置加密分区的 UUID并确保在引导时提示用户输入密码。</p>
</li>
<li>
<p><strong>配置加密解锁步骤</strong>:在 GRUB 配置中,添加用于解锁加密磁盘的设置:<code>cryptdevice=UUID=&lt;UUID>:cryptroot</code><code>/etc/default/grub</code> 中设置:</p>
<pre><code>GRUB_CMDLINE_LINUX=&quot;cryptdevice=UUID=&lt;UUID>:cryptroot&quot;
</code></pre>
</li>
<li>
<p><strong>更新 GRUB 和 initramfs</strong>:重新生成 GRUB 配置和 <code>initramfs</code></p>
<pre><code>sudo update-grub
sudo update-initramfs -u
</code></pre>
</li>
</ul>
<h2 id="grub-自定义与优化">GRUB 自定义与优化<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#grub-自定义与优化" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h2>
<h3 id="自定义-grub-菜单主题">自定义 GRUB 菜单主题<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#自定义-grub-菜单主题" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>自定义 GRUB 菜单的外观可以提升用户体验和系统的视觉美感。以下是自定义 GRUB 菜单主题的步骤:</p>
<ol>
<li>
<p><strong>准备自定义图片和资源</strong></p>
<ul>
<li>准备适合的背景图片,通常为 PNG 格式。</li>
<li>确保图片尺寸符合屏幕分辨率,以避免拉伸或失真。</li>
</ul>
</li>
<li>
<p><strong>安装 GRUB 主题包</strong>
可以通过下载现成的主题包或创建自己的主题包。常见的主题可以在网上找到,也可以通过系统的包管理器安装。例如,在 Ubuntu 中,可以安装 <code>grub2-themes</code> 包:</p>
</li>
</ol>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> apt-get</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> install</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> grub2-themes</span></span></code></pre></figure>
<ol>
<li>
<p><strong>配置自定义主题</strong>
编辑 GRUB 配置文件以应用自定义主题。首先,将主题文件放置在 <code>/boot/grub/themes/</code> 目录下,并确保主题文件夹包含 <code>theme.txt</code> 和相关资源文件。</p>
<ul>
<li><strong>设置背景图片</strong>:在 <code>theme.txt</code> 中,设置背景图片路径:</li>
</ul>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span> # Background image</span></span>
<span data-line><span> background_image /boot/grub/themes/mytheme/background.png</span></span></code></pre></figure>
<ul>
<li>
<p><strong>自定义字体和颜色</strong>:在 <code>theme.txt</code> 中,设置字体和颜色:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span># Font</span></span>
<span data-line><span>font /boot/grub/themes/mytheme/dejavu-sans.ttf</span></span>
<span data-line> </span>
<span data-line><span># Colors</span></span>
<span data-line><span>menu_color_normal = black/white</span></span>
<span data-line><span>menu_color_highlight = white/black</span></span></code></pre></figure>
</li>
</ul>
</li>
<li>
<p><strong>应用自定义主题</strong>
<code>/etc/default/grub</code> 文件中,设置 <code>GRUB_THEME</code> 指令以启用自定义主题:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>GRUB_THEME=/boot/grub/themes/mytheme/theme.txt</span></span></code></pre></figure>
</li>
<li>
<p><strong>更新 GRUB 配置</strong>
保存更改后,更新 GRUB 配置以应用主题:</p>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="config" data-theme="github-light github-dark"><code data-language="config" data-theme="github-light github-dark" style="display:grid;"><span data-line><span>sudo update-grub</span></span></code></pre></figure>
</li>
</ol>
<h3 id="安装和配置自定义-grub-主题包">安装和配置自定义 GRUB 主题包<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#安装和配置自定义-grub-主题包" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<ol>
<li><strong>下载并解压主题包</strong>:将下载的主题包解压到 <code>/boot/grub/themes/</code> 目录下,例如:</li>
</ol>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> tar</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -xvf</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> custom-theme.tar.gz</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -C</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> /boot/grub/themes/</span></span></code></pre></figure>
<ol>
<li><strong>配置 GRUB 使用新主题</strong>:编辑 <code>/etc/default/grub</code> 文件,设置 <code>GRUB_THEME</code> 指令:</li>
</ol>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">GRUB_THEME</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">/boot/grub/themes/custom-theme/theme.txt</span></span></code></pre></figure>
<ol>
<li><strong>更新 GRUB 配置</strong>:运行更新命令以应用新主题:</li>
</ol>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">sudo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> update-grub</span></span></code></pre></figure>
<p><strong>调整菜单布局以提高可用性</strong></p>
<ul>
<li><strong>修改菜单项的布局</strong>:在 <code>theme.txt</code> 文件中,可以调整菜单项的位置和对齐方式。例如:</li>
</ul>
<figure data-rehype-pretty-code-figure><pre tabindex="0" data-language="shell" data-theme="github-light github-dark"><code data-language="shell" data-theme="github-light github-dark" style="display:grid;"><span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">menu_color_normal</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> =</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> cyan/blue</span></span>
<span data-line><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">menu_color_highlight</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> =</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> red/black</span></span></code></pre></figure>
<ul>
<li><strong>增加可用性选项</strong>:可以根据需要调整菜单项的字体大小、颜色和选中效果,以提升可用性。</li>
</ul>
<p>优化 GRUB 的启动速度和菜单配置</p>
<h3 id="通过减少超时和优化配置文件加快引导速度">通过减少超时和优化配置文件加快引导速度<a role="anchor" aria-hidden="true" tabindex="-1" data-no-popover="true" href="#通过减少超时和优化配置文件加快引导速度" class="internal"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg></a></h3>
<p>GRUB 的启动速度可以通过减少超时和优化配置来提高。</p>
<ol>
<li>
<p><strong>减少超时</strong>
编辑 <code>/etc/default/grub</code> 文件,减少 <code>GRUB_TIMEOUT</code> 的值来缩短引导菜单的显示时间。</p>
</li>
<li>
<p><strong>禁用不必要的菜单项</strong>
删除不常用的菜单项,以减少引导菜单的加载时间。可以编辑 <code>/etc/grub.d/</code> 目录下的相关文件,删除不需要的菜单项。</p>
</li>
<li>
<p><strong>优化 GRUB 配置文件</strong>
通过删除无用的模块和配置,减少 GRUB 配置文件的复杂性,提高引导速度。</p>
</li>
</ol></article><hr/><div class="page-footer"></div></div><div class="right sidebar"><div class="graph"><h3>关系图谱</h3><div class="graph-outer"><div id="graph-container" data-cfg="{&quot;drag&quot;:true,&quot;zoom&quot;:true,&quot;depth&quot;:1,&quot;scale&quot;:1.1,&quot;repelForce&quot;:0.5,&quot;centerForce&quot;:0.3,&quot;linkDistance&quot;:30,&quot;fontSize&quot;:0.6,&quot;opacityScale&quot;:1,&quot;showTags&quot;:true,&quot;removeTags&quot;:[],&quot;focusOnHover&quot;:false}"></div><button id="global-graph-icon" aria-label="Global Graph"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 55 55" fill="currentColor" xml:space="preserve"><path d="M49,0c-3.309,0-6,2.691-6,6c0,1.035,0.263,2.009,0.726,2.86l-9.829,9.829C32.542,17.634,30.846,17,29,17
s-3.542,0.634-4.898,1.688l-7.669-7.669C16.785,10.424,17,9.74,17,9c0-2.206-1.794-4-4-4S9,6.794,9,9s1.794,4,4,4
c0.74,0,1.424-0.215,2.019-0.567l7.669,7.669C21.634,21.458,21,23.154,21,25s0.634,3.542,1.688,4.897L10.024,42.562
C8.958,41.595,7.549,41,6,41c-3.309,0-6,2.691-6,6s2.691,6,6,6s6-2.691,6-6c0-1.035-0.263-2.009-0.726-2.86l12.829-12.829
c1.106,0.86,2.44,1.436,3.898,1.619v10.16c-2.833,0.478-5,2.942-5,5.91c0,3.309,2.691,6,6,6s6-2.691,6-6c0-2.967-2.167-5.431-5-5.91
v-10.16c1.458-0.183,2.792-0.759,3.898-1.619l7.669,7.669C41.215,39.576,41,40.26,41,41c0,2.206,1.794,4,4,4s4-1.794,4-4
s-1.794-4-4-4c-0.74,0-1.424,0.215-2.019,0.567l-7.669-7.669C36.366,28.542,37,26.846,37,25s-0.634-3.542-1.688-4.897l9.665-9.665
C46.042,11.405,47.451,12,49,12c3.309,0,6-2.691,6-6S52.309,0,49,0z M11,9c0-1.103,0.897-2,2-2s2,0.897,2,2s-0.897,2-2,2
S11,10.103,11,9z M6,51c-2.206,0-4-1.794-4-4s1.794-4,4-4s4,1.794,4,4S8.206,51,6,51z M33,49c0,2.206-1.794,4-4,4s-4-1.794-4-4
s1.794-4,4-4S33,46.794,33,49z M29,31c-3.309,0-6-2.691-6-6s2.691-6,6-6s6,2.691,6,6S32.309,31,29,31z M47,41c0,1.103-0.897,2-2,2
s-2-0.897-2-2s0.897-2,2-2S47,39.897,47,41z M49,10c-2.206,0-4-1.794-4-4s1.794-4,4-4s4,1.794,4,4S51.206,10,49,10z"></path></svg></button></div><div id="global-graph-outer"><div id="global-graph-container" data-cfg="{&quot;drag&quot;:true,&quot;zoom&quot;:true,&quot;depth&quot;:-1,&quot;scale&quot;:0.9,&quot;repelForce&quot;:0.5,&quot;centerForce&quot;:0.3,&quot;linkDistance&quot;:30,&quot;fontSize&quot;:0.6,&quot;opacityScale&quot;:1,&quot;showTags&quot;:true,&quot;removeTags&quot;:[],&quot;focusOnHover&quot;:true}"></div></div></div><div class="toc desktop-only"><button type="button" id="toc" class aria-controls="toc-content" aria-expanded="true"><h3>目录</h3><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="fold"><polyline points="6 9 12 15 18 9"></polyline></svg></button><div id="toc-content" class><ul class="overflow"><li class="depth-0"><a href="#引导加载器" data-for="引导加载器">引导加载器</a></li><li class="depth-1"><a href="#引导加载器是什么" data-for="引导加载器是什么">引导加载器是什么?</a></li><li class="depth-0"><a href="#grub-历史发展" data-for="grub-历史发展">GRUB 历史发展</a></li><li class="depth-1"><a href="#grub-0x-和-grub-legacygrub-1x" data-for="grub-0x-和-grub-legacygrub-1x">GRUB 0.x 和 GRUB LegacyGRUB 1.x</a></li><li class="depth-1"><a href="#grub-2x" data-for="grub-2x">GRUB 2.x</a></li><li class="depth-1"><a href="#与-uefi-的集成" data-for="与-uefi-的集成">与 UEFI 的集成</a></li><li class="depth-1"><a href="#未来展望" data-for="未来展望">未来展望</a></li><li class="depth-0"><a href="#grub-基础概念" data-for="grub-基础概念">GRUB 基础概念</a></li><li class="depth-1"><a href="#基本结构" data-for="基本结构">基本结构</a></li><li class="depth-1"><a href="#核心功能" data-for="核心功能">核心功能</a></li><li class="depth-1"><a href="#1x-和-2x-的主要区别" data-for="1x-和-2x-的主要区别">1.x 和 2.x 的主要区别</a></li><li class="depth-0"><a href="#grub-安装" data-for="grub-安装">GRUB 安装</a></li><li class="depth-1"><a href="#在不同操作系统上安装-grub" data-for="在不同操作系统上安装-grub">在不同操作系统上安装 GRUB</a></li><li class="depth-1"><a href="#grub2-install-命令" data-for="grub2-install-命令">grub2-install 命令</a></li><li class="depth-0"><a href="#grub-配置文件" data-for="grub-配置文件">GRUB 配置文件</a></li><li class="depth-1"><a href="#grubcfg-文件" data-for="grubcfg-文件">grub.cfg 文件</a></li><li class="depth-1"><a href="#grub-基本语法" data-for="grub-基本语法">Grub 基本语法</a></li><li class="depth-1"><a href="#grub-菜单项的定义和配置" data-for="grub-菜单项的定义和配置">GRUB 菜单项的定义和配置</a></li><li class="depth-1"><a href="#etcdefaultgrub-配置文件" data-for="etcdefaultgrub-配置文件">/etc/default/grub 配置文件</a></li><li class="depth-1"><a href="#使用-grub-mkconfig-生成-grub-配置文件" data-for="使用-grub-mkconfig-生成-grub-配置文件">使用 grub-mkconfig 生成 GRUB 配置文件</a></li><li class="depth-0"><a href="#grub-高级配置" data-for="grub-高级配置">GRUB 高级配置</a></li><li class="depth-1"><a href="#grub-配置文件的结构和语法" data-for="grub-配置文件的结构和语法">GRUB 配置文件的结构和语法</a></li><li class="depth-1"><a href="#使用-insmod-加载模块的配置方法" data-for="使用-insmod-加载模块的配置方法">使用 insmod 加载模块的配置方法</a></li><li class="depth-1"><a href="#通过-set-指令配置-grub-的环境变量" data-for="通过-set-指令配置-grub-的环境变量">通过 set 指令配置 GRUB 的环境变量</a></li><li class="depth-1"><a href="#使用环境变量和内核参数自定义引导菜单" data-for="使用环境变量和内核参数自定义引导菜单">使用环境变量和内核参数自定义引导菜单</a></li><li class="depth-0"><a href="#多重引导配置" data-for="多重引导配置">多重引导配置</a></li><li class="depth-1"><a href="#配置-windows-和-linux-的双重引导" data-for="配置-windows-和-linux-的双重引导">配置 Windows 和 Linux 的双重引导</a></li><li class="depth-1"><a href="#配置多个-linux-发行版的引导" data-for="配置多个-linux-发行版的引导">配置多个 Linux 发行版的引导</a></li><li class="depth-1"><a href="#设置和管理不同操作系统的引导顺序" data-for="设置和管理不同操作系统的引导顺序">设置和管理不同操作系统的引导顺序</a></li><li class="depth-1"><a href="#解决-grub-更新后引导顺序变化的问题" data-for="解决-grub-更新后引导顺序变化的问题">解决 GRUB 更新后引导顺序变化的问题</a></li><li class="depth-1"><a href="#使用-grub-的-os-prober-自动检测并添加其他操作系统" data-for="使用-grub-的-os-prober-自动检测并添加其他操作系统">使用 GRUB 的 os-prober 自动检测并添加其他操作系统</a></li><li class="depth-0"><a href="#grub-命令行模式" data-for="grub-命令行模式">GRUB 命令行模式</a></li><li class="depth-1"><a href="#如何进入-grub-命令行模式" data-for="如何进入-grub-命令行模式">如何进入 GRUB 命令行模式</a></li><li class="depth-1"><a href="#grub-命令行的基本操作" data-for="grub-命令行的基本操作">GRUB 命令行的基本操作</a></li><li class="depth-1"><a href="#grub-命令行手动引导操作系统" data-for="grub-命令行手动引导操作系统">GRUB 命令行手动引导操作系统</a></li><li class="depth-1"><a href="#常见问题的诊断和修复方法" data-for="常见问题的诊断和修复方法">常见问题的诊断和修复方法</a></li><li class="depth-1"><a href="#解决-grub-菜单不显示或错误加载的问题" data-for="解决-grub-菜单不显示或错误加载的问题">解决 GRUB 菜单不显示或错误加载的问题</a></li><li class="depth-1"><a href="#使用-live-cd-或-live-usb-修复损坏的-grub-安装" data-for="使用-live-cd-或-live-usb-修复损坏的-grub-安装">使用 Live CD 或 Live USB 修复损坏的 GRUB 安装</a></li><li class="depth-0"><a href="#grub-安全配置" data-for="grub-安全配置">GRUB 安全配置</a></li><li class="depth-1"><a href="#设置-grub-密码保护" data-for="设置-grub-密码保护">设置 GRUB 密码保护</a></li><li class="depth-1"><a href="#配置用户认证和访问控制" data-for="配置用户认证和访问控制">配置用户认证和访问控制</a></li><li class="depth-0"><a href="#grub-自定义与优化" data-for="grub-自定义与优化">GRUB 自定义与优化</a></li><li class="depth-1"><a href="#自定义-grub-菜单主题" data-for="自定义-grub-菜单主题">自定义 GRUB 菜单主题</a></li><li class="depth-1"><a href="#安装和配置自定义-grub-主题包" data-for="安装和配置自定义-grub-主题包">安装和配置自定义 GRUB 主题包</a></li><li class="depth-1"><a href="#通过减少超时和优化配置文件加快引导速度" data-for="通过减少超时和优化配置文件加快引导速度">通过减少超时和优化配置文件加快引导速度</a></li></ul></div></div><div class="explorer mobile-only"><button type="button" id="explorer" data-behavior="collapse" data-collapsed="collapsed" data-savestate="true" data-tree="[{&quot;path&quot;:&quot;Personal&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2018&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2020&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2021&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2022&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2023&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Blog/2024&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/个人成长&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/医学健康&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/历史&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/哲学宗教&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/心理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/政治军事&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/教育学习&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/文学&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/生活百科&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/社会文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/科学技术&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/经济理财&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/艺术&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Book/计算机&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W34&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W35&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W36&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W37&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W38&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W39&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W41&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W42&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W43&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W44&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W45&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W46&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W47&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W48&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W49&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2022/W50&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W2&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W3&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W5&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W6&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W7&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W8&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W10&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W12&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W14&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W16&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W22&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W23&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W24&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W25&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W26&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W31&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W32&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W33&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W35&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W36&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W37&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W40&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W45&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W46&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W48&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W49&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2023/W50&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W8&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W10&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W11&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W12&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W14&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W16&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W17&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W22&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W23&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W24&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W29&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W30&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W33&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W35&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W40&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Personal/Journal/2024/W41&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Company&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Company/数字化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Company/数字化/规范&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Project&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Project/RSSky&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/data-engineer&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/权益保障&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/求职经验&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/简历攻略&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/职业规划&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/职场心得&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/薪酬攻略&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/roadmap/面试法则&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Professional/Work/sre-engineer&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/English&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government/中国&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government/中国/标准&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;SocialSciences/Government/中国/法律&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/CloudService&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/CloudService/基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/Nginx&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/公共服务&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/应用服务&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/网络协议&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerNetwork/网络基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/信息安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/信息安全/OpenPGP&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/密码学&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/用户安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/用户安全/权限设计&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/用户安全/用户鉴权&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/系统安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/系统安全/防火墙&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/网络安全&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/网络安全/OpenSSH&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerSecurity/网络安全/OpenSSL&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ComputerStorage&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem/PostgreSQL&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem/SQL-语言&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/DatabaseSystem/基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具/PowerShell&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具/Shell&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/命令行工具/Vim&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/开源指南&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/文本处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制/Git&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制/Git/入门&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/GettingStarted/版本控制/Git/进阶&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Automation&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker/基础&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker/进阶&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Docker/高级&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/1.文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/2.安装&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/3.基础操作&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/4.系统管理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/5.安全配置&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/6.网络管理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Linux/7.存储管理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Virtualization&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Virtualization/1.虚拟化概述&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Virtualization/2.KVM虚拟化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Windows&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/OperatingSystem/Windows/文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/入门&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/文化&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/WEB开发&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/数据处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/文本处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/系统交互&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/模块/网络处理&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/进阶&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/项目&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/项目/虚拟环境&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/ProgrammingLanguage/Python/项目/风格指南&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/协作规范&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/文档规范&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/架构设计&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/自动化流程&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/SoftwareEngineering/自动化流程/工具使用&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/StructuresAlgorithms&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/0.Overview&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/1.Browser&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/2.HTML&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/3.CSS&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/4.JavaScript&quot;,&quot;collapsed&quot;:true},{&quot;path&quot;:&quot;Technology/WebDevelopment/7.Tools&quot;,&quot;collapsed&quot;:true}]" aria-controls="explorer-content" aria-expanded="false"><h2>探索</h2><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="fold"><polyline points="6 9 12 15 18 9"></polyline></svg></button><div id="explorer-content"><ul class="overflow" id="explorer-ul"><li><div class="folder-outer open"><ul style="padding-left:0;" class="content" data-folderul><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal"><button class="folder-button"><span class="folder-title">Personal</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog"><button class="folder-button"><span class="folder-title">Blog</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2018"><button class="folder-button"><span class="folder-title">2018</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2018"><li><a href="../../../../Personal/Blog/2018/11月28日晚-星期三-霾" data-for="Personal/Blog/2018/11月28日晚-星期三-霾">11月28日 晚 星期三 霾</a></li><li><a href="../../../../Personal/Blog/2018/BombSquad-炸弹人小分队" data-for="Personal/Blog/2018/BombSquad-炸弹人小分队">BombSquad-炸弹人小分队</a></li><li><a href="../../../../Personal/Blog/2018/如何免费创建一个属于自己的网站" data-for="Personal/Blog/2018/如何免费创建一个属于自己的网站">如何免费创建一个属于自己的网站</a></li><li><a href="../../../../Personal/Blog/2018/英雄联盟-S8-全球总决赛" data-for="Personal/Blog/2018/英雄联盟-S8-全球总决赛">英雄联盟 S8 全球总决赛</a></li><li><a href="../../../../Personal/Blog/2018/螺蛳粉" data-for="Personal/Blog/2018/螺蛳粉">螺蛳粉</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2020"><button class="folder-button"><span class="folder-title">2020</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2020"><li><a href="../../../../Personal/Blog/2020/Don`t-Starve-饥荒" data-for="Personal/Blog/2020/Don`t-Starve-饥荒">Don't Starve-饥荒</a></li><li><a href="../../../../Personal/Blog/2020/中国传统历法" data-for="Personal/Blog/2020/中国传统历法">中国传统历法</a></li><li><a href="../../../../Personal/Blog/2020/初号机,起飞!" data-for="Personal/Blog/2020/初号机,起飞!">初号机,起飞!</a></li><li><a href="../../../../Personal/Blog/2020/吉普赛满天星" data-for="Personal/Blog/2020/吉普赛满天星">吉普赛满天星</a></li><li><a href="../../../../Personal/Blog/2020/夏日花记" data-for="Personal/Blog/2020/夏日花记">夏日花记</a></li><li><a href="../../../../Personal/Blog/2020/幸福的事情都是需要等待的" data-for="Personal/Blog/2020/幸福的事情都是需要等待的">幸福的事情都是需要等待的</a></li><li><a href="../../../../Personal/Blog/2020/开源软件之道" data-for="Personal/Blog/2020/开源软件之道">开源软件之道</a></li><li><a href="../../../../Personal/Blog/2020/我的小羊肖恩" data-for="Personal/Blog/2020/我的小羊肖恩">我的小羊肖恩</a></li><li><a href="../../../../Personal/Blog/2020/数据恢复杂谈" data-for="Personal/Blog/2020/数据恢复杂谈">数据恢复杂谈</a></li><li><a href="../../../../Personal/Blog/2020/注定不平凡的一年" data-for="Personal/Blog/2020/注定不平凡的一年">注定不平凡的一年</a></li><li><a href="../../../../Personal/Blog/2020/浅谈个人服务器架构" data-for="Personal/Blog/2020/浅谈个人服务器架构">浅谈个人服务器架构</a></li><li><a href="../../../../Personal/Blog/2020/球鞋日记" data-for="Personal/Blog/2020/球鞋日记">球鞋日记</a></li><li><a href="../../../../Personal/Blog/2020/記拾月" data-for="Personal/Blog/2020/記拾月">記拾月</a></li><li><a href="../../../../Personal/Blog/2020/长安游记" data-for="Personal/Blog/2020/长安游记">长安游记</a></li><li><a href="../../../../Personal/Blog/2020/骑行在路上" data-for="Personal/Blog/2020/骑行在路上">骑行在路上</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2021"><button class="folder-button"><span class="folder-title">2021</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2021"><li><a href="../../../../Personal/Blog/2021/2021" data-for="Personal/Blog/2021/2021">2021</a></li><li><a href="../../../../Personal/Blog/2021/VIVO-IQOO-Neo3-开箱测评" data-for="Personal/Blog/2021/VIVO-IQOO-Neo3-开箱测评">VIVO IQOO Neo3 开箱测评</a></li><li><a href="../../../../Personal/Blog/2021/上有天堂、下有苏杭" data-for="Personal/Blog/2021/上有天堂、下有苏杭">上有天堂、下有苏杭</a></li><li><a href="../../../../Personal/Blog/2021/我开发的第一款软件" data-for="Personal/Blog/2021/我开发的第一款软件">我开发的第一款软件</a></li><li><a href="../../../../Personal/Blog/2021/我站立的地方是中国" data-for="Personal/Blog/2021/我站立的地方是中国">我站立的地方是中国</a></li><li><a href="../../../../Personal/Blog/2021/我还在……" data-for="Personal/Blog/2021/我还在……">我还在……</a></li><li><a href="../../../../Personal/Blog/2021/星光不问赶路人" data-for="Personal/Blog/2021/星光不问赶路人">星光不问赶路人</a></li><li><a href="../../../../Personal/Blog/2021/济南呀济南的泰山之旅" data-for="Personal/Blog/2021/济南呀济南的泰山之旅">济南呀济南的泰山之旅</a></li><li><a href="../../../../Personal/Blog/2021/涝疫结合" data-for="Personal/Blog/2021/涝疫结合">涝疫结合</a></li><li><a href="../../../../Personal/Blog/2021/申请-Jetbrains-开源项目授权" data-for="Personal/Blog/2021/申请-Jetbrains-开源项目授权">申请 Jetbrains 开源项目授权</a></li><li><a href="../../../../Personal/Blog/2021/真·长安游记" data-for="Personal/Blog/2021/真·长安游记">真·长安游记</a></li><li><a href="../../../../Personal/Blog/2021/记拾月" data-for="Personal/Blog/2021/记拾月">记拾月</a></li><li><a href="../../../../Personal/Blog/2021/贰号机、落幕" data-for="Personal/Blog/2021/贰号机、落幕">贰号机、落幕</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2022"><button class="folder-button"><span class="folder-title">2022</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2022"><li><a href="../../../../Personal/Blog/2022/「引用」博客的本质是电线杆子" data-for="Personal/Blog/2022/「引用」博客的本质是电线杆子">「引用」博客的本质是电线杆子</a></li><li><a href="../../../../Personal/Blog/2022/2022" data-for="Personal/Blog/2022/2022">2022</a></li><li><a href="../../../../Personal/Blog/2022/Halo-主题-Redemption-首发版" data-for="Personal/Blog/2022/Halo-主题-Redemption-首发版">Halo 主题 Redemption 首发版</a></li><li><a href="../../../../Personal/Blog/2022/Hello-Halo" data-for="Personal/Blog/2022/Hello-Halo">Hello Halo</a></li><li><a href="../../../../Personal/Blog/2022/Redemption" data-for="Personal/Blog/2022/Redemption">Redemption</a></li><li><a href="../../../../Personal/Blog/2022/Redemption-主题-0.2.1-版本" data-for="Personal/Blog/2022/Redemption-主题-0.2.1-版本">Redemption 主题 0.2.1 版本</a></li><li><a href="../../../../Personal/Blog/2022/一线城市拥有一亩三分地是什么体验" data-for="Personal/Blog/2022/一线城市拥有一亩三分地是什么体验">一线城市拥有一亩三分地是什么体验</a></li><li><a href="../../../../Personal/Blog/2022/三步为你博客文章分析情感关键字" data-for="Personal/Blog/2022/三步为你博客文章分析情感关键字">三步为你博客文章分析情感关键字</a></li><li><a href="../../../../Personal/Blog/2022/不要在饿的时候吃螺蛳粉!" data-for="Personal/Blog/2022/不要在饿的时候吃螺蛳粉!">不要在饿的时候吃螺蛳粉!</a></li><li><a href="../../../../Personal/Blog/2022/习惯养成第一步" data-for="Personal/Blog/2022/习惯养成第一步">习惯养成第一步</a></li><li><a href="../../../../Personal/Blog/2022/人在囧途——青海湖" data-for="Personal/Blog/2022/人在囧途——青海湖">人在囧途——青海湖</a></li><li><a href="../../../../Personal/Blog/2022/人格类型测试" data-for="Personal/Blog/2022/人格类型测试">人格类型测试</a></li><li><a href="../../../../Personal/Blog/2022/你还记得曾经的梦想么?" data-for="Personal/Blog/2022/你还记得曾经的梦想么?">你还记得曾经的梦想么?</a></li><li><a href="../../../../Personal/Blog/2022/使用-Docusaurus-搭建优秀个人wiki" data-for="Personal/Blog/2022/使用-Docusaurus-搭建优秀个人wiki">使用 Docusaurus 搭建优秀个人wiki</a></li><li><a href="../../../../Personal/Blog/2022/关于感情的事情" data-for="Personal/Blog/2022/关于感情的事情">关于感情的事情</a></li><li><a href="../../../../Personal/Blog/2022/关于花" data-for="Personal/Blog/2022/关于花">关于花</a></li><li><a href="../../../../Personal/Blog/2022/关于郑州的互联网记忆" data-for="Personal/Blog/2022/关于郑州的互联网记忆">关于郑州的互联网记忆</a></li><li><a href="../../../../Personal/Blog/2022/再游嵩山" data-for="Personal/Blog/2022/再游嵩山">再游嵩山</a></li><li><a href="../../../../Personal/Blog/2022/最近在折腾什么……" data-for="Personal/Blog/2022/最近在折腾什么……">最近在折腾什么……</a></li><li><a href="../../../../Personal/Blog/2022/最近的生活" data-for="Personal/Blog/2022/最近的生活">最近的生活</a></li><li><a href="../../../../Personal/Blog/2022/写十万字的博客是一种什么感觉" data-for="Personal/Blog/2022/写十万字的博客是一种什么感觉">写十万字的博客是一种什么感觉</a></li><li><a href="../../../../Personal/Blog/2022/写博客的正确姿势---先行版" data-for="Personal/Blog/2022/写博客的正确姿势---先行版">写博客的正确姿势 - 先行版</a></li><li><a href="../../../../Personal/Blog/2022/写博客的正确姿势---测试版" data-for="Personal/Blog/2022/写博客的正确姿势---测试版">写博客的正确姿势 - 测试版</a></li><li><a href="../../../../Personal/Blog/2022/原点" data-for="Personal/Blog/2022/原点">原点</a></li><li><a href="../../../../Personal/Blog/2022/如何免费获得-Jetbrains-正版授权" data-for="Personal/Blog/2022/如何免费获得-Jetbrains-正版授权">如何免费获得 Jetbrains 正版授权</a></li><li><a href="../../../../Personal/Blog/2022/我是关系户" data-for="Personal/Blog/2022/我是关系户">我是关系户</a></li><li><a href="../../../../Personal/Blog/2022/我要拔智齿!!!" data-for="Personal/Blog/2022/我要拔智齿!!!">我要拔智齿!!!</a></li><li><a href="../../../../Personal/Blog/2022/数字文化遗产" data-for="Personal/Blog/2022/数字文化遗产">数字文化遗产</a></li><li><a href="../../../../Personal/Blog/2022/新冠笔记" data-for="Personal/Blog/2022/新冠笔记">新冠笔记</a></li><li><a href="../../../../Personal/Blog/2022/新手村村长" data-for="Personal/Blog/2022/新手村村长">新手村村长</a></li><li><a href="../../../../Personal/Blog/2022/是微风、是晚霞、是来日方长" data-for="Personal/Blog/2022/是微风、是晚霞、是来日方长">是微风、是晚霞、是来日方长</a></li><li><a href="../../../../Personal/Blog/2022/月季到了" data-for="Personal/Blog/2022/月季到了">月季到了</a></li><li><a href="../../../../Personal/Blog/2022/浅谈一下自己折腾的网站" data-for="Personal/Blog/2022/浅谈一下自己折腾的网站">浅谈一下自己折腾的网站</a></li><li><a href="../../../../Personal/Blog/2022/番茄开花啦-~" data-for="Personal/Blog/2022/番茄开花啦-~">番茄开花啦 ~</a></li><li><a href="../../../../Personal/Blog/2022/种下了一些瓜果蔬菜" data-for="Personal/Blog/2022/种下了一些瓜果蔬菜">种下了一些瓜果蔬菜</a></li><li><a href="../../../../Personal/Blog/2022/罪恶应该被遗传么" data-for="Personal/Blog/2022/罪恶应该被遗传么">罪恶应该被遗传么?</a></li><li><a href="../../../../Personal/Blog/2022/自律的痛苦······" data-for="Personal/Blog/2022/自律的痛苦······">自律的痛苦······</a></li><li><a href="../../../../Personal/Blog/2022/论成年人的睡眠" data-for="Personal/Blog/2022/论成年人的睡眠">论成年人的睡眠</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」">谈谈我的「数字文具盒」</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---NextCloud" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---NextCloud">谈谈我的「数字文具盒」 - NextCloud</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---Obsidian" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---Obsidian">谈谈我的「数字文具盒」 - Obsidian</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---心得体会" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---心得体会">谈谈我的「数字文具盒」 - 心得体会</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---数字基建" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---数字基建">谈谈我的「数字文具盒」 - 数字基建</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(上)" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(上)">谈谈我的「数字文具盒」 - 生产力工具(上)</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(下)" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---生产力工具(下)">谈谈我的「数字文具盒」 - 生产力工具(下)</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---番外篇" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---番外篇">谈谈我的「数字文具盒」 - 番外篇</a></li><li><a href="../../../../Personal/Blog/2022/谈谈我的「数字文具盒」---运行平台" data-for="Personal/Blog/2022/谈谈我的「数字文具盒」---运行平台">谈谈我的「数字文具盒」 - 运行平台</a></li><li><a href="../../../../Personal/Blog/2022/这个周末" data-for="Personal/Blog/2022/这个周末">这个周末</a></li><li><a href="../../../../Personal/Blog/2022/通货膨胀的猪" data-for="Personal/Blog/2022/通货膨胀的猪">通货膨胀的猪</a></li><li><a href="../../../../Personal/Blog/2022/闭门锁网" data-for="Personal/Blog/2022/闭门锁网">闭门锁网</a></li><li><a href="../../../../Personal/Blog/2022/非黑即白" data-for="Personal/Blog/2022/非黑即白">非黑即白</a></li><li><a href="../../../../Personal/Blog/2022/首页加载速度优化方案" data-for="Personal/Blog/2022/首页加载速度优化方案">首页加载速度优化方案</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2023"><button class="folder-button"><span class="folder-title">2023</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2023"><li><a href="../../../../Personal/Blog/2023/2023-年度微信读书报告" data-for="Personal/Blog/2023/2023-年度微信读书报告">2023 年度微信读书报告</a></li><li><a href="../../../../Personal/Blog/2023/Docusaurus-搭建" data-for="Personal/Blog/2023/Docusaurus-搭建">Docusaurus 搭建</a></li><li><a href="../../../../Personal/Blog/2023/Obsidian-使用-Templater-插件的个性化脚本" data-for="Personal/Blog/2023/Obsidian-使用-Templater-插件的个性化脚本">Obsidian 使用 Templater 插件的个性化脚本</a></li><li><a href="../../../../Personal/Blog/2023/YubiKey-漂流记" data-for="Personal/Blog/2023/YubiKey-漂流记">YubiKey 历险记</a></li><li><a href="../../../../Personal/Blog/2023/不要把幸福建立在别人的痛苦之上" data-for="Personal/Blog/2023/不要把幸福建立在别人的痛苦之上">不要把幸福建立在别人的痛苦之上</a></li><li><a href="../../../../Personal/Blog/2023/为什么不推开那扇门?" data-for="Personal/Blog/2023/为什么不推开那扇门?">为什么不推开那扇门?</a></li><li><a href="../../../../Personal/Blog/2023/你愿意嫁给自己么?" data-for="Personal/Blog/2023/你愿意嫁给自己么?">你愿意嫁给自己么</a></li><li><a href="../../../../Personal/Blog/2023/最近半年的生活" data-for="Personal/Blog/2023/最近半年的生活">最近半年的生活</a></li><li><a href="../../../../Personal/Blog/2023/写博客的正确姿势" data-for="Personal/Blog/2023/写博客的正确姿势">写博客的正确姿势</a></li><li><a href="../../../../Personal/Blog/2023/唯有热爱可抵岁月漫长" data-for="Personal/Blog/2023/唯有热爱可抵岁月漫长">唯有热爱、可抵岁月漫长</a></li><li><a href="../../../../Personal/Blog/2023/回首-2022-展望-2023" data-for="Personal/Blog/2023/回首-2022-展望-2023">回首 2022 展望 2023</a></li><li><a href="../../../../Personal/Blog/2023/大学回忆录" data-for="Personal/Blog/2023/大学回忆录">大学回忆录</a></li><li><a href="../../../../Personal/Blog/2023/如何不写错别字!" data-for="Personal/Blog/2023/如何不写错别字!">如何不写错别字!</a></li><li><a href="../../../../Personal/Blog/2023/如何拍好一张照片" data-for="Personal/Blog/2023/如何拍好一张照片">如何拍好一张照片</a></li><li><a href="../../../../Personal/Blog/2023/家里的三块地" data-for="Personal/Blog/2023/家里的三块地">家里的三块地</a></li><li><a href="../../../../Personal/Blog/2023/岁月是把猪饲料,把我喂的嘎嘎胖" data-for="Personal/Blog/2023/岁月是把猪饲料,把我喂的嘎嘎胖">岁月是把猪饲料,把我喂的嘎嘎胖</a></li><li><a href="../../../../Personal/Blog/2023/拾月游记" data-for="Personal/Blog/2023/拾月游记">拾月游记</a></li><li><a href="../../../../Personal/Blog/2023/揭晓你的博客一年之最,尽在-EndOfYear" data-for="Personal/Blog/2023/揭晓你的博客一年之最,尽在-EndOfYear">揭晓你的博客一年之最,尽在 EndOfYear</a></li><li><a href="../../../../Personal/Blog/2023/早起、阅读、写作、运动、冥想" data-for="Personal/Blog/2023/早起、阅读、写作、运动、冥想">早起、冥想、阅读、写作、运动</a></li><li><a href="../../../../Personal/Blog/2023/浅尝-Gitea-的-Actions" data-for="Personal/Blog/2023/浅尝-Gitea-的-Actions">浅尝 Gitea 的 Actions</a></li><li><a href="../../../../Personal/Blog/2023/独立生活能力清单" data-for="Personal/Blog/2023/独立生活能力清单">独立生活能力清单</a></li><li><a href="../../../../Personal/Blog/2023/电脑坏了,我换了-Ubuntu" data-for="Personal/Blog/2023/电脑坏了,我换了-Ubuntu">电脑坏了,我换了 Ubuntu</a></li><li><a href="../../../../Personal/Blog/2023/看-V2Ex-的-ChatGPT-老哥浅谈办公室政治" data-for="Personal/Blog/2023/看-V2Ex-的-ChatGPT-老哥浅谈办公室政治">看 V2Ex 的 ChatGPT 老哥浅谈办公室政治</a></li><li><a href="../../../../Personal/Blog/2023/破万卷书,行万里路!" data-for="Personal/Blog/2023/破万卷书,行万里路!">破万卷书,行万里路!</a></li><li><a href="../../../../Personal/Blog/2023/谈谈我的「数字文具盒」---个人工作流" data-for="Personal/Blog/2023/谈谈我的「数字文具盒」---个人工作流">谈谈我的「数字文具盒」 - 个人工作流</a></li><li><a href="../../../../Personal/Blog/2023/长安三万里" data-for="Personal/Blog/2023/长安三万里">长安三万里</a></li><li><a href="../../../../Personal/Blog/2023/黄山归来不看岳" data-for="Personal/Blog/2023/黄山归来不看岳">黄山归来不看岳</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Blog/2024"><button class="folder-button"><span class="folder-title">2024</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Blog/2024"><li><a href="../../../../Personal/Blog/2024/「救赎之路」更名「向阳而生」" data-for="Personal/Blog/2024/「救赎之路」更名「向阳而生」">「救赎之路」更名「向阳而生」</a></li><li><a href="../../../../Personal/Blog/2024/回顾-2023" data-for="Personal/Blog/2024/回顾-2023">2023 年终总结</a></li><li><a href="../../../../Personal/Blog/2024/2023-年终问答" data-for="Personal/Blog/2024/2023-年终问答">2023 年终问答</a></li><li><a href="../../../../Personal/Blog/2024/CityWalk——公车挑战" data-for="Personal/Blog/2024/CityWalk——公车挑战">CityWalk——公车挑战探索未知的城市</a></li><li><a href="../../../../Personal/Blog/2024/Python-项目终极部署解决方案" data-for="Personal/Blog/2024/Python-项目终极部署解决方案">Python 项目终极部署解决方案</a></li><li><a href="../../../../Personal/Blog/2024/一命二运三风水" data-for="Personal/Blog/2024/一命二运三风水">一命二运三风水</a></li><li><a href="../../../../Personal/Blog/2024/乌兰哈达火山银河之旅" data-for="Personal/Blog/2024/乌兰哈达火山银河之旅">乌兰哈达火山银河之旅</a></li><li><a href="../../../../Personal/Blog/2024/冰箱,让你我错过了多少新鲜的生活?" data-for="Personal/Blog/2024/冰箱,让你我错过了多少新鲜的生活?">冰箱,让你我错过了多少新鲜的生活?</a></li><li><a href="../../../../Personal/Blog/2024/回读者信──240816" data-for="Personal/Blog/2024/回读者信──240816">回读者信──240816</a></li><li><a href="../../../../Personal/Blog/2024/夜泊西湖听雨声" data-for="Personal/Blog/2024/夜泊西湖听雨声">夜泊西湖听雨声</a></li><li><a href="../../../../Personal/Blog/2024/如何开好一场会?" data-for="Personal/Blog/2024/如何开好一场会?">如何开好一场会?</a></li><li><a href="../../../../Personal/Blog/2024/如何打破信息茧房?" data-for="Personal/Blog/2024/如何打破信息茧房?">如何打破信息茧房?</a></li><li><a href="../../../../Personal/Blog/2024/富人的红灯与穷人的绿灯" data-for="Personal/Blog/2024/富人的红灯与穷人的绿灯">富人的红灯与穷人的绿灯</a></li><li><a href="../../../../Personal/Blog/2024/师从-ChatGPT" data-for="Personal/Blog/2024/师从-ChatGPT">师从 ChatGPT</a></li><li><a href="../../../../Personal/Blog/2024/我又从-Ubunut-换成了-Fedora" data-for="Personal/Blog/2024/我又从-Ubunut-换成了-Fedora">我又从 Ubunut 换成了 Fedora</a></li><li><a href="../../../../Personal/Blog/2024/我的一天" data-for="Personal/Blog/2024/我的一天">我的一天</a></li><li><a href="../../../../Personal/Blog/2024/打工三年记" data-for="Personal/Blog/2024/打工三年记">打工三年记</a></li><li><a href="../../../../Personal/Blog/2024/新奇的-HR-经历" data-for="Personal/Blog/2024/新奇的-HR-经历">新奇的 HR 经历</a></li><li><a href="../../../../Personal/Blog/2024/穷则独善其身,达则兼济天下" data-for="Personal/Blog/2024/穷则独善其身,达则兼济天下">穷则独善其身,达则兼济天下</a></li><li><a href="../../../../Personal/Blog/2024/继续开荒我那一亩三分地" data-for="Personal/Blog/2024/继续开荒我那一亩三分地">继续开荒我那一亩三分地</a></li><li><a href="../../../../Personal/Blog/2024/記伍月" data-for="Personal/Blog/2024/記伍月">記伍月</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book"><button class="folder-button"><span class="folder-title">Book</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/个人成长"><button class="folder-button"><span class="folder-title">个人成长</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/个人成长"><li><a href="../../../../Personal/Book/个人成长/习惯的力量(新版)" data-for="Personal/Book/个人成长/习惯的力量(新版)">习惯的力量(新版)</a></li><li><a href="../../../../Personal/Book/个人成长/以极简的方式去生活" data-for="Personal/Book/个人成长/以极简的方式去生活">以极简的方式去生活</a></li><li><a href="../../../../Personal/Book/个人成长/写出我心:普通人如何通过写作表达自己" data-for="Personal/Book/个人成长/写出我心:普通人如何通过写作表达自己">写出我心:普通人如何通过写作表达自己</a></li><li><a href="../../../../Personal/Book/个人成长/刻意练习:如何从新手到大师" data-for="Personal/Book/个人成长/刻意练习:如何从新手到大师">刻意练习:如何从新手到大师</a></li><li><a href="../../../../Personal/Book/个人成长/十分钟冥想" data-for="Personal/Book/个人成长/十分钟冥想">十分钟冥想</a></li><li><a href="../../../../Personal/Book/个人成长/即兴表达" data-for="Personal/Book/个人成长/即兴表达">即兴表达</a></li><li><a href="../../../../Personal/Book/个人成长/学习之道" data-for="Personal/Book/个人成长/学习之道">学习之道</a></li><li><a href="../../../../Personal/Book/个人成长/学会写作:自我进阶的高效方法" data-for="Personal/Book/个人成长/学会写作:自我进阶的高效方法">学会写作:自我进阶的高效方法</a></li><li><a href="../../../../Personal/Book/个人成长/底层逻辑" data-for="Personal/Book/个人成长/底层逻辑">底层逻辑</a></li><li><a href="../../../../Personal/Book/个人成长/底层逻辑:看清这个世界的底牌" data-for="Personal/Book/个人成长/底层逻辑:看清这个世界的底牌">底层逻辑:看清这个世界的底牌</a></li><li><a href="../../../../Personal/Book/个人成长/当下的力量(白金版)" data-for="Personal/Book/个人成长/当下的力量(白金版)">当下的力量(白金版)</a></li><li><a href="../../../../Personal/Book/个人成长/我的第一本人生规划手册" data-for="Personal/Book/个人成长/我的第一本人生规划手册">我的第一本人生规划手册</a></li><li><a href="../../../../Personal/Book/个人成长/超级面试官:快速提升识人技能的面试实战手册" data-for="Personal/Book/个人成长/超级面试官:快速提升识人技能的面试实战手册">超级面试官:快速提升识人技能的面试实战手册</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/医学健康"><button class="folder-button"><span class="folder-title">医学健康</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/医学健康"><li><a href="../../../../Personal/Book/医学健康/你是你吃出来的套装共2册" data-for="Personal/Book/医学健康/你是你吃出来的套装共2册">你是你吃出来的套装共2册</a></li><li><a href="../../../../Personal/Book/医学健康/小小药箱护健康教您用好家庭小药箱" data-for="Personal/Book/医学健康/小小药箱护健康教您用好家庭小药箱">小小药箱护健康教您用好家庭小药箱</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/历史"><button class="folder-button"><span class="folder-title">历史</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/历史"><li><a href="../../../../Personal/Book/历史/信息简史" data-for="Personal/Book/历史/信息简史">信息简史</a></li><li><a href="../../../../Personal/Book/历史/这里是中国2" data-for="Personal/Book/历史/这里是中国2">这里是中国2</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/哲学宗教"><button class="folder-button"><span class="folder-title">哲学宗教</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/哲学宗教"><li><a href="../../../../Personal/Book/哲学宗教/半小时漫画中国哲学史套装全2册" data-for="Personal/Book/哲学宗教/半小时漫画中国哲学史套装全2册">半小时漫画中国哲学史套装全2册</a></li><li><a href="../../../../Personal/Book/哲学宗教/第一性原理" data-for="Personal/Book/哲学宗教/第一性原理">第一性原理</a></li><li><a href="../../../../Personal/Book/哲学宗教/结构化思维" data-for="Personal/Book/哲学宗教/结构化思维">结构化思维</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/心理"><button class="folder-button"><span class="folder-title">心理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/心理"><li><a href="../../../../Personal/Book/心理/乌合之众(果麦经典)" data-for="Personal/Book/心理/乌合之众(果麦经典)">乌合之众(果麦经典)</a></li><li><a href="../../../../Personal/Book/心理/十分钟冥想" data-for="Personal/Book/心理/十分钟冥想">十分钟冥想</a></li><li><a href="../../../../Personal/Book/心理/认知觉醒:开启自我改变的原动力" data-for="Personal/Book/心理/认知觉醒:开启自我改变的原动力">认知觉醒:开启自我改变的原动力</a></li><li><a href="../../../../Personal/Book/心理/认知驱动:做成一件对他人很有用的事" data-for="Personal/Book/心理/认知驱动:做成一件对他人很有用的事">认知驱动:做成一件对他人很有用的事</a></li><li><a href="../../../../Personal/Book/心理/谈性说爱写给女性的性心理24讲" data-for="Personal/Book/心理/谈性说爱写给女性的性心理24讲">谈性说爱写给女性的性心理24讲</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/政治军事"><button class="folder-button"><span class="folder-title">政治军事</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/政治军事"><li><a href="../../../../Personal/Book/政治军事/实践论" data-for="Personal/Book/政治军事/实践论">实践论</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/教育学习"><button class="folder-button"><span class="folder-title">教育学习</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/教育学习"><li><a href="../../../../Personal/Book/教育学习/如何阅读一本书" data-for="Personal/Book/教育学习/如何阅读一本书">如何阅读一本书</a></li><li><a href="../../../../Personal/Book/教育学习/赖世雄的英语学习法" data-for="Personal/Book/教育学习/赖世雄的英语学习法">赖世雄的英语学习法</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/文学"><button class="folder-button"><span class="folder-title">文学</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/文学"><li><a href="../../../../Personal/Book/文学/凤凰项目一个IT运维的传奇故事修订版" data-for="Personal/Book/文学/凤凰项目一个IT运维的传奇故事修订版">凤凰项目一个IT运维的传奇故事修订版</a></li><li><a href="../../../../Personal/Book/文学/老舍谈写作" data-for="Personal/Book/文学/老舍谈写作">老舍谈写作</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/生活百科"><button class="folder-button"><span class="folder-title">生活百科</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/生活百科"><li><a href="../../../../Personal/Book/生活百科/聂卫平围棋教程从15级到10级" data-for="Personal/Book/生活百科/聂卫平围棋教程从15级到10级">聂卫平围棋教程从15级到10级</a></li><li><a href="../../../../Personal/Book/生活百科/聂卫平围棋教程从入门到15级" data-for="Personal/Book/生活百科/聂卫平围棋教程从入门到15级">聂卫平围棋教程从入门到15级</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/社会文化"><button class="folder-button"><span class="folder-title">社会文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/社会文化"><li><a href="../../../../Personal/Book/社会文化/人体简史" data-for="Personal/Book/社会文化/人体简史">人体简史</a></li><li><a href="../../../../Personal/Book/社会文化/你不可不知的法律常识" data-for="Personal/Book/社会文化/你不可不知的法律常识">你不可不知的法律常识</a></li><li><a href="../../../../Personal/Book/社会文化/半小时漫画《论语》" data-for="Personal/Book/社会文化/半小时漫画《论语》">半小时漫画《论语》</a></li><li><a href="../../../../Personal/Book/社会文化/民法典与百姓生活100问" data-for="Personal/Book/社会文化/民法典与百姓生活100问">民法典与百姓生活100问</a></li><li><a href="../../../../Personal/Book/社会文化/这里是中国" data-for="Personal/Book/社会文化/这里是中国">这里是中国</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/科学技术"><button class="folder-button"><span class="folder-title">科学技术</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/科学技术"><li><a href="../../../../Personal/Book/科学技术/贝尔实验室与美国革新大时代" data-for="Personal/Book/科学技术/贝尔实验室与美国革新大时代">贝尔实验室与美国革新大时代</a></li><li><a href="../../../../Personal/Book/科学技术/高性能Linux服务器运维实战shell编程、监控告警、性能优化与实战案例" data-for="Personal/Book/科学技术/高性能Linux服务器运维实战shell编程、监控告警、性能优化与实战案例">高性能Linux服务器运维实战shell编程、监控告警、性能优化与实战案例</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/经济理财"><button class="folder-button"><span class="folder-title">经济理财</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/经济理财"><li><a href="../../../../Personal/Book/经济理财/人力资源管理从入门到精通" data-for="Personal/Book/经济理财/人力资源管理从入门到精通">人力资源管理从入门到精通</a></li><li><a href="../../../../Personal/Book/经济理财/十分钟冥想" data-for="Personal/Book/经济理财/十分钟冥想">十分钟冥想</a></li><li><a href="../../../../Personal/Book/经济理财/半小时漫画股票实战法" data-for="Personal/Book/经济理财/半小时漫画股票实战法">半小时漫画股票实战法</a></li><li><a href="../../../../Personal/Book/经济理财/小米创业思考" data-for="Personal/Book/经济理财/小米创业思考">小米创业思考</a></li><li><a href="../../../../Personal/Book/经济理财/底层逻辑:半秒钟看透问题本质" data-for="Personal/Book/经济理财/底层逻辑:半秒钟看透问题本质">底层逻辑:半秒钟看透问题本质</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/艺术"><button class="folder-button"><span class="folder-title">艺术</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/艺术"><li><a href="../../../../Personal/Book/艺术/江湖丛谈(注音注释插图本)" data-for="Personal/Book/艺术/江湖丛谈(注音注释插图本)">江湖丛谈(注音注释插图本)</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Book/计算机"><button class="folder-button"><span class="folder-title">计算机</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Book/计算机"><li><a href="../../../../Personal/Book/计算机/Flask-Web开发基于Python的Web应用开发实战第2版" data-for="Personal/Book/计算机/Flask-Web开发基于Python的Web应用开发实战第2版">Flask Web开发基于Python的Web应用开发实战第2版</a></li><li><a href="../../../../Personal/Book/计算机/IT基础架构系统运维实践" data-for="Personal/Book/计算机/IT基础架构系统运维实践">IT基础架构系统运维实践</a></li><li><a href="../../../../Personal/Book/计算机/Linux命令行与shell脚本编程大全第4版" data-for="Personal/Book/计算机/Linux命令行与shell脚本编程大全第4版">Linux命令行与shell脚本编程大全第4版</a></li><li><a href="../../../../Personal/Book/计算机/Linux是怎样工作的" data-for="Personal/Book/计算机/Linux是怎样工作的">Linux是怎样工作的</a></li><li><a href="../../../../Personal/Book/计算机/Python工匠案例、技巧与工程实践" data-for="Personal/Book/计算机/Python工匠案例、技巧与工程实践">Python工匠案例、技巧与工程实践</a></li><li><a href="../../../../Personal/Book/计算机/Python编程从入门到实践第2版" data-for="Personal/Book/计算机/Python编程从入门到实践第2版">Python编程从入门到实践第2版</a></li><li><a href="../../../../Personal/Book/计算机/Python编程轻松进阶" data-for="Personal/Book/计算机/Python编程轻松进阶">Python编程轻松进阶</a></li><li><a href="../../../../Personal/Book/计算机/SQL必知必会第5版" data-for="Personal/Book/计算机/SQL必知必会第5版">SQL必知必会第5版</a></li><li><a href="../../../../Personal/Book/计算机/SREGoogle运维解密" data-for="Personal/Book/计算机/SREGoogle运维解密">SREGoogle运维解密</a></li><li><a href="../../../../Personal/Book/计算机/UNIX传奇历史与回忆" data-for="Personal/Book/计算机/UNIX传奇历史与回忆">UNIX传奇历史与回忆</a></li><li><a href="../../../../Personal/Book/计算机/VMware-vSphere-7.0云平台运维与管理第2版" data-for="Personal/Book/计算机/VMware-vSphere-7.0云平台运维与管理第2版">VMware vSphere 7.0云平台运维与管理第2版</a></li><li><a href="../../../../Personal/Book/计算机/人人都懂设计模式从生活中领悟设计模式Python实现" data-for="Personal/Book/计算机/人人都懂设计模式从生活中领悟设计模式Python实现">人人都懂设计模式从生活中领悟设计模式Python实现</a></li><li><a href="../../../../Personal/Book/计算机/从0到1HTML+CSS快速上手" data-for="Personal/Book/计算机/从0到1HTML+CSS快速上手">从0到1HTML+CSS快速上手</a></li><li><a href="../../../../Personal/Book/计算机/从0到1HTML5+CSS3修炼之道" data-for="Personal/Book/计算机/从0到1HTML5+CSS3修炼之道">从0到1HTML5+CSS3修炼之道</a></li><li><a href="../../../../Personal/Book/计算机/从0到1JavaScript-快速上手" data-for="Personal/Book/计算机/从0到1JavaScript-快速上手">从0到1JavaScript 快速上手</a></li><li><a href="../../../../Personal/Book/计算机/从0到1jQuery快速上手" data-for="Personal/Book/计算机/从0到1jQuery快速上手">从0到1jQuery快速上手</a></li><li><a href="../../../../Personal/Book/计算机/明解Python" data-for="Personal/Book/计算机/明解Python">明解Python</a></li><li><a href="../../../../Personal/Book/计算机/每天5分钟玩转Docker容器技术" data-for="Personal/Book/计算机/每天5分钟玩转Docker容器技术">每天5分钟玩转Docker容器技术</a></li><li><a href="../../../../Personal/Book/计算机/流畅的Python" data-for="Personal/Book/计算机/流畅的Python">流畅的Python</a></li><li><a href="../../../../Personal/Book/计算机/硅谷之火个人计算机的诞生与衰落第3版" data-for="Personal/Book/计算机/硅谷之火个人计算机的诞生与衰落第3版">硅谷之火个人计算机的诞生与衰落第3版</a></li><li><a href="../../../../Personal/Book/计算机/秒懂设计模式" data-for="Personal/Book/计算机/秒懂设计模式">秒懂设计模式</a></li><li><a href="../../../../Personal/Book/计算机/程序员的README" data-for="Personal/Book/计算机/程序员的README">程序员的README</a></li><li><a href="../../../../Personal/Book/计算机/精通Python设计模式第2版" data-for="Personal/Book/计算机/精通Python设计模式第2版">精通Python设计模式第2版</a></li><li><a href="../../../../Personal/Book/计算机/网络安全等级保护2.0:定级、测评、实施与运维" data-for="Personal/Book/计算机/网络安全等级保护2.0:定级、测评、实施与运维">网络安全等级保护2.0:定级、测评、实施与运维</a></li><li><a href="../../../../Personal/Book/计算机/网络工程师红宝书:思科华为华三实战案例荟萃" data-for="Personal/Book/计算机/网络工程师红宝书:思科华为华三实战案例荟萃">网络工程师红宝书:思科华为华三实战案例荟萃</a></li><li><a href="../../../../Personal/Book/计算机/网络是怎样连接的" data-for="Personal/Book/计算机/网络是怎样连接的">网络是怎样连接的</a></li><li><a href="../../../../Personal/Book/计算机/网络运维亲历记-(网络运维纪实文学)" data-for="Personal/Book/计算机/网络运维亲历记-(网络运维纪实文学)">网络运维亲历记 (网络运维纪实文学)</a></li><li><a href="../../../../Personal/Book/计算机/虚拟化工程师运维实战VMware服务器虚拟化+Citrix桌面应用虚拟化+Veeam备份+Zabbix监控" data-for="Personal/Book/计算机/虚拟化工程师运维实战VMware服务器虚拟化+Citrix桌面应用虚拟化+Veeam备份+Zabbix监控">虚拟化工程师运维实战VMware服务器虚拟化+Citrix桌面/应用虚拟化+Veeam备份+Zabbix监控</a></li><li><a href="../../../../Personal/Book/计算机/计算机:一部历史" data-for="Personal/Book/计算机/计算机:一部历史">计算机:一部历史</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal"><button class="folder-button"><span class="folder-title">Journal</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022"><button class="folder-button"><span class="folder-title">2022</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W34"><button class="folder-button"><span class="folder-title">W34</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W34"><li><a href="../../../../Personal/Journal/2022/W34/2022-08-24" data-for="Personal/Journal/2022/W34/2022-08-24">2022-08-24</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-25" data-for="Personal/Journal/2022/W34/2022-08-25">2022-08-25</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-26" data-for="Personal/Journal/2022/W34/2022-08-26">2022-08-26</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-27" data-for="Personal/Journal/2022/W34/2022-08-27">2022-08-27</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-08-28" data-for="Personal/Journal/2022/W34/2022-08-28">2022-08-28</a></li><li><a href="../../../../Personal/Journal/2022/W34/2022-W34" data-for="Personal/Journal/2022/W34/2022-W34">2022-W34</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W35"><button class="folder-button"><span class="folder-title">W35</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W35"><li><a href="../../../../Personal/Journal/2022/W35/2022-08-29" data-for="Personal/Journal/2022/W35/2022-08-29">2022-08-29</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-08-30" data-for="Personal/Journal/2022/W35/2022-08-30">2022-08-30</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-08-31" data-for="Personal/Journal/2022/W35/2022-08-31">2022-08-31</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-09-01" data-for="Personal/Journal/2022/W35/2022-09-01">2022-09-01</a></li><li><a href="../../../../Personal/Journal/2022/W35/2022-W35" data-for="Personal/Journal/2022/W35/2022-W35">2022-W35</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W36"><button class="folder-button"><span class="folder-title">W36</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W36"><li><a href="../../../../Personal/Journal/2022/W36/2022-09-05" data-for="Personal/Journal/2022/W36/2022-09-05">2022-09-05</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-09-06" data-for="Personal/Journal/2022/W36/2022-09-06">2022-09-06</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-09-07" data-for="Personal/Journal/2022/W36/2022-09-07">2022-09-07</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-09-08" data-for="Personal/Journal/2022/W36/2022-09-08">2022-09-08</a></li><li><a href="../../../../Personal/Journal/2022/W36/2022-W36" data-for="Personal/Journal/2022/W36/2022-W36">2022-W36</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W37"><button class="folder-button"><span class="folder-title">W37</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W37"><li><a href="../../../../Personal/Journal/2022/W37/2022-09-12" data-for="Personal/Journal/2022/W37/2022-09-12">2022-09-12</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-13" data-for="Personal/Journal/2022/W37/2022-09-13">2022-09-13</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-14" data-for="Personal/Journal/2022/W37/2022-09-14">2022-09-14</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-15" data-for="Personal/Journal/2022/W37/2022-09-15">2022-09-15</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-16" data-for="Personal/Journal/2022/W37/2022-09-16">2022-09-16</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-17" data-for="Personal/Journal/2022/W37/2022-09-17">2022-09-17</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-09-18" data-for="Personal/Journal/2022/W37/2022-09-18">2022-09-18</a></li><li><a href="../../../../Personal/Journal/2022/W37/2022-W37" data-for="Personal/Journal/2022/W37/2022-W37">2022-W37</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W38"><button class="folder-button"><span class="folder-title">W38</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W38"><li><a href="../../../../Personal/Journal/2022/W38/2022-09-19" data-for="Personal/Journal/2022/W38/2022-09-19">2022-09-19</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-09-20" data-for="Personal/Journal/2022/W38/2022-09-20">2022-09-20</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-09-21" data-for="Personal/Journal/2022/W38/2022-09-21">2022-09-21</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-09-22" data-for="Personal/Journal/2022/W38/2022-09-22">2022-09-22</a></li><li><a href="../../../../Personal/Journal/2022/W38/2022-W38" data-for="Personal/Journal/2022/W38/2022-W38">2022-W38</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W39"><button class="folder-button"><span class="folder-title">W39</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W39"><li><a href="../../../../Personal/Journal/2022/W39/2022-09-28" data-for="Personal/Journal/2022/W39/2022-09-28">2022-09-28</a></li><li><a href="../../../../Personal/Journal/2022/W39/2022-09-29" data-for="Personal/Journal/2022/W39/2022-09-29">2022-09-29</a></li><li><a href="../../../../Personal/Journal/2022/W39/2022-W39" data-for="Personal/Journal/2022/W39/2022-W39">2022-W39</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W41"><button class="folder-button"><span class="folder-title">W41</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W41"><li><a href="../../../../Personal/Journal/2022/W41/2022-10-10" data-for="Personal/Journal/2022/W41/2022-10-10">2022-10-10</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-11" data-for="Personal/Journal/2022/W41/2022-10-11">2022-10-11</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-12" data-for="Personal/Journal/2022/W41/2022-10-12">2022-10-12</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-13" data-for="Personal/Journal/2022/W41/2022-10-13">2022-10-13</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-14" data-for="Personal/Journal/2022/W41/2022-10-14">2022-10-14</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-10-16" data-for="Personal/Journal/2022/W41/2022-10-16">2022-10-16</a></li><li><a href="../../../../Personal/Journal/2022/W41/2022-W41" data-for="Personal/Journal/2022/W41/2022-W41">2022-W41</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W42"><button class="folder-button"><span class="folder-title">W42</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W42"><li><a href="../../../../Personal/Journal/2022/W42/2022-10-17" data-for="Personal/Journal/2022/W42/2022-10-17">2022-10-17</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-10-18" data-for="Personal/Journal/2022/W42/2022-10-18">2022-10-18</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-10-19" data-for="Personal/Journal/2022/W42/2022-10-19">2022-10-19</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-10-21" data-for="Personal/Journal/2022/W42/2022-10-21">2022-10-21</a></li><li><a href="../../../../Personal/Journal/2022/W42/2022-W42" data-for="Personal/Journal/2022/W42/2022-W42">2022-W42</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W43"><button class="folder-button"><span class="folder-title">W43</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W43"><li><a href="../../../../Personal/Journal/2022/W43/2022-10-24" data-for="Personal/Journal/2022/W43/2022-10-24">2022-10-24</a></li><li><a href="../../../../Personal/Journal/2022/W43/2022-10-26" data-for="Personal/Journal/2022/W43/2022-10-26">2022-10-26</a></li><li><a href="../../../../Personal/Journal/2022/W43/2022-W43" data-for="Personal/Journal/2022/W43/2022-W43">2022-W43</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W44"><button class="folder-button"><span class="folder-title">W44</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W44"><li><a href="../../../../Personal/Journal/2022/W44/2022-11-02" data-for="Personal/Journal/2022/W44/2022-11-02">2022-11-02</a></li><li><a href="../../../../Personal/Journal/2022/W44/2022-W44" data-for="Personal/Journal/2022/W44/2022-W44">2022-W44</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W45"><button class="folder-button"><span class="folder-title">W45</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W45"><li><a href="../../../../Personal/Journal/2022/W45/2022-11-10" data-for="Personal/Journal/2022/W45/2022-11-10">2022-11-10</a></li><li><a href="../../../../Personal/Journal/2022/W45/2022-11-11" data-for="Personal/Journal/2022/W45/2022-11-11">2022-11-11</a></li><li><a href="../../../../Personal/Journal/2022/W45/2022-11-12" data-for="Personal/Journal/2022/W45/2022-11-12">2022-11-12</a></li><li><a href="../../../../Personal/Journal/2022/W45/2022-11-13" data-for="Personal/Journal/2022/W45/2022-11-13">2022-11-13</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W46"><button class="folder-button"><span class="folder-title">W46</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W46"><li><a href="../../../../Personal/Journal/2022/W46/2022-11-18" data-for="Personal/Journal/2022/W46/2022-11-18">2022-11-18</a></li><li><a href="../../../../Personal/Journal/2022/W46/2022-11-20" data-for="Personal/Journal/2022/W46/2022-11-20">2022-11-20</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W47"><button class="folder-button"><span class="folder-title">W47</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W47"><li><a href="../../../../Personal/Journal/2022/W47/2022-11-21" data-for="Personal/Journal/2022/W47/2022-11-21">2022-11-21</a></li><li><a href="../../../../Personal/Journal/2022/W47/2022-11-22" data-for="Personal/Journal/2022/W47/2022-11-22">2022-11-22</a></li><li><a href="../../../../Personal/Journal/2022/W47/2022-W47" data-for="Personal/Journal/2022/W47/2022-W47">2022-W47</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W48"><button class="folder-button"><span class="folder-title">W48</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W48"><li><a href="../../../../Personal/Journal/2022/W48/2022-11-28" data-for="Personal/Journal/2022/W48/2022-11-28">2022-11-28</a></li><li><a href="../../../../Personal/Journal/2022/W48/2022-11-29" data-for="Personal/Journal/2022/W48/2022-11-29">2022-11-29</a></li><li><a href="../../../../Personal/Journal/2022/W48/2022-12-01" data-for="Personal/Journal/2022/W48/2022-12-01">2022-12-01</a></li><li><a href="../../../../Personal/Journal/2022/W48/2022-12-04" data-for="Personal/Journal/2022/W48/2022-12-04">2022-12-04</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W49"><button class="folder-button"><span class="folder-title">W49</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W49"><li><a href="../../../../Personal/Journal/2022/W49/2022-12-06" data-for="Personal/Journal/2022/W49/2022-12-06">2022-12-06</a></li><li><a href="../../../../Personal/Journal/2022/W49/2022-W49" data-for="Personal/Journal/2022/W49/2022-W49">2022-W49</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2022/W50"><button class="folder-button"><span class="folder-title">W50</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2022/W50"><li><a href="../../../../Personal/Journal/2022/W50/2022-12-12" data-for="Personal/Journal/2022/W50/2022-12-12">2022-12-12</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023"><button class="folder-button"><span class="folder-title">2023</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W2"><button class="folder-button"><span class="folder-title">W2</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W2"><li><a href="../../../../Personal/Journal/2023/W2/2023-W2" data-for="Personal/Journal/2023/W2/2023-W2">2023-W2</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W3"><button class="folder-button"><span class="folder-title">W3</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W3"><li><a href="../../../../Personal/Journal/2023/W3/2023-01-16" data-for="Personal/Journal/2023/W3/2023-01-16">2023-01-16</a></li><li><a href="../../../../Personal/Journal/2023/W3/2023-01-18" data-for="Personal/Journal/2023/W3/2023-01-18">2023-01-18</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W5"><button class="folder-button"><span class="folder-title">W5</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W5"><li><a href="../../../../Personal/Journal/2023/W5/2023-W5" data-for="Personal/Journal/2023/W5/2023-W5">2023-W5</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W6"><button class="folder-button"><span class="folder-title">W6</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W6"><li><a href="../../../../Personal/Journal/2023/W6/2023-W6" data-for="Personal/Journal/2023/W6/2023-W6">2023-W6</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W7"><button class="folder-button"><span class="folder-title">W7</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W7"><li><a href="../../../../Personal/Journal/2023/W7/2023-02-14" data-for="Personal/Journal/2023/W7/2023-02-14">2023-02-14</a></li><li><a href="../../../../Personal/Journal/2023/W7/2023-02-15" data-for="Personal/Journal/2023/W7/2023-02-15">2023-02-15</a></li><li><a href="../../../../Personal/Journal/2023/W7/2023-02-16" data-for="Personal/Journal/2023/W7/2023-02-16">2023-02-16</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W8"><button class="folder-button"><span class="folder-title">W8</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W8"><li><a href="../../../../Personal/Journal/2023/W8/2023-02-20" data-for="Personal/Journal/2023/W8/2023-02-20">2023-02-20</a></li><li><a href="../../../../Personal/Journal/2023/W8/2023-02-22" data-for="Personal/Journal/2023/W8/2023-02-22">2023-02-22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W10"><button class="folder-button"><span class="folder-title">W10</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W10"><li><a href="../../../../Personal/Journal/2023/W10/2023-W10" data-for="Personal/Journal/2023/W10/2023-W10">2023-W10</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W12"><button class="folder-button"><span class="folder-title">W12</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W12"><li><a href="../../../../Personal/Journal/2023/W12/2023-03-20" data-for="Personal/Journal/2023/W12/2023-03-20">2023-03-20</a></li><li><a href="../../../../Personal/Journal/2023/W12/2023-03-21" data-for="Personal/Journal/2023/W12/2023-03-21">2023-03-21</a></li><li><a href="../../../../Personal/Journal/2023/W12/2023-W12" data-for="Personal/Journal/2023/W12/2023-W12">2023-W12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W14"><button class="folder-button"><span class="folder-title">W14</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W14"><li><a href="../../../../Personal/Journal/2023/W14/2023-04-08" data-for="Personal/Journal/2023/W14/2023-04-08">2023-04-08</a></li><li><a href="../../../../Personal/Journal/2023/W14/2023-W14" data-for="Personal/Journal/2023/W14/2023-W14">2023-W14</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W16"><button class="folder-button"><span class="folder-title">W16</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W16"><li><a href="../../../../Personal/Journal/2023/W16/2023-04-21" data-for="Personal/Journal/2023/W16/2023-04-21">2023-04-21</a></li><li><a href="../../../../Personal/Journal/2023/W16/2023-04-23" data-for="Personal/Journal/2023/W16/2023-04-23">2023-04-23</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W22"><button class="folder-button"><span class="folder-title">W22</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W22"><li><a href="../../../../Personal/Journal/2023/W22/2023-05-31" data-for="Personal/Journal/2023/W22/2023-05-31">2023-05-31</a></li><li><a href="../../../../Personal/Journal/2023/W22/2023-06-01" data-for="Personal/Journal/2023/W22/2023-06-01">2023-06-01</a></li><li><a href="../../../../Personal/Journal/2023/W22/2023-W22" data-for="Personal/Journal/2023/W22/2023-W22">2023-W22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W23"><button class="folder-button"><span class="folder-title">W23</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W23"><li><a href="../../../../Personal/Journal/2023/W23/2023-06-05" data-for="Personal/Journal/2023/W23/2023-06-05">2023-06-05</a></li><li><a href="../../../../Personal/Journal/2023/W23/2023-06-08" data-for="Personal/Journal/2023/W23/2023-06-08">2023-06-08</a></li><li><a href="../../../../Personal/Journal/2023/W23/2023-W23" data-for="Personal/Journal/2023/W23/2023-W23">2023-W23</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W24"><button class="folder-button"><span class="folder-title">W24</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W24"><li><a href="../../../../Personal/Journal/2023/W24/2023-06-12" data-for="Personal/Journal/2023/W24/2023-06-12">2023-06-12</a></li><li><a href="../../../../Personal/Journal/2023/W24/2023-06-13" data-for="Personal/Journal/2023/W24/2023-06-13">2023-06-13</a></li><li><a href="../../../../Personal/Journal/2023/W24/2023-06-15" data-for="Personal/Journal/2023/W24/2023-06-15">2023-06-15</a></li><li><a href="../../../../Personal/Journal/2023/W24/2023-W24" data-for="Personal/Journal/2023/W24/2023-W24">2023-W24</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W25"><button class="folder-button"><span class="folder-title">W25</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W25"><li><a href="../../../../Personal/Journal/2023/W25/2023-W25" data-for="Personal/Journal/2023/W25/2023-W25">2023-W25</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W26"><button class="folder-button"><span class="folder-title">W26</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W26"><li><a href="../../../../Personal/Journal/2023/W26/2023-06-26" data-for="Personal/Journal/2023/W26/2023-06-26">2023-06-26</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W31"><button class="folder-button"><span class="folder-title">W31</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W31"><li><a href="../../../../Personal/Journal/2023/W31/2023-W31" data-for="Personal/Journal/2023/W31/2023-W31">2023-W31</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W32"><button class="folder-button"><span class="folder-title">W32</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W32"><li><a href="../../../../Personal/Journal/2023/W32/2023-08-07" data-for="Personal/Journal/2023/W32/2023-08-07">2023-08-07</a></li><li><a href="../../../../Personal/Journal/2023/W32/2023-08-08" data-for="Personal/Journal/2023/W32/2023-08-08">2023-08-08</a></li><li><a href="../../../../Personal/Journal/2023/W32/2023-W32" data-for="Personal/Journal/2023/W32/2023-W32">2023-W32</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W33"><button class="folder-button"><span class="folder-title">W33</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W33"><li><a href="../../../../Personal/Journal/2023/W33/2023-W33" data-for="Personal/Journal/2023/W33/2023-W33">2023-W33</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W35"><button class="folder-button"><span class="folder-title">W35</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W35"><li><a href="../../../../Personal/Journal/2023/W35/2023-W35" data-for="Personal/Journal/2023/W35/2023-W35">2023-W35</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W36"><button class="folder-button"><span class="folder-title">W36</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W36"><li><a href="../../../../Personal/Journal/2023/W36/2023-W36" data-for="Personal/Journal/2023/W36/2023-W36">2023-W36</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W37"><button class="folder-button"><span class="folder-title">W37</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W37"><li><a href="../../../../Personal/Journal/2023/W37/2023-W37" data-for="Personal/Journal/2023/W37/2023-W37">2023-W37</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W40"><button class="folder-button"><span class="folder-title">W40</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W40"><li><a href="../../../../Personal/Journal/2023/W40/2023-W40" data-for="Personal/Journal/2023/W40/2023-W40">2023-W40</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W45"><button class="folder-button"><span class="folder-title">W45</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W45"><li><a href="../../../../Personal/Journal/2023/W45/2023-11-12" data-for="Personal/Journal/2023/W45/2023-11-12">2023-11-12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W46"><button class="folder-button"><span class="folder-title">W46</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W46"><li><a href="../../../../Personal/Journal/2023/W46/2023-11-15" data-for="Personal/Journal/2023/W46/2023-11-15">2023-11-15</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W48"><button class="folder-button"><span class="folder-title">W48</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W48"><li><a href="../../../../Personal/Journal/2023/W48/2023-W48" data-for="Personal/Journal/2023/W48/2023-W48">2023-W48</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W49"><button class="folder-button"><span class="folder-title">W49</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W49"><li><a href="../../../../Personal/Journal/2023/W49/2023-12-07" data-for="Personal/Journal/2023/W49/2023-12-07">2023-12-07</a></li><li><a href="../../../../Personal/Journal/2023/W49/2023-W49" data-for="Personal/Journal/2023/W49/2023-W49">2023-W49</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2023/W50"><button class="folder-button"><span class="folder-title">W50</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2023/W50"><li><a href="../../../../Personal/Journal/2023/W50/2023-12-12" data-for="Personal/Journal/2023/W50/2023-12-12">2023-12-12</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024"><button class="folder-button"><span class="folder-title">2024</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W8"><button class="folder-button"><span class="folder-title">W8</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W8"><li><a href="../../../../Personal/Journal/2024/W8/2024-02-22" data-for="Personal/Journal/2024/W8/2024-02-22">2024-02-22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W10"><button class="folder-button"><span class="folder-title">W10</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W10"><li><a href="../../../../Personal/Journal/2024/W10/2024-03-05" data-for="Personal/Journal/2024/W10/2024-03-05">2024-03-05</a></li><li><a href="../../../../Personal/Journal/2024/W10/2024-03-06" data-for="Personal/Journal/2024/W10/2024-03-06">2024-03-06</a></li><li><a href="../../../../Personal/Journal/2024/W10/2024-03-07" data-for="Personal/Journal/2024/W10/2024-03-07">2024-03-07</a></li><li><a href="../../../../Personal/Journal/2024/W10/2024-W10" data-for="Personal/Journal/2024/W10/2024-W10">2024-W10</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W11"><button class="folder-button"><span class="folder-title">W11</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W11"><li><a href="../../../../Personal/Journal/2024/W11/2024-03-11" data-for="Personal/Journal/2024/W11/2024-03-11">2024-03-11</a></li><li><a href="../../../../Personal/Journal/2024/W11/2024-03-12" data-for="Personal/Journal/2024/W11/2024-03-12">2024-03-12</a></li><li><a href="../../../../Personal/Journal/2024/W11/2024-03-13" data-for="Personal/Journal/2024/W11/2024-03-13">2024-03-13</a></li><li><a href="../../../../Personal/Journal/2024/W11/2024-W11" data-for="Personal/Journal/2024/W11/2024-W11">2024-W11</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W12"><button class="folder-button"><span class="folder-title">W12</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W12"><li><a href="../../../../Personal/Journal/2024/W12/2024-03-20" data-for="Personal/Journal/2024/W12/2024-03-20">2024-03-20</a></li><li><a href="../../../../Personal/Journal/2024/W12/2024-W12" data-for="Personal/Journal/2024/W12/2024-W12">2024-W12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W14"><button class="folder-button"><span class="folder-title">W14</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W14"><li><a href="../../../../Personal/Journal/2024/W14/2024-W14" data-for="Personal/Journal/2024/W14/2024-W14">2024-W14</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W16"><button class="folder-button"><span class="folder-title">W16</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W16"><li><a href="../../../../Personal/Journal/2024/W16/2024-W16" data-for="Personal/Journal/2024/W16/2024-W16">2024-W16</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W17"><button class="folder-button"><span class="folder-title">W17</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W17"><li><a href="../../../../Personal/Journal/2024/W17/2024-04-24" data-for="Personal/Journal/2024/W17/2024-04-24">2024-04-24</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W22"><button class="folder-button"><span class="folder-title">W22</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W22"><li><a href="../../../../Personal/Journal/2024/W22/2024-06-02" data-for="Personal/Journal/2024/W22/2024-06-02">2024-06-02</a></li><li><a href="../../../../Personal/Journal/2024/W22/2024-W22" data-for="Personal/Journal/2024/W22/2024-W22">2024-W22</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W23"><button class="folder-button"><span class="folder-title">W23</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W23"><li><a href="../../../../Personal/Journal/2024/W23/2024-06-03" data-for="Personal/Journal/2024/W23/2024-06-03">2024-06-03</a></li><li><a href="../../../../Personal/Journal/2024/W23/2024-06-04" data-for="Personal/Journal/2024/W23/2024-06-04">2024-06-04</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W24"><button class="folder-button"><span class="folder-title">W24</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W24"><li><a href="../../../../Personal/Journal/2024/W24/2024-06-12" data-for="Personal/Journal/2024/W24/2024-06-12">2024-06-12</a></li><li><a href="../../../../Personal/Journal/2024/W24/2024-W24" data-for="Personal/Journal/2024/W24/2024-W24">2024-W24</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W29"><button class="folder-button"><span class="folder-title">W29</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W29"><li><a href="../../../../Personal/Journal/2024/W29/2024-W29" data-for="Personal/Journal/2024/W29/2024-W29">2024-W29</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W30"><button class="folder-button"><span class="folder-title">W30</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W30"><li><a href="../../../../Personal/Journal/2024/W30/2024-07-22" data-for="Personal/Journal/2024/W30/2024-07-22">2024-07-22</a></li><li><a href="../../../../Personal/Journal/2024/W30/2024-07-25" data-for="Personal/Journal/2024/W30/2024-07-25">2024-07-25</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W33"><button class="folder-button"><span class="folder-title">W33</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W33"><li><a href="../../../../Personal/Journal/2024/W33/2024-08-12" data-for="Personal/Journal/2024/W33/2024-08-12">2024-08-12</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W35"><button class="folder-button"><span class="folder-title">W35</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W35"><li><a href="../../../../Personal/Journal/2024/W35/2024-08-31" data-for="Personal/Journal/2024/W35/2024-08-31">2024-08-31</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W40"><button class="folder-button"><span class="folder-title">W40</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W40"><li><a href="../../../../Personal/Journal/2024/W40/2024-W40" data-for="Personal/Journal/2024/W40/2024-W40">2024-W40</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Personal/Journal/2024/W41"><button class="folder-button"><span class="folder-title">W41</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Personal/Journal/2024/W41"><li><a href="../../../../Personal/Journal/2024/W41/2024-10-09" data-for="Personal/Journal/2024/W41/2024-10-09">2024-10-09</a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional"><button class="folder-button"><span class="folder-title">Professional</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Company"><button class="folder-button"><span class="folder-title">Company</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Company"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Company/数字化"><button class="folder-button"><span class="folder-title">数字化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Company/数字化"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Company/数字化/规范"><button class="folder-button"><span class="folder-title">规范</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Company/数字化/规范"><li><a href="../../../../Professional/Company/数字化/规范/企业计算机命名规范" data-for="Professional/Company/数字化/规范/企业计算机命名规范">企业计算机命名规范</a></li><li><a href="../../../../Professional/Company/数字化/规范/企业域名分配规范" data-for="Professional/Company/数字化/规范/企业域名分配规范">域名分配规范</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Project"><button class="folder-button"><span class="folder-title">Project</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Project"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Project/RSSky"><button class="folder-button"><span class="folder-title">RSSky</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Project/RSSky"><li><a href="../../../../Professional/Project/RSSky/项目计划书" data-for="Professional/Project/RSSky/项目计划书">项目计划书</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work"><button class="folder-button"><span class="folder-title">Work</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/data-engineer"><button class="folder-button"><span class="folder-title">data-engineer</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/data-engineer"><li><a href="../../../../Professional/Work/data-engineer/home" data-for="Professional/Work/data-engineer/home">数据工程师data-engineer</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap"><button class="folder-button"><span class="folder-title">roadmap</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/权益保障"><button class="folder-button"><span class="folder-title">权益保障</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/权益保障"><li><a href="../../../../Professional/Work/roadmap/权益保障/仲裁指南" data-for="Professional/Work/roadmap/权益保障/仲裁指南">仲裁指南</a></li><li><a href="../../../../Professional/Work/roadmap/权益保障/职场维权实战经验" data-for="Professional/Work/roadmap/权益保障/职场维权实战经验">职场维权实战经验</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/求职经验"><button class="folder-button"><span class="folder-title">求职经验</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/求职经验"><li><a href="../../../../Professional/Work/roadmap/求职经验/互联网行业-郑州" data-for="Professional/Work/roadmap/求职经验/互联网行业-郑州">互联网行业-郑州</a></li><li><a href="../../../../Professional/Work/roadmap/求职经验/写给软件工程师的建议" data-for="Professional/Work/roadmap/求职经验/写给软件工程师的建议">写给软件工程师的建议</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/简历攻略"><button class="folder-button"><span class="folder-title">简历攻略</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/简历攻略"><li><a href="../../../../Professional/Work/roadmap/简历攻略/IT-类简历" data-for="Professional/Work/roadmap/简历攻略/IT-类简历">IT 类简历</a></li><li><a href="../../../../Professional/Work/roadmap/简历攻略/简历原则" data-for="Professional/Work/roadmap/简历攻略/简历原则">简历原则</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/职业规划"><button class="folder-button"><span class="folder-title">职业规划</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/职业规划"><li><a href="../../../../Professional/Work/roadmap/职业规划/开发者职业路线图" data-for="Professional/Work/roadmap/职业规划/开发者职业路线图">开发者职业路线图</a></li><li><a href="../../../../Professional/Work/roadmap/职业规划/职业宏观规划图" data-for="Professional/Work/roadmap/职业规划/职业宏观规划图">职业宏观规划图</a></li><li><a href="../../../../Professional/Work/roadmap/职业规划/职业宏观路线图" data-for="Professional/Work/roadmap/职业规划/职业宏观路线图">职业宏观路线图</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/职场心得"><button class="folder-button"><span class="folder-title">职场心得</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/职场心得"><li><a href="../../../../Professional/Work/roadmap/职场心得/华为新员工的-8-个阶段" data-for="Professional/Work/roadmap/职场心得/华为新员工的-8-个阶段">华为新员工的 8 个阶段</a></li><li><a href="../../../../Professional/Work/roadmap/职场心得/如何平衡工作和生活" data-for="Professional/Work/roadmap/职场心得/如何平衡工作和生活">如何平衡工作和生活</a></li><li><a href="../../../../Professional/Work/roadmap/职场心得/如何度过新手村" data-for="Professional/Work/roadmap/职场心得/如何度过新手村">如何度过新手村</a></li><li><a href="../../../../Professional/Work/roadmap/职场心得/如何有效应对职场政治" data-for="Professional/Work/roadmap/职场心得/如何有效应对职场政治">如何有效应对职场政治</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/薪酬攻略"><button class="folder-button"><span class="folder-title">薪酬攻略</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/薪酬攻略"><li><a href="../../../../Professional/Work/roadmap/薪酬攻略/社会保障" data-for="Professional/Work/roadmap/薪酬攻略/社会保障">社会保障</a></li><li><a href="../../../../Professional/Work/roadmap/薪酬攻略/绩效考核" data-for="Professional/Work/roadmap/薪酬攻略/绩效考核">绩效考核</a></li><li><a href="../../../../Professional/Work/roadmap/薪酬攻略/薪酬制度" data-for="Professional/Work/roadmap/薪酬攻略/薪酬制度">薪酬制度</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/roadmap/面试法则"><button class="folder-button"><span class="folder-title">面试法则</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/roadmap/面试法则"><li><a href="../../../../Professional/Work/roadmap/面试法则/反向面试" data-for="Professional/Work/roadmap/面试法则/反向面试">反向面试</a></li><li><a href="../../../../Professional/Work/roadmap/面试法则/面试-10-大常见问题" data-for="Professional/Work/roadmap/面试法则/面试-10-大常见问题">面试 10 大常见问题</a></li></ul></div></li><li><a href="../../../../Professional/Work/roadmap/home" data-for="Professional/Work/roadmap/home">求职之路</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Professional/Work/sre-engineer"><button class="folder-button"><span class="folder-title">sre-engineer</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Professional/Work/sre-engineer"><li><a href="../../../../Professional/Work/sre-engineer/home" data-for="Professional/Work/sre-engineer/home">SRE (站点可靠性工程师)</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences"><button class="folder-button"><span class="folder-title">SocialSciences</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/English"><button class="folder-button"><span class="folder-title">English</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/English"><li><a href="../../../../SocialSciences/English/字母音标" data-for="SocialSciences/English/字母音标">字母音标</a></li><li><a href="../../../../SocialSciences/English/语法基础" data-for="SocialSciences/English/语法基础">语法基础</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government"><button class="folder-button"><span class="folder-title">Government</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government/中国"><button class="folder-button"><span class="folder-title">中国</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government/中国"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government/中国/标准"><button class="folder-button"><span class="folder-title">标准</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government/中国/标准"><li><a href="../../../../SocialSciences/Government/中国/标准/标准组织" data-for="SocialSciences/Government/中国/标准/标准组织">标准组织</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="SocialSciences/Government/中国/法律"><button class="folder-button"><span class="folder-title">法律</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="SocialSciences/Government/中国/法律"><li><a href="../../../../SocialSciences/Government/中国/法律/法律文书" data-for="SocialSciences/Government/中国/法律/法律文书">法律文书</a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology"><button class="folder-button"><span class="folder-title">Technology</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/CloudService"><button class="folder-button"><span class="folder-title">CloudService</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/CloudService"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/CloudService/基础"><button class="folder-button"><span class="folder-title">基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/CloudService/基础"><li><a href="../../../../Technology/CloudService/基础/IT-基础架构" data-for="Technology/CloudService/基础/IT-基础架构">IT 基础架构</a></li><li><a href="../../../../Technology/CloudService/基础/云计算" data-for="Technology/CloudService/基础/云计算">云计算概述</a></li><li><a href="../../../../Technology/CloudService/基础/功能即服务FaaS" data-for="Technology/CloudService/基础/功能即服务FaaS">功能即服务FaaS</a></li><li><a href="../../../../Technology/CloudService/基础/基础架构即服务IaaS" data-for="Technology/CloudService/基础/基础架构即服务IaaS">基础架构即服务IaaS</a></li><li><a href="../../../../Technology/CloudService/基础/平台即服务PaaS" data-for="Technology/CloudService/基础/平台即服务PaaS">平台即服务PaaS</a></li><li><a href="../../../../Technology/CloudService/基础/软件即服务SaaS" data-for="Technology/CloudService/基础/软件即服务SaaS">软件即服务SaaS</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork"><button class="folder-button"><span class="folder-title">ComputerNetwork</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/Nginx"><button class="folder-button"><span class="folder-title">Nginx</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/Nginx"><li><a href="../../../../Technology/ComputerNetwork/Nginx/概述" data-for="Technology/ComputerNetwork/Nginx/概述">Nginx 概述</a></li><li><a href="../../../../Technology/ComputerNetwork/Nginx/内容缓存" data-for="Technology/ComputerNetwork/Nginx/内容缓存">内容缓存</a></li><li><a href="../../../../Technology/ComputerNetwork/Nginx/基础配置" data-for="Technology/ComputerNetwork/Nginx/基础配置">基础配置</a></li><li><a href="../../../../Technology/ComputerNetwork/Nginx/负载均衡" data-for="Technology/ComputerNetwork/Nginx/负载均衡">负载均衡</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/公共服务"><button class="folder-button"><span class="folder-title">公共服务</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/公共服务"><li><a href="../../../../Technology/ComputerNetwork/公共服务/IPv4-DNS-服务" data-for="Technology/ComputerNetwork/公共服务/IPv4-DNS-服务">IPv4 DNS 服务</a></li><li><a href="../../../../Technology/ComputerNetwork/公共服务/IPv6-DNS-服务" data-for="Technology/ComputerNetwork/公共服务/IPv6-DNS-服务">IPv6 DNS 服务</a></li><li><a href="../../../../Technology/ComputerNetwork/公共服务/Mirror-镜像站" data-for="Technology/ComputerNetwork/公共服务/Mirror-镜像站">Mirror 镜像站</a></li><li><a href="../../../../Technology/ComputerNetwork/公共服务/NTP-服务器" data-for="Technology/ComputerNetwork/公共服务/NTP-服务器">NTP 服务器</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/应用服务"><button class="folder-button"><span class="folder-title">应用服务</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/应用服务"><li><a href="../../../../Technology/ComputerNetwork/应用服务/CDN-内容分发网络" data-for="Technology/ComputerNetwork/应用服务/CDN-内容分发网络">CDN 内容分发网络</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/网络协议"><button class="folder-button"><span class="folder-title">网络协议</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/网络协议"><li><a href="../../../../Technology/ComputerNetwork/网络协议/DHCP-动态主机配置协议" data-for="Technology/ComputerNetwork/网络协议/DHCP-动态主机配置协议">DHCP 动态主机配置协议</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/DNS-域名系统" data-for="Technology/ComputerNetwork/网络协议/DNS-域名系统">DNS 域名系统</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/IP-网际协议" data-for="Technology/ComputerNetwork/网络协议/IP-网际协议">IP 网际协议</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/TCP-传输控制协议" data-for="Technology/ComputerNetwork/网络协议/TCP-传输控制协议">TCP 传输控制协议</a></li><li><a href="../../../../Technology/ComputerNetwork/网络协议/UDP-用户数据报协议" data-for="Technology/ComputerNetwork/网络协议/UDP-用户数据报协议">UDP 用户数据报协议</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerNetwork/网络基础"><button class="folder-button"><span class="folder-title">网络基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerNetwork/网络基础"><li><a href="../../../../Technology/ComputerNetwork/网络基础/网络基础" data-for="Technology/ComputerNetwork/网络基础/网络基础">网络基础</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity"><button class="folder-button"><span class="folder-title">ComputerSecurity</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/信息安全"><button class="folder-button"><span class="folder-title">信息安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/信息安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/信息安全/OpenPGP"><button class="folder-button"><span class="folder-title">OpenPGP</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/信息安全/OpenPGP"><li><a href="../../../../Technology/ComputerSecurity/信息安全/OpenPGP/GnuPG-简明指南" data-for="Technology/ComputerSecurity/信息安全/OpenPGP/GnuPG-简明指南">GnuPG 简明指南</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/密码学"><button class="folder-button"><span class="folder-title">密码学</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/密码学"><li><a href="../../../../Technology/ComputerSecurity/密码学/简明指南" data-for="Technology/ComputerSecurity/密码学/简明指南">简明指南</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/用户安全"><button class="folder-button"><span class="folder-title">用户安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/用户安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/用户安全/权限设计"><button class="folder-button"><span class="folder-title">权限设计</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/用户安全/权限设计"><li><a href="../../../../Technology/ComputerSecurity/用户安全/权限设计/主流权限系统的设计" data-for="Technology/ComputerSecurity/用户安全/权限设计/主流权限系统的设计">主流权限系统的设计</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/用户安全/用户鉴权"><button class="folder-button"><span class="folder-title">用户鉴权</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/用户安全/用户鉴权"><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/HTTP-基本鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/HTTP-基本鉴权">HTTP 基本鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/JWTJSON-Web-Token鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/JWTJSON-Web-Token鉴权">JWT 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/OAuth-鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/OAuth-鉴权">OAuth 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/Session-Cookie-鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/Session-Cookie-鉴权">Session-Cookie 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/单点登录Single-Sign-On" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/单点登录Single-Sign-On">SSO 单点登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/Token-鉴权" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/Token-鉴权">Token 鉴权</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/一键登录适用于原生APP" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/一键登录适用于原生APP">一键登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/唯一登录" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/唯一登录">唯一登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/扫码登录" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/扫码登录">扫码登录</a></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/用户鉴权/联合登录和信任登录" data-for="Technology/ComputerSecurity/用户安全/用户鉴权/联合登录和信任登录">联合登录和信任登录</a></li></ul></div></li><li><a href="../../../../Technology/ComputerSecurity/用户安全/简明指南" data-for="Technology/ComputerSecurity/用户安全/简明指南">简明指南</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/系统安全"><button class="folder-button"><span class="folder-title">系统安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/系统安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/系统安全/防火墙"><button class="folder-button"><span class="folder-title">防火墙</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/系统安全/防火墙"><li><a href="../../../../Technology/ComputerSecurity/系统安全/防火墙/网络端口大全" data-for="Technology/ComputerSecurity/系统安全/防火墙/网络端口大全">网络端口大全</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/网络安全"><button class="folder-button"><span class="folder-title">网络安全</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/网络安全"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/网络安全/OpenSSH"><button class="folder-button"><span class="folder-title">OpenSSH</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/网络安全/OpenSSH"><li><a href="../../../../Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-使用方法" data-for="Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-使用方法">OpenSSH 使用方法</a></li><li><a href="../../../../Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-概述" data-for="Technology/ComputerSecurity/网络安全/OpenSSH/OpenSSH-概述">OpenSSH 概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerSecurity/网络安全/OpenSSL"><button class="folder-button"><span class="folder-title">OpenSSL</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerSecurity/网络安全/OpenSSL"><li><a href="../../../../Technology/ComputerSecurity/网络安全/OpenSSL/简明指南" data-for="Technology/ComputerSecurity/网络安全/OpenSSL/简明指南">简明指南</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ComputerStorage"><button class="folder-button"><span class="folder-title">ComputerStorage</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ComputerStorage"><li><a href="../../../../Technology/ComputerStorage/0.-大纲" data-for="Technology/ComputerStorage/0.-大纲">0. 大纲</a></li><li><a href="../../../../Technology/ComputerStorage/1.-存储基础" data-for="Technology/ComputerStorage/1.-存储基础">1. 存储基础</a></li><li><a href="../../../../Technology/ComputerStorage/2.-存储硬件" data-for="Technology/ComputerStorage/2.-存储硬件">2. 存储硬件</a></li><li><a href="../../../../Technology/ComputerStorage/3.-存储架构" data-for="Technology/ComputerStorage/3.-存储架构">3. 存储架构</a></li><li><a href="../../../../Technology/ComputerStorage/4.-文件系统" data-for="Technology/ComputerStorage/4.-文件系统">4. 文件系统</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem"><button class="folder-button"><span class="folder-title">DatabaseSystem</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem/PostgreSQL"><button class="folder-button"><span class="folder-title">PostgreSQL</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem/PostgreSQL"><li><a href="../../../../Technology/DatabaseSystem/PostgreSQL/基本概念" data-for="Technology/DatabaseSystem/PostgreSQL/基本概念">基本概念</a></li><li><a href="../../../../Technology/DatabaseSystem/PostgreSQL/安装配置" data-for="Technology/DatabaseSystem/PostgreSQL/安装配置">安装配置</a></li><li><a href="../../../../Technology/DatabaseSystem/PostgreSQL/简介" data-for="Technology/DatabaseSystem/PostgreSQL/简介">简介</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem/SQL-语言"><button class="folder-button"><span class="folder-title">SQL 语言</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem/SQL-语言"><li><a href="../../../../Technology/DatabaseSystem/SQL-语言/基础语法" data-for="Technology/DatabaseSystem/SQL-语言/基础语法">基础语法</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/DatabaseSystem/基础"><button class="folder-button"><span class="folder-title">基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/DatabaseSystem/基础"><li><a href="../../../../Technology/DatabaseSystem/基础/关系型数据库" data-for="Technology/DatabaseSystem/基础/关系型数据库">关系型数据库</a></li><li><a href="../../../../Technology/DatabaseSystem/基础/数据库概述" data-for="Technology/DatabaseSystem/基础/数据库概述">数据库概述</a></li><li><a href="../../../../Technology/DatabaseSystem/基础/非关系型数据库" data-for="Technology/DatabaseSystem/基础/非关系型数据库">非关系型数据库</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted"><button class="folder-button"><span class="folder-title">GettingStarted</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具"><button class="folder-button"><span class="folder-title">命令行工具</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具/PowerShell"><button class="folder-button"><span class="folder-title">PowerShell</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具/PowerShell"><li><a href="../../../../Technology/GettingStarted/命令行工具/PowerShell/PowerShell-入门" data-for="Technology/GettingStarted/命令行工具/PowerShell/PowerShell-入门">PowerShell 入门</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/PowerShell/PowerShell-进阶" data-for="Technology/GettingStarted/命令行工具/PowerShell/PowerShell-进阶">PowerShell 进阶</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/PowerShell/PowerShell-高级" data-for="Technology/GettingStarted/命令行工具/PowerShell/PowerShell-高级">PowerShell 高级</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具/Shell"><button class="folder-button"><span class="folder-title">Shell</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具/Shell"><li><a href="../../../../Technology/GettingStarted/命令行工具/Shell/Shell-命令操作" data-for="Technology/GettingStarted/命令行工具/Shell/Shell-命令操作">Linux 命令行操作</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Shell/Shell-必备锦囊" data-for="Technology/GettingStarted/命令行工具/Shell/Shell-必备锦囊">Shell 必备锦囊</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Shell/Shell-是什么" data-for="Technology/GettingStarted/命令行工具/Shell/Shell-是什么">Shell 是什么</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/命令行工具/Vim"><button class="folder-button"><span class="folder-title">Vim</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/命令行工具/Vim"><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/5.Vim-参考手册" data-for="Technology/GettingStarted/命令行工具/Vim/5.Vim-参考手册">Vim 参考手册</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/4.Vim-实用技巧" data-for="Technology/GettingStarted/命令行工具/Vim/4.Vim-实用技巧">Vim 实用技巧</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/6.Vim-帮助文档" data-for="Technology/GettingStarted/命令行工具/Vim/6.Vim-帮助文档">Vim 帮助文档</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/1.Vim-入门" data-for="Technology/GettingStarted/命令行工具/Vim/1.Vim-入门">Vim 快速入门</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/2.VIM-配置管理" data-for="Technology/GettingStarted/命令行工具/Vim/2.VIM-配置管理">VIM 配置管理</a></li><li><a href="../../../../Technology/GettingStarted/命令行工具/Vim/3.Vim-高级功能" data-for="Technology/GettingStarted/命令行工具/Vim/3.Vim-高级功能">Vim 高级功能</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/开源指南"><button class="folder-button"><span class="folder-title">开源指南</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/开源指南"><li><a href="../../../../Technology/GettingStarted/开源指南/如何向开源社区提问" data-for="Technology/GettingStarted/开源指南/如何向开源社区提问">如何向开源社区提问</a></li><li><a href="../../../../Technology/GettingStarted/开源指南/如何有效报告-BUG" data-for="Technology/GettingStarted/开源指南/如何有效报告-BUG">如何有效报告 BUG</a></li><li><a href="../../../../Technology/GettingStarted/开源指南/开源指北" data-for="Technology/GettingStarted/开源指南/开源指北">开源指北</a></li><li><a href="../../../../Technology/GettingStarted/开源指南/提问的智慧" data-for="Technology/GettingStarted/开源指南/提问的智慧">提问的智慧</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/文本处理"><button class="folder-button"><span class="folder-title">文本处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/文本处理"><li><a href="../../../../Technology/GettingStarted/文本处理/正则表达式" data-for="Technology/GettingStarted/文本处理/正则表达式">正则表达式</a></li><li><a href="../../../../Technology/GettingStarted/文本处理/结构化文件" data-for="Technology/GettingStarted/文本处理/结构化文件">结构化文件</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制"><button class="folder-button"><span class="folder-title">版本控制</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制/Git"><button class="folder-button"><span class="folder-title">Git</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制/Git"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制/Git/入门"><button class="folder-button"><span class="folder-title">入门</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制/Git/入门"><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/分支" data-for="Technology/GettingStarted/版本控制/Git/入门/分支">分支</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/协议" data-for="Technology/GettingStarted/版本控制/Git/入门/协议">协议</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/基础" data-for="Technology/GettingStarted/版本控制/Git/入门/基础">基础</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/入门/起步" data-for="Technology/GettingStarted/版本控制/Git/入门/起步">起步</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/GettingStarted/版本控制/Git/进阶"><button class="folder-button"><span class="folder-title">进阶</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/GettingStarted/版本控制/Git/进阶"><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/Git-LFS" data-for="Technology/GettingStarted/版本控制/Git/进阶/Git-LFS">Git-LFS</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/参考手册" data-for="Technology/GettingStarted/版本控制/Git/进阶/参考手册">参考手册</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/工作流" data-for="Technology/GettingStarted/版本控制/Git/进阶/工作流">工作流</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/常用命令" data-for="Technology/GettingStarted/版本控制/Git/进阶/常用命令">常用命令</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/常用技巧" data-for="Technology/GettingStarted/版本控制/Git/进阶/常用技巧">常用技巧</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/思维导图" data-for="Technology/GettingStarted/版本控制/Git/进阶/思维导图">思维导图</a></li><li><a href="../../../../Technology/GettingStarted/版本控制/Git/进阶/钩子" data-for="Technology/GettingStarted/版本控制/Git/进阶/钩子">钩子</a></li></ul></div></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem"><button class="folder-button"><span class="folder-title">OperatingSystem</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Automation"><button class="folder-button"><span class="folder-title">Automation</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Automation"><li><a href="../../../../Technology/OperatingSystem/Automation/Ansible" data-for="Technology/OperatingSystem/Automation/Ansible">Ansible</a></li><li><a href="../../../../Technology/OperatingSystem/Automation/Cloud-init-快速部署" data-for="Technology/OperatingSystem/Automation/Cloud-init-快速部署">Cloud-init</a></li><li><a href="../../../../Technology/OperatingSystem/Automation/PXE--系统部署" data-for="Technology/OperatingSystem/Automation/PXE--系统部署">PXE 自动化部署</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker"><button class="folder-button"><span class="folder-title">Docker</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker/基础"><button class="folder-button"><span class="folder-title">基础</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker/基础"><li><a href="../../../../Technology/OperatingSystem/Docker/基础/基础概念" data-for="Technology/OperatingSystem/Docker/基础/基础概念">基础概念</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/基础/安装配置" data-for="Technology/OperatingSystem/Docker/基础/安装配置">安装配置</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/基础/简介" data-for="Technology/OperatingSystem/Docker/基础/简介">简介</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker/进阶"><button class="folder-button"><span class="folder-title">进阶</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker/进阶"><li><a href="../../../../Technology/OperatingSystem/Docker/进阶/Docker-Compose" data-for="Technology/OperatingSystem/Docker/进阶/Docker-Compose">Docker Compose</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/进阶/Docker-Dockerfile" data-for="Technology/OperatingSystem/Docker/进阶/Docker-Dockerfile">Docker Dockerfile</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/进阶/Docker-使用" data-for="Technology/OperatingSystem/Docker/进阶/Docker-使用">Docker 使用</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Docker/高级"><button class="folder-button"><span class="folder-title">高级</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Docker/高级"><li><a href="../../../../Technology/OperatingSystem/Docker/高级/Docker-命令手册" data-for="Technology/OperatingSystem/Docker/高级/Docker-命令手册">Docker 命令手册</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/高级/Docker-存储" data-for="Technology/OperatingSystem/Docker/高级/Docker-存储">Docker 存储</a></li><li><a href="../../../../Technology/OperatingSystem/Docker/高级/Docker-网络" data-for="Technology/OperatingSystem/Docker/高级/Docker-网络">Docker 网络</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux"><button class="folder-button"><span class="folder-title">Linux</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/1.文化"><button class="folder-button"><span class="folder-title">1.文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/1.文化"><li><a href="../../../../Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-历史与发展" data-for="Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-历史与发展">GNU&amp;Linux 历史与发展</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-社区与文化" data-for="Technology/OperatingSystem/Linux/1.文化/GNU-and-Linux-社区与文化">GNU&amp;Linux 社区与文化</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/1.文化/开源软件的概念与重要性" data-for="Technology/OperatingSystem/Linux/1.文化/开源软件的概念与重要性">开源软件的概念与重要性</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/2.安装"><button class="folder-button"><span class="folder-title">2.安装</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/2.安装"><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/GRUB-引导程序" data-for="Technology/OperatingSystem/Linux/2.安装/GRUB-引导程序">GRUB 引导程序</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-下-0-1-手动安装-Arch-Linux" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-下-0-1-手动安装-Arch-Linux">Linux 下 0-1 手动安装 Arch Linux</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-下源代码编译与安装实战" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-下源代码编译与安装实战">Linux 下源代码编译与安装实战</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-发行版镜像" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-发行版镜像">Linux 发行版镜像</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-安装和配置" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-安装和配置">Linux 安装和配置</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/2.安装/Linux-无法启动排查指南" data-for="Technology/OperatingSystem/Linux/2.安装/Linux-无法启动排查指南">Linux 无法启动排查指南</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/3.基础操作"><button class="folder-button"><span class="folder-title">3.基础操作</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/3.基础操作"><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-包管理器" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-包管理器">Linux 包管理器</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Shell-命令行操作" data-for="Technology/OperatingSystem/Linux/3.基础操作/Shell-命令行操作">Linux 命令行操作</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-文件管理" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-文件管理">Linux 文件管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-环境变量" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-环境变量">Linux 环境变量</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/3.基础操作/Linux-用户和权限" data-for="Technology/OperatingSystem/Linux/3.基础操作/Linux-用户和权限">Linux 用户和权限</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/4.系统管理"><button class="folder-button"><span class="folder-title">4.系统管理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/4.系统管理"><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-内核管理" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-内核管理">Linux 内核管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-基本配置" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-基本配置">Linux 基本配置</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-日志管理" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-日志管理">Linux 日志管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-服务管理" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-服务管理">Linux 服务管理</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/4.系统管理/Linux-系统启动详解" data-for="Technology/OperatingSystem/Linux/4.系统管理/Linux-系统启动详解">Linux 服务管理</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/5.安全配置"><button class="folder-button"><span class="folder-title">5.安全配置</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/5.安全配置"><li><a href="../../../../Technology/OperatingSystem/Linux/5.安全配置/Linux-系统安全与防护" data-for="Technology/OperatingSystem/Linux/5.安全配置/Linux-系统安全与防护">Linux 系统安全与防护</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/6.网络管理"><button class="folder-button"><span class="folder-title">6.网络管理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/6.网络管理"><li><a href="../../../../Technology/OperatingSystem/Linux/6.网络管理/Linux-网络管理" data-for="Technology/OperatingSystem/Linux/6.网络管理/Linux-网络管理">Linux 网络管理</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Linux/7.存储管理"><button class="folder-button"><span class="folder-title">7.存储管理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Linux/7.存储管理"><li><a href="../../../../Technology/OperatingSystem/Linux/7.存储管理/fio-存储性能测试" data-for="Technology/OperatingSystem/Linux/7.存储管理/fio-存储性能测试">fio 存储性能测试</a></li><li><a href="../../../../Technology/OperatingSystem/Linux/7.存储管理/Linux-文件系统" data-for="Technology/OperatingSystem/Linux/7.存储管理/Linux-文件系统">Linux 文件系统</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Virtualization"><button class="folder-button"><span class="folder-title">Virtualization</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Virtualization"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Virtualization/1.虚拟化概述"><button class="folder-button"><span class="folder-title">1.虚拟化概述</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Virtualization/1.虚拟化概述"><li><a href="../../../../Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化平台简介" data-for="Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化平台简介">虚拟化平台简介</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化概述" data-for="Technology/OperatingSystem/Virtualization/1.虚拟化概述/虚拟化概述">虚拟化概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Virtualization/2.KVM虚拟化"><button class="folder-button"><span class="folder-title">2.KVM虚拟化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Virtualization/2.KVM虚拟化"><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/1.-KVM-概述" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/1.-KVM-概述">1. KVM 概述</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/2.-KVM-安装配置" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/2.-KVM-安装配置">2. KVM 安装配置</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/3.-KVM-管理工具" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/3.-KVM-管理工具">3. KVM 管理工具</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/4.-KVM-网络配置" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/4.-KVM-网络配置">4. KVM 网络配置</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/5.-KVM-存储管理" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/5.-KVM-存储管理">5. KVM 存储管理</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/6.-KVM-性能优化" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/6.-KVM-性能优化">6. KVM 性能优化</a></li><li><a href="../../../../Technology/OperatingSystem/Virtualization/2.KVM虚拟化/7.-KVM-系统监控" data-for="Technology/OperatingSystem/Virtualization/2.KVM虚拟化/7.-KVM-系统监控">7. KVM 系统监控</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Windows"><button class="folder-button"><span class="folder-title">Windows</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Windows"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/OperatingSystem/Windows/文化"><button class="folder-button"><span class="folder-title">文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/OperatingSystem/Windows/文化"><li><a href="../../../../Technology/OperatingSystem/Windows/文化/微软及其Windows系统的历史发展" data-for="Technology/OperatingSystem/Windows/文化/微软及其Windows系统的历史发展">微软及其Windows系统的历史发展</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage"><button class="folder-button"><span class="folder-title">ProgrammingLanguage</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python"><button class="folder-button"><span class="folder-title">Python</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/入门"><button class="folder-button"><span class="folder-title">入门</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/入门"><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/函数方法" data-for="Technology/ProgrammingLanguage/Python/入门/函数方法">函数方法</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/基础语法" data-for="Technology/ProgrammingLanguage/Python/入门/基础语法">基础语法</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/控制语句" data-for="Technology/ProgrammingLanguage/Python/入门/控制语句">控制语句</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/数据类型" data-for="Technology/ProgrammingLanguage/Python/入门/数据类型">数据类型</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/数据结构" data-for="Technology/ProgrammingLanguage/Python/入门/数据结构">数据结构</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/模块和包" data-for="Technology/ProgrammingLanguage/Python/入门/模块和包">模块和包</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/入门/面对对象" data-for="Technology/ProgrammingLanguage/Python/入门/面对对象">面对对象</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/文化"><button class="folder-button"><span class="folder-title">文化</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/文化"><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/发展历史" data-for="Technology/ProgrammingLanguage/Python/文化/发展历史">发展历史</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/生命周期" data-for="Technology/ProgrammingLanguage/Python/文化/生命周期">生命周期</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/社区文化" data-for="Technology/ProgrammingLanguage/Python/文化/社区文化">社区文化</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/设计哲学" data-for="Technology/ProgrammingLanguage/Python/文化/设计哲学">设计哲学</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/文化/语言特性" data-for="Technology/ProgrammingLanguage/Python/文化/语言特性">语言特性</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块"><button class="folder-button"><span class="folder-title">模块</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/WEB开发"><button class="folder-button"><span class="folder-title">WEB开发</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/WEB开发"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/WEB开发/Jinja-模板引擎" data-for="Technology/ProgrammingLanguage/Python/模块/WEB开发/Jinja-模板引擎">Jinja 模板引擎</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/数据处理"><button class="folder-button"><span class="folder-title">数据处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/数据处理"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/数据处理/configparser-配置文件解析器" data-for="Technology/ProgrammingLanguage/Python/模块/数据处理/configparser-配置文件解析器">configparser 配置文件解析器</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/数据处理/csv-文件读写" data-for="Technology/ProgrammingLanguage/Python/模块/数据处理/csv-文件读写">csv 文件读写</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/数据处理/json-编码和解码器" data-for="Technology/ProgrammingLanguage/Python/模块/数据处理/json-编码和解码器">json 编码和解码器</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/文本处理"><button class="folder-button"><span class="folder-title">文本处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/文本处理"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/文本处理/re-----正则表达式操作" data-for="Technology/ProgrammingLanguage/Python/模块/文本处理/re-----正则表达式操作">re --- 正则表达式操作</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/系统交互"><button class="folder-button"><span class="folder-title">系统交互</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/系统交互"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/dotenv-环境变量管理" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/dotenv-环境变量管理">dotenv 环境变量管理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/logging-日志记录工具" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/logging-日志记录工具">logging 日志记录工具</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/loguru-日志库" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/loguru-日志库">loguru 日志库</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/os-多种操作系统接口" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/os-多种操作系统接口">os 多种操作系统接口</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/subprocess-子进程管理" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/subprocess-子进程管理">subprocess 子进程管理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/系统交互/sys-系统相关的形参和函数" data-for="Technology/ProgrammingLanguage/Python/模块/系统交互/sys-系统相关的形参和函数">sys 系统相关的形参和函数</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/模块/网络处理"><button class="folder-button"><span class="folder-title">网络处理</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/模块/网络处理"><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/网络处理/requests-HTTP-库" data-for="Technology/ProgrammingLanguage/Python/模块/网络处理/requests-HTTP-库">requests HTTP 库</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/网络处理/socket-底层网络接口" data-for="Technology/ProgrammingLanguage/Python/模块/网络处理/socket-底层网络接口">socket 底层网络接口</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/模块/网络处理/urllib-URL-处理模块" data-for="Technology/ProgrammingLanguage/Python/模块/网络处理/urllib-URL-处理模块">urllib URL 处理模块</a></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/进阶"><button class="folder-button"><span class="folder-title">进阶</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/进阶"><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/函数式编程" data-for="Technology/ProgrammingLanguage/Python/进阶/函数式编程">函数式编程</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/垃圾回收" data-for="Technology/ProgrammingLanguage/Python/进阶/垃圾回收">垃圾回收</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/并行和并发" data-for="Technology/ProgrammingLanguage/Python/进阶/并行和并发">并行和并发</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/异常处理" data-for="Technology/ProgrammingLanguage/Python/进阶/异常处理">异常处理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/数据库操作" data-for="Technology/ProgrammingLanguage/Python/进阶/数据库操作">数据库操作</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/文件和IO操作" data-for="Technology/ProgrammingLanguage/Python/进阶/文件和IO操作">文件和IO操作</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/测试和调试" data-for="Technology/ProgrammingLanguage/Python/进阶/测试和调试">测试和调试</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/资源管理" data-for="Technology/ProgrammingLanguage/Python/进阶/资源管理">资源管理</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/进阶/面向对象进阶" data-for="Technology/ProgrammingLanguage/Python/进阶/面向对象进阶">面向对象</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/项目"><button class="folder-button"><span class="folder-title">项目</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/项目"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/项目/虚拟环境"><button class="folder-button"><span class="folder-title">虚拟环境</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/项目/虚拟环境"><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/pip" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/pip">pip</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/pipenv" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/pipenv">pipenv</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/poetry" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/poetry">poetry</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/pyenv" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/pyenv">pyenv</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/virtualenv" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/virtualenv">Virtualenv</a></li><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/虚拟环境/概述" data-for="Technology/ProgrammingLanguage/Python/项目/虚拟环境/概述">概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/ProgrammingLanguage/Python/项目/风格指南"><button class="folder-button"><span class="folder-title">风格指南</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/ProgrammingLanguage/Python/项目/风格指南"><li><a href="../../../../Technology/ProgrammingLanguage/Python/项目/风格指南/风格指南" data-for="Technology/ProgrammingLanguage/Python/项目/风格指南/风格指南">Python 风格指南</a></li></ul></div></li></ul></div></li></ul></div></li><li><a href="../../../../Technology/ProgrammingLanguage/home" data-for="Technology/ProgrammingLanguage/home">程序设计语言</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering"><button class="folder-button"><span class="folder-title">SoftwareEngineering</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/协作规范"><button class="folder-button"><span class="folder-title">协作规范</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/协作规范"><li><a href="../../../../Technology/SoftwareEngineering/协作规范/8.交流反馈Issue" data-for="Technology/SoftwareEngineering/协作规范/8.交流反馈Issue">交流反馈Issue</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/1.关于Readme" data-for="Technology/SoftwareEngineering/协作规范/1.关于Readme">关于Readme</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/4.分支Branch" data-for="Technology/SoftwareEngineering/协作规范/4.分支Branch">分支Branch</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/2.开源协议License" data-for="Technology/SoftwareEngineering/协作规范/2.开源协议License">开源协议License</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/5.日志Commit" data-for="Technology/SoftwareEngineering/协作规范/5.日志Commit">日志Commit</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/7.注释Comments" data-for="Technology/SoftwareEngineering/协作规范/7.注释Comments">注释Comments</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/6.版本Tag" data-for="Technology/SoftwareEngineering/协作规范/6.版本Tag">版本Tag</a></li><li><a href="../../../../Technology/SoftwareEngineering/协作规范/3.贡献者协议Contributing" data-for="Technology/SoftwareEngineering/协作规范/3.贡献者协议Contributing">贡献者协议Contributing</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/文档规范"><button class="folder-button"><span class="folder-title">文档规范</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/文档规范"><li><a href="../../../../Technology/SoftwareEngineering/文档规范/3.命名约定" data-for="Technology/SoftwareEngineering/文档规范/3.命名约定">命名约定</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/5.文档内容" data-for="Technology/SoftwareEngineering/文档规范/5.文档内容">文档内容</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/6.文档结构" data-for="Technology/SoftwareEngineering/文档规范/6.文档结构">文档结构</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/2.标点符号" data-for="Technology/SoftwareEngineering/文档规范/2.标点符号">标点符号</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/1.简介" data-for="Technology/SoftwareEngineering/文档规范/1.简介">简介</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/4.语言风格" data-for="Technology/SoftwareEngineering/文档规范/4.语言风格">语言风格</a></li><li><a href="../../../../Technology/SoftwareEngineering/文档规范/7.附录资料" data-for="Technology/SoftwareEngineering/文档规范/7.附录资料">附录资料</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/架构设计"><button class="folder-button"><span class="folder-title">架构设计</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/架构设计"><li><a href="../../../../Technology/SoftwareEngineering/架构设计/REST" data-for="Technology/SoftwareEngineering/架构设计/REST">REST</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/自动化流程"><button class="folder-button"><span class="folder-title">自动化流程</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/自动化流程"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/SoftwareEngineering/自动化流程/工具使用"><button class="folder-button"><span class="folder-title">工具使用</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/SoftwareEngineering/自动化流程/工具使用"><li><a href="../../../../Technology/SoftwareEngineering/自动化流程/工具使用/GitHub-Actions" data-for="Technology/SoftwareEngineering/自动化流程/工具使用/GitHub-Actions">GitHub Actions</a></li><li><a href="../../../../Technology/SoftwareEngineering/自动化流程/工具使用/GitLab-Runner" data-for="Technology/SoftwareEngineering/自动化流程/工具使用/GitLab-Runner">GitLab Runner</a></li><li><a href="../../../../Technology/SoftwareEngineering/自动化流程/工具使用/Jenkins" data-for="Technology/SoftwareEngineering/自动化流程/工具使用/Jenkins">Jenkins</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/StructuresAlgorithms"><button class="folder-button"><span class="folder-title">StructuresAlgorithms</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/StructuresAlgorithms"><li><a href="../../../../Technology/StructuresAlgorithms/数据结构" data-for="Technology/StructuresAlgorithms/数据结构">数据结构</a></li><li><a href="../../../../Technology/StructuresAlgorithms/算法" data-for="Technology/StructuresAlgorithms/算法">算法</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment"><button class="folder-button"><span class="folder-title">WebDevelopment</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment"><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/0.Overview"><button class="folder-button"><span class="folder-title">0.Overview</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/0.Overview"><li><a href="../../../../Technology/WebDevelopment/0.Overview/概述" data-for="Technology/WebDevelopment/0.Overview/概述">概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/1.Browser"><button class="folder-button"><span class="folder-title">1.Browser</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/1.Browser"><li><a href="../../../../Technology/WebDevelopment/1.Browser/2.Chrome" data-for="Technology/WebDevelopment/1.Browser/2.Chrome">Chrome</a></li><li><a href="../../../../Technology/WebDevelopment/1.Browser/4.DevTools" data-for="Technology/WebDevelopment/1.Browser/4.DevTools">DevTools</a></li><li><a href="../../../../Technology/WebDevelopment/1.Browser/3.Firefox" data-for="Technology/WebDevelopment/1.Browser/3.Firefox">Firefox</a></li><li><a href="../../../../Technology/WebDevelopment/1.Browser/1.浏览器概述" data-for="Technology/WebDevelopment/1.Browser/1.浏览器概述">浏览器概述</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/2.HTML"><button class="folder-button"><span class="folder-title">2.HTML</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/2.HTML"><li><a href="../../../../Technology/WebDevelopment/2.HTML/HTML" data-for="Technology/WebDevelopment/2.HTML/HTML">HTML</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/3.CSS"><button class="folder-button"><span class="folder-title">3.CSS</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/3.CSS"><li><a href="../../../../Technology/WebDevelopment/3.CSS/CSS" data-for="Technology/WebDevelopment/3.CSS/CSS">CSS</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/4.JavaScript"><button class="folder-button"><span class="folder-title">4.JavaScript</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/4.JavaScript"><li><a href="../../../../Technology/WebDevelopment/4.JavaScript/JavaScript" data-for="Technology/WebDevelopment/4.JavaScript/JavaScript">JavaScript</a></li></ul></div></li><li><div class="folder-container"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="5 8 14 8" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="folder-icon"><polyline points="6 9 12 15 18 9"></polyline></svg><div data-folderpath="Technology/WebDevelopment/7.Tools"><button class="folder-button"><span class="folder-title">7.Tools</span></button></div></div><div class="folder-outer "><ul style="padding-left:1.4rem;" class="content" data-folderul="Technology/WebDevelopment/7.Tools"><li><a href="../../../../Technology/WebDevelopment/7.Tools/PM2-工具" data-for="Technology/WebDevelopment/7.Tools/PM2-工具">PM2 工具</a></li><li><a href="../../../../Technology/WebDevelopment/7.Tools/Webpack" data-for="Technology/WebDevelopment/7.Tools/Webpack">Webpack</a></li><li><a href="../../../../Technology/WebDevelopment/7.Tools/包管理工具" data-for="Technology/WebDevelopment/7.Tools/包管理工具">包管理器</a></li></ul></div></li></ul></div></li></ul></div></li><li><div class="folder-outer "><ul style="padding-left:0;" class="content" data-folderul></ul></div></li></ul></div></li><li id="explorer-end"></li></ul></div></div></div></div><footer class><p>Created with <a href="https://quartz.jzhao.xyz/">Quartz v4.3.1</a> © 2024</p><ul><li><a href="https://www.7wate.com">Home</a></li><li><a href="https://blog.7wate.com">Blog</a></li><li><a href="https://github.com/7wate">GitHub</a></li></ul></footer></div></body><script type="application/javascript">function c(){let t=this.parentElement;t.classList.toggle("is-collapsed");let l=t.classList.contains("is-collapsed")?this.scrollHeight:t.scrollHeight;t.style.maxHeight=l+"px";let o=t,e=t.parentElement;for(;e;){if(!e.classList.contains("callout"))return;let n=e.classList.contains("is-collapsed")?e.scrollHeight:e.scrollHeight+o.scrollHeight;e.style.maxHeight=n+"px",o=e,e=e.parentElement}}function i(){let t=document.getElementsByClassName("callout is-collapsible");for(let s of t){let l=s.firstElementChild;if(l){l.addEventListener("click",c),window.addCleanup(()=>l.removeEventListener("click",c));let e=s.classList.contains("is-collapsed")?l.scrollHeight:s.scrollHeight;s.style.maxHeight=e+"px"}}}document.addEventListener("nav",i);window.addEventListener("resize",i);
</script><script type="module">
let mermaidImport = undefined
document.addEventListener('nav', async () => {
if (document.querySelector("code.mermaid")) {
mermaidImport ||= await import('https://cdnjs.cloudflare.com/ajax/libs/mermaid/10.7.0/mermaid.esm.min.mjs')
const mermaid = mermaidImport.default
const darkMode = document.documentElement.getAttribute('saved-theme') === 'dark'
mermaid.initialize({
startOnLoad: false,
securityLevel: 'loose',
theme: darkMode ? 'dark' : 'default'
})
await mermaid.run({
querySelector: '.mermaid'
})
}
});
</script><script src="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.9/contrib/copy-tex.min.js" type="application/javascript"></script><script src="../../../../postscript.js" type="module"></script></html>