惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
G
GRAHAM CLULEY
Hacker News - Newest:
Hacker News - Newest: "LLM"
C
Cybersecurity and Infrastructure Security Agency CISA
Simon Willison's Weblog
Simon Willison's Weblog
Latest news
Latest news
C
CERT Recently Published Vulnerability Notes
T
Threatpost
V
Vulnerabilities – Threatpost
AWS News Blog
AWS News Blog
Blog — PlanetScale
Blog — PlanetScale
C
Cisco Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
U
Unit 42
The Register - Security
The Register - Security
T
The Blog of Author Tim Ferriss
Stack Overflow Blog
Stack Overflow Blog
The Hacker News
The Hacker News
AI
AI
Project Zero
Project Zero
Scott Helme
Scott Helme
S
Securelist
Vercel News
Vercel News
GbyAI
GbyAI
S
Security @ Cisco Blogs
I
InfoQ
aimingoo的专栏
aimingoo的专栏
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
C
Check Point Blog
Forbes - Security
Forbes - Security
Google Online Security Blog
Google Online Security Blog
W
WeLiveSecurity
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
H
Heimdal Security Blog
G
Google Developers Blog
D
DataBreaches.Net
The Last Watchdog
The Last Watchdog
D
Docker
MyScale Blog
MyScale Blog
T
Tor Project blog
Cyberwarzone
Cyberwarzone
Recent Announcements
Recent Announcements
Microsoft Security Blog
Microsoft Security Blog
T
Tenable Blog
T
Threat Research - Cisco Blogs
Cisco Talos Blog
Cisco Talos Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 聂微东
月光博客
月光博客

Kenvix's Blog

