阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

rsync+inotify实现数据的实时备份

469次阅读
没有评论

共计 10729 个字符,预计需要花费 27 分钟才能阅读完成。

一、rsync 概述

1.1rsync的优点与不足

rsync 与传统的 cp、tar 备份方式相比,rsync 具有安全性高、备份迅速、支持增量备份等优点,通过 rsync 可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等。
 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync 在高端业务系统中也逐渐暴露出了很多不足,首先,rsync 同步数据时,需要扫描所有文件后进行比对,进行差量传输。如果文件数量达到了百万甚至千万量级,扫描所有文件将是非常耗时的。而且正在发生变化的往往是其中很少的一部分,这是非常低效的方式。其次,rsync 不能实时的去监测、同步数据,虽然它可以通过 linux 守护进程的方式进行触发同步,但是两次触发动作一定会有时间差,这样就导致了服务端和客户端数据可能出现不一致,无法在应用故障时完全的恢复数据。基于以上原因,rsync+inotify 组合出现了!

二、inotify 概述

2.1、初识inotify

Inotify 是一种强大的、细粒度的、异步的文件系统事件监控机制,linux 内核从 2.6.13 起,加入了 Inotify 支持,通过 Inotify 可以监控文件系统中添加、删除,修改、移动等各种细微事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况,而 inotify-tools 就是这样的一个第三方软件。
在上面章节中,我们讲到,rsync 可以实现触发式的文件同步,但是通过 crontab 守护进程方式进行触发,同步的数据和实际数据会有差异,而 inotify 可以监控文件系统的各种变化,当文件有任何变动时,就触发 rsync 同步,这样刚好解决了同步数据的实时性问题。

三、测试开始

操作系统:CentOS 5.X

源服务器:192.168.21.129

目标服务器:192.168.21.127,192.168.21.128

目的:把源服务器上 /home/www.linuxidc.net 目录实时同步到目标服务器的 /home/www.linuxidc.net 下

具体操作:

第一部分:分别在两台目标服务器 192.168.21.127,192.168.21.128 上操作

一、分别在两台在目标服务器安装 Rsync 服务端

1、关闭 SELINUX

vi /etc/selinux/config #编辑防火墙配置文件
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! #保存,退出
setenforce 0  #立即生效

2、开启防火墙 tcp 873 端口(Rsync 默认端口)

vi /etc/sysconfig/iptables #编辑防火墙配置文件
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 873 -j ACCEPT
:wq! #保存,退出
/etc/init.d/iptables restart #最后重启防火墙使配置生

3、安装 Rsync 服务端软件

yum install rsync xinetd #安装
vi /etc/xinetd.d/rsync #编辑配置文件,设置开机启动 rsync
disable = no #修改为 no
:wq! #保存退出
/etc/init.d/xinetd start #启动(CentOS 中是以 xinetd 来管理 Rsync 服务的

4、创建 rsyncd.conf 配置文件

vi /etc/rsyncd.conf #创建配置文件,添加以下代码
rsync+inotify 实现数据的实时备份  

log file = /var/log/rsyncd.log #日志文件位置,启动 rsync 后自动产生这个文件,无需提前创建

pidfile = /var/run/rsyncd.pid  #pid 文件的存放位置

lock file = /var/run/rsync.lock  #支持 max connections 参数的锁文件

secrets file = /etc/rsync.pass  #用户认证配置文件,里面保存用户名称和密码,后面会创建这个文件

motd file = /etc/rsyncd.Motd  #rsync 启动时欢迎信息页面文件位置(文件内容自定义)[home_www.linuxidc.net] #自定义名称

path = /home/www.linuxidc.net/ #rsync 服务端数据目录路径

comment = home_www.linuxidc.net #模块名称与 [osyunwei] 自定义名称相同

uid = root #设置 rsync 运行权限为 root

gid = root #设置 rsync 运行权限为 root

port=873  #默认端口

use chroot = no #默认为 true,修改为 no,增加对目录文件软连接的备份

