AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1806284
Accepted
Patratacus
Patratacus
Asked: 2023-08-30 03:25:13 +0800 CST2023-08-30 03:25:13 +0800 CST 2023-08-30 03:25:13 +0800 CST

如果我在 6 个月内每小时重新启动 SSD 驱动器,会对 SSD 驱动器产生负面影响吗?

  • 772

我们有一个使用 SSD(4TB Samsung 860 Pro)的系统,我们通过 Linux 系统打开电源 10 分钟以写入数据,然后每小时关闭一次,每天 24/7,持续大约六个月。我们手动打开驱动器的电源并等待操作系统查看已安装的驱动器。这通常需要 12 秒到 22 秒才能完成。如果驱动器在等待挂载 30 秒后仍未显示,我们将认为挂载失败。我们第一次这样做时,一切都工作正常。我们使用相同的驱动器进行了第二轮,但在我们运行的 5 个系统之间大约 1 个月到 3 个月后,驱动器在 30 秒内停止安装。

基本上,在第一轮中,驱动器将打开和关闭至少 4,320 次。由于驱动器在第二轮测试中无法一致安装,总电源周期似乎在 5,000 到 7,000 次之间。如果您等待超过 30 秒,所有驱动器仍在工作,但它们被认为不再可靠地安装在我们的系统中。

我似乎找不到任何有关电源循环的 SSD 驱动器规格以及这样做是否有限制。我们购买 4TB 860 Pro 驱动器时非常昂贵(> 1,000 美元),据说非常可靠,具有非常高的编程/擦除 (P/E) 周期。但是,没有有关电源循环的规格。

频繁的电源循环对于 SSD 驱动器来说是一件坏事吗?我知道大多数人可能不会这样做,并且驱动器每天可能不会重新启动超过一次。我们基本上在 6 个月内完成了 12 年的日常动力循环。


编辑 1(来自评论的附加信息):我们使用电池运行,因此电量使用非常有限。


编辑 2(来自评论的附加信息):SSD 驱动器使用修改后的 USB 3 转 SATA 电缆连接到 RPi 2B v.1.2。我们有一个外部电源控制器来打开和关闭电缆的电源。基本上,Pi 打开 SSD 的电源,然后监视 SSD 是否连接到特定的 USB 端口,然后尝试安装驱动器。这是通过 bash 脚本完成的,它会运行一个延迟 1 秒的安装循环,直到可以访问 SSD。我们给它最多 30 个循环计数(安装失败后每次延迟 1 秒)。


编辑3(来自评论的附加信息):卸载过程是卸载驱动器,然后关闭电源。我们在卸载和断电之前验证数据已完全写入。数据大小是压缩文件,通常约为 1.2GB 到 1.6GB。通常一小时内只是一个文件,从 SD 卡上的原始数据压缩文件并将其传输到 SSD 大约需要 10 分钟左右。因此 SSD 在关闭前会开启 10-12 分钟。

编辑 4 检查更多驱动器后,我发现一个驱动器已经进行了超过 13,000 次电源循环,并且仍然按照我们想要的方式安装。我正在等待恢复故障驱动器,看看它们的计数是多少。我们知道我们在之前的运行中至少使用过它们 2 次,因此我预计每次运行都会超过 10k 次电源周期。

编辑 5 SSD 上的文件类型为 Ext4。

linux
  • 9 9 个回答
  • 7189 Views

