You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行echo 1 > sudo /sys/block/sdb/device/delete删除SCSI磁盘后仍可见,求排查

问题分析与解决步骤

你的命令存在几个关键问题,导致磁盘没有被正确移除,我来一步步拆解并给出正确操作:

1. 命令语法错误:sudo的位置完全错了

你写的echo 1 > sudo /sys/block/sdb/device/delete,shell会理解成把字符串"1"写入当前目录下名为sudo的文件,而不是用sudo权限去写入/sys/block/sdb/device/delete。因为shell会先处理重定向(>),这时候sudo还没生效,而且路径被拆成了sudo和/sys/...,完全不符合预期。

正确的写法应该是让sudo覆盖整个写入操作,有两种常用方式:

  • 使用tee命令(推荐,更直观):
    echo 1 | sudo tee /sys/block/sdb/device/delete
    
  • 或者用shell子进程执行整个命令:
    sudo sh -c 'echo 1 > /sys/block/sdb/device/delete'
    

2. 执行删除后需要刷新SCSI总线

即使你正确执行了删除命令,lsscsi可能不会自动刷新设备列表,需要手动触发SCSI总线扫描来更新:

echo "- - -" | sudo tee /sys/class/scsi_host/host*/scan

这条命令会让所有SCSI主机重新扫描设备,之后再运行lsscsi应该就看不到已删除的磁盘了。

3. 前置检查:确保磁盘未被挂载

在执行删除之前,必须确保sdb及其所有分区都没有被挂载,否则删除操作会失败。可以先卸载:

sudo umount /dev/sdb*

如果提示设备忙,可以用lsof /dev/sdb或fuser -m /dev/sdb找出占用进程并停止它。

验证步骤

  1. 先卸载磁盘所有分区
  2. 执行正确的删除命令
  3. 刷新SCSI总线
  4. 运行lsscsi确认磁盘已消失

内容的提问来源于stack exchange,提问作者vishnubvrit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:23:00