{"id":5188,"date":"2024-11-08T15:24:12","date_gmt":"2024-11-08T07:24:12","guid":{"rendered":"https:\/\/benson80.eu.org\/?p=5188"},"modified":"2024-11-08T16:06:02","modified_gmt":"2024-11-08T08:06:02","slug":"multipass%e5%ae%89%e8%a3%85ubuntualistrclonejellyfin%e5%86%85%e7%bd%91%e7%a9%bf%e9%80%8ftailscale%ef%bc%8c%e5%ae%9e%e7%8e%b0%e5%a4%96%e7%bd%91%e8%ae%bf%e9%97%ae%e5%bd%b1%e9%9f%b3%e8%b5%84%e6%ba%90","status":"publish","type":"post","link":"https:\/\/benson80.eu.org\/?p=5188","title":{"rendered":"Multipass\u5b89\u88c5Ubuntu+Alist+rclone+Jellyfin+\u5185\u7f51\u7a7f\u900fTailscale\uff0c\u5b9e\u73b0\u5916\u7f51\u8bbf\u95ee\u5f71\u97f3\u8d44\u6e90\u5e93"},"content":{"rendered":"\n<p>\u4e0b\u8f7d\u5e76\u5b89\u88c5Multipass\uff0c\u5b89\u88c5\u5230\u522b\u7684\u76d8\uff0c\u6bd4\u5982I:\\multipass<br><a href=\"https:\/\/multipass.run\/download\/windows\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/multipass.run\/download\/windows<\/a><\/p>\n\n\n\n<p>\u590d\u5236init.sh\u3001rclone_setup.sh\u548cinstall_jellyfin.sh\u5230I:\\multipass\u76ee\u5f55\u4e0b<\/p>\n\n\n\n<p>multipass launch -n NovaStream -c 4 -m 8G -d 20G<br>\u65b0\u5efa 4\u6838\u5fc3 8GB\u5185\u5b58 10G\u865a\u62df\u78c1\u76d8\u7684Ubuntu 24.04\u5b9e\u4f8b\uff0c\u5b9e\u4f8b\u540d\u4e3aNovaStream<\/p>\n\n\n\n<p>Connect-VMNetworkAdapter -VMName &#8220;NovaStream&#8221; -SwitchName &#8220;WAN&#8221;<\/p>\n\n\n\n<p>multipass info\u6216multipass list<br>\u67e5\u770bIP<\/p>\n\n\n\n<p>\u6253\u5f00Hyper-V\u865a\u62df\u673a\u67e5\u770bIP<\/p>\n\n\n\n<p>\u68c0\u67e5<strong>C:\\WINDOWS\\System32\\drivers\\etc\\hosts.ics<\/strong>\u6587\u4ef6<\/p>\n\n\n\n<p>multipass shell NovaStream<br>\u8bbf\u95ee\u865a\u62df\u673a<\/p>\n\n\n\n<p>multipass delete NovaStream<br>\u5220\u9664Alist\u5b9e\u4f8b<\/p>\n\n\n\n<p>multipass purge<br>\u6c38\u4e45\u5220\u9664<\/p>\n\n\n\n<p>multipass transfer I:\\multipass\\init.sh NovaStream:\/home\/ubuntu\/<br>multipass exec NovaStream &#8212; sudo bash \/home\/ubuntu\/init.sh<\/p>\n\n\n\n<p>\u66f4\u65b0\u8f6f\u4ef6\u6e90\u2014\u2014\u6e05\u534e\u6e90<br>bash &lt;(curl -sSL https:\/\/linuxmirrors.cn\/main.sh)<\/p>\n\n\n\n<p>\u5b89\u88c5Alist<br>curl -fsSL &#8220;https:\/\/alist.nn.ci\/v3.sh&#8221; | bash -s install<\/p>\n\n\n\n<p>cd \/opt\/alist<\/p>\n\n\n\n<p>.\/alist admin set NEW_PASSWORD<\/p>\n\n\n\n<p>\u6dfb\u52a0115\u7f51\u76d8\u3001\u5929\u7ffc\u4e91\u76d8\u5ba2\u6237\u7aef\u548c\u963f\u91cc\u4e91\u76d8Open<\/p>\n\n\n\n<p><a href=\"https:\/\/alist.nn.ci\/zh\/guide\/drivers\/115.html\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/alist.nn.ci\/zh\/guide\/drivers\/115.html<\/a><\/p>\n\n\n\n<p>115\u626b\u7801\u767b\u5f55\u83b7\u53d6Token\u5373\u4e8c\u7ef4\u7801\u4ee4\u724c<br>\u9009\u62e9Qrcode\u6e90\u4e3a\u7f51\u9875<\/p>\n\n\n\n<p>\u5929\u7ffc\u7f51\u76d8\u5ba2\u6237\u7aef\u8f93\u5165\u7528\u6237\u540d\u548c\u5bc6\u7801<br>\u5b89\u88c5rclone<br>apt install rclone<\/p>\n\n\n\n<p>scp I:\\multipass\\rclone_setup.sh root@192.168.1.40:\/home\/ubuntu\/<br>bash \/home\/ubuntu\/rclone_setup.sh<\/p>\n\n\n\n<p>rclone config delete 115pan<br>rclone config delete tianyi<\/p>\n\n\n\n<p>rclone config show 115pan<br>rclone config show tianyi<\/p>\n\n\n\n<p>115pan<br>http:\/\/192.168.1.40:5244\/dav\/115pan<\/p>\n\n\n\n<p>tianyi<br>http:\/\/192.168.1.40:5244\/dav\/tianyi<\/p>\n\n\n\n<p>mkdir \/115webdav<br>mkdir \/tianyiwebdav<\/p>\n\n\n\n<p>rclone mount 115pan:\/video \/115webdav &#8211;allow-non-empty &#8211;vfs-cache-mode writes&amp;<br>rclone mount tianyi:\/video \/tianyiwebdav &#8211;allow-non-empty &#8211;vfs-cache-mode full &#8211;vfs-cache-max-size 8G&amp;<\/p>\n\n\n\n<p>\u5378\u8f7d<br>fusermount -u \/115webdav<br>fusermount -u \/tianyiwebdav<\/p>\n\n\n\n<p>\u5b89\u88c5Jellyfin<br>scp I:\\multipass\\install_jellyfin.sh root@192.168.1.40:\/home\/ubuntu\/<br>bash \/home\/ubuntu\/install_jellyfin.sh<\/p>\n\n\n\n<p>\u914d\u7f6e Docker \u4f7f\u7528\u52a0\u901f\u5668<br>sudo nano \/etc\/docker\/daemon.json<br>{<br>&#8220;registry-mirrors&#8221;: [&#8220;https:\/\/docker.m.daocloud.io&#8221;]<br>}<\/p>\n\n\n\n<p>\u91cd\u542f Docker \u670d\u52a1\u4ee5\u5e94\u7528\u914d\u7f6e<br>sudo systemctl restart docker<\/p>\n\n\n\n<p>docker run -d \\<br>&#8211;name jellyfin \\<br>-v \/root\/jellyfin\/config:\/config \\<br>-v \/root\/jellyfin\/cache:\/cache \\<br>-v \/tianyiwebdav:\/media1 \\<br>-v \/115webdav:\/media2 \\<br>-p 8096:8096 \\<br>&#8211;restart unless-stopped \\<br>jellyfin\/jellyfin<\/p>\n\n\n\n<p>\u65b0\u5efa\u5b58\u50a8\u5e93<br>\u5b58\u50a8\u5e93 URL\uff1ahttps:\/\/mirror.ghproxy.com\/https:\/\/github.com\/cxfksword\/jellyfin-plugin-metashark\/releases\/download\/manifest\/manifest_cn.json<br>\u82e5\u4e0a\u8ff0URL\u5931\u6548\uff0c\u53ef\u5728\u63d2\u4ef6\u4ed3\u5e93\u4e2d\u83b7\u53d6\u6700\u65b0\u5730\u5740\uff1a<br>https:\/\/github.com\/cxfksword\/jellyfin-plugin-metashark\uff0c\u91cd\u65b0\u6dfb\u52a0\u4e00\u4e2a\u5b58\u50a8\u5e93\u3002<\/p>\n\n\n\n<p>\u5b89\u88c5MetaShark\u63d2\u4ef6<\/p>\n\n\n\n<p>\u5b89\u88c5\u7b80\u4f53\u4e2d\u6587\u8bed\u8a00\u5305\u5e76\u91cd\u542f\u7cfb\u7edf<br>sudo apt install language-pack-zh-hans<br>reboot<\/p>\n\n\n\n<p>\u5b89\u88c5\u5185\u7f51\u7a7f\u900fTailscale<br>curl -fsSL https:\/\/tailscale.com\/install.sh | sh<br>tailscale up<br>tailscale status<\/p>\n\n\n\n<p><a href=\"https:\/\/pkgs.tailscale.com\/stable\/?v=1.70.0#windows\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/pkgs.tailscale.com\/stable\/?v=1.70.0#windows<\/a><\/p>\n\n\n\n<p>\u6ce8\u610f\u4e8b\u9879\uff1a<br>\u5fc5\u987b\u6253\u5f00WiFi\u8fde\u63a5Hyper-V\u7684Default Switch<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e0b\u8f7d\u5e76\u5b89\u88c5Multipass\uff0c\u5b89\u88c5\u5230\u522b\u7684\u76d8\uff0c\u6bd4\u5982I &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20,6,12],"tags":[],"class_list":["post-5188","post","type-post","status-publish","format-standard","hentry","category-docker","category-linux","category-12"],"_links":{"self":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/5188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5188"}],"version-history":[{"count":8,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/5188\/revisions"}],"predecessor-version":[{"id":5197,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=\/wp\/v2\/posts\/5188\/revisions\/5197"}],"wp:attachment":[{"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5188"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5188"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/benson80.eu.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}