首页>资讯 > >正文
使用腾讯云服务器挂载COS作为Emby媒体服务器-世界快消息
2023-03-15 03:15:05来源:腾讯云

最近收集了一些4k杜比视界的资源,于是想搭建Emby媒体服务器。废话少说,首先我们需要一台云服务器,这里我选择使用竞价实例进行测试,服务稳定后利用镜像进行生产构建。

COS

目录和文件已经遵从emby命名规则准备好了。

服务器

【地域】地域选择与COS同一个地域,腾讯云针对部分同地域产品解析会优先走内网,省掉了公网流量费用,请求次数依然按实际计费。


【资料图】

【实例】随意,SA2老机型最便宜,这里我发现1c1g、1c2g、2c2g折后都是0.03¥/h于是选了2c2g。

【镜像】选Ubuntu20 x64,听我的少走弯路。

【网络】带宽太贵了我们按使用流量,带宽拉满4k秒开,个人流媒体服务器按流量相对更划算。

【安全组】全部放通,或者是放开22(ssh)、8096(emby)、8920(emby https)。

等待服务器创建完成。

SSH连接服务器设置root密码。

sudo passwd root

流量包

因为我们的服务器是按量计费,可以购买流量包,和手机的流量包一样,用来抵扣CVM产生的流量费用,根据自己实际情况按需购买。

COSFS

功能说明

COSFS 工具支持将对象存储(Cloud Object Storage,COS)存储桶挂载到本地,像使用本地文件系统一样直接操作腾讯云对象存储中的对象, COSFS 提供的主要功能包括:

支持 POSIX 文件系统的大部分功能,如:文件读写、目录操作、链接操作、权限管理、uid/gid 管理等功能。大文件分块传输功能。MD5 数据校验功能。将本机数据上传至 COS,建议使用 COS Migration 工具COSCMD 工具

局限性

COSFS 基于 S3FS 构建,读取和写入操作都经过磁盘中转,仅适合挂载后对文件进行简单的管理,不支持本地 POSIX 协议文件系统的一些功能用法;相比于 COSFS,更建议您使用 GooseFS-Lite工具访问 COS,GooseFS-Lite 是一个轻量级单机 COS Fuse 工具,具有更好的读写性能和稳定性;此外,您也可以选择使用 腾讯云存储网关访问 COS,腾讯云存储网关可以将 COS 存储桶,以网络文件系统挂载到多个服务器上,用户可以使用 POSIX 文件协议,通过挂载点读写 COS 上的对象;COSFS 的使用,需注意以下不适用的场景,例如:

随机或者追加写文件会导致整个文件的下载以及重新上传,您可以使用与 Bucket 在同一个地域的 CVM 加速文件的上传下载。多个客户端挂载同一个 COS 存储桶时,依赖用户自行协调各个客户端的行为。例如避免多个客户端写同一个文件等。文件/文件夹的 rename 操作不是原子的。元数据操作,例如 list directory,性能较差,因为需要远程访问 COS 服务器。不支持 hard link,不适合高并发读/写的场景。不可以同时在一个挂载点上挂载、和卸载文件。您可以先使用 cd 命令切换到其他目录,再对挂载点进行挂载、卸载操作。

看起来GooseFS-Lite更符合我的需求,但我为什么用COSFS而不用GooseFS-Lite呢?因为GooseFS-Lite安装过程复杂,碰到过很多问题,下次闲下来再尝试。有问题多看文档,还不行就提工单。

下载

下载COSFS,根据系统版本选择对应的安装包,github慢的可以通过cdn下载。

#Ubuntu14.04sudo wget https://github.com/tencentyun/cosfs/releases/download/v1.0.20/cosfs_1.0.20-ubuntu14.04_amd64.deb#Ubuntu16.04sudo wget https://github.com/tencentyun/cosfs/releases/download/v1.0.20/cosfs_1.0.20-ubuntu16.04_amd64.deb#Ubuntu18.04sudo wget https://github.com/tencentyun/cosfs/releases/download/v1.0.20/cosfs_1.0.20-ubuntu18.04_amd64.deb#Ubuntu20.04sudo wget https://github.com/tencentyun/cosfs/releases/download/v1.0.20/cosfs_1.0.20-ubuntu20.04_amd64.deb