read only = no  #设置 rsync 服务端文件为读写权限

list = no #不显示 rsync 服务端资源列表

max connections = 200 #最大连接数

timeout = 600  #设置超时时间

auth users = home_www.linuxidc.net_user #执行数据同步的用户名,可以设置多个,用英文状态下逗号隔开

hosts allow = 192.168.21.129  #允许进行数据同步的客户端 IP 地址,可以设置多个,用英文状态下逗号隔开

hosts deny = 192.168.21.254 #禁止数据同步的客户端 IP 地址,可以设置多个,用英文状态下逗号隔开

5、创建用户认证文件

vi /etc/rsync.pass #配置文件,添加以下内容
home_www.linuxidc.net_user:123456  #格式,用户名: 密码,可以设置多个,每行一个用户名: 密码
:wq!  #保存,退出

6、设置文件权限

chmod 600 /etc/rsyncd.conf  #设置文件所有者读取、写入权限
chmod 600 /etc/rsync.pass  #设置文件所有者读取、写入权限

7、启动 rsync

/etc/init.d/xinetd start  #启动
service xinetd stop   #停止
service xinetd restart #重新启动

第二部分:在源服务器 192.168.21.129 上操作

一、安装 Rsync 客户端

1、关闭 SELINUX

vi /etc/selinux/config #编辑防火墙配置文件

#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加

:wq! #保存,退出

setenforce 0 #立即生 

2、开启防火墙 tcp 873 端口(Rsync 默认端口,做为客户端的 Rsync 可以不用开启 873 端口)

vi /etc/sysconfig/iptables #编辑防火墙配置文件

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 873 -j ACCEPT

:wq! #保存,退出

/etc/init.d/iptables restart #最后重启防火墙使配置生效 

3、安装 Rsync 客户端端软件

whereis rsync   #查看系统是否已安装 rsync, 出现下面的提示,说明已经安装

rsync: /usr/bin/rsync /usr/share/man/man1/rsync.1.gz

yum install  xinetd  #只安装 xinetd 即可,CentOS 中是以 xinetd 来管理 rsync 服务的

yum install rsync xinetd #如果默认没有 rsync,运行此命令进行安装 rsync 和 xinetd

vi /etc/xinetd.d/rsync #编辑配置文件,设置开机启动 rsync

disable = no #修改为

/etc/init.d/xinetd start #启动(CentOS 中是以 xinetd 来管理 rsync 服务的)

4、创建认证密码文件

vi /etc/passwd.txt  #编辑文件,添加以下内容

123456 #密码

:wq! #保存退出

chmod 600 /etc/passwd.txt #设置文件权限,只设置文件所有者具有读取、写入权限即可

5、测试源服务器 192.168.21.129 到两台目标服务器 192.168.21.127,192.168.21.128 之间的数据同步

mkdir /home/www.linuxidc.net/ceshi #在源服务器上创建测试文件夹,然后在源服务器运行下面 2 行命令

rsync -avH –port=873 –progress –delete  /home/www.linuxidc.net/  home_www.linuxidc.net_user@192.168.21.127::home_www.linuxidc.net –password-file=/etc/passwd.txt

rsync -avH –port=873 –progress –delete  /home/www.linuxidc.net/  home_www.linuxidc.net_user@192.168.21.128::home_www.linuxidc.net –password-file=/etc/passwd.txt

运行完成后,分别在两台目标服务器 192.168.21.127,192.168.21.128 上查看,在 /home/www.linuxidc.net 目录下有 ceshi 文件夹,说明数据同步成功。

二、安装 Inotify-tools 工具,实时触发 rsync 进行同步

1、查看服务器内核是否支持 inotify

ll /proc/sys/fs/inotify  #列出文件目录,出现下面的内容,说明服务器内核支持 inotify

-rw-r–r– 1 root root 0 Mar  7 02:17 max_queued_events

-rw-r–r– 1 root root 0 Mar  7 02:17 max_user_instances

