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
    • 最新
    • 标签
主页 / server / 问题 / 110053
Accepted
cagenut
cagenut
Asked: 2010-02-06 10:20:53 +0800 CST2010-02-06 10:20:53 +0800 CST 2010-02-06 10:20:53 +0800 CST

如何“修复” device-mapper-multipath 中的错误路径

  • 772

我有一个正在工作但现在显示“错误”路径的多路径配置:

[root@nas ~]# multipath -ll
sdd: checker msg is "readsector0 checker reports path is down"
mpath1 (36001f93000a63000019f000200000000) dm-2 XIOTECH,ISE1400
[size=200G][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=1][active]
 \_ 1:0:0:1 sdb 8:16  [active][ready]
\_ round-robin 0 [prio=0][enabled]
 \_ 2:0:0:1 sdd 8:48  [active][faulty]

与此同时,我一遍又一遍地看到这三行/var/log/messages

Feb  5 12:52:57 nas kernel: sd 2:0:0:1: SCSI error: return code = 0x00010000
Feb  5 12:52:57 nas kernel: end_request: I/O error, dev sdd, sector 0
Feb  5 12:52:57 nas kernel: Buffer I/O error on device sdd, logical block 0

这条线也经常出现

Feb  5 12:52:58 nas multipathd: sdd: readsector0 checker reports path is down

我不明白的一件事是为什么当我的文件说要使用时它使用readsector0检查方法/etc/multipath.conftur

[root@nas ~]# tail -n15 /etc/multipath.conf

devices {
        device {
                vendor                  "XIOTECH "
                product                 "ISE1400         "
                path_grouping_policy    multibus
                getuid_callout          "/sbin/scsi_id -g -u -d /dev/%n"
                path_checker            tur
                prio_callout              "none"
                path_selector           "round-robin 0"
                failback                    immediate
                no_path_retry           12
                user_friendly_names yes
        }
}

在这里查看上游文档,这一段似乎很相关: http ://christophe.varoqui.free.fr/usage.html

For each path:

\_ host:channel:id:lun devnode major:minor [path_status][dm_status_if_known]

The dm status (dm_status_if_known) is like the path status
(path_status), but from the kernel's point of view. The dm status has two
states: "failed", which is analogous to "faulty", and "active" which
covers all other path states. Occasionally, the path state and the 
dm state of a device will temporarily not agree. 

对我来说已经超过 24 小时,所以它不是暂时的。

因此,以所有这些作为背景,我的问题是
- 我如何确定这里的根本原因?
- 我如何手动/命令行执行它所做的任何检查
- 为什么它忽略我的 multipath.conf(我做错了吗?)

提前感谢您的任何想法,如果还有其他我可以提供的信息,请在评论中告诉我,我会将其编辑到帖子中。

centos storage-area-network rhel5 multipath
  • 1 1 个回答
  • 44303 Views

1 个回答

  • Voted
  1. Best Answer
    ppetraki
    2012-02-08T08:02:33+08:002012-02-08T08:02:33+08:00

    您的 multipath.conf 中有一个细微的错误,供应商和产品在正则表达式级别匹配,您添加了一系列前导空格导致 multipathd 无法将您的配置与系统上的实际设备匹配。如果您要检查输出,echo 'show config' | multipathd -k您会发现SAN 的两个设备部分,一个匹配您添加的所有额外空间,以及内部数据库提供的默认配置(如果存在)。

    调整你的 multipath.conf 看起来像这样:

                vendor                  "XIOTECH "
                product                 "ISE1400.*"
    

    SCSI 查询要求供应商字段不超过 8 个以 ASCII 零结尾的字符,如果您不使用全部 8 个字符,则必须用空格填充该字段以达到 8 个字符。Multipathd 正在根据法律条文解释规范,"XIOTECH.*"如果您真的想确定,您也可以这样做。

    进行这些更改后,使用 initscripts 停止 multipathd,multipath -F 将刷新您的配置,然后再次启动 multipathd。您的配置文件现在应该得到尊重。如果仍有问题,请重新启动。

    如果您怀疑您的配置文件没有被使用,请始终使用 echo 咒语检查正在运行的配置,并将数据库中加载的内容与您的配置文件进行比较。

    • 3

相关问题

  • 为什么 SQL Server 在 IBM Shark 硬件上运行缓慢

  • Clariion CX 是否存在命令行配置工具

  • 有人对 LeftHand 的 VSA SAN 有经验吗?[关闭]

  • ISCSI SAN 上的 SQL Server 磁盘设计

  • SQL Server 文件本地或 NAS 或 SAN?

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

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

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve