Files
oneclickvirt.github.io/assets/guide_oneclickvirt_oneclickvirt_qa.md.CTPI_aAK.js
2026-02-26 05:56:29 +00:00

14 lines
17 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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.
import{_ as i,c as a,o as t,ag as l}from"./chunks/framework.CSeR4K32.js";const e="/assets/iofailed.BIGD2fYy.png",c=JSON.parse('{"title":"如有问题请反馈对应仓库","description":"","frontmatter":{"outline":"deep"},"headers":[],"relativePath":"guide/oneclickvirt/oneclickvirt_qa.md","filePath":"guide/oneclickvirt/oneclickvirt_qa.md","lastUpdated":1772085361000}'),n={name:"guide/oneclickvirt/oneclickvirt_qa.md"};function h(p,s,k,d,r,o){return t(),a("div",null,s[0]||(s[0]=[l(`<h1 id="如有问题请反馈对应仓库" tabindex="-1">如有问题请反馈对应仓库 <a class="header-anchor" href="#如有问题请反馈对应仓库" aria-label="Permalink to &quot;如有问题请反馈对应仓库&quot;"></a></h1><h2 id="忘记了管理员密码怎么办" tabindex="-1">忘记了管理员密码怎么办 <a class="header-anchor" href="#忘记了管理员密码怎么办" aria-label="Permalink to &quot;忘记了管理员密码怎么办&quot;"></a></h2><p>需要通过数据库操作强行更改密码</p><ol><li>生成密码哈希</li></ol><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 使用 Python 生成(将 NewPassword123! 替换为您的新密码)</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">python3</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -c</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &quot;import bcrypt; print(bcrypt.hashpw(b&#39;NewPassword123!&#39;, bcrypt.gensalt()).decode(&#39;utf-8&#39;))&quot;</span></span></code></pre></div><p>输出示例:<code>$2b$12$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</code></p><ol start="2"><li>进入数据库</li></ol><p><strong>Docker 部署(一体化版本):</strong></p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> exec</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -it</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mysql</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -u</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt</span></span></code></pre></div><p><strong>独立数据库部署:</strong></p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">mysql</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -h</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 127.0.0.1</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -P</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> 3306</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -u</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -p</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt</span></span></code></pre></div><ol start="3"><li>更新密码</li></ol><div class="language-sql vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">sql</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">-- 查看管理员账户</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">SELECT</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> id, username, user_type </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">FROM</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> users </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">WHERE</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> user_type </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &#39;admin&#39;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">;</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">-- 更新密码替换为第1步生成的哈希值</span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">UPDATE</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> users </span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">SET</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> password</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &#39;$2b$12$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&#39;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> </span></span>
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">WHERE</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> username </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &#39;admin&#39;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">;</span></span>
<span class="line"></span>
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">-- 退出</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">EXIT;</span></span></code></pre></div><ol start="4"><li>登录测试</li></ol><p>使用新密码登录系统验证。</p><p><strong>注意事项</strong></p><ul><li>哈希值必须以 <code>$2a$</code>、<code>$2b$</code> 或 <code>$2y$</code> 开头</li><li>默认管理员用户名为 <code>admin</code>,可通过查询确认</li><li>建议使用强密码≥8位含大小写字母、数字、特殊字符</li><li>修改前建议备份数据库:<div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> exec</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> mysqldump</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -u</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> root</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> &gt;</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> backup.sql</span></span></code></pre></div></li></ul><h2 id="docker如何删除持久化的数据库和存储卷" tabindex="-1">Docker如何删除持久化的数据库和存储卷 <a class="header-anchor" href="#docker如何删除持久化的数据库和存储卷" aria-label="Permalink to &quot;Docker如何删除持久化的数据库和存储卷&quot;"></a></h2><p>删除对应的容器后</p><p>执行</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> volume</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> rm</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt-data</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt-storage</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> oneclickvirt-config</span></span></code></pre></div><p>进行删除</p><h2 id="开设实例过多导致节点异常" tabindex="-1">开设实例过多导致节点异常 <a class="header-anchor" href="#开设实例过多导致节点异常" aria-label="Permalink to &quot;开设实例过多导致节点异常&quot;"></a></h2><p>一个显著的现象是执行操作极其缓慢,甚至几分钟都执行不完毕一个命令</p><p>一般常见于节点的IO比较差此时又开了很多SWAP超配内存</p><p>比如lxd环境下执行<code>lxc list</code>会报错</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">internal</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> error,</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> please</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> report:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> running</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> “lxd.lxc”</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> failed:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> cannot</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> create</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> transient</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> scope:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> DBus</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> error</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> “org.freedesktop.DBus.Error.TimedOut”:</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> [Failed </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">to</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> activate</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> service</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> org.freedesktop.systemd1:</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> timed</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> out</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> (service_start_timeout=25000ms)]</span></span></code></pre></div><p>原因就是设置的实例数量太多了商家又高度限制IO</p><p><img src="`+e+`" alt=""></p><p>此时只有一种方法,重启节点服务器,强制重启</p><p>重启后立即登录SSH使用对应的脚本删除swap的使用然后删除一些实例释放资源</p><p>由于重启后容器虚拟机需要一段时间一个个自动重启,打这个时间差可能删不了多少,但每次重启都能删一些</p><p>最终还是需要在限制实例数量的时候,慎重考虑节点的性能,较弱或者限制较多的节点,建议不要开设过多实例</p><h2 id="自编译出现依赖缺失或者兼容性问题" tabindex="-1">自编译出现依赖缺失或者兼容性问题 <a class="header-anchor" href="#自编译出现依赖缺失或者兼容性问题" aria-label="Permalink to &quot;自编译出现依赖缺失或者兼容性问题&quot;"></a></h2><p>常见于 源码部署、Dockerfile、DockerCompose 方式部署</p><p>常见于 ARM 架构下前端编译出错</p><p>直接使用 预编译的Docker容器镜像 或 直接使用二进制文件部署(最稳妥)</p><h2 id="incus-和-lxd-进行-nat-映射一些命令查不到映射规则" tabindex="-1">incus 和 lxd 进行 NAT 映射一些命令查不到映射规则 <a class="header-anchor" href="#incus-和-lxd-进行-nat-映射一些命令查不到映射规则" aria-label="Permalink to &quot;incus 和 lxd 进行 NAT 映射一些命令查不到映射规则&quot;"></a></h2><p>这是正常现象。</p><p>Incus / LXD 的端口映射默认使用 <strong>内核态 NATDNAT + FORWARD</strong> 实现,并 <strong>不会在宿主机上创建端口监听进程</strong>。 因此,使用传统的端口占用查询工具通常<strong>无法看到任何结果</strong>。</p><p>例如,以下命令都 <strong>查不到宿主机端口占用</strong></p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">ss</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -lntup</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">lsof</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -i</span></span>
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">netstat</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -lntp</span></span></code></pre></div><p>只有通过:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">incus</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> config</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> device</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> show</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 实例1</span></span></code></pre></div><p>或:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">lxd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> config</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> device</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> show</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 实例1</span></span></code></pre></div><p>才能看到已配置的端口映射规则,因为流量不过宿主机直接对外转发。</p><p>正确的端口映射查找方式是查看 nftables 规则</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">nft</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> list</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ruleset</span></span></code></pre></div><p>或仅查看 NAT 表:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">nft</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> list</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> table</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ip</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> nat</span></span></code></pre></div><p>在使用 <code>iptables</code> 的系统中可使用:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">iptables</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -t</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> nat</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -L</span></span></code></pre></div><p>如果有流量进出,查看真实连接状态可使用:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">conntrack</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -L</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> grep</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> &lt;</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">端</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">口</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">&gt;</span></span></code></pre></div>`,55)]))}const g=i(n,[["render",h]]);export{c as __pageData,g as default};