安装

安装COSFS,以 Ubuntu20.04 为例。

sudo dpkg -i cosfs_1.0.20-ubuntu20.04_amd64.deb

使用

配置密钥文件

在文件 /etc/passwd-cosfs 中,写入您的存储桶名称(格式为 BucketName-APPID),以及该存储桶对应的,三项之间使用半角冒号隔开。

sudo su # 切换到 root 身份,以修改 /etc/passwd-cosfs 文件;如果已经为 root 用户,无需执行该条命令。echo :: > /etc/passwd-cosfs

如果没有passwd-cosfs就自己新建。

touch /etc/passwd-cosfs

为了防止密钥泄露,COSFS 要求您将密钥文件的权限值设置为640。

chmod 640 /etc/passwd-cosfs

示例

echo examplebucket-1250000000:AKIDHTVVaVR6e3****:PdkhT9e2rZCfy6**** > /etc/passwd-cosfschmod 640 /etc/passwd-cosfs

运行

将密钥文件中配置的存储桶挂载到指定目录,可以使用如下命令行。

cosfs   -ourl=http://cos..myqcloud.com -odbglevel=info -oallow_other

其中:

为本地挂载目录(例如/mnt)。 为地域简称, 例如 ap-guangzhou 、 eu-frankfurt 等。更多地域简称信息,请参见 可用地域。-odbglevel 指定日志级别,默认为crit,可选值为crit、error、warn、info、debug。-oallow_other 允许非挂载用户访问挂载文件夹。

示例

mkdir -p /mnt/cosfscosfs examplebucket-1250000000 /mnt/cosfs -ourl=http://cos.ap-guangzhou.myqcloud.com -odbglevel=info -onoxattr -oallow_other

可以看到我们已经挂载成功了。

卸载

卸载存储桶示例:

方式1:fusermount -u /mnt, fusermount 命令专用于卸载 FUSE 文件系统 方式2:umount -l /mnt, 当有程序引用文件系统中文件时,进行卸载不会报错,并在没程序引用时完成卸载方式3:umount /mnt, 当有程序引用文件系统中的文件时,进行卸载会报错

常见问题

如果您在使用 COSFS 工具过程中有相关的疑问,请参见 COSFS 工具类常见问题

Emby

下载

安装

dpkg -i emby-server-deb_4.7.11.0_amd64.deb

访问

选择语言

创建用户

新建资源库

尽量选中文,不懂的默认就行。

添加目录

就是映射cos到本地的那个目录。

目录添加完成。

一路配置完成。

进入首页

第一次进来是没有元数据的,需要等待emby进行搜刮。

域名解析

等待的时间里我们可以做点别的,比如通过域名来访问emby,我们可以把域名解析到服务器,如果是国内还需要备案。

HTTPS访问

端口号视情况自行修改,外部域填写你的域名,证书路径填写你的证书路径,注意格式为 .pfx,这是tomcat常用的格式,证书密码如实填写。最后保存配置。

最后重启emby服务器。

好了,搜刮好之后是这样的。

国内网络环境对搜刮不是很友,如果一直没有元数据可以修改服务器的hosts文件,添加如下记录后保存退出。

vi /etc/hosts13.226.225.52 api.themoviedb.org13.224.161.90 api.themoviedb.org

最后就可以愉快的观影了。

一段时间后查看COS资源使用情况,可以看到产生了请求数和内网下行流量。

云服务器通过内网访问对象存储的请求数是要计费的,但是腾讯云cos给我们提供了一定额度的免费资源包。

云服务器通过内网访问对象存储的下行流量是免费的。详见链接

最后总结一下我选择使用COS+CVM搭建Emby服务器的原因有几点:

COS带宽大,访问速度快,有一定免费额度,最重要的是我有大额无门槛代金券,可以无限空间。服务器大宽带按量计费,0.03一小时,一天只要0.72,流量包我也有券,四舍五入不要钱。腾讯云 存储网关成本太高。不想买NAS,懒得维护备份,怕坏。各种网盘即使开了vip容量还是太小。...

标签:

相关新闻