• Changing Controller Numbers in Solaris


    If you need to change the controller numbers (c#) that a disk has assigned to it, whether it is for cluster, Solstice DiskSuite[TM]/Solaris[TM] Volume Manager, or just for ease of management. With Solaris[TM] 8 and above, there is a new directory, /dev/cfg, that allows us to move them easily.

    Steps to Follow

    You will have to quiesce the data to all of the devices that you are going to move. This cannot be done while the system is trying to access these paths. This works for SAN, and internal disks.

    Looking at the output of format and cfgadm we can see that our disks are on c3 and c4.

    root@ralph / # echo|format 
    Searching for disks...done 
    AVAILABLE DISK SELECTIONS: 
    0. c0t0d0 
    /pci@1f,0/pci@1,1/ide@3/dad@0,0 
    1. c3t50020F230000C21Ed0 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,0 
    2. c3t50020F230000C21Ed1 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,1 
    3. c3t50020F230000C21Ed2 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,2 
    4. c3t50020F230000C21Ed3 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,3 
    5. c4t50020F230000C21Ed0 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,0 
    6. c4t50020F230000C21Ed1 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,1 
    7. c4t50020F230000C21Ed2 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,2 
    8. c4t50020F230000C21Ed3 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,3 
    Specify disk (enter its number):
    
    root@ralph / # cfgadm -o show_FCP_dev -al 
    Ap_Id Type Receptacle Occupant Condition 
    c3 fc-fabric connected configured unknown 
    c3::50020f230000c21e,0 disk connected configured unknown 
    c3::50020f230000c21e,1 disk connected configured unknown 
    c3::50020f230000c21e,2 disk connected configured unknown 
    c3::50020f230000c21e,3 disk connected configured unknown 
    c4 fc-fabric connected configured unknown 
    c4::50020f230000c21e,0 disk connected configured unknown 
    c4::50020f230000c21e,1 disk connected configured unknown 
    c4::50020f230000c21e,2 disk connected configured unknown 
    c4::50020f230000c21e,3 disk connected configured unknown

    Looking at /dev/cfg, you can see that there are links to the device paths with a controller number designation.

    root@ralph / # cd /dev/cfg 
    root@ralph /dev/cfg # ls 
    ./ ../ c0@ c3@ c4@ 
    root@ralph /dev/cfg # ls -l 
    total 16 
    drwxr-xr-x 2 root root 512 Apr 20 12:50 ./ 
    drwxr-xr-x 17 root sys 3584 May 5 17:47 ../ 
    lrwxrwxrwx 1 root root 41 Apr 6 14:18 c0 -> ../../devices/pci@1f,0/pci@1,1/ide@3:scsi 
    lrwxrwxrwx 1 root root 49 Apr 13 15:21 c3 -> ../../devices/pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0:fc 
    lrwxrwxrwx 1 root root 51 Apr 13 15:21 c4 -> ../../devices/pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0:fc

    All you have to do at this point, is remove any extra links, for clean up. And then move the controller, in this case c4, to the new controller number.

    root@ralph /dev/cfg # mv c4 c2

    Now the '../../devices/pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0:fc' link has been moved from c4 to c2. When we recreate the link Solaris will look at this and create all of the links on c2. In a sense 'forcing' it to the controller that we want.

    root@ralph /dev/cfg # ls 
    ./ ../ c0@ c2@ c3@ 
    root@ralph /dev/cfg # ls -l 
    total 16 
    drwxr-xr-x 2 root root 512 May 9 10:17 ./ 
    drwxr-xr-x 17 root sys 3584 May 9 10:18 ../ 
    lrwxrwxrwx 1 root root 41 Apr 6 14:18 c0 -> ../../devices/pci@1f,0/pci@1,1/ide@3:scsi 
    lrwxrwxrwx 1 root root 51 Apr 13 15:21 c2 -> ../../devices/pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0:fc 
    lrwxrwxrwx 1 root root 49 Apr 13 15:21 c3 -> ../../devices/pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0:fc

    Next remove all of the old device links in /dev/rdsk and /dev/dsk

    root@ralph /dev/cfg # cd /dev/rdsk 
    root@ralph /dev/rdsk # rm -r c4* 
    root@ralph /dev/rdsk # cd /dev/dsk 
    root@ralph /dev/dsk # rm -r c4*

    With direct attached disks and san disks that are already configured with cfgadm, just run devfsadm -C to clean up dangling /dev links.

    root@ralph /dev/dsk # devfsadm -C

    Now format and cfgadm show the c4 devices on c2.

    root@ralph /dev/dsk # echo|format 
    Searching for disks...done 
    AVAILABLE DISK SELECTIONS: 
    0. c0t0d0 
    /pci@1f,0/pci@1,1/ide@3/dad@0,0 
    1. c2t50020F230000C21Ed0 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,0 
    2. c2t50020F230000C21Ed1 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,1 
    3. c2t50020F230000C21Ed2 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,2 
    4. c2t50020F230000C21Ed3 
    /pci@1f,0/pci@1/SUNW,qlc@3,1/fp@0,0/ssd@w50020f230000c21e,3 
    5. c3t50020F230000C21Ed0 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,0 
    6. c3t50020F230000C21Ed1 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,1 
    7. c3t50020F230000C21Ed2 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,2 
    8. c3t50020F230000C21Ed3 
    /pci@1f,0/pci@1/SUNW,qlc@3/fp@0,0/ssd@w50020f230000c21e,3 
    Specify disk (enter its number):

    You can do this to any controller except the device that you are booted off of. Doing this procedure on your boot controller can cause the system to panic.

  • 相关阅读:
    Codeforces 1062
    HDU 1247
    力扣 7. 整数反转
    力扣 3. 无重复字符的最长子串
    力扣1. 两数之和
    力扣 78.子集
    C++编译时报错“count”符号不明确
    Java邻接矩阵存储图简易版以及深度优先优先遍历和广度优先遍历
    word中超链接显示成{HYPERLINK "url"}形式的解决方案
    Hadoop在window上运行出现:java.io.IOException: (null) entry in command string: null chmod 0644
  • 原文地址:https://www.cnblogs.com/cqubityj/p/Solaris.html
Copyright © 2020-2023  润新知