-rw-r–r– 1 root root 0 Mar  7 02:17 max_user_watches

备注:Linux 下支持 inotify 的内核最小为 2.6.13,可以输入命令:uname - a 查看内核

CentOS 5.X 内核为 2.6.18,默认已经支持 inotify

2、安装 inotify-tools

yum install make  gcc gcc-c++  #安装编译工具

inotify-tools 下载地址:http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz

上传 inotify-tools-3.14.tar.gz 到 /usr/local/src 目录下

cd /usr/local/src

tar zxvf inotify-tools-3.14.tar.gz  #解压

cd inotify-tools-3.14 #进入解压目录

./configure --prefix=/usr/local/inotify  #配置

make  #编译

make install  #安装 

3、设置系统环境变量,添加软连接

echo "PATH=/usr/local/inotify/bin:$PATH" >>/etc/profile.d/inotify.sh

source /etc/profile.d/inotify.sh  #使设置立即生效

echo "/usr/local/inotify/lib" >/etc/ld.so.conf.d/inotify.conf

ln -s /usr/local/inotify/include  /usr/include/inotify

4、修改 inotify 默认参数(inotify 默认内核参数值太小)

查看系统默认参数值

sysctl -a | grep max_queued_events

结果是:fs.inotify.max_queued_events = 16384

sysctl -a | grep max_user_watches

结果是:fs.inotify.max_user_watches = 8192

sysctl -a | grep max_user_instances

结果是:fs.inotify.max_user_instances = 128

修改参数:sysctl -w fs.inotify.max_queued_events="99999999"

sysctl -w fs.inotify.max_user_watches="99999999"

sysctl -w fs.inotify.max_user_instances="65535" 

参数说明:

max_queued_events:

inotify 队列最大长度,如果值太小,会出现 ”** Event Queue Overflow **” 错误,导致监控文件不准确

max_user_watches:

要同步的文件包含多少目录,可以用:find /home/www.linuxidc.net -type d | wc -l 统计,必须保证 max_user_watches 值大于统计结果(这里 /home/www.linuxidc.net 为同步文件目录)

max_user_instances:

每个用户创建 inotify 实例最大值

5、创建脚本,实时触发 rsync 进行同步

vi /usr/local/inotify/rsync.sh  #编辑,添加以下代码

#!/bin/sh

srcdir=/home/www.linuxidc.net/

dstdir=home_www.linuxidc.net

rsyncuser=home_www.linuxidc.net_user

rsyncpassdir=/etc/passwd.txt

dstip="192.168.21.128 192.168.21.127"

for ip in $dstip

do
  rsync -avH --port=873 --progress --delete  $srcdir $rsyncuser@$ip::$dstdir --password-file=$rsyncpassdir
done

/usr/local/inotify/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e close_write,modify,delete,create,attrib,move $srcdir |  while read file

do

for ip in $dstip

do

rsync -avH --port=873 --progress --delete  $srcdir $rsyncuser@$ip::$dstdir --password-file=$rsyncpassdir

echo "  ${file} was rsynced" >> /tmp/rsync.log 2>&1

done

done
—————————————————————–
chmod +x /usr/local/inotify/rsync.sh   #添加脚本执行权限

srcdir=/home/www.linuxidc.net/  #源服务器同步目录

dstdir=home_www.linuxidc.net    #目标服务器 rsync 同步目录模块名称

rsyncuser=home_www.linuxidc.net_user  #目标服务器 rsync 同步用户名

rsyncpassdir=/etc/passwd.txt  #目标服务器 rsync 同步用户的密码在源服务器的存放路径

dstip="192.168.21.127 192.168.21.128"  #目标服务器 ip,多个 ip 用空格分开

/tmp/rsync.log  #脚本运行日志记录

脚本参数说明

6、设置脚本开机自动执行

vi /etc/rc.d/rc.local  #编辑,在最后添加一行

sh /usr/local/inotify/rsync.sh & #设置开机自动在后台运行脚本

:wq!  #保存退出

