Solutions
-
JackieWu's post in 关于Mover Tuning有一些疑问 was marked as the answer没问题。
Mover Tuning 是根据的 Mover Settings 所设置的定时任务频率来执行的,也就是说只有 Mover 被执行的情况下 Mover Tuning 才会生效,换个角度看的话如果 Mover 从未被执行那么 Mover Tuning 相当于没有任何作用。
文件未被转移的可能原因我在博客里有详细说过,你可以参考看看是不是能解决你的问题:《详解 Unraid 缓存策略及应用案例》
-
JackieWu's post in 磁盘掉盘了,怎么再不重建的数据的情况下将磁盘添加回来 was marked as the answer掉盘的 sdf 按原位放回阵列的“磁盘1”位置不能启动吗?
-
JackieWu's post in USB网卡无法识别,是否可以自己编译安装。 was marked as the answerUnraid 如果要使用系统没有且无法通过 Unraid 上的插件去安装的驱动,需要自己编译并替换 Unraid 的内核文件。
-
JackieWu's post in bzfirmware checksum error无法开机 was marked as the answerU 盘里面的系统文件损坏,重新安装一下系统一般都可以解决,方法可以参考我博客里面的教程。
-
JackieWu's post in 使用SWAG反向代理UNRAID,部分信息不显示 was marked as the answer不管是 SWAG 也好,NPM(Nginx Proxy Manager)也好,反代 Unraid 如果没有在反向代理配置中设置 proxy_set_header Host $http_host 这一参数,那么你会发现访问 Unraid 后会不带端口号进行跳转;另外由于 websocket 的问题,也会导致一些动态信息无法获取,就比如题主这里提到的磁盘信息、CPU占用等法显示。以上问题除了 Unraid 之外,还存在于可道云、Nextcloud 等应用反代中,因此都可以通过以下方式进行解决。
解决办法如下:
SWAG:
server { listen 443 ssl; #listen [::]:443 ssl; # 这里替换成设置的域名 server_name unraid.*; include /config/nginx/ssl.conf; client_max_body_size 0; # enable for ldap auth, fill in ldap details in ldap.conf #include /config/nginx/ldap.conf; # enable for Authelia #include /config/nginx/authelia-server.conf; location / { #include /config/nginx/proxy.conf; include /config/nginx/resolver.conf; # 填写服务的ip地址 set $upstream_app 192.168.5.19; # 填写对应服务的端口 set $upstream_port 8096; set $upstream_proto http; proxy_pass $upstream_proto://$upstream_app:$upstream_port; client_body_buffer_size 128k; # 禁用 buffer proxy_buffering off; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503; proxy_buffers 64 256k; proxy_connect_timeout 240; proxy_headers_hash_bucket_size 128; proxy_headers_hash_max_size 1024; proxy_http_version 1.1; proxy_read_timeout 240; proxy_redirect http:// $scheme://; send_timeout 5m; # 缓存和 Cookie proxy_cache_bypass $cookie_session; proxy_no_cache $cookie_session; #proxy_cookie_path / "/; Secure"; # enable at your own risk, may break certain apps # 请求头 proxy_set_header Connection $connection_upgrade; proxy_set_header Early-Data $ssl_early_data; proxy_set_header Host $http_host; proxy_set_header Upgrade $http_upgrade; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Real-IP $remote_addr; } }
NPM(以下参数的用法参考这里):
client_max_body_size 0; proxy_max_temp_file_size 0; proxy_buffering off; proxy_request_buffering off; location / { proxy_pass $forward_scheme://$server:$port; proxy_set_header Host $http_host; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $port; proxy_set_header X-Forwarded-Method $request_method; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Original-URL $scheme://$http_host$request_uri; proxy_set_header X-Forwarded-Uri $request_uri; }
-
JackieWu's post in 关于奇偶校验的设置问题。 was marked as the answer根据官方的校验盘工作原理介绍,校验盘会对阵列(Array)里面所有硬盘内的数据进行奇偶校验,将形成的数据存储到校验盘中。
但是硬盘里面的数据是会变化的,比如说新写入了文件、文件被修改、删除等。
假设我今天做了一次完整的奇偶校验,但随后我将阵列里某一块硬盘所有的数据都删掉了,那么此时校验盘保存的校验数据依然是先前硬盘还有数据时的校验数据。换句话说,已经计算得到的校验数据是静态的,删除数据(或修改数据)不会让先前已经计算好的校验数据实时发生变化。
为什么删除数据版不会实时改变校验数据,因为校验盘就是为了保护你的数据呀。
阵列里某个硬盘坏了,无法读取了,是不是从某种程度上也算是一种非人为的”删除数据“,如果此时校验数据也一并被删除,那么校验盘就没有存在的意义了。
只要硬盘里面的数据被删除或修改了,校验后的数据都会与上一次校验的数据有所不同,并且就算数据没有删除或者修改,如果说硬盘出现了坏道或者一些其他的问题导致数据发生了变化(或者导致数据不完整了),那么定时校验就可以发现问题并对数据进行修复,这就是定时校验的意义。
关于 unRAID 校验盘更完整的说明,可以参考我写的博客:新手教程:什么是校验盘,校验盘有什么作用
-
-
JackieWu's post in 大佬们nas-tools还能安装吗? was marked as the answernastool 目前都可以安装的吧,我写过 2.9.x 的教程(目前最新的是 3.x,但用法差别不大)。
-
JackieWu's post in 在有校验盘的情况下,如何无损更换阵列的硬盘。 was marked as the answerA:是。在有校验盘的情况下,直接踢掉一个硬盘后换上一个新的硬盘会重建数据。
但是非常不建议,因为重建数据是有可能不成功的。校验盘是为了提供数据冗余,是让你能够在遇到硬盘损毁的情况下能保持数据的完整,给你提供时间去读取并转移数据,而不是作为一种数据备份的方式(Raid 阵列也是如此)。
所以最好的方式就是 2P 这位朋友说的,将数据转移走再替换掉硬盘:
A:是的,两块校验盘的情况下最多支持损毁两块硬盘而不丢失数据。但同样的,不建议这么做。
A:校验盘可以直接更换,不会影响阵列里面的数据。因为校验盘存储的是校验数据,而不是一般的文件数据,所以就算更换了所有的校验盘也只是说需要花点时间重新做一次奇偶校验而已。提醒一下还不太了解的读者,校验盘的硬盘空间大小一定大于等于阵列里面最大容量的那个硬盘,比如说你的阵列里面最大的那个盘是 16T 的,那么校验盘也一定要大于或等于 16T。
A:想怎么换都可以,只要按照前面说的,把要替换的盘里面的数据转移走再替换就行。
A:把数据转移到阵列里面,然后再替换掉。具体的实施方法可以借助缓存策略或者使用 unBALANCE 插件转移数据,这两个方式我写有博客文章可供大家参考 —— 《详解 Unraid 缓存策略及应用案例》、《unBALANCE 文件转移工具使用方法和应用案例介绍》
-
JackieWu's post in 缓存池有必要组raid1吗 was marked as the answerRaid1 模式下,写入速度的上限取决于写入速度最慢的那个盘;数据读取的话是谁的数据先读出,就是采用谁的数据。
-
JackieWu's post in No HW transcoding in Emby (VAAPI is gone) was marked as the answerIt seems ok, maybe try to reboot unraid.
-
提示权限问题可以不用管,我用了很多次基本没有因此遇到问题,一般来说除了 appdata 这个文件夹可能需要注意一下权限问题外,其他共享文件夹的权限问题可以通过 "工具 - Docker Safe New Perms" 这个工具来解决(需要安装 Fix Common Problems 插件之后才会有这个工具)。
unBalance 插件不会影响共享目录的设置,直接转移文件即可。
参考资料:
新手教程:详解 Unraid 缓存策略及应用案例 unBALANCE 文件转移工具使用方法和应用案例介绍
-
JackieWu's post in 为什么我的 Unraid 不稳定、总出问题 —— 针对近期论坛反馈我的感受 was marked as the answerReserved
补充一个因主板不兼容导致系统提示U盘损坏的罕见案例:《换了3个U盘还是提示损坏:因主板不兼容而导致的罕见Unraid崩溃问题》
-
JackieWu's post in UNRIAD应当在什么硬件平台上运行? was marked as the answerUNRAID系统是否依赖于ECC内存?
- 不依赖。B 站有一个《ECC内存究竟有多大用?NAS真的需要ECC内存吗?实测数据告诉你》的视频,感兴趣的可以去了解一下。
对CPU是否有一定的要求?
- unRAID 对硬件要求不高,不管是家用型还是服务器型 CPU 基本都没问题。
使用家用机主板可以保证稳定性吗?
- 可以,我自己在用的主板就是普通的家用主板,用了几年了。但我个人建议可以的话最好避开近专门为游戏开发的主板。因为我之前帮别人处理问题的时候,发现他的主板(某牌子 B660 主板)在插上了显卡之后 CPU 的核显会被禁用(具体体现为在 BIOS 设置中的 “首选显卡” 没有关于 CPU 核显的选项)。后来他给官方客服打了五六个电话之后,官方的技术工程师给了他一个特殊的 BIOS 版本刷上去才能开启。
硬盘是否可以混搭?
- 可以。但根据官方的说明,如果在阵列中使用 SSD 硬盘(包括 SATA / NVME)可能会存在一些问题(具体你可以查看官方手册),不过如果使用做缓存池则不受影响。
-
JackieWu's post in 【求助】npm远程访问unraid时无法显示阵列、磁盘、cpu、内存、接口等信息。 was marked as the answer打开 Advance 设置,把以下内容复制进去,其他的设置不需要改直接保存即可:
client_max_body_size 0; proxy_max_temp_file_size 0; proxy_buffering off; proxy_request_buffering off; location / { proxy_pass $forward_scheme://$server:$port; proxy_set_header Host $http_host; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Port $port; proxy_set_header X-Forwarded-Method $request_method; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Original-URL $scheme://$http_host$request_uri; proxy_set_header X-Forwarded-Uri $request_uri; } 如: