<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Linux on 也被放进河川</title>
    <link>https://hechuan.me/categories/linux/</link>
    <description>Recent content from 也被放进河川</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    
    <managingEditor>hechuan4@outlook.com (也被放进河川)</managingEditor>
    <webMaster>hechuan4@outlook.com (也被放进河川)</webMaster>
    
    <copyright>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</copyright>
    
    <lastBuildDate>Mon, 02 Mar 2026 00:00:00 +0800</lastBuildDate>
    
    
    <atom:link href="https://hechuan.me/categories/linux/index.xml" rel="self" type="application/rss&#43;xml" />
    

    
      
    

    <item>
      <title>没钱续 vps，旧手机当服务器，搭配 cf Tunnels 隧道部署博客和网盘。发布公网。</title>
      <link>https://hechuan.me/post/android-termux-vps/</link>
      <pubDate>Mon, 02 Mar 2026 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/android-termux-vps/</guid>
      <description>
        <![CDATA[<h1>没钱续 vps，旧手机当服务器，搭配 cf Tunnels 隧道部署博客和网盘。发布公网。</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="没钱续-vps旧手机当服务器搭配-cf-tunnels-隧道部署博客和网盘发布公网">
<a class="header-anchor" href="#%e6%b2%a1%e9%92%b1%e7%bb%ad-vps%e6%97%a7%e6%89%8b%e6%9c%ba%e5%bd%93%e6%9c%8d%e5%8a%a1%e5%99%a8%e6%90%ad%e9%85%8d-cf-tunnels-%e9%9a%a7%e9%81%93%e9%83%a8%e7%bd%b2%e5%8d%9a%e5%ae%a2%e5%92%8c%e7%bd%91%e7%9b%98%e5%8f%91%e5%b8%83%e5%85%ac%e7%bd%91"></a>
没钱续 vps，旧手机当服务器搭配 cf Tunnels 隧道，部署博客和网盘。发布公网。
</h1><p>创业负债。吃饭都是问题了，vps 之前一只白嫖别人的用。现在到期了快。</p>
<p>博客虽然没写什么东西，但好在是 hugo 的静态博客，纯 html 文件。直接白嫖 cloudflare pages 或 github pages 就行。</p>
<p>但还有 openlist 网盘没地方部署了。还有几个 docker 服务。翻了翻网上也没什么免费的 docker 托管。</p>
<p>想到之前写过一篇旧手机用 termux 安装 linux 容器当服务器用的教程。</p>
<p>搭配 cloudflare Tunnels 隧道，可以把内网的服务发布到公网。</p>
<p>cloudflare 真是互联网大善人。</p>
<p><strong>所以可以这样搞</strong>：</p>
<ul>
<li>开机 -&gt; <strong>Termux:Boot</strong> 自启 <strong>termux</strong> 软件。</li>
<li><strong>Termux</strong> 启动 -&gt; 拉起 <strong>SSH</strong> -&gt; 安装 <strong>Tmux</strong> 拉起 <strong>Debian</strong>。</li>
<li><strong>Debian</strong> 启动 -&gt; 拉起 <strong>SSH</strong> -&gt; 拉起 <strong>Cloudflared</strong> 启动 cf tunnels 隧道 -&gt; 拉起 <strong>openlist</strong> 或其他服务。</li>
</ul>
<p><strong>注</strong>：</p>
<p>其实 Cloudflared 和 openlist 都可以直接装在 termux 宿主机里，没必要再装个 debian 容器。
只是我习惯用 termux 安装 debian，在 debian 里再装 openlist 等服务。所以下面的例子是以此为例的。你随你喜欢就好。两者无差别。不会了可以问 <strong>ai</strong>。</p>
<h2 id="旧手机安装-linux-容器">
<a class="header-anchor" href="#%e6%97%a7%e6%89%8b%e6%9c%ba%e5%ae%89%e8%a3%85-linux-%e5%ae%b9%e5%99%a8"></a>
旧手机安装 linux 容器
</h2><p>看这篇</p>
<p>安装完 linux 容器后</p>
<h2 id="配置-cloudflare-tunnels-隧道">
<a class="header-anchor" href="#%e9%85%8d%e7%bd%ae-cloudflare-tunnels-%e9%9a%a7%e9%81%93"></a>
配置 cloudflare Tunnels 隧道
</h2><p>安装 <strong>cloudflared</strong> 新建隧道的时候有安装部骤，照着安装就行。</p>
<p>记的配置 cloudflare tunels 隧道自启。在下面。</p>
<p>你可以通过以下命令来管理它</p>
<ul>
<li><strong>查看运行状态</strong>：<code>service cloudflared status</code></li>
<li><strong>停止隧道</strong>：<code>service cloudflared stop</code></li>
<li><strong>启动隧道</strong>：<code>service cloudflared start</code></li>
<li><strong>重启隧道</strong>（改了配置后常用）：<code>service cloudflared restart</code></li>
</ul>
<h2 id="以-openlist-网盘为例">
<a class="header-anchor" href="#%e4%bb%a5-openlist-%e7%bd%91%e7%9b%98%e4%b8%ba%e4%be%8b"></a>
以 openlist 网盘为例
</h2><p>安装 openlist 网盘程序。</p>
<p><a href="https://doc.oplist.org/guide/installation/manual">https://doc.oplist.org/guide/installation/manual</a></p>
<p>安装后因为手机的 linux 容器没有 systemd 不能以平常 vps 配置自启和后台运行。</p>
<p><strong>后台运行有几种方案。</strong><code>screen</code> 和 <code>tmux</code></p>
<ul>
<li>我习惯用 <code>screen</code></li>
</ul>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 安装 screen</span>
</span></span><span class="line"><span class="cl">apt install screen
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 运行服务时前面加上 screen 就行，测试下</span>
</span></span><span class="line"><span class="cl"><span class="c1"># openlist 网盘运行命令就是</span>
</span></span><span class="line"><span class="cl">screen ./openlist server
</span></span></code></pre></div><p><strong>以下是 <code>screen</code> 的常用指令汇总</strong>：</p>
<ol>
<li><strong>会话管理（在普通终端输入）</strong></li>
</ol>
<ul>
<li><strong>新建会话</strong>：<code>screen -S &lt;名称&gt;</code>，创建一个指定名称的会话。</li>
<li><strong>列出所有会话</strong>：<code>screen -ls</code> 或 <code>screen -list</code>。</li>
<li><strong>恢复/重新连接会话</strong>：<code>screen -r &lt;名称或PID&gt;</code>。</li>
<li><strong>强制离线并重连</strong>：<code>screen -d -r &lt;名称&gt;</code>，如果会话显示为 &ldquo;Attached&rdquo;，此命令可强制让其在别处离线并在当前窗口恢复。</li>
<li><strong>清除死掉的会话</strong>：<code>screen -wipe</code>，用于清除那些已经停止但仍显示在列表中的会话。</li>
<li><strong>彻底关闭会话</strong>：在会话中输入 <code>exit</code> 或使用 <code>screen -X -S &lt;名称&gt; quit</code>。</li>
</ul>
<ol start="2">
<li>
<p><strong>常用快捷键（在 screen 会话中使用）</strong></p>
<p>所有快捷键都需要先按 <strong><code>Ctrl + a</code></strong>（前缀键）作为开头。</p>
</li>
</ol>
<ul>
<li><strong>退出并保持后台运行 (Detach)</strong>：<code>Ctrl + a</code>, <code>d</code>。</li>
<li><strong>新建窗口</strong>：<code>Ctrl + a</code>, <code>c</code>。</li>
<li><strong>查看窗口列表</strong>：<code>Ctrl + a</code>, <code>w</code></li>
</ul>
<h2 id="配置自启">
<a class="header-anchor" href="#%e9%85%8d%e7%bd%ae%e8%87%aa%e5%90%af"></a>
配置自启
</h2><p>虽然用 termux 安装了 debian 容器。但每次软件退出或手机重启后，要连接 termux 的 ssh 和启动 debian 容器都要手动启动。</p>
<p>在 Termux 中，由于它没有标准的 <code>systemd</code> 守护进程，<code>systemctl</code> 命令无法使用。</p>
<p><strong>大体流程</strong>：</p>
<ul>
<li>开机 -&gt; <strong>Termux:Boot</strong> 自启 <strong>termux</strong> 软件。</li>
<li><strong>Termux</strong> 启动 -&gt; 拉起 <strong>SSH</strong> -&gt; 安装 <strong>Tmux</strong> 拉起 <strong>Debian</strong>。</li>
<li><strong>Debian</strong> 启动 -&gt; 拉起 <strong>SSH</strong> -&gt; 拉起其他服务。</li>
</ul>
<h3 id="开机自启-termux-软件">
<a class="header-anchor" href="#%e5%bc%80%e6%9c%ba%e8%87%aa%e5%90%af-termux-%e8%bd%af%e4%bb%b6"></a>
开机自启 termux 软件
</h3><ul>
<li>开机自启 termux 软件，用 <a href="https://wiki.termux.com/wiki/Termux:Boot">Termux:Boot</a>：https://wiki.termux.com/wiki/Termux:Boot</li>
</ul>
<h3 id="termux-自启-ssh-或其他服务">
<a class="header-anchor" href="#termux-%e8%87%aa%e5%90%af-ssh-%e6%88%96%e5%85%b6%e4%bb%96%e6%9c%8d%e5%8a%a1"></a>
termux 自启 ssh 或其他服务。
</h3><p><strong>两种配置自启方案</strong></p>
<ol>
<li>Termux-services 方案。我没试过，可以参考：https://ivonblog.com/posts/termux-services/</li>
<li>这里以自启服务写在<code>~/.bashrc</code>为例。要杀掉行程再用kill指令停止。</li>
</ol>
<ul>
<li>
<p><strong>termux 的 ssh 服务自启。</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 编辑启动脚本</span>
</span></span><span class="line"><span class="cl">vim ~/.bashrc
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 在文件的最末尾添加以下内容：</span>
</span></span><span class="line"><span class="cl">pgrep -x sshd &gt;/dev/null <span class="o">||</span> sshd
</span></span></code></pre></div></li>
<li>
<p><strong>termux 自启 debian 容器。</strong></p>
<p>其实只要填加 <code>sudo bash debian</code> 命令就行。</p>
<p>但这样每次打开 termux 就自动进入 debian 了。我是想打开 termux 后，后台自启 debian 不需要在前台运行。</p>
<p>这里就需要用 <strong><code>tmux</code></strong> 或者 <strong><code>screen</code></strong> 软件。这里用 <strong><code>tmux</code></strong> 这个软件。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 安装 Tmux 在 Termux 中执行：</span>
</span></span><span class="line"><span class="cl">pkg install tmux -y
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 编辑启动脚本</span>
</span></span><span class="line"><span class="cl">vim ~/.bashrc
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 在文件的最末尾添加以下内容：</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 打开 Termux 时，检查后台是否有 Debian 任务，没有则启动。</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t debian 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    tmux new-session -d -s debian <span class="s1">&#39;sudo bash debian&#39;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span></code></pre></div></li>
<li>
<p><strong>贴上我的 termux 的 <code>.bashrc</code> 自启配置文件</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~ $ cat ~/.bashrc
</span></span><span class="line"><span class="cl"><span class="c1"># ssh 服务自启</span>
</span></span><span class="line"><span class="cl">pgrep -x sshd &gt;/dev/null <span class="o">||</span> sshd
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 自启 debian 容器</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t debian 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    tmux new-session -d -s debian <span class="s1">&#39;sudo bash debian&#39;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 查看手机 IP</span>
</span></span><span class="line"><span class="cl">ifconfig <span class="p">|</span> grep <span class="s2">&#34;inet &#34;</span> <span class="p">|</span> grep -v 127.0.0.1
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Komari tmux 自启脚本</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t komari 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    termux-wake-lock
</span></span><span class="line"><span class="cl">    tmux new-session -d -s komari <span class="s1">&#39;cd ~/komari &amp;&amp; ./komari server -l 0.0.0.0:25774&#39;</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Komari] 已在 tmux 新会话中后台启动&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Komari] 服务已在后台运行中&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Komari-Agent Root 自启脚本</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t komari-agent 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    termux-wake-lock
</span></span><span class="line"><span class="cl">    <span class="c1"># 在 tmux 中启动会话，并调用 su -c 来执行 root 命令</span>
</span></span><span class="line"><span class="cl">    tmux new-session -d -s komari-agent <span class="s2">&#34;su -c &#39;cd /data/data/com.termux/files/home/komari &amp;&amp; ./komari-agent -e http://127.0.0.1:25774 -t hyp57O3yAOxHZYj74ClxsJ&#39;&#34;</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Agent] 已在 tmux 中尝试以 Root 身份后台启动&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Agent] 服务已在后台运行中&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">~ $
</span></span></code></pre></div><p><strong>如何操作这个后台自启的 Debian？</strong></p>
<p>配置完成后，当你打开 Termux，它是<strong>静默</strong>的。你可以通过以下指令管理它：也就是 <code>tmux</code> 的常用命令。</p>
<ul>
<li><strong>查看后台是否在跑</strong>：
<code>tmux ls</code></li>
<li><strong>进入 Debian 界面</strong>：
<code>tmux attach -t debian</code>
<em>(进去后你就在 <code>root@localhost:#</code> 提示符下了)</em></li>
<li><strong>退出（回到后台）而不关闭</strong>：
在进入 Debian 后，按下快捷键：<strong><code>Ctrl + B</code></strong> 然后松开，再按 <strong><code>D</code></strong>。</li>
<li><strong>彻底关闭后台任务</strong>：
<code>tmux kill-session -t debian</code></li>
</ul>
</li>
<li>
<p><strong>你是否想让 debian 容器也自启 ssh 呢。</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 进入 debian 容器，操作跟在 termux 里一样。在 Debian 内部执行：</span>
</span></span><span class="line"><span class="cl">vim ~/.bashrc
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 在文件的最末尾添加以下内容：</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 检查 ssh 服务状态，如果没运行则启动</span>
</span></span><span class="line"><span class="cl">service ssh status &gt; /dev/null 2&gt;<span class="p">&amp;</span><span class="m">1</span> <span class="o">||</span> service ssh star
</span></span></code></pre></div></li>
<li>
<p><strong>以及自启 cloudflare tunnels 隧道</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 检查 cloudflared 服务状态，如果没运行则启动</span>
</span></span><span class="line"><span class="cl">service cloudflared status &gt; /dev/null 2&gt;<span class="p">&amp;</span><span class="m">1</span> <span class="o">||</span> service cloudflared star
</span></span></code></pre></div></li>
<li>
<p><strong>贴上我的 debian 自启脚本</strong></p>
</li>
</ul>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 检查 ssh 服务状态，如果没运行则启动</span>
</span></span><span class="line"><span class="cl">service ssh status &gt; /dev/null 2&gt;<span class="p">&amp;</span><span class="m">1</span> <span class="o">||</span> service ssh start
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 检查 cloudflared 服务状态，如果没运行则启动</span>
</span></span><span class="line"><span class="cl">service cloudflared status &gt; /dev/null 2&gt;<span class="p">&amp;</span><span class="m">1</span> <span class="o">||</span> service cloudflared start
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 自启 openlist</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 1. 自动清理已死掉的会话 (防止脚本误判)</span>
</span></span><span class="line"><span class="cl">screen -wipe &gt; /dev/null 2&gt;<span class="p">&amp;</span><span class="m">1</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 2. 检查 openlist 会话是否存在</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! screen -list <span class="p">|</span> grep -q <span class="s2">&#34;\.openlist&#34;</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    <span class="c1"># 确保进入绝对路径，避免相对路径报错</span>
</span></span><span class="line"><span class="cl">    <span class="nb">cd</span> ~/p.hechuan.me <span class="o">||</span> <span class="nb">exit</span>
</span></span><span class="line"><span class="cl">    
</span></span><span class="line"><span class="cl">    <span class="c1"># 3. 启动 screen</span>
</span></span><span class="line"><span class="cl">    <span class="c1"># 建议加上 -L (开启日志) 或指定 shell 环境</span>
</span></span><span class="line"><span class="cl">    screen -d -m -S openlist ./openlist server
</span></span><span class="line"><span class="cl">    
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;OpenList 已在 Screen 后台启动。&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;OpenList 已经在运行中。&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Komari-Agent tmux 自启脚本</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t Komari-Agent 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    termux-wake-lock
</span></span><span class="line"><span class="cl">    tmux new-session -d -s Komari-Agent <span class="s1">&#39;cd ~/komari &amp;&amp; ./komari-agent -e http://127.0.0.1:25774 -t OhmWv1Nr4nwkGL6XvqNwTt&#39;</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Komari-Agent] 已在 tmux 新会话中后台启动&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Komari-Agent] 服务已在后台运行中&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span></code></pre></div><h2 id="手机改来电自启改自供电">
<a class="header-anchor" href="#%e6%89%8b%e6%9c%ba%e6%94%b9%e6%9d%a5%e7%94%b5%e8%87%aa%e5%90%af%e6%94%b9%e8%87%aa%e4%be%9b%e7%94%b5"></a>
手机改来电自启，改自供电。
</h2><p>鸽</p>
<hr>
<p><strong>旧手机利用的3篇文章</strong></p>
<p><a href="https://hechuan.me/post/android-termux-install-linux">termux 安装 linux ubuntu</a></p>
<p><a href="https://hechuan.me/post/android-termux-vps">没钱续 vps，旧手机当服务器搭配 cf Tunnels 隧道，部署博客和网盘。发布公网。</a></p>
<p><a href="https://hechuan.me/post/android-sswifi-mianliu">红米note7 刷类原生 当软路由 随身wifi 免流热点机</a></p>

        
        <hr><p>本文2026-03-02首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2026-03-02</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>安卓</category>
      
    </item>
    
      
    

    <item>
      <title>windows 手动安装 wsl 步骤/常用命令/安装到指定目录/修改安装位置</title>
      <link>https://hechuan.me/post/wsl2-install/</link>
      <pubDate>Sat, 04 Nov 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/wsl2-install/</guid>
      <description>
        <![CDATA[<h1>windows 手动安装 wsl 步骤/常用命令/安装到指定目录/修改安装位置</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="windows-手动安装-wsl-步骤常用命令安装到指定目录修改安装位置">
<a class="header-anchor" href="#windows-%e6%89%8b%e5%8a%a8%e5%ae%89%e8%a3%85-wsl-%e6%ad%a5%e9%aa%a4%e5%b8%b8%e7%94%a8%e5%91%bd%e4%bb%a4%e5%ae%89%e8%a3%85%e5%88%b0%e6%8c%87%e5%ae%9a%e7%9b%ae%e5%bd%95%e4%bf%ae%e6%94%b9%e5%ae%89%e8%a3%85%e4%bd%8d%e7%bd%ae"></a>
windows 手动安装 wsl 步骤/常用命令/安装到指定目录/修改安装位置
</h1><p>转载自微软官网：https://learn.microsoft.com/zh-cn/windows/wsl/install-manual <img src="https://img.hechuan.me/file/i/2023/11/wsl2-install-logo.jpg" alt="wsl2-install-logo.jpg"></p>
<h2 id="本文内容">
<a class="header-anchor" href="#%e6%9c%ac%e6%96%87%e5%86%85%e5%ae%b9"></a>
本文内容
</h2><ol>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-1---enable-the-windows-subsystem-for-linux">步骤 1 - 启用适用于 Linux 的 Windows 子系统</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-2---check-requirements-for-running-wsl-2">步骤 2 - 检查运行 WSL 2 的要求</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-3---enable-virtual-machine-feature">步骤 3 - 启用虚拟机功能</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package">步骤 4 - 下载 Linux 内核更新包</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-5---set-wsl-2-as-your-default-version">步骤 5 - 将 WSL 2 设置为默认版本</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-6---install-your-linux-distribution-of-choice">步骤 6 - 安装所选的 Linux 分发</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#troubleshooting-installation">排查安装问题</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#downloading-distributions">下载发行版</a></li>
<li><a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#install-windows-terminal-optional">安装 Windows 终端（可选）</a></li>
</ol>
<h2 id="步骤-1---启用适用于-linux-的-windows-子系统">
<a class="header-anchor" href="#%e6%ad%a5%e9%aa%a4-1---%e5%90%af%e7%94%a8%e9%80%82%e7%94%a8%e4%ba%8e-linux-%e7%9a%84-windows-%e5%ad%90%e7%b3%bb%e7%bb%9f"></a>
步骤 1 - 启用适用于 Linux 的 Windows 子系统
</h2><p>需要先启用“适用于 Linux 的 Windows 子系统”可选功能，然后才能在 Windows 上安装 Linux 分发。</p>
<p>以管理员身份打开 PowerShell（“开始”菜单 &gt;“PowerShell” &gt;单击右键 &gt;“以管理员身份运行”），然后输入以下命令：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-PowerShell" data-lang="PowerShell"><span class="line"><span class="cl"><span class="n">dism</span><span class="p">.</span><span class="py">exe</span> <span class="p">/</span><span class="n">online</span> <span class="p">/</span><span class="nb">enable-feature</span> <span class="p">/</span><span class="n">featurename</span><span class="err">:</span><span class="nb">Microsoft-Windows</span><span class="n">-Subsystem-Linux</span> <span class="p">/</span><span class="n">all</span> <span class="p">/</span><span class="n">norestart</span>
</span></span></code></pre></div><p>建议现在转到步骤 #2，更新到 WSL 2，但如果只想安装 WSL 1，现在可以重新启动计算机，然后继续执行<a href="https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-6---install-your-linux-distribution-of-choice">步骤 6 - 安装所选的 Linux 发行版</a>。 若要更新到 WSL 2，请等待重新启动计算机，然后继续执行下一步。</p>
<h2 id="步骤-2---检查运行-wsl-2-的要求">
<a class="header-anchor" href="#%e6%ad%a5%e9%aa%a4-2---%e6%a3%80%e6%9f%a5%e8%bf%90%e8%a1%8c-wsl-2-%e7%9a%84%e8%a6%81%e6%b1%82"></a>
步骤 2 - 检查运行 WSL 2 的要求
</h2><p>若要更新到 WSL 2，需要运行 Windows 10。</p>
<ul>
<li>安装前确定 BIOS 里启用了虚拟化支持</li>
<li>对于 x64 系统：版本 1903 或更高版本，内部版本为 18362.1049 或更高版本。</li>
<li>对于 ARM64 系统：版本 2004 或更高版本，内部版本为 19041 或更高版本。</li>
</ul>
<p>或 Windows 11。</p>
<h2 id="步骤-3---启用虚拟机功能">
<a class="header-anchor" href="#%e6%ad%a5%e9%aa%a4-3---%e5%90%af%e7%94%a8%e8%99%9a%e6%8b%9f%e6%9c%ba%e5%8a%9f%e8%83%bd"></a>
步骤 3 - 启用虚拟机功能
</h2><p>安装 WSL 2 之前，必须启用“虚拟机平台”可选功能。 计算机需要<a href="https://learn.microsoft.com/zh-cn/windows/wsl/troubleshooting#error-0x80370102-the-virtual-machine-could-not-be-started-because-a-required-feature-is-not-installed">虚拟化功能</a>才能使用此功能。</p>
<p>以管理员身份打开 PowerShell 并运行：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">dism</span><span class="p">.</span><span class="py">exe</span> <span class="p">/</span><span class="n">online</span> <span class="p">/</span><span class="nb">enable-feature</span> <span class="p">/</span><span class="n">featurename</span><span class="err">:</span><span class="n">VirtualMachinePlatform</span> <span class="p">/</span><span class="n">all</span> <span class="p">/</span><span class="n">norestart</span>
</span></span></code></pre></div><p><strong>重新启动</strong>计算机，以完成 WSL 安装并更新到 WSL 2。</p>
<h2 id="步骤-4---下载-linux-内核更新包">
<a class="header-anchor" href="#%e6%ad%a5%e9%aa%a4-4---%e4%b8%8b%e8%bd%bd-linux-%e5%86%85%e6%a0%b8%e6%9b%b4%e6%96%b0%e5%8c%85"></a>
步骤 4 - 下载 Linux 内核更新包
</h2><p>Linux 内核更新包会安装最新版本的 <a href="https://github.com/microsoft/WSL2-Linux-Kernel">WSL 2 Linux 内核</a>，以便在 Windows 操作系统映像中运行 WSL。 （若要运行 <a href="https://learn.microsoft.com/zh-cn/windows/wsl/compare-versions#wsl-in-the-microsoft-store">Microsoft Store 中的 WSL</a> 并更频繁地推送更新，请使用 <code>wsl.exe --install</code> 或 <code>wsl.exe --update</code>。）</p>
<ol>
<li>下载最新包：</li>
</ol>
<ul>
<li><a href="https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi">适用于 x64 计算机的 WSL2 Linux 内核更新包</a></li>
</ul>
<ol>
<li>运行上一步中下载的更新包。 （双击以运行 - 系统将提示你提供提升的权限，选择“是”以批准此安装。）</li>
</ol>
<p>安装完成后，请继续执行下一步 - 在安装新的 Linux 分发时，将 WSL 2 设置为默认版本。 （如果希望将新的 Linux 安装设置为 WSL 1，请跳过此步骤。）</p>
<h2 id="步骤-5---将-wsl-2-设置为默认版本">
<a class="header-anchor" href="#%e6%ad%a5%e9%aa%a4-5---%e5%b0%86-wsl-2-%e8%ae%be%e7%bd%ae%e4%b8%ba%e9%bb%98%e8%ae%a4%e7%89%88%e6%9c%ac"></a>
步骤 5 - 将 WSL 2 设置为默认版本
</h2><p>打开 PowerShell，然后在安装新的 Linux 发行版时运行以下命令，将 WSL 2 设置为默认版本：</p>
<p>PowerShell</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="n">wsl</span> <span class="p">-</span><span class="n">-set-default-version</span> <span class="mf">2</span>
</span></span></code></pre></div><h2 id="步骤-6---安装所选的-linux-分发">
<a class="header-anchor" href="#%e6%ad%a5%e9%aa%a4-6---%e5%ae%89%e8%a3%85%e6%89%80%e9%80%89%e7%9a%84-linux-%e5%88%86%e5%8f%91"></a>
步骤 6 - 安装所选的 Linux 分发
</h2><ol>
<li>
<p>打开 <a href="https://aka.ms/wslstore">Microsoft Store</a>，并选择你偏好的 Linux 分发版。</p>
<p>单击以下链接会打开每个分发版的 Microsoft Store 页面：</p>
<ul>
<li><a href="https://www.microsoft.com/store/apps/9N9TNGVNDL3Q">Ubuntu 18.04 LTS</a></li>
<li><a href="https://www.microsoft.com/store/apps/9n6svws3rx71">Ubuntu 20.04 LTS</a></li>
<li><a href="https://www.microsoft.com/store/apps/9PN20MSR04DW">Ubuntu 22.04 LTS</a></li>
<li><a href="https://www.microsoft.com/store/apps/9NJFZK00FGKV">openSUSE Leap 15.1</a></li>
<li><a href="https://www.microsoft.com/store/apps/9MZ3D1TRP8T1">SUSE Linux Enterprise Server 12 SP5</a></li>
<li><a href="https://www.microsoft.com/store/apps/9PN498VPMF3Z">SUSE Linux Enterprise Server 15 SP1</a></li>
<li><a href="https://www.microsoft.com/store/apps/9PKR34TNCV07">Kali Linux</a></li>
<li><a href="https://www.microsoft.com/store/apps/9MSVKQC78PK6">Debian GNU/Linux</a></li>
<li><a href="https://www.microsoft.com/store/apps/9n6gdm4k2hnc">Fedora Remix for WSL</a></li>
<li><a href="https://www.microsoft.com/store/apps/9NV1GV1PXZ6P">Pengwin</a></li>
<li><a href="https://www.microsoft.com/store/apps/9N8LP0X93VCP">Pengwin Enterprise</a></li>
<li><a href="https://www.microsoft.com/store/apps/9p804crf0395">Alpine WSL</a></li>
<li><a href="https://www.microsoft.com/store/apps/9msmjqd017x7">Raft（免费试用版）</a></li>
</ul>
</li>
<li>
<p>在分发版的页面中，选择“获取”。</p>
</li>
</ol>
<p>首次启动新安装的 Linux 分发版时，将打开一个控制台窗口，系统会要求你等待一分钟或两分钟，以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。</p>
<p>然后，需要<a href="https://learn.microsoft.com/zh-cn/windows/wsl/setup/environment#set-up-your-linux-username-and-password">为新的 Linux 分发版创建用户帐户和密码</a>。</p>
<p><strong>祝贺你！ 现已成功安装并设置了与 Windows 操作系统完全集成的 Linux 分发！</strong></p>
<h2 id="下载发行版">
<a class="header-anchor" href="#%e4%b8%8b%e8%bd%bd%e5%8f%91%e8%a1%8c%e7%89%88"></a>
下载发行版
</h2><p>在某些情况下，你可能无法（或不想）使用 Microsoft Store 安装 WSL Linux 发行版。 你可能正在运行不支持 Microsoft Store 的 Windows Server 或长期服务 (LTSC) 桌面操作系统 SKU，或者你的公司网络策略和/或管理员不允许在你的环境中使用 Microsoft Store。 在这些情况下，虽然 WSL 本身可用，但你可能需要直接下载 Linux 发行版。</p>
<p>如果 Microsoft Store 应用不可用，可使用以下链接来下载并手动安装 Linux 发行版：</p>
<ul>
<li><a href="https://aka.ms/wslubuntu">Ubuntu</a></li>
<li><a href="https://aka.ms/wslubuntu2204">Ubuntu 22.04 LTS</a></li>
<li><a href="https://aka.ms/wslubuntu2004">Ubuntu 20.04</a></li>
<li><a href="https://aka.ms/wslubuntu2004arm">Ubuntu 20.04 ARM</a></li>
<li><a href="https://aka.ms/wsl-ubuntu-1804">Ubuntu 18.04</a></li>
<li><a href="https://aka.ms/wsl-ubuntu-1804-arm">Ubuntu 18.04 ARM</a></li>
<li><a href="https://aka.ms/wsl-ubuntu-1604">Ubuntu 16.04</a></li>
<li><a href="https://aka.ms/wsl-debian-gnulinux">Debian GNU/Linux</a></li>
<li><a href="https://aka.ms/wsl-kali-linux-new">Kali Linux</a></li>
<li><a href="https://aka.ms/wsl-sles-12">SUSE Linux Enterprise Server 12</a></li>
<li><a href="https://aka.ms/wsl-SUSELinuxEnterpriseServer15SP2">SUSE Linux Enterprise Server 15 SP2</a></li>
<li><a href="https://aka.ms/wsl-SUSELinuxEnterpriseServer15SP3">SUSE Linux Enterprise Server 15 SP3</a></li>
<li><a href="https://aka.ms/wsl-opensuse-tumbleweed">openSUSE Tumbleweed</a></li>
<li><a href="https://aka.ms/wsl-opensuseleap15-3">openSUSE Leap 15.3</a></li>
<li><a href="https://aka.ms/wsl-opensuseleap15-2">openSUSE Leap 15.2</a></li>
<li><a href="https://aka.ms/wsl-oraclelinux-8-5">Oracle Linux 8.5</a></li>
<li><a href="https://aka.ms/wsl-oraclelinux-7-9">Oracle Linux 7.9</a></li>
<li><a href="https://github.com/WhitewaterFoundry/WSLFedoraRemix/releases/">Fedora Remix for WSL</a></li>
</ul>
<p>这将导致 <code>&lt;distro&gt;.appx</code> 包下载到你选择的文件夹。</p>
<p>如果愿意，你也可通过命令行下载首选的发行版，可将 PowerShell 与 <a href="https://learn.microsoft.com/zh-cn/powershell/module/microsoft.powershell.utility/invoke-webrequest">Invoke-WebRequest</a> cmdlet 一起使用。 例如，下载 Ubuntu 20.04：</p>
<p>PowerShell</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="nb">Invoke-WebRequest</span> <span class="n">-Uri</span> <span class="n">https</span><span class="err">:</span><span class="p">//</span><span class="n">aka</span><span class="p">.</span><span class="n">ms</span><span class="p">/</span><span class="n">wslubuntu2004</span> <span class="n">-OutFile</span> <span class="n">Ubuntu</span><span class="p">.</span><span class="py">appx</span> <span class="n">-UseBasicParsing</span>
</span></span></code></pre></div><h2 id="wsl-常用命令">
<a class="header-anchor" href="#wsl-%e5%b8%b8%e7%94%a8%e5%91%bd%e4%bb%a4"></a>
wsl 常用命令
</h2><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1"># 列出已安装的所有发行版</span>
</span></span><span class="line"><span class="cl">wsl -l -v
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 列出所有发行版</span>
</span></span><span class="line"><span class="cl">wsl --list --online
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 启动一个发行版</span>
</span></span><span class="line"><span class="cl">wsl -d Ubuntu
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">#暂停一个发行版</span>
</span></span><span class="line"><span class="cl">wsl --terminate Ubunut
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 导出/备份</span>
</span></span><span class="line"><span class="cl">wsl --export Ubuntu Ubuntu-back.tar
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 导入/还原/利用备份创建新的</span>
</span></span><span class="line"><span class="cl">wsl --import Ubuntu-back C:<span class="se">\U</span>sers<span class="se">\l</span>inux<span class="se">\U</span>buntu-back .<span class="se">\U</span>buntu-back.tar
</span></span><span class="line"><span class="cl">wsl --import 新的发行版名字 发行版放在目录位置 发行版的tar包
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 删除已安装的发行版</span>
</span></span><span class="line"><span class="cl">wsl --unregister Ubuntu
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 停止所有正在运行的发行版</span>
</span></span><span class="line"><span class="cl">wsl --shutdown
</span></span></code></pre></div><h2 id="修改-wsl-默认安装路径">
<a class="header-anchor" href="#%e4%bf%ae%e6%94%b9-wsl-%e9%bb%98%e8%ae%a4%e5%ae%89%e8%a3%85%e8%b7%af%e5%be%84"></a>
修改 wsl 默认安装路径
</h2><p><strong>默认安装的 WSL2 目录</strong>：C:\Users\你的用户名\AppData\Local\Packages\</p>
<p>在Microsoft Store下载的WSL发行版会自动安装到<strong>C盘</strong>，<strong>不能手动选择安装位置</strong>。</p>
<p><strong>手动安装步骤：</strong></p>
<ul>
<li>从步骤 6 下载需要的发行版的安装包，比如：Ubuntu2204-221101.AppxBundle</li>
<li>下载完重命名为 .zip 文件，解压得到一堆文件。找到最大的那个文件，比如：Ubuntu_2204.1.7.0_x64.appx</li>
<li>再把 Ubuntu_2204.1.7.0_x64.appx 重命名为 .zip 文件，解压又得到一堆文件，找到 install.tar.gz 这个文件</li>
<li>再把 install.tar.gz 文件解压单层得到 install.tar 文件。就完成了。</li>
<li>最后就可以导入 install.tar 为 ubuntu 发行版了。可以看常用命令里导入命令 wsl –import Ubuntu22.04 C:\Users\linux\Ubuntu22.04 .\install.tar</li>
</ul>
<p><strong>注：</strong>.tar.gz 后缀暂时可以理解为双层打包压缩，而 install.tar.gz 文件只需解压单层得到 install.tar，大部分解压工具非常智能，会自动帮你把第二层的 install.tar 也解压出来。</p>
<p>如果不会可以用 <a href="https://www.7-zip.org/">7z</a> 这个解压工具，相比没有哪么智能。</p>
<p>导入完会在 Ubuntu22.04 目录下看到 ext4.vhdx 虚拟磁盘文件。此时就可以进入了。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-powershell" data-lang="powershell"><span class="line"><span class="cl"><span class="nb">PS </span><span class="n">C:</span><span class="p">\</span><span class="n">Users</span><span class="p">\</span><span class="n">huochuan</span><span class="p">&gt;</span> <span class="n">wsl</span> <span class="n">-l</span> <span class="n">-v</span>
</span></span><span class="line"><span class="cl">  <span class="n">NAME</span>      <span class="n">STATE</span>           <span class="n">VERSION</span>
</span></span><span class="line"><span class="cl"><span class="p">*</span> <span class="n">Ubuntu</span>    <span class="n">Running</span>         <span class="mf">2</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nb">PS </span><span class="n">C:</span><span class="p">\</span><span class="n">Users</span><span class="p">\</span><span class="n">huochuan</span><span class="p">&gt;</span> <span class="n">wsl</span> <span class="p">-</span><span class="n">-import</span> <span class="n">ubuntu22</span><span class="p">.</span><span class="py">04</span> <span class="n">C:</span><span class="p">\</span><span class="n">Users</span><span class="p">\</span><span class="n">huochuan</span><span class="p">\</span><span class="n">linux</span><span class="p">\</span><span class="n">ubuntu22</span><span class="p">.</span><span class="py">04</span> <span class="n">C:</span><span class="p">\</span><span class="n">Users</span><span class="p">\</span><span class="n">huochuan</span><span class="p">\</span><span class="n">linux</span><span class="p">\</span><span class="n">ubuntu</span><span class="p">\</span><span class="n">install</span><span class="p">.</span><span class="py">tar</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nb">PS </span><span class="n">C:</span><span class="p">\</span><span class="n">Users</span><span class="p">\</span><span class="n">huochuan</span><span class="p">&gt;</span> <span class="n">wsl</span> <span class="n">-l</span> <span class="n">-v</span>
</span></span><span class="line"><span class="cl">  <span class="n">NAME</span>           <span class="n">STATE</span>           <span class="n">VERSION</span>
</span></span><span class="line"><span class="cl"><span class="p">*</span> <span class="n">Ubuntu</span>         <span class="n">Running</span>         <span class="mf">2</span>
</span></span><span class="line"><span class="cl">  <span class="n">ubuntu22</span><span class="p">.</span><span class="py">04</span>    <span class="n">Stopped</span>         <span class="mf">2</span>
</span></span><span class="line"><span class="cl">  
</span></span><span class="line"><span class="cl"><span class="nb">PS </span><span class="n">C:</span><span class="p">\</span><span class="n">Users</span><span class="p">\</span><span class="n">huochuan</span><span class="p">&gt;</span> <span class="n">wsl</span> <span class="n">-d</span> <span class="n">ubuntu22</span><span class="p">.</span><span class="py">04</span>
</span></span><span class="line"><span class="cl"><span class="n">Welcome</span> <span class="n">to</span> <span class="n">Ubuntu</span> <span class="mf">22.04</span><span class="p">.</span><span class="py">1</span> <span class="n">LTS</span> <span class="p">(</span><span class="n">GNU</span><span class="p">/</span><span class="n">Linux</span> <span class="mf">5.10</span><span class="p">.</span><span class="py">16</span><span class="p">.</span><span class="mf">3</span><span class="n">-microsoft-standard-WSL2</span> <span class="n">x86_64</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> <span class="p">*</span> <span class="n">Documentation</span><span class="err">:</span>  <span class="n">https</span><span class="err">:</span><span class="p">//</span><span class="n">help</span><span class="p">.</span><span class="py">ubuntu</span><span class="p">.</span><span class="py">com</span>
</span></span><span class="line"><span class="cl"> <span class="p">*</span> <span class="n">Management</span><span class="err">:</span>     <span class="n">https</span><span class="err">:</span><span class="p">//</span><span class="n">landscape</span><span class="p">.</span><span class="py">canonical</span><span class="p">.</span><span class="py">com</span>
</span></span><span class="line"><span class="cl"> <span class="p">*</span> <span class="n">Support</span><span class="err">:</span>        <span class="n">https</span><span class="err">:</span><span class="p">//</span><span class="n">ubuntu</span><span class="p">.</span><span class="n">com</span><span class="p">/</span><span class="n">advantage</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">root</span><span class="nv">@huochuan</span><span class="err">:</span><span class="p">/</span><span class="n">mnt</span><span class="p">/</span><span class="n">c</span><span class="p">/</span><span class="n">Users</span><span class="p">/</span><span class="n">huochuan</span><span class="c">#</span>
</span></span><span class="line"><span class="cl"><span class="n">root</span><span class="nv">@huochuan</span><span class="err">:</span><span class="p">/</span><span class="n">mnt</span><span class="p">/</span><span class="n">c</span><span class="p">/</span><span class="n">Users</span><span class="p">/</span><span class="n">huochuan</span><span class="c"># cd ~</span>
</span></span><span class="line"><span class="cl"><span class="n">root</span><span class="nv">@huochuan</span><span class="err">:</span><span class="p">~</span><span class="c">#</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c"># 可以看到这里已经进入 Ubuntu22.04 系统了，直接用 root 用户进去了。</span>
</span></span></code></pre></div>
        
        <hr><p>本文2023-11-04首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-11-04</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>windows</category><category>linux</category>
      
    </item>
    
      
    

    <item>
      <title>omv 6.5 nas 系统教程 安装/docker/插件拓展</title>
      <link>https://hechuan.me/post/omv-6-5/</link>
      <pubDate>Sat, 04 Nov 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/omv-6-5/</guid>
      <description>
        <![CDATA[<h1>omv 6.5 nas 系统教程 安装/docker/插件拓展</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="omv-65-nas-系统教程-安装docker插件拓展">
<a class="header-anchor" href="#omv-65-nas-%e7%b3%bb%e7%bb%9f%e6%95%99%e7%a8%8b-%e5%ae%89%e8%a3%85docker%e6%8f%92%e4%bb%b6%e6%8b%93%e5%b1%95"></a>
omv 6.5 nas 系统教程 安装/docker/插件拓展
</h1><p><img src="https://img.hechuan.me/file/i/2023/11/omv%206.5%20nas%20%E7%B3%BB%E7%BB%9F%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B%20%E5%AE%89%E8%A3%85docker%E6%8F%92%E4%BB%B6%E6%8B%93%E5%B1%95.webp" alt="img"></p>
<p>为什么要用 omv? 说操作简单也并不简单，甚至可以说比群晖等成熟的nas系统还复杂一些。</p>
<p>但黑群晖用了用，感觉并不适合我，而 unraid 也不免费。</p>
<p>剩下的 TrueNas 用了下感觉好复杂，一些 raid 磁盘阵列对于个人用户而言，感觉并不怎么用得上，(其实是硬盘少，没的组阵列。)</p>
<p>感觉个人用户还是数据冷备一份适合。</p>
<p>~~</p>
<p>omv 全称：OpenMediaVault，采用了系统与数据相分离的结构、</p>
<p>安装了系统后的存储器，是不允许再用于存储数据的。</p>
<p>所以用了几个 nas 系统后感觉还是 omv 比较适合使用习惯。</p>
<p>~~</p>
<p>omv 因为基于 debian 开发，所以驱动很全，基本是台电脑就能装，基本不会遇到驱动问题。</p>
<p>而且最主要的一点是 因为是用的旧笔记本安装的 nas 系统，加上附近没有有线，只能连无线，而 omv 是为唯一一个能直接连接无线网的nas 系统。</p>
<p>其余几个试着都不行，要么是驱动没有，要么是系统就压根没有这一功能。</p>
<h2 id="1---安装-omv65-系统">
<a class="header-anchor" href="#1---%e5%ae%89%e8%a3%85-omv65-%e7%b3%bb%e7%bb%9f"></a>
1 - 安装 omv6.5 系统
</h2><p>官网：https://www.openmediavault.org/</p>
<p>刻录U盘和安装系统的步骤省略，需要的可以看：https://www.bilibili.com/video/BV14q4y1A7nW</p>
<p>**详细安装教程转B站看视频：**<a href="https://www.bilibili.com/video/BV1xp4y1u7MC/">https://www.bilibili.com/video/BV1xp4y1u7MC/</a></p>
<h3 id="11---系统初始化的一些设置">
<a class="header-anchor" href="#11---%e7%b3%bb%e7%bb%9f%e5%88%9d%e5%a7%8b%e5%8c%96%e7%9a%84%e4%b8%80%e4%ba%9b%e8%ae%be%e7%bd%ae"></a>
1.1 - 系统初始化的一些设置
</h3><p><strong>设置终端页面为英文(可选)</strong></p>
<p>若想外接显示器使用终端，或者中文乱码，则需要改变语言：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="nb">export</span> <span class="nv">LANG</span><span class="o">=</span>en_US.UTF-8
</span></span><span class="line"><span class="cl">sudo dpkg-reconfigure locales
</span></span><span class="line"><span class="cl">reboot
</span></span></code></pre></div><h3 id="12---换源可选">
<a class="header-anchor" href="#12---%e6%8d%a2%e6%ba%90%e5%8f%af%e9%80%89"></a>
1.2 - 换源(可选)
</h3><p>实测貌似不换也正常？</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_APT_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/OpenMediaVault/public&#34;</span>
</span></span><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_APT_ALT_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/OpenMediaVault/packages&#34;</span>
</span></span><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_APT_KERNEL_BACKPORTS_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/debian&#34;</span>
</span></span><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_APT_SECURITY_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/debian-security&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 如果你有安装 omv-extras 则需要运行如下命令更改源</span>
</span></span><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_EXTRAS_APT_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/OpenMediaVault/openmediavault-plugin-developers&#34;</span>
</span></span><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_DOCKER_APT_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian&#34;</span>
</span></span><span class="line"><span class="cl">omv-env <span class="nb">set</span> OMV_PROXMOX_APT_REPOSITORY_URL <span class="s2">&#34;https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 使得环境变量更改生效</span>
</span></span><span class="line"><span class="cl">omv-salt stage run all
</span></span></code></pre></div><h2 id="2---安装插件-omv-extras扩展插件库">
<a class="header-anchor" href="#2---%e5%ae%89%e8%a3%85%e6%8f%92%e4%bb%b6-omv-extras%e6%89%a9%e5%b1%95%e6%8f%92%e4%bb%b6%e5%ba%93"></a>
2 - 安装插件 OMV-extras扩展插件库
</h2><p>现在omv-extra版本6.3.1，有了重大更新，原先的portainer之类已经全部移除，改成直接自带compose，我刚下载有点懵逼，看了半天它wiki，照着做完，现在感觉还挺好用</p>
<ul>
<li>
<h3 id="一键命令安装">
<a class="header-anchor" href="#%e4%b8%80%e9%94%ae%e5%91%bd%e4%bb%a4%e5%ae%89%e8%a3%85"></a>
一键命令安装：
</h3></li>
</ul>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install <span class="p">|</span> bash
</span></span></code></pre></div><ul>
<li>
<h3 id="手动安装">
<a class="header-anchor" href="#%e6%89%8b%e5%8a%a8%e5%ae%89%e8%a3%85"></a>
手动安装
</h3></li>
</ul>
<p>来到这个页面：</p>
<p><a href="https://github.com/OpenMediaVault-Plugin-Developers/packages">https://github.com/OpenMediaVault-Plugin-Developers/packages</a> 国内可以来网盘下载：https://wwgn.lanzoul.com/b013ofpva 密码:7hd9</p>
<p>下载对应的插件包，上传到 omv 后，执行下面命令安装，可能需要重启系统。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">sudo dpkg -i openmediavault-omvextrasorg_latest_all6.deb
</span></span></code></pre></div><h2 id="3---安装-docker--docker-compose">
<a class="header-anchor" href="#3---%e5%ae%89%e8%a3%85-docker--docker-compose"></a>
3 - 安装 docker | docker-compose
</h2><p>流程：先装插件拓展，插件下方多一个按钮，然后去插件里装docker-compers，然后服务里有compers后，但是docker还没有运行，再打开插件下方的按钮，打对勾，然后再去compers里安装docker</p>
<p>**注注注：**最新版的 omv 6 安装完 omv-extras插件后，插件下方不会再有 docker 等选项卡。</p>
<p>而是需要先去”插件“里面安装：openmediavault-compose 这个插件，然后在”服务“选项卡下面会多一个 Compose 这个选项。</p>
<h3 id="31---docker换源">
<a class="header-anchor" href="#31---docker%e6%8d%a2%e6%ba%90"></a>
3.1 - docker换源
</h3><p><strong>编辑/etc/docker/daemon.json配置文件</strong></p>
<p>用 vi /nano/vim等编辑器打开</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">sudo vim /etc/docker/daemon.json
</span></span></code></pre></div><p><strong>添加源</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1">## 你打开后可能默认是这样的：</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="o">{</span>
</span></span><span class="line"><span class="cl"><span class="s2">&#34;data-root&#34;</span>:<span class="s2">&#34;/var/lib/docker&#34;</span>,
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">## 那就只需要在{}里面添加这一段就行：</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="s2">&#34;registry-mirrors&#34;</span>: <span class="o">[</span>
</span></span><span class="line"><span class="cl">	<span class="s2">&#34;https://docker.mirrors.ustc.edu.cn&#34;</span>
</span></span><span class="line"><span class="cl"> <span class="o">]</span>
</span></span><span class="line"><span class="cl"> 
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">## 成品</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="o">{</span>
</span></span><span class="line"><span class="cl"><span class="s2">&#34;data-root&#34;</span>:<span class="s2">&#34;/var/lib/docker&#34;</span>,
</span></span><span class="line"><span class="cl"><span class="s2">&#34;registry-mirrors&#34;</span>: <span class="o">[</span>
</span></span><span class="line"><span class="cl">	<span class="s2">&#34;https://docker.mirrors.ustc.edu.cn&#34;</span>
</span></span><span class="line"><span class="cl"> <span class="o">]</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span></code></pre></div><p>[ ]里面的网址可以随便更换为国内镜像源的网址，我这里用的是某大学的镜像源。</p>
<p>大家可以随意选择，保存文件之后重启一下docker就完成配置了。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">systemctl restart docker.service
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">sudo systemctl restart docker
</span></span></code></pre></div><h2 id="4---安装-portainer--docker管理面板汉化版">
<a class="header-anchor" href="#4---%e5%ae%89%e8%a3%85-portainer--docker%e7%ae%a1%e7%90%86%e9%9d%a2%e6%9d%bf%e6%b1%89%e5%8c%96%e7%89%88"></a>
4 - 安装 portainer | docker管理面板汉化版
</h2><p>这个基本必装了吧，不过你要是喜欢手敲命令可以不装</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1"># 拉取镜像</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">docker pull 6053537/portainer-ce:latest
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1">#启动容器</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">docker run -d --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /app/portainer_data:/data --restart always --privileged<span class="o">=</span><span class="nb">true</span> 6053537/portainer-ce:latest
</span></span></code></pre></div><h3 id="41---常用docker-镜像">
<a class="header-anchor" href="#41---%e5%b8%b8%e7%94%a8docker-%e9%95%9c%e5%83%8f"></a>
4.1 - 常用docker 镜像
</h3><p><strong>qbittorrent</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">docker run -d <span class="se">\
</span></span></span><span class="line"><span class="cl">  --name<span class="o">=</span>qbittorrent <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">PUID</span><span class="o">=</span><span class="m">0</span> <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">PGID</span><span class="o">=</span><span class="m">0</span> <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">TZ</span><span class="o">=</span>Etc/UTC <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">WEBUI_PORT</span><span class="o">=</span><span class="m">8080</span> <span class="se">\
</span></span></span><span class="line"><span class="cl">  -p 8080:8080 <span class="se">\
</span></span></span><span class="line"><span class="cl">  -p 6881:6881 <span class="se">\
</span></span></span><span class="line"><span class="cl">  -p 6881:6881/udp <span class="se">\
</span></span></span><span class="line"><span class="cl">  -v /srv/dev-disk-by-uuid-515d0390-2614-44fa-86b5-bb0ab6e2bfe2/qbittorrent/config:/config <span class="se">\
</span></span></span><span class="line"><span class="cl">  -v /srv/dev-disk-by-uuid-515d0390-2614-44fa-86b5-bb0ab6e2bfe2/qbittorrent/downloads:/downloads <span class="se">\
</span></span></span><span class="line"><span class="cl">  --restart unless-stopped <span class="se">\
</span></span></span><span class="line"><span class="cl">  lscr.io/linuxserver/qbittorrent:14.3.9
</span></span></code></pre></div><p><strong>transmission</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">docker run -d <span class="se">\
</span></span></span><span class="line"><span class="cl">  --name<span class="o">=</span>transmission <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">PUID</span><span class="o">=</span><span class="m">1000</span> <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">PGID</span><span class="o">=</span><span class="m">1000</span> <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">TZ</span><span class="o">=</span>Etc/UTC <span class="se">\
</span></span></span><span class="line"><span class="cl">  -e <span class="nv">TRANSMISSION_WEB_HOME</span><span class="o">=</span> <span class="sb">`</span><span class="c1">#optional` \</span>
</span></span><span class="line"><span class="cl">  -e <span class="nv">USER</span><span class="o">=</span> <span class="sb">`</span><span class="c1">#optional` \</span>
</span></span><span class="line"><span class="cl">  -e <span class="nv">PASS</span><span class="o">=</span> <span class="sb">`</span><span class="c1">#optional` \</span>
</span></span><span class="line"><span class="cl">  -e <span class="nv">WHITELIST</span><span class="o">=</span> <span class="sb">`</span><span class="c1">#optional` \</span>
</span></span><span class="line"><span class="cl">  -e <span class="nv">PEERPORT</span><span class="o">=</span> <span class="sb">`</span><span class="c1">#optional` \</span>
</span></span><span class="line"><span class="cl">  -e <span class="nv">HOST_WHITELIST</span><span class="o">=</span> <span class="sb">`</span><span class="c1">#optional` \</span>
</span></span><span class="line"><span class="cl">  -p 9091:9091 <span class="se">\
</span></span></span><span class="line"><span class="cl">  -p 51413:51413 <span class="se">\
</span></span></span><span class="line"><span class="cl">  -p 51413:51413/udp <span class="se">\
</span></span></span><span class="line"><span class="cl">  -v /path/to/data:/config <span class="se">\
</span></span></span><span class="line"><span class="cl">  -v /path/to/downloads:/downloads <span class="se">\
</span></span></span><span class="line"><span class="cl">  -v /path/to/watch/folder:/watch <span class="se">\
</span></span></span><span class="line"><span class="cl">  --restart unless-stopped <span class="se">\
</span></span></span><span class="line"><span class="cl">  lscr.io/linuxserver/transmission:latest
</span></span></code></pre></div><h2 id="5---smb-共享">
<a class="header-anchor" href="#5---smb-%e5%85%b1%e4%ba%ab"></a>
5 - SMB 共享
</h2><ol>
<li>在<code>存储器——共享文件夹</code>中，进行<code>创建</code>。</li>
<li>在<code>服务——SMB/CIFS——共享</code>中，用<code>创建</code>将上一步<code>共享的文件夹</code>设置好。</li>
<li>在<code>服务——SMB/CIFS——设置</code>中，勾上<code>已启用</code>并按需设置。</li>
</ol>
<p>教程参考了：https://momiji.fun/openmediavault-install/ <a href="https://tvtv.fun/">https://tvtv.fun/</a> 等</p>
<h2 id="6---一些优化笔记本装">
<a class="header-anchor" href="#6---%e4%b8%80%e4%ba%9b%e4%bc%98%e5%8c%96%e7%ac%94%e8%ae%b0%e6%9c%ac%e8%a3%85"></a>
6 - 一些优化（笔记本装）
</h2><p>如果是笔记本装的系统，不想盒盖就休眠/睡眠的话。</p>
<ul>
<li>一，直接拆下屏幕就行。或者把屏幕里面边缘处有一个霍尔传感器？拆下来。</li>
<li>二，编辑 /etc/systemd/logind.conf 文件</li>
</ul>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1">#HandlePowerKey按下电源键后的行为，默认power off</span>
</span></span><span class="line"><span class="cl"><span class="c1">#HandleSleepKey 按下挂起键后的行为，默认suspend</span>
</span></span><span class="line"><span class="cl"><span class="c1">#HandleHibernateKey按下休眠键后的行为，默认hibernate</span>
</span></span><span class="line"><span class="cl"><span class="c1">#HandleLidSwitch合上笔记本盖后的行为，默认suspend（改为ignore；即合盖不休眠）在原文件中，还要去掉当前行和LidSwitchIgnoreInhibited=yes这行前面的 #</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">然后再重启服务
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># service systemd-logind restart</span>
</span></span><span class="line"><span class="cl">reboot
</span></span></code></pre></div>
        
        <hr><p>本文2023-11-04首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-11-04</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>nas</category>
      
    </item>
    
      
    

    <item>
      <title>termux 安装 linux ubuntu</title>
      <link>https://hechuan.me/post/android-termux-install-linux/</link>
      <pubDate>Fri, 23 Jun 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/android-termux-install-linux/</guid>
      <description>
        <![CDATA[<h1>termux 安装 linux ubuntu</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="termux或者zerotermux">
<a class="header-anchor" href="#termux%e6%88%96%e8%80%85zerotermux"></a>
termux或者zerotermux
</h1><p>这里推荐使用zerotermux。</p>
<p>zerotermux基于termux，更改了一些默认的软件源和汉化等，使得大陆使用更加友好一些。</p>
<ul>
<li>改软件源命令：</li>
</ul>
<ol>
<li>
<p><strong><code>sed</code> 手动命令</strong>（这个我没试过，酷安app复制过来的。）</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">sed -i <span class="s1">&#39;s@packages.termux.org@mirrors.ustc.edu.cn/termux@&#39;</span> <span class="nv">$PREFIX</span>/etc/apt/sources.list
</span></span><span class="line"><span class="cl">pkg up -y
</span></span></code></pre></div></li>
<li>
<p>termux-change-repo<strong>图形化工具</strong>
<code>termux-change-repo</code> 是 Termux 的“更换软件源（换源）”工具</p>
<p><strong>第一步</strong>：会出现一个列表（Main/Science/Game），直接按 <strong>回车 (OK)</strong> 全选。</p>
<p><strong>第二步</strong>：会出现镜像站列表，用上下键找到 <strong><code>Mirrors by TUNA (Tsinghua University)</code></strong> 或 <strong><code>Alibaba</code></strong>，按 <strong>空格键</strong> 选中它，然后按 <strong>回车 (OK)</strong>。</p>
<p><strong>第三步</strong>：完成后会自动运行 <code>apt update</code></p>
</li>
</ol>
<p><strong>最终效果上是一样的</strong>，但实现方式和<strong>安全性</strong>有所不同。</p>
<ol>
<li>区别在哪里？</li>
</ol>
<ul>
<li><strong><code>sed</code> 手动命令</strong>：这是直接用“搜索替换”的方式，暴力修改配置文件里的网址。
<ul>
<li><strong>优点</strong>：速度快，一行代码搞定。</li>
<li><strong>缺点</strong>：如果官方以后改了配置文件格式，或者你之前改乱过，这个命令可能会失效或报错。而且它只改了 <code>Main</code> 源，没改 <code>Science</code> 或 <code>Game</code> 源。</li>
</ul>
</li>
<li><strong><code>termux-change-repo</code></strong>：这是官方提供的<strong>图形化工具</strong>。
<ul>
<li><strong>优点</strong>：<strong>最稳妥</strong>。它会自动识别你安装了哪些仓库，并一次性把所有相关的源（Main, Science, Game）都同步换掉，不容易出错。</li>
</ul>
</li>
</ul>
<p><strong>注</strong>:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">~ $ termux-change-repo
</span></span><span class="line"><span class="cl">[*] Mirror mirrors.tuna.tsinghua.edu.cn selected
</span></span><span class="line"><span class="cl">[*] pkg --check-mirror update
</span></span><span class="line"><span class="cl">Testing the available mirrors:
</span></span><span class="line"><span class="cl">[*] (1) https://mirrors.tuna.tsinghua.edu.cn/termux/apt/termux-main: bad
</span></span><span class="line"><span class="cl">Error: None of the mirrors are accessible
</span></span><span class="line"><span class="cl">~ $
</span></span></code></pre></div><p>这个 <code>bad</code> 报错说明 <strong>ZeroTermux 没能连上清华源</strong>。这通常是因为你的手机网络（或者你开了加速器/梯子）无法访问这个特定的镜像站。</p>
<h2 id="第一步">
<a class="header-anchor" href="#%e7%ac%ac%e4%b8%80%e6%ad%a5"></a>
第一步
</h2><p>安装完,打开的第一步:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">termux-setup-storage
</span></span></code></pre></div><p>执行获取存储权限命令,会弹出弹窗选择给予 termux 存储权限.</p>
<h2 id="安装ssh-可选">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85ssh-%e5%8f%af%e9%80%89"></a>
安装ssh (可选)
</h2><ol>
<li><strong>安装 SSH</strong>：<code>pkg install openssh</code></li>
<li><strong>设置密码</strong>：<code>passwd</code></li>
<li><strong>启动</strong>：<code>sshd</code></li>
<li><strong>获取用户名</strong>：<code>whoami</code>（连接时用这个名字，一般是 u0_xxxx，端口 8022）</li>
</ol>
<p><strong>每次退出软件后都需要重新启动一次ssh</strong></p>
<p>如果您希望每次<strong>手动打开 Termux 应用</strong>时自动启动 SSH，可以将命令写入 shell 配置文件。</p>
<p>编辑 <code>~/.bashrc</code> 文件：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s2">&#34;pgrep -x sshd &gt;/dev/null || sshd&#34;</span> &gt;&gt; ~/.bashrc
</span></span></code></pre></div><h2 id="模拟-linux-环境-可选如果你要装linux发行版不需要这步">
<a class="header-anchor" href="#%e6%a8%a1%e6%8b%9f-linux-%e7%8e%af%e5%a2%83-%e5%8f%af%e9%80%89%e5%a6%82%e6%9e%9c%e4%bd%a0%e8%a6%81%e8%a3%85linux%e5%8f%91%e8%a1%8c%e7%89%88%e4%b8%8d%e9%9c%80%e8%a6%81%e8%bf%99%e6%ad%a5"></a>
模拟 linux 环境 （可选,如果你要装linux发行版,不需要这步）
</h2><p><strong>问</strong>：这是什么？做什么用的？</p>
<p><strong>答</strong>：博主也不太清楚，大概意思是可以模拟 linux 标准环境？</p>
<p>有些程序直接运行会提示：<code>Bad system call</code> 报错</p>
<p>下面的命令不能用了，记的以前是可以用的来着。</p>
<p><del>这时候可以试试装一下下面这个，启动后再运行一下程序试试。</del></p>
<ol>
<li><del>安装：termux-chroot</del></li>
</ol>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">pkg install termux-chroot
</span></span></code></pre></div><ol>
<li><del>运行启动 ：</del></li>
</ol>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">termux-chroot
</span></span></code></pre></div><p>需root才能用</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">pkg install sudo -y
</span></span></code></pre></div><p><strong>验证 Root</strong>：
输入 <code>sudo bash</code>。如果提示符从 <code>$</code> 变成 <strong><code>#</code></strong>，说明权限获取成功。</p>
<p>手机会弹出root授权界面</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~ $ sudo bash
</span></span><span class="line"><span class="cl">.../files/home <span class="c1">#</span>
</span></span></code></pre></div><p><strong>每次退出软件后都需要重新启动一次</strong></p>
<p>输入 <code>exit</code> 可回到普通用户的文件系统。</p>
<h2 id="安装-linux-虚拟容器未root机型">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85-linux-%e8%99%9a%e6%8b%9f%e5%ae%b9%e5%99%a8%e6%9c%aaroot%e6%9c%ba%e5%9e%8b"></a>
安装 linux 虚拟容器(未root机型)
</h2><p>termux 给你装一个虚拟的 linux环境。如： ubuntu Debian 等。</p>
<p>但如果你的需求比较简单，可以直接用 termux 解决，也可以不装。</p>
<p>那问题来了，那怎么知道自己的需求能不能直接用 termux 解决呢？</p>
<p>试一试，直接先用 termux 跑一下试试，能跑起来就不需要。</p>
<h3 id="安装-ubuntu">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85-ubuntu"></a>
安装 ubuntu
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 安装工具：</span>
</span></span><span class="line"><span class="cl">pkg install proot-distro
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 完成后运行 proot-distro list 可以查看有哪些发行版可选</span>
</span></span><span class="line"><span class="cl">proot-distro list
</span></span></code></pre></div><p>列如 ：Alpine Linux， Arch Linux， Debian， ubuntu等发行版</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 如果要安装 ubuntu 的话，执行：</span>
</span></span><span class="line"><span class="cl">proot-distro install ubuntu
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 卸载</span>
</span></span><span class="line"><span class="cl">proot-distro remove ubuntu
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 启动 ubuntu 输入：</span>
</span></span><span class="line"><span class="cl">proot-distro login ubuntu
</span></span></code></pre></div><ol>
<li>登录进去后，不知道 root 密码，输入 passwd 重新改一下密码。</li>
<li>更新一下：<code>apt update &amp;&amp; apt upgrade</code></li>
<li>上一步需要注意，由于 ubuntu 默认软件源是国外服务器，可能比较慢，需要更改一下软件源（教程在下面），或者直接挂代理。</li>
<li>装一下常用的软件，接下来可能会用，<code>apt install sudo vim openssh-server wget curl</code></li>
<li>至此你就有了一个 ubuntu 的 linux 环境，可以装你需要的程序软件了。</li>
</ol>
<p>这是比较简单的安装方法，比较快速，但缺点是无法选择发行版具体的版本。</p>
<p>比如上面这个 ubuntu 只有默认的 22.04 jammy 版本，但你要想装 20.04 或者 18.04 就没有了。</p>
<p><del>2026/02/25更新，其实是可以指定的。问了下 ai 是可以的。</del></p>
<h2 id="安装-linux-虚拟容器root机型-20260226更新">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85-linux-%e8%99%9a%e6%8b%9f%e5%ae%b9%e5%99%a8root%e6%9c%ba%e5%9e%8b-20260226%e6%9b%b4%e6%96%b0"></a>
安装 linux 虚拟容器(root机型) 2026/02/26更新
</h2><h3 id="安装-ubuntu-1">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85-ubuntu-1"></a>
安装 ubuntu
</h3><p>这个是通过代码/脚本安装，可以安装具体的发行版版本。</p>
<p><strong>旧教程（已过时）</strong>：</p>
<p><del>第一步：在 Termux 宿主机获取 Root</del></p>
<ol>
<li>
<p><del><strong>安装 tsu</strong>（这是专门为 Termux 优化的 <code>su</code> 工具）：</del></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">pkg install tsu -y
</span></span></code></pre></div></li>
<li>
<p><del><strong>申请权限</strong>：</del>
执行以下命令，这时手机会弹出 <strong>Magisk/KernelSU 的授权申请</strong>，务必点击<strong>允许</strong>：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">tsu
</span></span></code></pre></div><p><em>如果终端提示符从 <code>$</code> 变成了 <code>#</code>，说明获取成功。</em></p>
</li>
</ol>
<p><strong>若是显示</strong>：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">$ tsu
</span></span><span class="line"><span class="cl">No superuser binary detected.Are you rooted?~ 
</span></span></code></pre></div><p>虽然你在 Magisk 中已经给 ZeroTermux 授了权，但 <code>tsu</code> 仍然报错，这是因为<code>tsu</code> 脚本已经过时，无法在较新版本的 Magisk 环境下正确定位 <code>su</code> 二进制文件</p>
<p><strong>这个问题让我鼓捣了一晚上，还把系统刷坏了，重新刷了系统。</strong></p>
<p><strong>2026/02/26更新</strong> 从这步开始</p>
<p>使用 <code>sudo</code> 替代 <code>tsu</code> (核心解决方法)</p>
<p>由于 <code>tsu</code> 已停止维护，官方推荐改用 <code>sudo</code> 包，它能兼容最新的 Magisk 路径。</p>
<ul>
<li>
<p><strong>安装命令</strong>：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">pkg install sudo -y
</span></span></code></pre></div></li>
<li>
<p><strong>验证 Root</strong>：
输入 <code>sudo bash</code>。如果提示符从 <code>$</code> 变成 <strong><code>#</code></strong>，说明权限获取成功</p>
</li>
</ul>
<p>此时大概会进入这个命令界面</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">~ $ sudo bash
</span></span><span class="line"><span class="cl">.../files/home <span class="c1">#</span>
</span></span></code></pre></div><p>在这个命令界面下运行安装脚本</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">bash -c <span class="s2">&#34;</span><span class="k">$(</span>curl -L gitee.com/mo2/linux/raw/2/2<span class="k">)</span><span class="s2">&#34;</span>
</span></span></code></pre></div><p>若是termux 没装 curl 这个包，装一下：<code>pkg install curl</code></p>
<p>然后会出现交互式的界面来一步步的安装。</p>
<p>大部分都是用上面那个脚本装，也有其他的一些脚本，如下：</p>
<p><a href="https://github.com/xiliuya/termux-linux">https://github.com/xiliuya/termux-linux</a></p>
<h3 id="装ssh">
<a class="header-anchor" href="#%e8%a3%85ssh"></a>
装ssh
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">apt install openssh-server
</span></span></code></pre></div><p><strong>注意</strong>：这时候启动ssh服务，一般是：<strong>systemctl start sshd</strong></p>
<p>在 Termux 中，由于它没有标准的 <code>systemd</code> 守护进程，<code>systemctl</code> 命令无法使用。</p>
<p>所以启动ssh，命令是：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">sudo /usr/sbin/sshd
</span></span><span class="line"><span class="cl"><span class="c1"># 或者</span>
</span></span><span class="line"><span class="cl">service ssh star
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 每次重启后，都需要去启动一下</span>
</span></span></code></pre></div><h3 id="修改-ubuntu-默认软件源">
<a class="header-anchor" href="#%e4%bf%ae%e6%94%b9-ubuntu-%e9%bb%98%e8%ae%a4%e8%bd%af%e4%bb%b6%e6%ba%90"></a>
修改 ubuntu 默认软件源
</h3><p><a href="https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu-ports/">https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu-ports/</a></p>
<ol>
<li>第一步 备份原来的软件源 （以免改错了，可以恢复）</li>
</ol>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
</span></span></code></pre></div><ol>
<li>编辑/etc/apt/sources.list文件</li>
</ol>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">sudo vim /etc/apt/sources.list
</span></span></code></pre></div><p>删除里面默认的，改成下面的内容：（你需要会一点 vim 的基础操作）</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">deb <span class="o">[</span>signed-by<span class="o">=</span><span class="s2">&#34;/usr/share/keyrings/ubuntu-archive-keyring.gpg&#34;</span><span class="o">]</span> http://mirrors.ustc.edu.cn/ubuntu-ports jammy main universe multiverse
</span></span><span class="line"><span class="cl">deb <span class="o">[</span>signed-by<span class="o">=</span><span class="s2">&#34;/usr/share/keyrings/ubuntu-archive-keyring.gpg&#34;</span><span class="o">]</span> http://mirrors.ustc.edu.cn/ubuntu-ports jammy-updates main universe multiverse
</span></span><span class="line"><span class="cl">deb <span class="o">[</span>signed-by<span class="o">=</span><span class="s2">&#34;/usr/share/keyrings/ubuntu-archive-keyring.gpg&#34;</span><span class="o">]</span> http://mirrors.ustc.edu.cn/ubuntu-ports jammy-security main universe multiverse
</span></span></code></pre></div><p><strong>两个选一个就行，上面的不能用， 就选下面这个。</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
</span></span><span class="line"><span class="cl">deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
</span></span><span class="line"><span class="cl">deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
</span></span><span class="line"><span class="cl">deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
</span></span></code></pre></div><p>更新一下，看看有没有问题：<code>apt update &amp;&amp; upgrade</code></p>
<h3 id="退出后该怎么重新进入-ubuntu-系统">
<a class="header-anchor" href="#%e9%80%80%e5%87%ba%e5%90%8e%e8%af%a5%e6%80%8e%e4%b9%88%e9%87%8d%e6%96%b0%e8%bf%9b%e5%85%a5-ubuntu-%e7%b3%bb%e7%bb%9f"></a>
退出后该怎么重新进入 ubuntu 系统
</h3><p>如果你退出软件或者退出 ubuntu 系统回到 termux 的终端了。该如何重新进入 ubuntu 终端呢？</p>
<p>进入 <code>sudo bash</code> 界面。</p>
<p>输入<code>tmoe</code>然后出现交互界面，选那个 列出已安装的发行版 然后就能看到了。或者直接输入 <code>ubuntu</code>/<code>debian</code> 就能进入。</p>
<h2 id="配置自启">
<a class="header-anchor" href="#%e9%85%8d%e7%bd%ae%e8%87%aa%e5%90%af"></a>
配置自启
</h2><p>现在虽然用 termux 安装了 debian 容器。但每次软件退出或手机重启后，要连接 termux 的 ssh 和启动 debian 容器都要手动启动。</p>
<p><strong>大体流程</strong>：</p>
<ul>
<li>开机 -&gt; <strong>Termux:Boot</strong> 自启 <strong>termux</strong> 软件。</li>
<li><strong>Termux</strong> 启动 -&gt; 拉起 <strong>SSH</strong> -&gt; 安装 <strong>Tmux</strong> 拉起 <strong>Debian</strong>。</li>
<li><strong>Debian</strong> 启动 -&gt; 拉起 <strong>SSH</strong> -&gt; 拉起其他服务。</li>
</ul>
<h3 id="开机自启-termux-软件">
<a class="header-anchor" href="#%e5%bc%80%e6%9c%ba%e8%87%aa%e5%90%af-termux-%e8%bd%af%e4%bb%b6"></a>
开机自启 termux 软件
</h3><ul>
<li>开机自启 termux 软件，用 <a href="https://wiki.termux.com/wiki/Termux:Boot">Termux:Boot</a>：https://wiki.termux.com/wiki/Termux:Boot</li>
</ul>
<h3 id="termux-自启-ssh-或其他服务">
<a class="header-anchor" href="#termux-%e8%87%aa%e5%90%af-ssh-%e6%88%96%e5%85%b6%e4%bb%96%e6%9c%8d%e5%8a%a1"></a>
termux 自启 ssh 或其他服务。
</h3><p><strong>两种配置自启方案</strong></p>
<ol>
<li>Termux-services 方案。我没试过，可以参考：https://ivonblog.com/posts/termux-services/</li>
<li>这里以自启服务写在<code>~/.bashrc</code>为例。要杀掉行程再用kill指令停止。</li>
</ol>
<ul>
<li>
<p><strong>termux 的 ssh 服务自启。</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 编辑启动脚本</span>
</span></span><span class="line"><span class="cl">vim ~/.bashrc
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 在文件的最末尾添加以下内容：</span>
</span></span><span class="line"><span class="cl">pgrep -x sshd &gt;/dev/null <span class="o">||</span> sshd
</span></span></code></pre></div></li>
<li>
<p><strong>termux 自启 debian 容器。</strong></p>
<p>其实只要填加 <code>sudo bash debian</code> 命令就行。</p>
<p>但这样每次打开 termux 就自动进入 debian 了。我是想打开 termux 后，后台自启 debian 不需要在前台运行。</p>
<p>这里就需要用 <strong><code>tmux</code></strong> 或者 <strong><code>screen</code></strong> 软件。这里用 <strong><code>tmux</code></strong> 这个软件。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 安装 Tmux 在 Termux 中执行：</span>
</span></span><span class="line"><span class="cl">pkg install tmux -y
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 编辑启动脚本</span>
</span></span><span class="line"><span class="cl">vim ~/.bashrc
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 在文件的最末尾添加以下内容：</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 打开 Termux 时，检查后台是否有 Debian 任务，没有则启动。</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t debian 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    tmux new-session -d -s debian <span class="s1">&#39;sudo bash debian&#39;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span></code></pre></div></li>
<li>
<p><strong>贴上我的 termux 的 <code>.bashrc</code> 自启配置文件</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">~ $ cat ~/.bashrc
</span></span><span class="line"><span class="cl"><span class="c1"># ssh 服务自启</span>
</span></span><span class="line"><span class="cl">pgrep -x sshd &gt;/dev/null <span class="o">||</span> sshd
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 自启 debian 容器</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t debian 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    tmux new-session -d -s debian <span class="s1">&#39;sudo bash debian&#39;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 查看手机 IP</span>
</span></span><span class="line"><span class="cl">ifconfig <span class="p">|</span> grep <span class="s2">&#34;inet &#34;</span> <span class="p">|</span> grep -v 127.0.0.1
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Komari tmux 自启脚本</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t komari 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    termux-wake-lock
</span></span><span class="line"><span class="cl">    tmux new-session -d -s komari <span class="s1">&#39;cd ~/komari &amp;&amp; ./komari server -l 0.0.0.0:25774&#39;</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Komari] 已在 tmux 新会话中后台启动&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Komari] 服务已在后台运行中&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># Komari-Agent Root 自启脚本</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> ! tmux has-session -t komari-agent 2&gt;/dev/null<span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="cl">    termux-wake-lock
</span></span><span class="line"><span class="cl">    <span class="c1"># 在 tmux 中启动会话，并调用 su -c 来执行 root 命令</span>
</span></span><span class="line"><span class="cl">    tmux new-session -d -s komari-agent <span class="s2">&#34;su -c &#39;cd /data/data/com.termux/files/home/komari &amp;&amp; ./komari-agent -e http://127.0.0.1:25774 -t hyp57O3yAOxHZYj74ClxsJ&#39;&#34;</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Agent] 已在 tmux 中尝试以 Root 身份后台启动&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">else</span>
</span></span><span class="line"><span class="cl">    <span class="nb">echo</span> <span class="s2">&#34;[Agent] 服务已在后台运行中&#34;</span>
</span></span><span class="line"><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="cl">~ $
</span></span></code></pre></div></li>
<li>
<p><strong>如何操作这个后台自启的 Debian？</strong></p>
<p>配置完成后，当你打开 Termux，它是<strong>静默</strong>的。你可以通过以下指令管理它：也就是 tmux 的常用命令。</p>
<ul>
<li><strong>查看后台是否在跑</strong>：
<code>tmux ls</code></li>
<li><strong>进入 Debian 界面</strong>：
<code>tmux attach -t debian</code>
<em>(进去后你就在 <code>root@localhost:#</code> 提示符下了)</em></li>
<li><strong>退出（回到后台）而不关闭</strong>：
在进入 Debian 后，按下快捷键：<strong><code>Ctrl + B</code></strong> 然后松开，再按 <strong><code>D</code></strong>。</li>
<li><strong>彻底关闭后台任务</strong>：
<code>tmux kill-session -t debian</code></li>
</ul>
</li>
<li>
<p><strong>你是否想让 debian 容器也自启 ssh 呢。</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 进入 debian 容器，操作跟在 termux 里一样。在 Debian 内部执行：</span>
</span></span><span class="line"><span class="cl">vim ~/.bashrc
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 在文件的最末尾添加以下内容：</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 检查 ssh 服务状态，如果没运行则启动</span>
</span></span><span class="line"><span class="cl">service ssh status &gt; /dev/null 2&gt;<span class="p">&amp;</span><span class="m">1</span> <span class="o">||</span> service ssh star
</span></span></code></pre></div></li>
</ul>
<p>这样你现在已经成功搭建了一套**“Termux 启动 -&gt; Tmux 后台接管 -&gt; Debian 容器启动 -&gt; SSH 服务自动拉起”**的全自动流程。</p>
<p><strong>你是否想部署一些服务，如网盘并配置开机自启，搭配 cloudflare Tunnels 隧道，部署到公网。可以看这篇。</strong></p>
<h2 id="排查">
<a class="header-anchor" href="#%e6%8e%92%e6%9f%a5"></a>
排查
</h2><p><strong>常见小坑排查：</strong></p>
<ul>
<li>
<p><strong>debian换国内源</strong></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sed -i <span class="s1">&#39;s/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/g&#39;</span> /etc/apt/sources.list
</span></span><span class="line"><span class="cl">apt update <span class="o">&amp;&amp;</span> apt upgrade -y
</span></span></code></pre></div></li>
<li>
<p>确认 SSH 服务是否已安装并启动</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 更新并安装 openssh-server（如果还没装）</span>
</span></span><span class="line"><span class="cl">apt update <span class="o">&amp;&amp;</span> apt install openssh-server -y
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 启动服务</span>
</span></span><span class="line"><span class="cl">service ssh start
</span></span></code></pre></div></li>
<li>
<p>允许 Root 登录（关键步骤）</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 修改配置允许密码登录 root</span>
</span></span><span class="line"><span class="cl">sed -i <span class="s1">&#39;s/#PermitRootLogin prohibit-password/PermitRootLogin yes/&#39;</span> /etc/ssh/sshd_config
</span></span><span class="line"><span class="cl">sed -i <span class="s1">&#39;s/#PasswordAuthentication yes/PasswordAuthentication yes/&#39;</span> /etc/ssh/sshd_config
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 重启服务使配置生效</span>
</span></span><span class="line"><span class="cl">service ssh restart
</span></span></code></pre></div></li>
<li>
<p><strong>Connection refused</strong>：说明手机防火墙或 Android 系统拦截了 22 端口。</p>
<ul>
<li><strong>解决方法</strong>：修改 <code>/etc/ssh/sshd_config</code> 中的 <code>Port 22</code> 为 <strong>8023</strong>，然后 <code>service ssh restart</code>，电脑连接时改用 <code>-p 8023</code>。</li>
</ul>
</li>
</ul>
<h2 id="安装一些服务">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85%e4%b8%80%e4%ba%9b%e6%9c%8d%e5%8a%a1"></a>
安装一些服务
</h2><ol>
<li>qbittorrent （bt/pt 下载）</li>
</ol>
<p><a href="https://github.com/userdocs/qbittorrent-nox-static">https://github.com/userdocs/qbittorrent-nox-static</a></p>
<ol>
<li>bililive-go （B站 抖音 等直播录制）</li>
</ol>
<p><a href="https://github.com/hr3lxphr6j/bililive-go">https://github.com/hr3lxphr6j/bililive-go</a></p>
<ol>
<li>alist （云盘）</li>
</ol>
<p><a href="https://github.com/alist-org/alist">https://github.com/alist-org/alist</a></p>
<ol>
<li>宝塔面板 （这是一个第三方的，）</li>
</ol>
<p><a href="http://bt.cxinyun.com/">http://bt.cxinyun.com</a></p>
<ol>
<li>青龙面板 （由于不能用dokcer，这个需要源码运行，教程后续）</li>
</ol>
<p><a href="https://github.com/whyour/qinglong">https://github.com/whyour/qinglong</a></p>
<h2 id="参考">
<a class="header-anchor" href="#%e5%8f%82%e8%80%83"></a>
参考
</h2><p><a href="https://www.sqlsec.com/2018/05/termux.html">https://www.sqlsec.com/2018/05/termux.html</a></p>
<hr>
<p>旧手机利用的3篇文章</p>
<p><a href="https://hechuan.me/post/android-termux-install-linux">termux 安装 linux ubuntu</a></p>
<p><a href="https://hechuan.me/post/android-termux-vps">没钱续 vps，旧手机当服务器搭配 cf Tunnels 隧道，部署博客和网盘。发布公网。</a></p>
<p><a href="https://hechuan.me/post/android-sswifi-mianliu">红米note7 刷类原生 当软路由 随身wifi 免流热点机</a></p>

        
        <hr><p>本文2023-06-23首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-06-23</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>安卓</category>
      
    </item>
    
      
    

    <item>
      <title>两个虚拟机下 Linux 映像下载网址 (可免去安装系统的步骤,直接导入使用)</title>
      <link>https://hechuan.me/post/virtual-image-download/</link>
      <pubDate>Mon, 13 Mar 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/virtual-image-download/</guid>
      <description>
        <![CDATA[<h1>两个虚拟机下 Linux 映像下载网址 (可免去安装系统的步骤,直接导入使用)</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="两个-linux-虚拟机映像下载网址-免去安装系统的步骤直接导入使用">
<a class="header-anchor" href="#%e4%b8%a4%e4%b8%aa-linux-%e8%99%9a%e6%8b%9f%e6%9c%ba%e6%98%a0%e5%83%8f%e4%b8%8b%e8%bd%bd%e7%bd%91%e5%9d%80-%e5%85%8d%e5%8e%bb%e5%ae%89%e8%a3%85%e7%b3%bb%e7%bb%9f%e7%9a%84%e6%ad%a5%e9%aa%a4%e7%9b%b4%e6%8e%a5%e5%af%bc%e5%85%a5%e4%bd%bf%e7%94%a8"></a>
两个 Linux 虚拟机映像下载网址 (免去安装系统的步骤,直接导入使用)
</h1><p>windows 下安装 Linux 系统，大都使用 VirtualBox 或者 vmware ，这两款虚拟化软件。</p>
<p>安装新系统还要下载镜像，然后一步步安装到虚拟机。</p>
<p>下面两个网址提供了，一些已经安装完成的系统映像，找到你要的系统，下载后解压导入虚拟机就可以使用了。</p>
<p>免去了安装系统的步骤。对于经常换新系统体验的还是蛮方便的。</p>
<ul>
<li><a href="https://www.osboxes.org/">https://www.osboxes.org</a></li>
<li><a href="https://www.linuxvmimages.com/">https://www.linuxvmimages.com</a></li>
</ul>

        
        <hr><p>本文2023-03-13首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-03-13</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category>
      
    </item>
    
      
    

    <item>
      <title>旧手机搭建直播录制平台</title>
      <link>https://hechuan.me/post/oldandroid-linux-live-luzhi/</link>
      <pubDate>Wed, 01 Mar 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/oldandroid-linux-live-luzhi/</guid>
      <description>
        <![CDATA[<h1>旧手机搭建直播录制平台</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="旧手机搭建直播录制工具">
<a class="header-anchor" href="#%e6%97%a7%e6%89%8b%e6%9c%ba%e6%90%ad%e5%bb%ba%e7%9b%b4%e6%92%ad%e5%bd%95%e5%88%b6%e5%b7%a5%e5%85%b7"></a>
旧手机搭建直播录制工具
</h1><p>旧手机搭建直播录制工具,自动录制直播,让你不再错过直播瞬间.</p>
<hr>
<ul>
<li>**录制工具看这篇文章:**<a href="https://hechuan.me/live-luzhi">https://hechuan.me/live-luzhi</a></li>
<li>**旧手机搭建 linux 服务器看这篇文章:**<a href="https://hechuan.me/meilan-note5-linux">https://hechuan.me/meilan-note5-linux</a></li>
</ul>
<h2 id="搭建教程">
<a class="header-anchor" href="#%e6%90%ad%e5%bb%ba%e6%95%99%e7%a8%8b"></a>
搭建教程
</h2><p>Bililive-go 项目的 github 上写的挺明白了.感觉不需要再做一份教程了.</p>
<p><a href="https://github.com/hr3lxphr6j/bililive-go/wiki">https://github.com/hr3lxphr6j/bililive-go/wiki</a></p>
<h3 id="问题与依赖解决">
<a class="header-anchor" href="#%e9%97%ae%e9%a2%98%e4%b8%8e%e4%be%9d%e8%b5%96%e8%a7%a3%e5%86%b3"></a>
问题与依赖解决
</h3><p>项目需要依赖 ffmpeg</p>
<p>注意:如果是云服务器或者个人电脑的话,直接按教程装就行,不需要看下面了.</p>
<ul>
<li>
<p>Ubuntu / Debian 等</p>
<p><code>sudo apt-get install ffmpeg</code></p>
</li>
<li>
<p>Fedora / CentOS 等</p>
<p><code>sudo yum install ffmpeg</code></p>
</li>
<li>
<p>ArchLinux</p>
<p><code>sudo pacman -S ffmpeg</code></p>
</li>
<li>
<p>Build from source code</p>
<p><a href="https://trac.ffmpeg.org/wiki/CompilationGuide">FFmpeg Compilation Guide</a></p>
</li>
</ul>
<p>但手机上 linux deploy 安装的 ubuntu 镜像无法正常安装 ffmpeg ,可能是架构问题?</p>
<p>提示:<code>E: Unable to locate package FFmpeg</code></p>
<p>如果安装不上 ffmpeg 可以来这个页面:https://johnvansickle.com/ffmpeg/</p>
<p>里面有编译好的包,下载对应架构的二进制包.</p>
<p>手机一般是 arm 架构的就下:ffmpeg-git-arm64-static.tar.xz</p>
<p>下载完解压出里面的 ffmpeg 二进制文件,放进 /usr/local/bin 目录下就行.</p>
<p>记得给权限:chmod +x ffmpeg</p>
<p>还有就是关于后台运行,手机 Linux 上没有 systemd ,要在后台运行用 screen 工具就行.</p>

        
        <hr><p>本文2023-03-01首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-03-01</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>安卓</category>
      
    </item>
    
      
    

    <item>
      <title>哔哩哔哩 bilibili 直播自动录制工具</title>
      <link>https://hechuan.me/post/live-luzhi/</link>
      <pubDate>Wed, 01 Mar 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/live-luzhi/</guid>
      <description>
        <![CDATA[<h1>哔哩哔哩 bilibili 直播自动录制工具</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="哔哩哔哩直播自动录制工具">
<a class="header-anchor" href="#%e5%93%94%e5%93%a9%e5%93%94%e5%93%a9%e7%9b%b4%e6%92%ad%e8%87%aa%e5%8a%a8%e5%bd%95%e5%88%b6%e5%b7%a5%e5%85%b7"></a>
哔哩哔哩直播自动录制工具
</h1><p>下面三个工具都可以</p>
<ul>
<li><a href="https://github.com/hr3lxphr6j/bililive-go">https://github.com/hr3lxphr6j/bililive-go</a></li>
<li><a href="https://github.com/BililiveRecorder/BililiveRecorder">https://github.com/BililiveRecorder/BililiveRecorder</a></li>
<li><a href="https://github.com/CHKZL/DDTV">https://github.com/CHKZL/DDTV</a></li>
</ul>
<p>前两个都用过,很简单易上手.第三个没测试,估计都差不多.</p>
<h2 id="bililive-go">
<a class="header-anchor" href="#bililive-go"></a>
bililive-go
</h2><p>不止可以录制bilibili,其他一些直播网站详看下面介绍</p>
<h3 id="支持网站">
<a class="header-anchor" href="#%e6%94%af%e6%8c%81%e7%bd%91%e7%ab%99"></a>
支持网站
</h3><table>
  <thead>
      <tr>
          <th style="text-align: left">站点</th>
          <th style="text-align: left">url</th>
          <th style="text-align: left">支持情况</th>
          <th style="text-align: left">cookie</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td style="text-align: left">Acfun直播</td>
          <td style="text-align: left">live.acfun.cn</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">哔哩哔哩直播</td>
          <td style="text-align: left">live.bilibili.com</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left">滋瓷</td>
      </tr>
      <tr>
          <td style="text-align: left">战旗直播</td>
          <td style="text-align: left"><a href="http://www.zhanqi.tv/">www.zhanqi.tv</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">斗鱼直播</td>
          <td style="text-align: left"><a href="http://www.douyu.com/">www.douyu.com</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">火猫直播</td>
          <td style="text-align: left"><a href="http://www.huomao.com/">www.huomao.com</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">龙珠直播</td>
          <td style="text-align: left">longzhu.com</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">虎牙直播</td>
          <td style="text-align: left"><a href="http://www.huya.com/">www.huya.com</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">CC直播</td>
          <td style="text-align: left">cc.163.com</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">一直播</td>
          <td style="text-align: left"><a href="http://www.yizhibo.com/">www.yizhibo.com</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">twitch</td>
          <td style="text-align: left"><a href="http://www.twitch.tv/">www.twitch.tv</a></td>
          <td style="text-align: left">TODO</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">OPENREC</td>
          <td style="text-align: left"><a href="http://www.openrec.tv/">www.openrec.tv</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">企鹅电竞</td>
          <td style="text-align: left">egame.qq.com</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">浪live</td>
          <td style="text-align: left">play.lang.live &amp; <a href="http://www.lang.live/">www.lang.live</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">花椒</td>
          <td style="text-align: left"><a href="http://www.huajiao.com/">www.huajiao.com</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">抖音直播</td>
          <td style="text-align: left">live.douyin.com</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left">滋瓷</td>
      </tr>
      <tr>
          <td style="text-align: left">猫耳</td>
          <td style="text-align: left">fm.missevan.com</td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
      <tr>
          <td style="text-align: left">克拉克拉</td>
          <td style="text-align: left"><a href="http://www.hongdoufm.com/">www.hongdoufm.com</a></td>
          <td style="text-align: left">滋瓷</td>
          <td style="text-align: left"></td>
      </tr>
  </tbody>
</table>
<h2 id="bililiverecorder">
<a class="header-anchor" href="#bililiverecorder"></a>
BililiveRecorder
</h2><p>官网:<a href="https://rec.danmuji.org/">rec.danmuji.org</a></p>
<p>这个好像只支持录制B站?没测试其他直播平台.</p>
<h2 id="ddtv">
<a class="header-anchor" href="#ddtv"></a>
DDTV
</h2><p>官网:https://ddtv.pro/</p>

        
        <hr><p>本文2023-03-01首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-03-01</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>安卓</category>
      
    </item>
    
      
    

    <item>
      <title>魅蓝note5 root 旧手机搭建linux服务器(旧物利用)</title>
      <link>https://hechuan.me/post/meilan-note5-linux/</link>
      <pubDate>Thu, 19 Jan 2023 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/meilan-note5-linux/</guid>
      <description>
        <![CDATA[<h1>魅蓝note5 root 旧手机搭建linux服务器(旧物利用)</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="魅蓝-note5-旧手机搭建服务器">
<a class="header-anchor" href="#%e9%ad%85%e8%93%9d-note5-%e6%97%a7%e6%89%8b%e6%9c%ba%e6%90%ad%e5%bb%ba%e6%9c%8d%e5%8a%a1%e5%99%a8"></a>
魅蓝 note5 旧手机搭建服务器
</h1><p>旧物利用 廉颇老矣,尚能饭否?</p>
<h2 id="1手机-root">
<a class="header-anchor" href="#1%e6%89%8b%e6%9c%ba-root"></a>
1，手机 root
</h2><p>自行寻找你的机型的 root 方式。</p>
<p><strong>(root 有风险，刷机需谨慎！！！)</strong></p>
<h2 id="2安装-linux-deploy-或者-termux">
<a class="header-anchor" href="#2%e5%ae%89%e8%a3%85-linux-deploy-%e6%88%96%e8%80%85-termux"></a>
2，安装 linux deploy 或者 Termux
</h2><p>谷歌商店直接下载就行，上不了谷歌的可以去“酷安”找安装包使用。</p>
<p>教程里我使用的是 linux deploy 软件。(需root。)</p>
<p>–</p>
<p>这里说明一下两个软件的区别。(个人理解，不一定对。)</p>
<p>Termux 是一个 Android(安卓)上的 Linux 终端模拟器，可以通过proot容器，或者chroot容器安装linux发行版。</p>
<p>**注：**proot容器不需要root，chroot容器需要root，chroot能实现的功能更多。</p>
<p>linux deploy 就是单纯的一个安装chroot容器的软件，操作更简单一些。</p>
<h2 id="3chroot-容器安装-linux-发行版">
<a class="header-anchor" href="#3chroot-%e5%ae%b9%e5%99%a8%e5%ae%89%e8%a3%85-linux-%e5%8f%91%e8%a1%8c%e7%89%88"></a>
3，chroot 容器安装 linux 发行版
</h2><h3 id="31点左下角配置">
<a class="header-anchor" href="#31%e7%82%b9%e5%b7%a6%e4%b8%8b%e8%a7%92%e9%85%8d%e7%bd%ae"></a>
3.1，点左下角配置
</h3><p><img src="https://img.hechuan.me/file/i/2023/01/meilan-note5-az-linux1.jpg" alt="meilan-note5-az-linux1"></p>
<h3 id="32按照图所示设置">
<a class="header-anchor" href="#32%e6%8c%89%e7%85%a7%e5%9b%be%e6%89%80%e7%a4%ba%e8%ae%be%e7%bd%ae"></a>
3.2，按照图所示设置
</h3><p>我习惯用ubuntu了，架构是arm64，版本最高就是bionic(ubuntu 18.04)，有点老了，可能会有一些软件或者服务依赖太旧导致安装或者运行失败，需要自行解决了。</p>
<p>源地址：默认就行。</p>
<p>安装类型：我选的是目录，可以试试别的。</p>
<p>安装路径：必须是：/data/xxx，比如：/data/linux，或者/data/ubuntu。我试过默认不改,然后安装失败,最后测试这样可以安装成功,但不懂为什么,可能因手机而异? 用户名，密码自行设置。</p>
<p>允许使用初始化系统：打勾</p>
<p>启用SSH服务：打勾</p>
<p>其他的声音，桌面什么的，自行测试。</p>
<p><img src="https://img.hechuan.me/file/i/2023/01/meilan-note5-az-linux2.png" alt="meilan-note5-az-linux2"></p>
<p><img src="https://img.hechuan.me/file/i/2023/01/meilan-note5-az-linux3.png" alt="meilan-note5-az-linux3"></p>
<h3 id="33设置好后点击左上角的安装">
<a class="header-anchor" href="#33%e8%ae%be%e7%bd%ae%e5%a5%bd%e5%90%8e%e7%82%b9%e5%87%bb%e5%b7%a6%e4%b8%8a%e8%a7%92%e7%9a%84%e5%ae%89%e8%a3%85"></a>
3.3，设置好后点击左上角的安装。
</h3><p>设置好后点击左上角的安装，就是自动开始跑代码了。</p>
<p>根据手机的性能安装有快有慢。(大概装了20-30分钟？)</p>
<p><img src="https://img.hechuan.me/file/i/2023/01/meilan-note5-az-linux4.png" alt="meilan-note5-az-linux4"></p>
<p>安装完成后，点击左下角的启动，启动成功如图所示：</p>
<p><img src="https://img.hechuan.me/file/i/2023/01/meilan-note5-az-linux5.png" alt="meilan-note5-az-linux5"></p>
<h3 id="34使用你常用的ssh链接工具登录服务器">
<a class="header-anchor" href="#34%e4%bd%bf%e7%94%a8%e4%bd%a0%e5%b8%b8%e7%94%a8%e7%9a%84ssh%e9%93%be%e6%8e%a5%e5%b7%a5%e5%85%b7%e7%99%bb%e5%bd%95%e6%9c%8d%e5%8a%a1%e5%99%a8"></a>
3.4，使用你常用的ssh链接工具登录服务器。
</h3><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">Welcome to Ubuntu 18.04 LTS (GNU/Linux 3.18.35+ aarch64)
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> * Documentation:  https://help.ubuntu.com
</span></span><span class="line"><span class="cl"> * Management:     https://landscape.canonical.com
</span></span><span class="line"><span class="cl"> * Support:        https://ubuntu.com/advantage
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Ubuntu 18.04 LTS [running via Linux Deploy]
</span></span><span class="line"><span class="cl">root@localhost:~# 
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">#### 看到这个就是登录成功了。
</span></span><span class="line"><span class="cl">#### 更新一下软件包，apt update &amp;&amp; apt upgrade
</span></span><span class="line"><span class="cl">#### 安装一些常用软件，比如wget,curl,等。
</span></span></code></pre></div><h2 id="4安装宝塔面板-aria2--alist--qbittorrent-青龙面板等">
<a class="header-anchor" href="#4%e5%ae%89%e8%a3%85%e5%ae%9d%e5%a1%94%e9%9d%a2%e6%9d%bf-aria2--alist--qbittorrent-%e9%9d%92%e9%be%99%e9%9d%a2%e6%9d%bf%e7%ad%89"></a>
4，安装宝塔面板, aria2 , alist , qbittorrent ,青龙面板等
</h2><p>宝塔面板地址：bt.cn</p>
<p>宝塔开心版：http://bt.cxinyun.com/</p>
<p>aria2一键脚本：https://github.com/P3TERX/aria2.sh</p>
<p>alist安装教程:https://github.com/alist-org/alist</p>
<p><a href="https://alist.nn.ci/">https://alist.nn.ci/</a></p>
<p>qbittorrent安装教程:https://hechuan.me/qbittorrent-install</p>
<p><a href="https://github.com/userdocs/qbittorrent-nox-static/releases/tag/release-4.3.9_v1.2.15">https://github.com/userdocs/qbittorrent-nox-static/releases/tag/release-4.3.9_v1.2.15</a></p>
<p>青龙面板：https://github.com/whyour/qinglong</p>
<p>安装青龙可能会有点麻烦，按照github项目下面的开发，安装。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">$ git clone git@github.com:whyour/qinglong.git
</span></span><span class="line"><span class="cl">$ cd qinglong
</span></span><span class="line"><span class="cl">$ cp .env.example .env
</span></span><span class="line"><span class="cl"># 推荐使用 pnpm https://pnpm.io/zh/installation
</span></span><span class="line"><span class="cl">$ npm install -g pnpm
</span></span><span class="line"><span class="cl">$ pnpm install
</span></span><span class="line"><span class="cl">$ pnpm start
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">#### 打开你的浏览器，访问 http://127.0.0.1:5700
</span></span></code></pre></div><p><strong>注：</strong></p>
<p>alist 和 qbittorrent 安装的时候看准架构，</p>
<p>平时电脑使用的都是x86架构，下载amd64的，手机的架构是arm的，但又细分arm7,arm8,arm64什么的，我也不太懂了，大佬们评论区指出一下。</p>
<p>但即便选对了，也可能运行失败。</p>
<p>比如alist会提示glibc 版本太低，那就建议下载 musl 版本，完美运行。</p>
<p>qbittorrent我用的aarch64-icu-qbittorrent-nox这个版本，完美运行。</p>
<p>所以自行测试。</p>
<h2 id="5缺点">
<a class="header-anchor" href="#5%e7%bc%ba%e7%82%b9"></a>
5，缺点
</h2><p>安装一些服务很慢，可能是手机处理器太低？比如用宝塔面板安装 php，nginx 服务就很慢很慢。(装了一个小时才装完。)</p>
<p>systemd用不了。</p>
<p>docker安装不了的。</p>
<p>以及在宝塔里安装mysql也安装不上。(但见有的人是可以安装成功的，不确定。)</p>
<h2 id="6一些小细节">
<a class="header-anchor" href="#6%e4%b8%80%e4%ba%9b%e5%b0%8f%e7%bb%86%e8%8a%82"></a>
6，一些小细节
</h2><p>因为sysytemd用不了，</p>
<p>systemctl start/stop xxx命令，让软件后台运行，以及开机自启用不了。</p>
<p>所以可以借助 screen 这个软件让服务后台运行。安装命令：apt install screen</p>
<p>简单的使用方法就是在运行服务前面加上 screen 即可，建议百度谷歌搜个详细的教程看一下就懂了。</p>
<p>–</p>
<p>还有一个简单的方法就是宝塔面板了。</p>
<p>直接在网站里添加你的项目，设置一下就行了。每次启动宝塔面板这些服务也会启动了。</p>
<p><strong>注：(软件如果关闭，容器关闭后，再次启动，宝塔面板不会自动启动，需要手动启动一下宝塔。ssh终端下输入: bt，选择启动即可。)</strong></p>
<p><img src="https://img.hechuan.me/file/i/2023/01/meilan-note5-az-linux6.png" alt="meilan-note5-az-linux6"></p>
<h2 id="7一些软件可能会用的到">
<a class="header-anchor" href="#7%e4%b8%80%e4%ba%9b%e8%bd%af%e4%bb%b6%e5%8f%af%e8%83%bd%e4%bc%9a%e7%94%a8%e7%9a%84%e5%88%b0"></a>
7，一些软件可能会用的到。
</h2><p>ardc(安卓投屏)：https://dlsoft.lanzoux.com/s/ardc</p>

        
        <hr><p>本文2023-01-19首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2023-01-19</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>教程</category><category>安卓</category><category>linux</category>
      
    </item>
    
      
    

    <item>
      <title>Transmission安装教程</title>
      <link>https://hechuan.me/post/transmission-install/</link>
      <pubDate>Fri, 19 Aug 2022 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/transmission-install/</guid>
      <description>
        <![CDATA[<h1>Transmission安装教程</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="transmission安装教程">
<a class="header-anchor" href="#transmission%e5%ae%89%e8%a3%85%e6%95%99%e7%a8%8b"></a>
Transmission安装教程
</h1><p>买了大盘鸡，进了几个pt站。有了onedrive 云盘,也有了google drive的团队盘。rclone也解决了linux上传的问题。那么开始搬运各种资源到两种盘（虽然并不看）</p>
<p>linux上的bt下载工具就那么几种。这次介绍Transmission安装的方法。</p>
<h2 id="安装">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85"></a>
安装
</h2><h4 id="ubuntu安装transmission">
<a class="header-anchor" href="#ubuntu%e5%ae%89%e8%a3%85transmission"></a>
ubuntu安装transmission
</h4><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">apt-get install transmission-daemon
</span></span></code></pre></div><h4 id="修改配置">
<a class="header-anchor" href="#%e4%bf%ae%e6%94%b9%e9%85%8d%e7%bd%ae"></a>
修改配置
</h4><p>安装成功后，输入 <code>systemctl start transmission-daemon.service</code> 即可启动 Transmission</p>
<p>停止：<code>systemctl stop transmission-daemon.service</code></p>
<p>查看服务状态：<code>systemctl enable transmission-daemon</code></p>
<p>设置开机启动：<code>systemctl status transmission-daemon</code></p>
<p>用浏览器打开 web 端（http:// 域名：9091 或 http:// IP 地址：9091）就能登录进去了</p>
<p>第一次登录会提示“403: Forbidden”因为配置还没改。</p>
<p>注意，如果安装后没有启动过 Transmission，是不会生成配置文件。因而，需要先启动服务，再停止服务，生成 json 配置文件后再进行配置。</p>
<p>接下来先停止，然后输入：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">vim /var/lib/transmission-daemon/.config/transmission-daemon/settings.json
</span></span></code></pre></div><p>编辑配置文件，里面的配置项很多。改我们需要的几个就行了。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="s2">&#34;download-dir&#34;</span>: <span class="s2">&#34;改成下载目录&#34;</span>
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-host-whitelist-enabled&#34;</span>: true,
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-password&#34;</span>: <span class="s2">&#34;改成你要的密码&#34;</span>,
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-port&#34;</span>: 9091,
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-url&#34;</span>: <span class="s2">&#34;/transmission/&#34;</span>,
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-username&#34;</span>: <span class="s2">&#34;改成你要的用户名&#34;</span>,
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-whitelist&#34;</span>: <span class="s2">&#34;*&#34;</span>, // 白名单，直接设置 * 就行
</span></span><span class="line"><span class="cl"><span class="s2">&#34;rpc-whitelist-enabled&#34;</span>: false,
</span></span></code></pre></div><p>按Esc键，在输入:键，再输入wq两个字母，就保存并退出编辑了。</p>
<p>然后启动，在浏览器打开。一般情况就可以了。</p>
<p>如果打不开可能是端口问题，添加防火墙端口</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">sudo firewall-cmd --zone<span class="o">=</span>public --add-port<span class="o">=</span>9091/tcp --permanent
</span></span><span class="line"><span class="cl">sudo firewall-cmd --reload
</span></span></code></pre></div><p>查看防火墙规则:<code>firewall-cmd --list-all</code></p>
<h2 id="美化">
<a class="header-anchor" href="#%e7%be%8e%e5%8c%96"></a>
美化
</h2><p>Transmission 自带的网页 UI 比较丑</p>
<p><a href="https://github.com/ronggang/transmission-web-control">https://github.com/ronggang/transmission-web-control</a></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">wget https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control.sh --no-check-certificate
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">bash install-tr-control.sh
</span></span></code></pre></div><p><img src="https://img.hechuan.me/file/i/2022/08/3244901569.png" alt="Transmission"></p>
<h2 id="高级操作">
<a class="header-anchor" href="#%e9%ab%98%e7%ba%a7%e6%93%8d%e4%bd%9c"></a>
高级操作
</h2><p>我也不会。大佬们请教。</p>
<p><a href="https://blog.zuiyu1818.cn/posts/transmission.html">https://blog.zuiyu1818.cn/posts/transmission.html</a></p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">bash &lt;<span class="o">(</span>wget --no-check-certificate -qO- https://github.com/Aniverse/inexistence/raw/master/inexistence.sh<span class="o">)</span> <span class="se">\
</span></span></span><span class="line"><span class="cl">--apt-yes --tweaks-yes --bbr-yes --tools-no --wine-no --rclone-yes --rdp-no --skip-system-upgrade <span class="se">\
</span></span></span><span class="line"><span class="cl">--flexget-yes --flood-no --lt RC_1_1 --tr-deb -y --de 1.3.15 --rt 0.9.8 --qb 4.1.9
</span></span><span class="line"><span class="cl">-u hechuan -p hechuan
</span></span></code></pre></div>
        
        <hr><p>本文2022-08-19首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2022-08-19</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>pt/bt</category>
      
    </item>
    
      
    

    <item>
      <title>记为 Ubuntu 增加 IPv6 地址</title>
      <link>https://hechuan.me/post/ubuntu-ipv6/</link>
      <pubDate>Fri, 05 Aug 2022 00:00:00 &#43;0800</pubDate>
      <author>hechuan4@outlook.com (也被放进河川)</author>
      <guid>https://hechuan.me/post/ubuntu-ipv6/</guid>
      <description>
        <![CDATA[<h1>记为 Ubuntu 增加 IPv6 地址</h1><p>作者：也被放进河川（hechuan4@outlook.com）</p>
        
          <h1 id="记为-ubuntu-增加-ipv6-地址">
<a class="header-anchor" href="#%e8%ae%b0%e4%b8%ba-ubuntu-%e5%a2%9e%e5%8a%a0-ipv6-%e5%9c%b0%e5%9d%80"></a>
记为 Ubuntu 增加 IPv6 地址
</h1><p>转:https://cyp0633.icu/archives/1244</p>
<h2 id="检查配置">
<a class="header-anchor" href="#%e6%a3%80%e6%9f%a5%e9%85%8d%e7%bd%ae"></a>
检查配置
</h2><p>使用命令 <code>ifconfig</code> 查看网卡中 IPV6 地址的配置，如果看到如下结果说明当前 IPV6 配置是无效的。</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">ens3: <span class="nv">flags</span><span class="o">=</span>4163&lt;UP,BROADCAST,RUNNING,MULTICAST&gt;  mtu <span class="m">1500</span>
</span></span><span class="line"><span class="cl">        inet 10.0.0.5  netmask 255.255.254.0  broadcast 10.0.0.1
</span></span><span class="line"><span class="cl">        inet6 fe80::5054:ff:fe69:5bca  prefixlen <span class="m">64</span>  scopeid 0x20&lt;link&gt;
</span></span><span class="line"><span class="cl">        ether 52:54:00:69:5b:ca  txqueuelen <span class="m">1000</span>  <span class="o">(</span>Ethernet<span class="o">)</span>
</span></span><span class="line"><span class="cl">        RX packets <span class="m">87844</span>  bytes <span class="m">5902599</span> <span class="o">(</span>5.9 MB<span class="o">)</span>
</span></span><span class="line"><span class="cl">        RX errors <span class="m">0</span>  dropped <span class="m">0</span>  overruns <span class="m">0</span>  frame <span class="m">0</span>
</span></span><span class="line"><span class="cl">        TX packets <span class="m">820</span>  bytes <span class="m">130766</span> <span class="o">(</span>130.7 KB<span class="o">)</span>
</span></span><span class="line"><span class="cl">        TX errors <span class="m">0</span>  dropped <span class="m">0</span> overruns <span class="m">0</span>  carrier <span class="m">0</span>  collisions <span class="m">0</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">lo: <span class="nv">flags</span><span class="o">=</span>73&lt;UP,LOOPBACK,RUNNING&gt;  mtu <span class="m">65536</span>
</span></span><span class="line"><span class="cl">        inet 127.0.0.1  netmask 255.0.0.0
</span></span><span class="line"><span class="cl">        inet6 ::1  prefixlen <span class="m">128</span>  scopeid 0x10&lt;host&gt;
</span></span><span class="line"><span class="cl">        loop  txqueuelen <span class="m">1000</span>  <span class="o">(</span>Local Loopback<span class="o">)</span>
</span></span><span class="line"><span class="cl">        RX packets <span class="m">186</span>  bytes <span class="m">14118</span> <span class="o">(</span>14.1 KB<span class="o">)</span>
</span></span><span class="line"><span class="cl">        RX errors <span class="m">0</span>  dropped <span class="m">0</span>  overruns <span class="m">0</span>  frame <span class="m">0</span>
</span></span><span class="line"><span class="cl">        TX packets <span class="m">186</span>  bytes <span class="m">14118</span> <span class="o">(</span>14.1 KB<span class="o">)</span>
</span></span><span class="line"><span class="cl">        TX errors <span class="m">0</span>  dropped <span class="m">0</span> overruns <span class="m">0</span>  carrier <span class="m">0</span>  collisions <span class="m">0</span>
</span></span></code></pre></div><h2 id="配置-ipv6">
<a class="header-anchor" href="#%e9%85%8d%e7%bd%ae-ipv6"></a>
配置 ipv6
</h2><p>ubuntu 从18.04开始使用 Netplan 配置网络</p>
<p>Netplan 的默认配置文件处于 /etc/netplan 中，里面应该有一个 YAML 文件，即其配置文件。</p>
<p>vim 编辑这个文件看到:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">network:
</span></span><span class="line"><span class="cl">  version: <span class="m">2</span>
</span></span><span class="line"><span class="cl">  renderer: networkd
</span></span><span class="line"><span class="cl">  ethernets: <span class="c1"># ens3 为网络接口名称[ifconfig可以看到]</span>
</span></span><span class="line"><span class="cl">    ens3:
</span></span><span class="line"><span class="cl">      addresses:
</span></span><span class="line"><span class="cl">        - xxx.xxx.xxx.xxx/24  <span class="c1"># IPV4地址/24</span>
</span></span><span class="line"><span class="cl">        - xxxx:xxxx:xxxx::xxxx/64 <span class="c1"># IPV6地址/64</span>
</span></span><span class="line"><span class="cl">      gateway4: xxx.xxx.xxx.xxx <span class="c1"># IPV4网关 不知道网关的话问服务商</span>
</span></span><span class="line"><span class="cl">      gateway6: xxxx:xxxx:xxxxx:xxxx::1 <span class="c1"># IPV6网关 不知道网关的话问服务商</span>
</span></span><span class="line"><span class="cl">      nameservers:
</span></span><span class="line"><span class="cl">          addresses:
</span></span><span class="line"><span class="cl">              - <span class="s2">&#34;1.1.1.1&#34;</span> <span class="c1"># [DNS服务器]</span>
</span></span><span class="line"><span class="cl">              - <span class="s2">&#34;1.0.0.1&#34;</span> <span class="c1"># [备用DNS服务器]</span>
</span></span></code></pre></div><p>执行以下代码使配置生效</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">netplan try
</span></span><span class="line"><span class="cl">netplan apply
</span></span></code></pre></div><h2 id="检查网络连接">
<a class="header-anchor" href="#%e6%a3%80%e6%9f%a5%e7%bd%91%e7%bb%9c%e8%bf%9e%e6%8e%a5"></a>
检查网络连接
</h2><p>使用 <code>networkctl status ens3</code> 命令查看 ens3 端口情况。除了查看 Address 信息有没有错误之外，最重要的是 State。如果是绿色的 routable (configured)，那么一切正常。</p>
<p>然后ping一下google.com的ipv6看看通不通吧:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">ping6 www.google.com 
</span></span></code></pre></div><h2 id="ubuntu-临时关闭ipv6">
<a class="header-anchor" href="#ubuntu-%e4%b8%b4%e6%97%b6%e5%85%b3%e9%97%adipv6"></a>
ubuntu 临时关闭ipv6
</h2><p>先<code>ifconfig</code>查看 interface-name (网卡名字)</p>
<p>我的是 ens3 所以你的网卡名字记得替换</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1"># 关闭</span>
</span></span><span class="line"><span class="cl">sudo sh -c <span class="s1">&#39;echo 1 &gt; /proc/sys/net/ipv6/conf/ens3/disable_ipv6&#39;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 开启</span>
</span></span><span class="line"><span class="cl">sudo sh -c <span class="s1">&#39;echo 0 &gt; /proc/sys/net/ipv6/conf/ens3/disable_ipv6&#39;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 查看关闭状态</span>
</span></span><span class="line"><span class="cl"><span class="c1"># 显示0说明ipv6开启，1说明关闭</span>
</span></span><span class="line"><span class="cl">cat /proc/sys/net/ipv6/conf/ens3/disable_ipv6
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 关闭ipv6的方法是临时的,下次开机就会发生变化</span>
</span></span></code></pre></div>
        
        <hr><p>本文2022-08-05首发于<a href='https://hechuan.me/'>也被放进河川</a>，最后修改于2022-08-05</p><p>本博客所有文章除特别声明外，均采用 BY-NC-SA 许可协议。转载请注明出处！</p>]]>
      </description>
      
        <category>linux</category><category>教程</category><category>vps</category>
      
    </item>
    
  </channel>
</rss>