7、测试 inotify 实时触发 rsync 同步脚本是否正常运行

在源服务器 192.168.21.129 上创建文件 inotify_rsync_ceshi

mkdir /home/www.linuxidc.net/inotify_rsync_ceshi

重新启动源服务器:192.168.21.129

等系统启动之后,查看两台目标服务器 192.168.21.127,192.168.21.128 的 /home/www.linuxidc.net 下是否有 inotify_rsync_ceshi 文件夹

然后再在源服务器 192.168.21.129 创建文件夹 inotify_rsync_ceshi_new

mkdir /home/www.linuxidc.net/inotify_rsync_ceshi_new

继续查看两台目标服务器 192.168.21.127,192.168.21.128 的 /home/www.linuxidc.net 下是否有 inotify_rsync_ceshi_new 文件夹

如果以上测试都通过,说明 inotify 实时触发 rsync 同步脚本运行正常。

至此,Linux 下 Rsync+Inotify-tools 实现数据实时同步完成。

扩展阅读:

inotify 参数

rsync+inotify 实现数据的实时备份

-m 是保持一直监听

-r 是递归查看目录

-q 是打印出事件

-e create,move,delete,modify,attrib 是指“监听 创建 移动 删除 写入 权限”事件
 

rsync+inotify 实现数据的实时备份

-v, --verbose 详细模式输出

-q, --quiet 精简输出模式

-c, --checksum 打开校验开关,强制对文件传输进行校验

-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于 -rlptgoD

-r, --recursive 对子目录以递归模式处理

-R, --relative 使用相对路径信息

-b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用 --suffix 选项来指定不同的备份文件前缀。--backup-dir 将备份文件 (如~filename) 存放在在目录下。-suffix=SUFFIX 定义备份文件前缀

-u, --update 仅仅进行更新,也就是跳过所有已经存在于 DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件)

-l, --links 保留软链结

-L, --copy-links 想对待常规文件一样处理软链结

--copy-unsafe-links 仅仅拷贝指向 SRC 路径目录树以外的链结

--safe-links 忽略指向 SRC 路径目录树以外的链结

-H, --hard-links 保留硬链结

-p, --perms 保持文件权限

-o, --owner 保持文件属主信息

-g, --group 保持文件属组信息

-D, --devices 保持设备文件信息

-t, --times 保持文件时间信息

-S, --sparse 对稀疏文件进行特殊处理以节省 DST 的空间

-n, --dry-run 现实哪些文件将被传输

-W, --whole-file 拷贝文件,不进行增量检测

-x, --one-file-system 不要跨越文件系统边界

-B, --block-size=SIZE 检验算法使用的块尺寸,默认是 700 字节

-e, --rsh=COMMAND 指定使用 rsh、ssh 方式进行数据同步

--rsync-path=PATH 指定远程服务器上的 rsync 命令所在路径信息

-C, --cvs-exclude 使用和 CVS 一样的方法自动忽略文件,用来排除那些不希望传输的文件

--existing 仅仅更新那些已经存在于 DST 的文件,而不备份那些新创建的文件

--delete 删除那些 DST 中 SRC 没有的文件

--delete-excluded 同样删除接收端那些被该选项指定排除的文件

--delete-after 传输结束以后再删除

--ignore-errors 及时出现 IO 错误也进行删除

--max-delete=NUM 最多删除 NUM 个文件

--partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输

--force 强制删除目录,即使不为空

--numeric-ids 不将数字的用户和组 ID 匹配为用户名和组名

--timeout=TIME IP 超时时间,单位为秒

-I, --ignore-times 不跳过那些有同样的时间和长度的文件

--size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间

--modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为 0

-T --temp-dir=DIR 在 DIR 中创建临时文件

--compare-dest=DIR 同样比较 DIR 中的文件来决定是否需要备份

-P 等同于 --partial

--progress 显示备份过程

-z, --compress 对备份的文件在传输时进行压缩处理

--exclude=PATTERN 指定排除不需要传输的文件模式

--include=PATTERN 指定不排除而需要传输的文件模式

--exclude-from=FILE 排除 FILE 中指定模式的文件

--include-from=FILE 不排除 FILE 指定模式匹配的文件

--version 打印版本信息

--address 绑定到特定的地址

--config=FILE 指定其他的配置文件,不使用默认的 rsyncd.conf 文件

--port=PORT 指定其他的 rsync 服务端口

--blocking-io 对远程 shell 使用阻塞 IO

-stats 给出某些文件的传输状态

--progress 在传输时现实传输过程

--log-format=formAT 指定日志文件格式

--password-file=FILE 从 FILE 中得到密码

--bwlimit=KBPS 限制 I / O 带宽,KBytes per second

-h, --help 显示帮助信息

常见错误

问题一:

@ERROR: chroot failed

rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:服务器端的目录不存在或无权限。创建目录并修正权限可解决问题。

问题二:

@ERROR: auth failed on module tee

rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:服务器端该模块(tee)需要验证用户名密码,但客户端没有提供正确的用户名密码,认证失败。提供正确的用户名密码解决此问题。

问题三:

@ERROR: Unknown module‘tee_nonexists’

rsync error: error starting client-server protocol (code 5) at main.c(1522) [receiver=3.0.3]

原因:服务器不存在指定模块。提供正确的模块名或在服务器端修改成你要的模块以解决问题。

问题四:

password file must not be other-accessible

continuing without password file

Password:

原因:这是因为 rsyncd.pwd rsyncd.secrets 的权限不对,应该设置为 600。如:chmod 600 rsyncd.pwd

问题五:

rsync: failed to connect to 218.107.243.2: No route to host (113)

rsync error: error in socket IO (code 10) at clientserver.c(104) [receiver=2.6.9]

原因:对方没开机、防火墙阻挡、通过的网络上有防火墙阻挡,都有可能。关闭防火墙,其实就是把 tcpudp 的 873 端口打开。

问题六:

rsync error: error starting client-server protocol (code 5) at main.c(1524) [Receiver=3.0.7]

原因:/etc/rsyncd.conf 配置文件内容有错误。请正确核对配置文件。

问题七:

rsync: chown “” failed: Invalid argument (22)

原因:权限无法复制。去掉同步权限的参数即可。(这种情况多见于 Linux 向 Windows 的时候)

问题八:

@ERROR: daemon security issue — contact admin
rsync error: error starting client-server protocol (code 5) at main.c(1530) [sender=3.0.6]

原因:同步的目录里面有软连接文件,需要服务器端的 /etc/rsyncd.conf 打开 use chroot = yes。掠过软连接文件。

RSync 实现文件备份同步详解   http://www.linuxidc.com/Linux/2014-09/106967.htm

利用 inotifywait 监控主机文件和目录 http://www.linuxidc.com/Linux/2013-03/81075.htm

利用 inotify+rsync 实现 Linux 文件批量更新 http://www.linuxidc.com/Linux/2012-01/52132.htm

inotify-tools+rsync 实时同步文件安装和配置 http://www.linuxidc.com/Linux/2012-06/63624.htm

rsync 同步完整配置 http://www.linuxidc.com/Linux/2013-06/85781.htm

CentOS 6.5 下 Rsync 远程同步 http://www.linuxidc.com/Linux/2014-05/101084.htm

Linux 文件夹对比并提取的差分文件技巧 -rsync 的妙用 http://www.linuxidc.com/Linux/2016-02/128307.htm

Rsync 的详细介绍:请点这里
Rsync 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137630.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计10729字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7994962
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的 Nano Banana Pro?附赠邪修的用法 前言 大家好,我是星哥,今天来介绍谷歌的 ...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare 也瘫了连监控都挂,根因藏在哪? 最近两天的互联网堪称“故障...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手!

星哥带你玩飞牛 NAS-13:自动追番、订阅下载 + 刮削,动漫党彻底解放双手! 作为动漫爱好者,你是否还在为...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...