实现带有Nvidia GPU+Rootless Podman+Docker+Systemd+自动驱动注入支持的systemd nspawn容器 | Kenvix's Blog 手动保留常用端口,解决 Windows 端口被 Hyper-V / WinNAT 占用的问题 免Telent/TTL屏蔽运营商新版光猫的远控、TR069和RMS,获取动态随机超级管理员密码并固化权限 | Kenvix's Blog 利用Windows卷影副本(Volume Shadow)找回被覆盖和删除的数据 | Kenvix's Blog 在Windows下实现WireGuard动态DNS解析(DDNS)的正确方法:避免无意义的开销 | Kenvix's Blog OpenWRT/DNSMasq 配置DHCP静态路由主动推送 实现流量直达和旁路由流量零代价分载 | Kenvix's Blog 解决 Windows 打开视频/图片文件夹很慢的问题 | Kenvix's Blog AltA2DP - 向支持Sony LDAC协议的耳机提供Windows下蓝牙LDAC音频编码器支持 | Kenvix's Blog 校园网白嫖思路分享:局域网中转-不花钱、不认证、高速上网 | Kenvix's Blog 在 Windows 上配置网卡多个 VLAN、多个虚拟网卡、实现单线多拨网速叠加(无需驱动支持) | Kenvix's Blog 解决视频彩铃、语音通话自动转视频通话导致打电话自动挂断的问题 | Kenvix's Blog 超低成本廉价考研教程:如何用小于¥500甚至¥300的开销考个研 | Kenvix's Blog 在 Ubuntu 21.10 上启用蓝牙 LDAC/AAC/AptX 高质量音频编码支持 在 VMware Workstation 桥接模式的网卡上让虚拟机使用 VLAN 的正确方法 在 Windows 上设置 NAT 或网络共享的正确方法——避免Wi-Fi热点无法使用 自编译 红米 AC2100 OpenWRT R21.7.26 Linux 内核结构和子系统简介 | Kenvix's Blog Java 快速读取文本 (算法竞赛适用) | Kenvix's Blog 利用 ThreadLocal + Lambda,实现有状态变量的单例模式 | Kenvix's Blog 状态压缩的动态规划问题:骨牌完全覆盖棋盘问题 | Kenvix's Blog 我的 Windows 10 2004 新增 Bug 解决办法记录 解决 Android Studio 及 IDEA 中 Gradle 错误信息乱码的问题 Kotlin 的那些骚操作 | Kenvix's Blog 在普通的 Gradle Java/Kotlin 项目中使用 BuildConfig 修复国行 MIUI 打开 Google Play 始终提示 DF-DFERH-01 的问题 解决 VSCode 持续调用 WMIC 导致一个 CPU 核心完全被占满的问题 扔鸡蛋问题 | Kenvix's Blog 计算机幻觉从入门到入土 | Kenvix's Blog Java 注解预处理 Annotation Processing & 代码生成 Ubuntu 上通过以太网分享网络连接(NAT) | Kenvix's Blog Windows 选择指定的网卡来开承载网络型热点 | Kenvix's Blog 修复升级 Windows10 版本后所有内置应用闪退+第三方应用参数错误的问题 | Kenvix's Blog 配置用于 Gradle6.x + MySQL 8 的 jOOQ 3.14 代码自动生成 (已更新) 修复 Windows 环境下的程序访问 WSL 中的 MySQL 提示 Access Denied 的问题 修复 WSL 下 PHP+FastCGI 卡死的问题 使用任意磁盘或路径保存 Windows 文件历史记录 | Kenvix's Blog [1.12.2+Mod] MoeCraft :: 自由开放的科技向公益 Mod 服务器 Kenvix's Blog 禁用使用Intel核显的Windows笔记本自动调节亮度功能 | Kenvix's Blog 真正实现Minecraft高级登录(外置登录)的几种方案 | Kenvix's Blog 谈谈神舟的两艘贼船,Z7M-KP7S1 / Z7M-KP7SC USBCopyer: 插上U盘自动按需复制文件 | Kenvix's Blog USBCopyer 回调功能详细说明 | Kenvix's Blog C# 实现自定义"应用程序设置"的配置文件(user.config)存储路径 | Kenvix's Blog Win10 资源管理器为所有格式激活“编辑”按钮并修改文本文件“编辑”按钮的编辑器 | Kenvix's Blog 留言板 | Kenvix's Blog 又一次 Hello world | Kenvix's Blog Java 学习笔记 (仍在更新) | Kenvix's Blog 在Win10 Pro下挂载NFS(网络文件系统) | Kenvix's Blog Nginx 反向代理 Aria2 JSONRPC | Kenvix's Blog (Android6.0~9.0) 清除锁屏密码 | Kenvix's Blog WordPress 更换站点地址后批量修改文章/评论中的旧地址 | Kenvix's Blog 修复一加3/3T因固件过老导致刷入ROM时提示错误7的问题 | Kenvix's Blog 修复Android DM-Verity 警告 | Kenvix's Blog 贴吧云签到 资源索引(下载|文档|插件) | Kenvix's Blog 继续监控!使用树莓派+Motion实现实时视频监控并通过浏览器查看 | Kenvix's Blog 自动获取Pixiv每日排行榜第一张图片(600x600 | 可用于博客背景图) | Kenvix's Blog 使用树莓派实现定时拍照监控并发送邮件到邮箱 | Kenvix's Blog 好压 V2.7 Beta1 绿色版——功能强大,良心的压缩软件 | Kenvix's Blog 任意语言实现读取压缩包注释 | Kenvix's Blog 自己实现QQ群自定义分享(管理员开启了群交易?) | Kenvix's Blog MoeCDN - 加速Gravatar/GoogleAPIs等无法在国内访问的资源 | Kenvix's Blog [Minecraft] WebLogin-连接到你的服务器来检查玩家是否可以登录 | Kenvix's Blog Android卡刷包提示This package is for device: ... this device is ...的解决方案 Kenvix's Blog 给EMLOG评论框加上复选框[√]防止垃圾评论 | Kenvix's Blog 欢迎使用emlog | Kenvix's Blog
(2024更新)修复黑群晖 DSM7.0 + Btrfs 存储空间/磁盘损毁/堪用 的问题
2023-03-03 · via Kenvix's Blog

意外断电重启后,发现群晖提示硬盘损毁了,但是实际上硬盘还是正常的,S.M.A.R.T. 状态也良好,但是无法写入数据,系统状态报告为“严重”,群晖的程序也拒绝工作。

我们来先治标再治本。

