介绍 on Save Any Bothttps://sabot.unv.app/Recent content in 介绍 on Save Any BotHugozh安装与更新https://sabot.unv.app/deployment/installation/Mon, 01 Jan 0001 00:00:00 +0000https://sabot.unv.app/deployment/installation/<h1 id="安装与更新"> 安装与更新 <a class="anchor" href="#%e5%ae%89%e8%a3%85%e4%b8%8e%e6%9b%b4%e6%96%b0">#</a> </h1> <h2 id="从预编译文件部署推荐"> 从预编译文件部署(推荐) <a class="anchor" href="#%e4%bb%8e%e9%a2%84%e7%bc%96%e8%af%91%e6%96%87%e4%bb%b6%e9%83%a8%e7%bd%b2%e6%8e%a8%e8%8d%90">#</a> </h2> <p>在 <a href="https://github.com/krau/SaveAny-Bot/releases">Release</a> 页面下载对应平台的二进制文件.</p> <p>在解压后目录新建 <code>config.toml</code> 文件, 参考 <a href="../configuration">配置说明</a> 编辑配置文件</p> <p>运行:</p> <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>chmod +x saveany-bot </span></span><span style="display:flex;"><span>./saveany-bot </span></span></code></pre></div><h3 id="进程守护"> 进程守护 <a class="anchor" href="#%e8%bf%9b%e7%a8%8b%e5%ae%88%e6%8a%a4">#</a> </h3> <div class="book-tabs"> <input type="radio" class="toggle" name="tabs-daemon" id="tabs-daemon-0" checked="checked" /> <label for="tabs-daemon-0">systemd (常规 Linux)</label> <div class="book-tabs-content markdown-inner"> 创建文件 <code>/etc/systemd/system/saveany-bot.service</code> 并写入以下内容: <pre><code class="language-text">[Unit] Description=SaveAnyBot After=systemd-user-sessions.service [Service] Type=simple WorkingDirectory=/yourpath/ ExecStart=/yourpath/saveany-bot Restart=always [Install] WantedBy=multi-user.target</code></pre> 设为开机启动并启动服务: <pre><code class="language-text">systemctl enable --now saveany-bot</code></pre> </div> <input type="radio" class="toggle" name="tabs-daemon" id="tabs-daemon-1" /> <label for="tabs-daemon-1">procd (OpenWrt)</label> <div class="book-tabs-content markdown-inner"> <h4>添加开机自启动服务</h4> 创建文件 <code>/etc/init.d/saveanybot</code> ,参考 <a href="https://github.com/krau/SaveAny-Bot/blob/main/docs/confs/wrt_init" target="_blank">wrt_init</a> 并自行修改: <pre><code class="language-text">#!/bin/sh /etc/rc.common #This is the OpenWRT init.d script for SaveAnyBot START=99 STOP=10 description=&amp;#34;SaveAnyBot&amp;#34; WORKING_DIR=&amp;#34;/mnt/mmc1-1/SaveAnyBot&amp;#34; EXEC_PATH=&amp;#34;$WORKING_DIR/saveany-bot&amp;#34; start() { echo &amp;#34;Starting SaveAnyBot...&amp;#34; cd $WORKING_DIR $EXEC_PATH &amp;amp; } stop() { echo &amp;#34;Stopping SaveAnyBot...&amp;#34; killall saveany-bot } reload() { stop start }</code></pre> 赋予权限: <pre><code class="language-text">chmod &#43;x /etc/init.d/saveanybot</code></pre> 然后将文件复制到 <code>/etc/rc.d</code> 并重命名为 <code>S99saveanybot</code>, 同样赋予权限: <pre><code class="language-text">chmod &#43;x /etc/rc.d/S99saveanybot</code></pre> <h4>添加快捷指令</h4> 创建文件 <code>/usr/bin/sabot</code> ,参考 <a href="https://github.com/krau/SaveAny-Bot/blob/main/docs/confs/wrt_bin" target="_blank">wrt_bin</a> 并自行修改,注意此处文件编码仅支持 ANSI 936 . 随后赋予权限: <pre><code class="language-text">chmod &#43;x /usr/bin/sabot</code></pre> 使用: <code>sudo sabot start|stop|restart|status|enable|disable</code> </div> </div> <h2 id="使用-docker-部署"> 使用 Docker 部署 <a class="anchor" href="#%e4%bd%bf%e7%94%a8-docker-%e9%83%a8%e7%bd%b2">#</a> </h2> <h3 id="docker-compose"> Docker Compose <a class="anchor" href="#docker-compose">#</a> </h3> <p>下载 <a href="https://github.com/krau/SaveAny-Bot/blob/main/docker-compose.yml">docker-compose.yml</a> 文件, 在同目录下新建 <code>config.toml</code> 文件, 参考 <a href="https://github.com/krau/SaveAny-Bot/blob/main/config.example.toml">config.example.toml</a> 编辑配置文件.</p>存储端配置https://sabot.unv.app/deployment/configuration/storages/Mon, 01 Jan 0001 00:00:00 +0000https://sabot.unv.app/deployment/configuration/storages/<h1 id="存储端配置"> 存储端配置 <a class="anchor" href="#%e5%ad%98%e5%82%a8%e7%ab%af%e9%85%8d%e7%bd%ae">#</a> </h1> <p>请先阅读 <a href="../">配置说明</a> 了解配置文件的基本格式.</p> <h2 id="alist"> Alist <a class="anchor" href="#alist">#</a> </h2> <p><code>type=alist</code></p> <p>不支持 Stream 模式.</p> <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-toml" data-lang="toml"><span style="display:flex;"><span><span style="color:#a6e22e">url</span> = <span style="color:#e6db74">&#34;https://alist.example.com&#34;</span> <span style="color:#75715e"># Alist 的 URL</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">username</span> = <span style="color:#e6db74">&#34;your_username&#34;</span> <span style="color:#75715e"># Alist 的用户名</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">password</span> = <span style="color:#e6db74">&#34;your_password&#34;</span> <span style="color:#75715e"># Alist 的密码</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">base_path</span> = <span style="color:#e6db74">&#34;/path/saveanybot&#34;</span> <span style="color:#75715e"># Alist 中的基础路径, 所有文件将存储在此路径下</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">token_exp</span> = <span style="color:#ae81ff">3600</span> <span style="color:#75715e"># Alist 访问令牌的自动刷新时间, 单位秒</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">token</span> = <span style="color:#e6db74">&#34;your_token&#34;</span> </span></span><span style="display:flex;"><span><span style="color:#75715e"># Alist 的访问令牌, 可选, 如果不设置则使用用户名和密码进行身份验证. </span> </span></span><span style="display:flex;"><span><span style="color:#75715e"># 使用 token 验证时无法自动刷新 token</span> </span></span></code></pre></div><h2 id="本地磁盘"> 本地磁盘 <a class="anchor" href="#%e6%9c%ac%e5%9c%b0%e7%a3%81%e7%9b%98">#</a> </h2> <p><code>type=local</code></p> <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-toml" data-lang="toml"><span style="display:flex;"><span><span style="color:#a6e22e">base_path</span> = <span style="color:#e6db74">&#34;./downloads&#34;</span> <span style="color:#75715e"># 本地存储的基础路径, 所有文件将存储在此路径下</span> </span></span></code></pre></div><h2 id="webdav"> WebDAV <a class="anchor" href="#webdav">#</a> </h2> <p><code>type=webdav</code></p> <div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-toml" data-lang="toml"><span style="display:flex;"><span><span style="color:#a6e22e">url</span> = <span style="color:#e6db74">&#34;https://webdav.example.com&#34;</span> <span style="color:#75715e"># WebDAV 的 URL</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">username</span> = <span style="color:#e6db74">&#34;your_username&#34;</span> <span style="color:#75715e"># WebDAV</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">password</span> = <span style="color:#e6db74">&#34;your_password&#34;</span> <span style="color:#75715e"># WebDAV 的密码</span> </span></span><span style="display:flex;"><span><span style="color:#a6e22e">base_path</span> = <span style="color:#e6db74">&#34;/path/to/webdav&#34;</span> <span style="color:#75715e"># WebDAV 中的基础路径, 所有文件将存储在此路径下</span> </span></span></code></pre></div><h2 id="s3"> S3 <a class="anchor" href="#s3">#</a> </h2> <p><code>type=s3</code></p>