进阶 docs.stashapp.cc 2026-10-20 02:59:21 · 13 阅读
第11章 TrueNAS 上安装 Stash 指南
第11章 TrueNAS
TrueNAS
TrueNAS 社区版¶
TrueNAS 应用¶
免责声明
该应用不由 stashapp 团队维护。
TrueNAS 社区维护了一个社区版应用。
Stash
如何使用应用,请参阅 TrueNAS 官方文档了解详情。
TrueNAS Scale(通过 TrueCharts)¶
重要提示
TrueCharts 支持的最后版本是 Dragonfish (24.04.2.3)。
TrueNAS SCALE 应用弃用通知:https://trueforge.org/news/scale-deprecation/ 提示 以下步骤已在 TrueNAS Scale Cobia (23.10.1.3) 上测试验证。 安装¶ 要安装 stashapp,我们将使用 TrueCharts 应用数据库。请跟随官方文档 https://truecharts.org/manual/SCALE/guides/getting-started/ 进行安装: 1. 在顶层 SCALE 菜单中前往应用页面 2. 在应用页面点击“发现应用” 3. 在发现应用页面点击“管理目录”链接 4. 点击“添加目录” 5. 阅读 iXsystems 通知后,点击“继续”并填写所需信息: - 名称:truecharts - 仓库:https://github.com/truecharts/catalog - 首选列车:enterprise, stable 和 operators(需手动输入每一项) - 分支:main 6. 点击“保存”,让 SCALE 刷新其 TrueCharts 目录(这可能花费几分钟) 更新完成后,使用搜索栏搜索“stash”。找到后,点击“安装”。 选项¶ 安装窗口包含若干可自定义选项,但最关键的是存储选项。在页面中搜索“Additional App Storage”并点击“添加”。 - 在“存储类型”中,如果目标文件夹是 Dataset,请选择“Host Path”。 - “Host Path”应是你的内容存放位置。 - “Mount Path”是选择项在 stash 中显示的名称,你可以输入任意名称,例如 /stash-content。 之后,点击“安装”。 安装过程需几分钟。当 stash 显示为“运行中”时,点击右侧的“打开”并继续配置 stash。 进入包含内容的文件夹时,请记住搜索之前输入的相同名称。在本指南中,该名称为 /stash-content。 TrueNAS 旧版(CORE)¶ 维护模式 TrueNAS CORE 已转入维护模式,今后仅提供安全补丁,不再开发新功能或增强功能。 TrueNAS CORE 到 TrueNAS Community Edition 迁移指南:https://www.truenas.com/docs/scale/25.04/gettingstarted/migrate/ 注意事项与假设¶ 此处记录的方法仅经过初步测试,可能存在兼容性问题。 此方法假设 Stash 将在预先创建的 iocage 监狱(jail)内运行——创建和配置监狱的过程未在此处包含。 如果监狱处于 NAT 模式,请确保端口 9999 已转发至你的 TrueNAS 主机。 此方法的替代方案是从源码编译,这是一个更复杂的过程,本文未予记录。 Linux 兼容性¶ 为了让 stash-linux 二进制文件在 FreeBSD 系统上运行,必须在系统和监狱中都启用 Linux 兼容性。启用 Linux 兼容性的步骤如下: 在 TrueNAS Web UI 中导航至系统 -> 调整值(Tunables) 点击“添加”并输入以下内容: 变量:linux_enable 值:YES 类型:rc.conf 点击提交。 在你的 iocage 监狱的 shell 中,编辑 /etc/rc.conf 以添加: enable_linux="YES" 重启系统。 安装 ffmpeg/ffprobe¶ 进入你的 iocage 监狱并安装 ffmpeg pkg install ffmpeg 创建用户和组¶ 建议不要以 root 身份运行服务。请根据你的系统调整此步骤。在本示例中,将创建用户 stash 并设置其运行服务。 pw useradd -n stash -u 1069 -d /nonexistent -s /usr/sbin/nologin 下载 stash-linux¶ 选择你希望存储二进制文件的位置。在本示例中,选择 /usr/local/bin,因为 ffmpeg 二进制文件也位于此处。请在 github 上查看最新发行版。同时记得修复权限和所有权。 cd /usr/local/bin fetch https://github.com/stashapp/stash/releases/download/v0.22.1/stash-linux chown stash:stash stash-linux chmod +x stash-linux 创建配置目录¶ stash 需要一个目录用于其配置文件、数据库等。记得更改你选择文件夹的所有权和权限。下一步将查看的脚本默认使用此路径: mkdir /usr/local/etc/stash chown stash:stash /usr/local/etc/stash rc.d 启动脚本¶ 为了让 stash 作为守护进程在后台运行,并在启动时自动启动,你需要一个 rc.d 脚本。
mkdir /usr/local/etc/rc.d ee /usr/local/etc/rc.d/stash 在编辑器中输入以下内容: #!/bin/sh # PROVIDE: stash # REQUIRE: DAEMON # KEYWORD: shutdown . /etc/rc.subr name=stash rcvar=stash_enable load_rc_config $name : ${stash_enable:="NO"} : ${stash_user:="stash"} : ${stash_group:="stash"} : ${stash_config_dir:="/usr/local/etc/stash/config.yml"} : ${stash_exec_bin:="/usr/local/bin/stash-linux"} #daemon pidfile="/var/run/${name}.pid" command="/usr/sbin/daemon" command_args="-f -P ${pidfile} ${stash_exec_bin} --config ${stash_config_dir}" start_precmd="stash_precmd" stash_precmd() { install -o ${stash_user} -g ${stash_group} /dev/null ${pidfile} } run_rc_command $1 按 ESC + Enter 保存,输入 a 确认,并执行 chmod +x /usr/local/etc/rc.d/stash 以获取执行权限 开启启动服务 若希望启动 Jail 时运行 Stash,请执行以下命令: sysrc "stash_enable=YES" 要启动服务,重启 Jail 或执行此命令: service stash start Stash 现已可通过 http://jail-IP:9999/ 访问 在配置过程中,您可以留空配置、数据库等路径以使用默认值。它们将保存在我们之前创建的 config 文件夹中,便于备份。只需添加您的媒体内容即可。 可选步骤 您可以更改 Stash 存储配置文件和数据库的位置。请注意,路径需以 config.yml 结尾,即使该文件尚未存在。Stash 会自动创建它。别忘了修正您所选位置的拥有者和权限。 sysrc "stash_config_dir=path/to/location/config.yml" 您可以更改 Stash 运行的用户和组。请记住,config_dir 必须归 Stash 运行时的用户所有,stash-linux 二进制文件也是如此 sysrc "stash_user=usernamegoeshere" sysrc "stash_group=groupnamegoeshere" 也可以更改 stash-linux 二进制文件的位置 ``` sysrc "stash_exec_bin=/path/to/stash-linux"
TrueNAS SCALE 应用弃用通知:https://trueforge.org/news/scale-deprecation/ 提示 以下步骤已在 TrueNAS Scale Cobia (23.10.1.3) 上测试验证。 安装¶ 要安装 stashapp,我们将使用 TrueCharts 应用数据库。请跟随官方文档 https://truecharts.org/manual/SCALE/guides/getting-started/ 进行安装: 1. 在顶层 SCALE 菜单中前往应用页面 2. 在应用页面点击“发现应用” 3. 在发现应用页面点击“管理目录”链接 4. 点击“添加目录” 5. 阅读 iXsystems 通知后,点击“继续”并填写所需信息: - 名称:truecharts - 仓库:https://github.com/truecharts/catalog - 首选列车:enterprise, stable 和 operators(需手动输入每一项) - 分支:main 6. 点击“保存”,让 SCALE 刷新其 TrueCharts 目录(这可能花费几分钟) 更新完成后,使用搜索栏搜索“stash”。找到后,点击“安装”。 选项¶ 安装窗口包含若干可自定义选项,但最关键的是存储选项。在页面中搜索“Additional App Storage”并点击“添加”。 - 在“存储类型”中,如果目标文件夹是 Dataset,请选择“Host Path”。 - “Host Path”应是你的内容存放位置。 - “Mount Path”是选择项在 stash 中显示的名称,你可以输入任意名称,例如 /stash-content。 之后,点击“安装”。 安装过程需几分钟。当 stash 显示为“运行中”时,点击右侧的“打开”并继续配置 stash。 进入包含内容的文件夹时,请记住搜索之前输入的相同名称。在本指南中,该名称为 /stash-content。 TrueNAS 旧版(CORE)¶ 维护模式 TrueNAS CORE 已转入维护模式,今后仅提供安全补丁,不再开发新功能或增强功能。 TrueNAS CORE 到 TrueNAS Community Edition 迁移指南:https://www.truenas.com/docs/scale/25.04/gettingstarted/migrate/ 注意事项与假设¶ 此处记录的方法仅经过初步测试,可能存在兼容性问题。 此方法假设 Stash 将在预先创建的 iocage 监狱(jail)内运行——创建和配置监狱的过程未在此处包含。 如果监狱处于 NAT 模式,请确保端口 9999 已转发至你的 TrueNAS 主机。 此方法的替代方案是从源码编译,这是一个更复杂的过程,本文未予记录。 Linux 兼容性¶ 为了让 stash-linux 二进制文件在 FreeBSD 系统上运行,必须在系统和监狱中都启用 Linux 兼容性。启用 Linux 兼容性的步骤如下: 在 TrueNAS Web UI 中导航至系统 -> 调整值(Tunables) 点击“添加”并输入以下内容: 变量:linux_enable 值:YES 类型:rc.conf 点击提交。 在你的 iocage 监狱的 shell 中,编辑 /etc/rc.conf 以添加: enable_linux="YES" 重启系统。 安装 ffmpeg/ffprobe¶ 进入你的 iocage 监狱并安装 ffmpeg pkg install ffmpeg 创建用户和组¶ 建议不要以 root 身份运行服务。请根据你的系统调整此步骤。在本示例中,将创建用户 stash 并设置其运行服务。 pw useradd -n stash -u 1069 -d /nonexistent -s /usr/sbin/nologin 下载 stash-linux¶ 选择你希望存储二进制文件的位置。在本示例中,选择 /usr/local/bin,因为 ffmpeg 二进制文件也位于此处。请在 github 上查看最新发行版。同时记得修复权限和所有权。 cd /usr/local/bin fetch https://github.com/stashapp/stash/releases/download/v0.22.1/stash-linux chown stash:stash stash-linux chmod +x stash-linux 创建配置目录¶ stash 需要一个目录用于其配置文件、数据库等。记得更改你选择文件夹的所有权和权限。下一步将查看的脚本默认使用此路径: mkdir /usr/local/etc/stash chown stash:stash /usr/local/etc/stash rc.d 启动脚本¶ 为了让 stash 作为守护进程在后台运行,并在启动时自动启动,你需要一个 rc.d 脚本。
mkdir /usr/local/etc/rc.d ee /usr/local/etc/rc.d/stash 在编辑器中输入以下内容: #!/bin/sh # PROVIDE: stash # REQUIRE: DAEMON # KEYWORD: shutdown . /etc/rc.subr name=stash rcvar=stash_enable load_rc_config $name : ${stash_enable:="NO"} : ${stash_user:="stash"} : ${stash_group:="stash"} : ${stash_config_dir:="/usr/local/etc/stash/config.yml"} : ${stash_exec_bin:="/usr/local/bin/stash-linux"} #daemon pidfile="/var/run/${name}.pid" command="/usr/sbin/daemon" command_args="-f -P ${pidfile} ${stash_exec_bin} --config ${stash_config_dir}" start_precmd="stash_precmd" stash_precmd() { install -o ${stash_user} -g ${stash_group} /dev/null ${pidfile} } run_rc_command $1 按 ESC + Enter 保存,输入 a 确认,并执行 chmod +x /usr/local/etc/rc.d/stash 以获取执行权限 开启启动服务 若希望启动 Jail 时运行 Stash,请执行以下命令: sysrc "stash_enable=YES" 要启动服务,重启 Jail 或执行此命令: service stash start Stash 现已可通过 http://jail-IP:9999/ 访问 在配置过程中,您可以留空配置、数据库等路径以使用默认值。它们将保存在我们之前创建的 config 文件夹中,便于备份。只需添加您的媒体内容即可。 可选步骤 您可以更改 Stash 存储配置文件和数据库的位置。请注意,路径需以 config.yml 结尾,即使该文件尚未存在。Stash 会自动创建它。别忘了修正您所选位置的拥有者和权限。 sysrc "stash_config_dir=path/to/location/config.yml" 您可以更改 Stash 运行的用户和组。请记住,config_dir 必须归 Stash 运行时的用户所有,stash-linux 二进制文件也是如此 sysrc "stash_user=usernamegoeshere" sysrc "stash_group=groupnamegoeshere" 也可以更改 stash-linux 二进制文件的位置 ``` sysrc "stash_exec_bin=/path/to/stash-linux"