治标:修复存储空间故障方法

  1. 通过 SSH 直接登录 root 账号。如果不方便直接登录 root,则执行:

    cd /
    sudo -i
    

    对于虚拟机黑群晖如果SSH挂了也没事,开个管道模式的串口连接(例如 \\.\pipe\dsm),然后用Putty或者Xshell 以管理员身份运行 连上管道即可。

  2. 检查有问题的存储池,此时可以看到 sdc3 后面的 [E] 表示他现在是错误状态:

cat /proc/mdstat
root@syno:~# cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [raidF1]

md2 : active raid1 sdc3[0](E)
      3738594304 blocks super 1.2 [1/1] [E]

md1 : active raid1 sdb2[0] sdc2[1]
      2097088 blocks [12/2] [UU__________]

md0 : active raid1 sdb1[0]
      2490176 blocks [12/1] [U___________]

unused devices: <none>

不需要关注 md0md1 这两个存储池,因为他们是系统盘,只需要关注 md2 这个存储池。

  1. 执行以下命令停止并用MDADM装载存储池:
synospace --stop-all-spaces # (群晖命令)停止所有存储池
mdadm --assemble --scan # 扫描并装在所有存储池

如果这一步没法停止所有存储池,可以尝试先停止所有套件:

# 能停止就不要执行这个命令
synopkg list --name | xargs -I"{}" synopkg stop "{}"
  1. 查看有问题的存储池 md2 的信息,记下 Version 和 UUID:
    mdadm -D /dev/md2 #  -D, --detail Print details of one or more md devices
    
        Version : 1.2  # 注意这里
  Creation Time : Fri Mar  3 21:01:41 2023
     Raid Level : raid1

           Name : KDS:2  (local to host KDS)
           UUID : bf3d8440:bff1633d:8c175723:69d81786 # 注意这里
         Events : 10

    Number   Major   Minor   RaidDevice State
       0       8       35        0      faulty active sync   /dev/sdc3

  1. 执行以下命令停止并修复存储池 md2,这一步我将 UUID 改掉了,不过网上似乎有人不改 UUID 也没什么问题,如果不改 UUID 也可以工作请在评论区反馈:

    mdadm -Sf /dev/md2 # 停止有问题的存储池md2 -S, --stop  deactivate array, releasing all resources.
    mdadm -Cf /dev/md2 -e1.2 -n1 -l1 /dev/sdc3 -ubf3d8440:bff1633d:8c175723:69d81789 # 1.2为上文version, bf3d8440:bff1633d:8c175723:69d81786 为上文的 UUID 再随便改掉几位,例如把 86 换成 89
    #  -C, --create Create a new array.
    
  2. 重启

    reboot
    
  3. 手动启动存储池。

    synospace --start-all-spaces
    
  4. 到群晖面板,发现此时存储池由损毁变成只读,此时手动转换为读写模式即可

如果之前停用了所有套件

# 启动所有停止的套件
synopkg list --name | xargs -I"{}" synopkg start "{}"

治标:修复存储空间堪用

  1. 和上一节所述方法一样,登入终端,执行命令检查有问题的存储池,此时可以看到 md4 后面的 [U_] ,存在下划线_表示他现在是堪用状态:
cat /proc/mdstat
root@KDS:~# cat /proc/mdstat
Personalities : [raid1]
md6 : active raid1 sdb3[0]
      26635264 blocks super 1.2 [1/1] [U]

md4 : active raid1 sdc3[0]
      483564544 blocks super 1.2 [2/1] [U_]

md1 : active raid1 sdc2[1]
      2097088 blocks [15/1] [_U_____________]

md0 : active raid1 sdc1[1]
      2490176 blocks [15/1] [_U_____________]

unused devices: <none>

不需要关注 md0md1 这两个存储池,因为他们是系统盘,只需要关注 md4 这个存储池。 [2/1] 表示阵列配置为有 2 个磁盘位置,但目前只有 1 个磁盘是活动的(正常的)。[U_] 表示阵列中的磁盘状态。U 表示正常(Up),_ 表示一个磁盘位置没有磁盘或磁盘故障。

  1. 停止存储池
synospace --stop-all-spaces # (群晖命令)停止所有存储池
mdadm --assemble --scan # 扫描并装在所有存储池

治本:探究造成损毁的原因

I/O 操作超时