9 个回答

  • Voted
  1. sawdust
    2023-08-30T10:10:49+08:002023-08-30T10:10:49+08:00

    我建议您重新评估如何控制驱动器的电源,而不是回答您的问题。您是否考虑了直接控制电源功能所增加的硬件成本和寄生功耗?

    SoC 通过禁用设备时钟来节省电量,而不是禁用设备电源。该设备不会拒绝供电,而是进入睡眠状态,并通过消耗(要求)更少的电量来做出响应。因此,不要关闭驱动器的电源,而是看看是否可以使驱动器进入睡眠状态。请参阅设备睡眠 (DevSleep) 使用驱动器的低功耗模式消除了任何外部电源开关硬件,并将节能的责任转移给驱动器本身。据推测,这种驱动力可以维持重复的睡眠-觉醒周期。

    降低功耗和延长电池寿命的需求是当今移动设备的一个关键部分。为了满足这种新环境中日益严格的电源/电池寿命要求,SATA 接口正在不断发展。DevSleep 是 SATA 规范的新成员,它使基于 SATA 的存储解决方案达到低功耗运行的新水平。

    DevSleep 规范并未说明设备在 DevSleep 状态下将达到什么功率级别,但 SSD 的目标功率为 5mW 或更低。

    • 25
  2. Cpt.Whale
    2023-08-30T04:35:35+08:002023-08-30T04:35:35+08:00

    是的,电源周期是 SSD 的磨损因素,并在内部智能监控中以“电源周期计数”进行跟踪。只有制造商才能说多少太多,但企业级驱动器设计为 24/7 全天候供电,温度一致,并使用干净的电源。超出这些界限越远,您的驱动器就越不可靠。

    也就是说,较长的安装时间并不是 SSD 磨损的常见症状,除非与读/写错误相匹配。如果 SSD 在安装后工作正常,则很可能是操作系统级别的某些问题导致安装操作花费更长时间 - 尽管原因可能因操作系统、固件、文件系统等而异。

    • 15
  3. bobuhito
    2023-08-30T13:57:03+08:002023-08-30T13:57:03+08:00

    不,没有充分理由让您的 SSD 仅仅经过 7,000 次电源循环就磨损。

    但是,如果空时挂载需要 12-22 秒,那么满时挂载的时间可能会增加两倍(很难说驱动器需要做什么才能报告自己已准备好,但该活动可以轻松地随着例如,文件计数)。您没有提到如何随着时间的推移填充驱动器,但您可以尝试保存每个驱动器的安装时间与启动计数。我猜您会看到每次启动时安装时间逐渐增加,更多细节应该提供线索来帮助更好地解释这一点。

    • 14
  4. harrymc
    2023-08-30T04:36:15+08:002023-08-30T04:36:15+08:00

    当功率从 0% 变为 100% 时,打开电气设备相当于产生电涌。开机是电子设备最危险的操作,这也是为什么开机时经常检测到硬件问题的原因。

    所以,是的,存在负面影响,但对于优质 SSD 来说,需要大量的电源周期才能看到效果。

    SSD 通过硬件或固件 PLP(断电保护)来防止断电。SSD 中的 PLP 多年来不断改进,因此驱动器越新,就越有可能受到最新 PLP 技术的保护。三星860 Pro似乎是2018年推出的,所以并不是最新的技术。

    我不相信任何 SSD 公司都会对最大电源回收次数进行评级,尽管所有制造商都会测试他们的 SSD 以确保一定的弹性。

    例如,我发现 ATP SSD经历了使用四角、温度循环和电源循环测试来验证 SSD 对极端操作条件的耐受性 一文中描述的测试方案 ,其中如果磁盘可以承受 4000 个这样的循环,则通过。除以 365 天,这意味着对于每天打开一次的典型消费类计算机来说,其使用寿命将超过 10 年。

    您的磁盘经历的电源周期比 ATP 视为所需性能上限的 4000 次要多得多,因此您基本上处于未知领域。

    • 10
  5. 9072997
    2023-08-31T09:46:58+08:002023-08-31T09:46:58+08:00

    首先,重要的是要认识到此处可能发生“损害”的 3 个不同层:

    1. 硬件:某些物理组件损坏。这对于旋转磁盘来说很有意义,这就是为什么电源周期计数是一个 SMART 指标,但这不是旋转磁盘。我们无法确定电源循环是否对 SSD 硬件有害,但根据我使用电子产品的经验,我认为这种情况极不可能发生。SSD 由固态组件组成,它们(大多数)不关心您对其进行电源循环次数。电阻不关心。对晶体管和电容器的影响可以忽略不计。当突然切断电感器的电源时,电感器会产生电压尖峰,但任何好的设计都会考虑到这一点。
    2. 固件级设备状态:诸如坏扇区重定位之类的东西。SSD 已经变得复杂。固件会在你背后执行各种把戏,而 SSD 固件的错误是出了名的。例如,如果您的 SSD 在断电时恰好处于写入过程中,则可能会以某种方式将扇区标记为坏扇区。许多 SSD 还具有分层存储,其中写入操作会持久保存到操作系统不可见的小缓冲区中。这使得 SSD 能够更快地重新排序写入并将写入报告为“持久存储”。也许该系统中的某些东西因所有电源周期而变得混乱。如果发生这种情况,您也许可以使用“ATA 安全擦除”或“NVMe 安全擦除”来修复它(这会删除驱动器上的所有内容)。也就是说,我认为这不太可能成为问题。
    3. 软件级设备状态:又称为文件系统。在 SSD 上挂载文件系统大约需要 1 秒,而不是 12-22 秒。这表明文件系统可能没有完全卸载。许多文件系统在安装未完全卸载的设备时必须采取某种恢复操作。这通常涉及“遍历”文件系统以确保一切都有效。随着文件系统上的数据增多,速度会变慢。其他文件系统保留它们正在执行的操作的“日志”,因此它们只需检查正在处理的文件系统的部分(如果某些内容被完全卸载)。其他文件系统(基本上)没有适当的保护措施,并且安装速度非常快,即使损坏了也是如此。

    我认为你的问题存在于#3。有几种方法可以测试这一点:

    • 如果您重新格式化驱动器,速度会再次加快吗?如果是这样,你就遇到了第三个问题。
    • 如果您将分区从“坏”驱动器逐字节复制到新驱动器(不安装它并允许操作系统清理任何内容),它仍然很慢吗?如果是这样,你就遇到了第三个问题。
    • 如果您在安装驱动器时监视磁盘 I/O,您是否会看到大量活动?如果是这样,您可能遇到了#3 问题。
    • 8
  6. Best Answer
    Joep van Steen
    2023-08-31T20:25:14+08:002023-08-31T20:25:14+08:00

    关于可接受的电源周期数:我找不到这方面的数据。

    但我怀疑这是否重要。我倾向于相信任何突然的电源中断都可能在某种程度上损害设备。

    SSD 几乎不会无所事事

    完成写入并不意味着 SSD 已完成写入,正如其他人已经建议的那样,SSD 往往会在“空闲时间”执行各种后台任务(垃圾收集、磨损均衡、清理)。因此,拔掉插头可能会使 FTL 处于不一致的状态。

    拔掉插头确实会造成一定程度的伤害

    到目前为止,您似乎还没有回答如何禁用 SSD 电源或如何“关闭它”的问题。如果您“拔掉插头”或“打开开关”,您确实可能会在某种程度上损坏 SSD。这些说法是可以得到研究支持的。

    本文通过测量闪存操作期间断电时发生的错误类型来检查数据完整性的一个方面。我们的研究结果表明,断电可能会导致多种非直觉行为。

    除了 FTL 级别的损坏之外,文件系统也不能免受电源中断的影响。我想每个 PC 用户都从个人经验中知道这一点。

    驱动器在 x 秒内未安装并不意味着它出现故障

    正如操作系统试图从不干净的关闭中恢复或至少检查“脏”文件系统一样,我们可以假设 SSD 的固件也会做类似的事情。这些检查需要时间。例如,一些制造商建议给 SSD 5 分钟左右的时间来执行这些操作。

    无论驱动器是否可见,都让它处于这种状态至少五分钟,以便 SSD 重建其映射表,然后重新启动系统并查看驱动器是否已恢复。

    在数据恢复行业中,众所周知,“变砖”的 SSD 可以通过在连接电源、断开数据线的情况下静置一段时间来自行恢复。我知道一些极端的案例,SSD 在通电 24 小时后又恢复了活力。但也有一些情况是固件发生故障,导致控制器甚至无法访问 NAND。在某些时候,控制器必须从 NAND 本身读取固件,如果固件损坏太多,它通常会恢复正常,但容量会减少。

    没有有关实际故障模式的信息

    根据定义,您的设备在 x 分钟内未安装并不意味着 SSD 已发生最终故障。您的设备在 x 分钟内未“安装”也很少告诉我们有关故障模式的信息:是文件系统问题、固件问题还是硬件问题?

    回到 SD 卡?

    有趣的是,您之前使用的 SD 卡比更复杂(在很多方面)的 SSD 能够更好地处理突然断电的情况。如果您需要一个只需翻转开关即可的系统,您的选择可能是切换回 SD 卡或切换到更昂贵的 SSD,并以“超级电容器”阵列的形式提供物理断电保护。

    无声数据损坏可能是您应该担心的

    最后,每次突然断电的情况都很糟糕,并且可能会在没有任何实际硬件组件故障的情况下损坏 SSD,但即使没有发生故障,它也可能会损坏您的数据,如果不引起注意,这可能是一个更严重的问题。

    位损坏袭击了 3 台设备;3 有被删减的写入;8 有可序列化错误;一台设备丢失了 1/3 的数据;和 1 个 SSD 变砖。低端硬盘有一些不可序列化的写入,而高端硬盘没有电源故障(测试:15个硬盘)


    编辑因为编辑问题。

    “我们依靠电池运行,因此电力使用非常有限。”

    我认为这是否是问题的根源值得调查。因此,请测试相同的设置,但现在使用墙壁电源。编辑:这是经过调查的,而不是问题

    “卸载过程是先卸载驱动器,然后关闭电源。在卸载和关闭电源之前,我们验证了数据已完全写入。”

    我不相信这是正确的方法,因为卸载不会告诉 SSD 停止其后台处理,因此它可能仍在写入,并且这种突然断电可能会损坏 FTL。但我既不是 Pi 也不是 Linux 人。如需灵感,请参阅此答案。

    “我发现一个已经进行了超过 13,000 次电源循环,并且仍然按照我们想要的方式安装”

    这不是有用的信息,一个可能在 n 个电源周期后失败,另一个可能在 m 个电源周期后失败,下一个在第一次后失败。下一个可能会因完全不同的原因而失败。然后我们还有品牌、型号、固件版本等等需要考虑。


    编辑对评论的反应: “听起来这可能是不安全关机的答案:echo 1 | sudo dd of=/sys/block/sdX/device/delete”

    根据我在不同情况下使用 SSD 的经验,我倾向于相信这就是您应该探索的:SSD 的优雅断电。

    除了发送直接 ATA 命令之外,可能还存在一些可以为您执行此操作的工具。这就是我的“励志链接”的目的。优雅卸载还不够,它需要是一个命令,告诉驱动器断电,停止其内部管理活动。

    一个额外的障碍可能是 USB > SATA 转换:发送正确的命令本身并不意味着 USB 桥会将命令传递到 SATA 驱动器。再次根据经验,在我看来,USB > SATA 适配器传递命令的最佳机会是它由 Asmedia 控制器(ASM1153、ASM1051)供电。

    • 4
  7. MSalters
    2023-08-31T18:02:45+08:002023-08-31T18:02:45+08:00

    这完全是预料之中的事。现代 SSD 具有磨损均衡功能,这意味着它们会物理地移动逻辑块。当操作系统不写入时,这通常作为固件中的低优先级后台任务完成。由于这种磨损均衡,SSD 需要存储逻辑物理块映射。它也存储在闪存中。

    写入单元时,闪存还需要 250 毫秒的稳定电源。这被固件隐藏了,在一系列写入中,这意味着您只需在最后一次物理写入后通电 250 毫秒 - 但这确实包括块映射。

    由于您在没有警告的情况下关闭设备,因此存在损坏块映射的风险。根据固件的不同,SSD 可能能够恢复部分或全部映射。但每次在 SSD 进行磨损均衡时关闭它,您都会面临磁盘完全故障的风险。

    恢复出厂设置可能允许固件丢弃整个块映射并生成新的块映射。如果是这种情况,您所损失的只是因断电而损坏的闪存块的一些容量。

    • 1
  8. MonkeyZeus
    2023-09-01T01:30:08+08:002023-09-01T01:30:08+08:00

    长话短说

    阅读有关电子产品中的热循环故障的内容,并查看这张焊料热疲劳的酷图。

    在此输入图像描述


    我们有一个使用 SSD(4TB Samsung 860 Pro)的系统,我们通过 Linux 系统打开电源 10 分钟以写入数据,然后每小时关闭一次,每天 24/7,持续大约六个月。

    您只对 SSD 进行电源循环,对吧?不是整个系统?

    我们手动打开驱动器的电源并等待操作系统查看已安装的驱动器。这通常需要 12 秒到 22 秒才能完成。如果驱动器在等待挂载 30 秒后仍未显示,我们将认为挂载失败。

    手动??你是否以负值来衡量自己的价值?

    • 0
  9. fraxinus
    2023-09-01T15:41:29+08:002023-09-01T15:41:29+08:00

    与该问题相关的一些经验:

    • 电源循环的特定模式可能会也可能不会不好,具体取决于电源总线的设计。通常还不错。

    • 如果由于电源循环本身而出现故障,它不会逐渐或优雅地出现故障。它失败了,期间。

    • SSD 在开机和闲置时会执行大量内务工作。这包括但不限于擦除数据不再有效的块(即覆盖或修剪)以及将最近写入的数据从缓冲SLC移动到永久存储MLC块。可能还有其他后台任务。如果做不到这一点,SSD 的性能确实会下降。

    • (可能与您的安装时间有关)我们观察到,长时间使用后,不同知名品牌的 SSD 的读写性能都会降低 3-5 个数量级。我们无法确定导致性能损失的特定使用模式,但这肯定不是大的顺序写入。在读取方面,磁盘在特定的 LBA 范围内会出现“慢点”,并且从中抢救数据会变得很痛苦。另一方面,到目前为止还没有数据丢失。第三方面,磁盘在“安全擦除增强”之后至少暂时恢复性能,然后在“安全擦除增强”命令广告的时间内保持单独状态(通电)。

    • 0

相关问题

  • 如何让我的 Linux 机器看起来像是在运行 Windows?

  • 对于 cp 或 mv,是否有等同于 cd - 的东西?

  • 以 root 身份运行 docker 容器

  • 如何在域和 Linux 活动目录中启用指纹传感器

  • 如何在CentOS 7 中将Ctrl+C 永久更改为Ctrl+K?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve