Jump to content
XPEnology Community

SirIanthe3rd

Member
  • Posts

    28
  • Joined

  • Last visited

Posts posted by SirIanthe3rd

  1. 10 hours ago, kahn2k said:

    Hi @Sirlanthe3rd, did you manage to get the array working? I have the very same issue as you when migrating from one VM to another.

    No, unfortunately I gave up and got to a point where I got the RAID healthy enough  and migrated to OMV. It imports right into OMV since it's just Linux software RAID.

     

    Haven't had a problem since. It was definitely some critical bug in Synology or Xpenology, not sure. I wouldn't trust it with my data again.

  2. So I removed the disk and controller and put the grub settings back to default:

     

    set sata_args='sata_uid=1 sata_pcislot=5 synoboot_satadom=1 DiskIdxMap=0C SataPortMap=1 SasIdxMap=0'

     

    and the two drives are showing back up, but they've fallen out of the array. I really don't care about the numbers or order at this point. Can we get the drives back in the array without doing a full resync?

  3. synoinfo.conf

     

    So I just a lspci -nn -q and it shows the first two sata controllers as lower numbers, but the lsi controller shows up as a sas controller. Would that make a difference in the grub config?

     

    0000:02:01.0 SATA controller [0106]: VMware SATA AHCI controller [15ad:07e0]
    0000:02:02.0 SATA controller [0106]: VMware SATA AHCI controller [15ad:07e0]
    0000:03:00.0 Ethernet controller [0200]: Intel Corporation 82574L Gigabit Network Connection [8086:10d3]
    0000:0b:00.0 Serial Attached SCSI controller [0107]: Broadcom / LSI SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] [1000:0072] (rev 03)
     

  4. I also vaguely remember editing the synoinfo.conf files for esataportcfg when I was first setting this up. Could that be related?

     

    To answer your other questions, yes I've built this VM to whatever the guide was at the time. The only difference is that I've added more RAM and procs because I was running surveillance station and resilio sync on it.

  5. if serial --port=0x3F8 --speed=115200;then
            set has_serial=true
            terminal_input --append serial
            terminal_output --append serial
    else
            clear
    fi
    
    terminal_input --append console
    terminal_output --append console
    
    if [ x"${grub_platform}" = xefi ]; then
            insmod efi_gop
            insmod efi_uga
    else
            insmod vbe
    fi
    
    set extra_initrd="extra.lzma"
    set info="info.txt"
    
    set vid=0x058f
    set pid=0x6387
    set sn=C7LWN09761
    set mac1=0011322CA785
    set rootdev=/dev/md0
    set netif_num=1
    set extra_args_3615=''
    
    set common_args_3615='syno_hdd_powerup_seq=0 HddHotplug=0 syno_hw_version=DS3615xs vender_format_version=2 console=ttyS0,115200n8 withefi elevator=elevator quiet syno_port_thaw=1'
    
    set sata_args='sata_uid=1 sata_pcislot=5 synoboot_satadom=1 DiskIdxMap=0C0001 SataPortMap=118 SasIdxMap=0'
    
    set default='0'
    set timeout='1'
    set fallback='1'
    
    if [ -s $prefix/grubenv ]; then
            load_env
            if [ -n "$saved_entry" ]; then
                    set default="${saved_entry}"
            fi
    fi
    
    VERSION="with Jun's Mod v1.02b"
    
    search --file -s /zImage
    
    function savedefault {
            if [ -s $prefix/grubenv  ]; then
                    saved_entry="${chosen}"
                    save_env saved_entry
            fi
    }
    
    function do_option {
            if [ $# -lt 2 ]; then
                    eval "set value=\"\$$1\""
                    echo "current $1: $value"; return;
            fi
            set key=$1
            shift
            set $key="$*"
            if [ -s $prefix/grubenv  ]; then
                    save_env $key
            fi
    }
    
    function vid { do_option vid $@; }
    function pid { do_option pid $@; }
    function sn { do_option sn $@; }
    function mac1 { do_option mac1 $@; }
    function mac2 { do_option mac2 $@; }
    function mac3 { do_option mac3 $@; }
    function mac4 { do_option mac4 $@; }
    function rootdev { do_option rootdev $@; }
    function append { do_option extra_args_3615 $@; }
    
    function vidpid {
            if [ $# -lt 2 ]; then
                    echo "usage: vidpid 0xVVVV 0xPPPP"; return;
            fi
            set usb_args="vid=$1 pid=$2"
            if [ -s $prefix/grubenv  ]; then
                    save_env usb_args
            fi
    }
    
    function showtips {
            if [ -n "$has_serial" ]; then
                    terminal_output --remove serial
            fi
            echo "Screen will stop updating shortly, please open http://find.synology.com to continue."
            echo
            echo
            if [ -n "$has_serial" ]; then
                    terminal_output --append serial
            fi
    }
    
    function loadinitrd {
            if [ -s $img/$info ]; then
                    if [ -n "$has_serial" ]; then
                            terminal_output --remove serial
                    fi
                    cat $img/$info
                    if [ -n "$has_serial" ]; then
                            terminal_output --append serial
                    fi
            fi
            if [ -s $img/$extra_initrd ]; then
                    initrd $img/rd.gz $img/$extra_initrd
            else
                    initrd $img/rd.gz
            fi
    }
    
    function common_add_option {
            eval "set value=\"\$$1\""
            if [ -z $value ]; then return 1; fi
            set common_args="$common_args $1=$value"
    }
    
    function common_add_option_ex {
            eval "set value=\"\$$1\""
            if [ -z $value ]; then return 1; fi
            set common_args="$common_args $2=$value"
    }
    
    function loadlinux {
            set model=$1
            set bootdev=$2
            shift 2
            if [ -n $vid -a -n $pid ]; then
                    set usb_args="vid=$vid pid=$pid"
            fi
            eval "set common_args=\"\$common_args_$model\""
            eval "set extra_args=\"\$extra_args_$model\""
            eval "set bootdev_args=\"\$${bootdev}_args\""
            common_add_option_ex rootdev root
            common_add_option sn
            if common_add_option mac1; then set netif_num=1; fi
            if common_add_option mac2; then set netif_num=2; fi
            if common_add_option mac3; then set netif_num=3; fi
            if common_add_option mac4; then set netif_num=4; fi
            common_add_option netif_num
            if [ -z $zImage ]; then
                    set zImage=zImage
            fi
            linux $img/$zImage $common_args $bootdev_args $extra_args $@
    }
    
    menuentry "DS3615xs 6.1 Baremetal $VERSION" --class os {
            set img=
            savedefault
            loadlinux 3615 usb
            loadinitrd
            showtips
    }
    
    menuentry "DS3615xs 6.1 Baremetal $VERSION Reinstall" --class os {
            set img=
            loadlinux 3615 usb mfg
            loadinitrd
            showtips
    }
    
    #menuentry "DS3615xs 6.1 Baremetal AMD $VERSION" --class os {
    #        set img=
    #        set zImage=bzImage
    #        savedefault
    #        loadlinux 3615 usb
    #        loadinitrd
    #        showtips
    #}
    
    menuentry "DS3615xs 6.1 VMWare/ESXI $VERSION" --class os {
            set img=
            savedefault
            loadlinux 3615 sata
            loadinitrd
            showtips
    }

    image.thumb.png.44f44e2bd9e99e9631d71fdef6d09a4f.png

     

     

  6. 7 minutes ago, flyride said:

    ou should have a 50MB vmdk which should be attached to SATA Controller #1 as dev 1:0 - if this is not correct, please advise.

    The 50MB vmdk is not strictly necessary, but it's a good insurance because it has a copy of DSM on it in case something happens to your passthrough HBA.

    This is what I had the 20GB disk for before. It's removed now. I went ahead and added a new one. 

     

    I had the VMware settings using a SCSI controller before, so I changed it to SATA and moved the disks to the new controllers. I booted the VM successfully to make sure it didn't affect anything.

     

    I made the changes as you suggested, but it did not like them.

     

    image.thumb.png.2e2693ea07616d2a5106b057c2392b82.png

     

     

    image.thumb.png.77604937c7a9a9b14c972dbd7e36c2c2.png

     

  7. Quote

    1. Please print output of cat /proc/mdstat

     

    admin@ismhomenas:/$ cat /proc/mdstat
    Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [raidF1]
    md4 : active raid6 sde3[4] sdh3[7] sdd3[6] sdf3[8] sdg3[5]
          23427613632 blocks super 1.2 level 6, 64k chunk, algorithm 2 [5/5] [UUUUU]
    
    md1 : active raid1 sdh2[4] sdg2[3] sdf2[2] sde2[1] sdd2[0]
          2097088 blocks [12/5] [UUUUU_______]
    
    md0 : active raid1 sdd1[2] sde1[3] sdf1[4] sdg1[5] sdh1[6]
          2490176 blocks [12/5] [__UUUUU_____]
    
    unused devices: <none>

     

    Quote

    2. Install FixSynoboot.sh per the instructions here: https://xpenology.com/forum/topic/28183-running-623-on-esxi-synoboot-is-broken-fix-available/

    This is complete:

    admin@ismhomenas:/etc$ ls -l /usr/local/etc/rc.d/
    total 4
    -rwxr-xr-x 1 admin users 2161 Jun  4 11:43 FixSynoboot.sh

     

     

    Quote

    3. Retrieve the current grub.cfg from your loader and upload it.  You can do that by mounting your USB key using OSFMount or you can mount /dev/synoboot1 using the procedure below:

    if serial --port=0x3F8 --speed=115200;then
            set has_serial=true
            terminal_input --append serial
            terminal_output --append serial
    else
            clear
    fi
    
    terminal_input --append console
    terminal_output --append console
    
    if [ x"${grub_platform}" = xefi ]; then
            insmod efi_gop
            insmod efi_uga
    else
            insmod vbe
    fi
    
    set extra_initrd="extra.lzma"
    set info="info.txt"
    
    set vid=0x058f
    set pid=0x6387
    set sn=C7LWN09761
    set mac1=0011322CA785
    set rootdev=/dev/md0
    set netif_num=1
    set extra_args_3615=''
    
    set common_args_3615='syno_hdd_powerup_seq=0 HddHotplug=0 syno_hw_version=DS3615xs vender_format_version=2 console=ttyS0,115200n8 withefi elevator=elevator quiet syno_port_thaw=1'
    
    set sata_args='sata_uid=1 sata_pcislot=5 synoboot_satadom=1 DiskIdxMap=0C SataPortMap=1 SasIdxMap=0'
    
    set default='0'
    set timeout='1'
    set fallback='1'
    
    if [ -s $prefix/grubenv ]; then
            load_env
            if [ -n "$saved_entry" ]; then
                    set default="${saved_entry}"
            fi
    fi
    
    VERSION="with Jun's Mod v1.02b"
    
    search --file -s /zImage
    
    function savedefault {
            if [ -s $prefix/grubenv  ]; then
                    saved_entry="${chosen}"
                    save_env saved_entry
            fi
    }
    
    function do_option {
            if [ $# -lt 2 ]; then
                    eval "set value=\"\$$1\""
                    echo "current $1: $value"; return;
            fi
            set key=$1
            shift
            set $key="$*"
            if [ -s $prefix/grubenv  ]; then
                    save_env $key
            fi
    }
    
    function vid { do_option vid $@; }
    function pid { do_option pid $@; }
    function sn { do_option sn $@; }
    function mac1 { do_option mac1 $@; }
    function mac2 { do_option mac2 $@; }
    function mac3 { do_option mac3 $@; }
    function mac4 { do_option mac4 $@; }
    function rootdev { do_option rootdev $@; }
    function append { do_option extra_args_3615 $@; }
    
    function vidpid {
            if [ $# -lt 2 ]; then
                    echo "usage: vidpid 0xVVVV 0xPPPP"; return;
            fi
            set usb_args="vid=$1 pid=$2"
            if [ -s $prefix/grubenv  ]; then
                    save_env usb_args
            fi
    }
    
    function showtips {
            if [ -n "$has_serial" ]; then
                    terminal_output --remove serial
            fi
            echo "Screen will stop updating shortly, please open http://find.synology.com to continue."
            echo
            echo
            if [ -n "$has_serial" ]; then
                    terminal_output --append serial
            fi
    }
    
    function loadinitrd {
            if [ -s $img/$info ]; then
                    if [ -n "$has_serial" ]; then
                            terminal_output --remove serial
                    fi
                    cat $img/$info
                    if [ -n "$has_serial" ]; then
                            terminal_output --append serial
                    fi
            fi
            if [ -s $img/$extra_initrd ]; then
                    initrd $img/rd.gz $img/$extra_initrd
            else
                    initrd $img/rd.gz
            fi
    }
    
    function common_add_option {
            eval "set value=\"\$$1\""
            if [ -z $value ]; then return 1; fi
            set common_args="$common_args $1=$value"
    }
    
    function common_add_option_ex {
            eval "set value=\"\$$1\""
            if [ -z $value ]; then return 1; fi
            set common_args="$common_args $2=$value"
    }
    
    function loadlinux {
            set model=$1
            set bootdev=$2
            shift 2
            if [ -n $vid -a -n $pid ]; then
                    set usb_args="vid=$vid pid=$pid"
            fi
            eval "set common_args=\"\$common_args_$model\""
            eval "set extra_args=\"\$extra_args_$model\""
            eval "set bootdev_args=\"\$${bootdev}_args\""
            common_add_option_ex rootdev root
            common_add_option sn
            if common_add_option mac1; then set netif_num=1; fi
            if common_add_option mac2; then set netif_num=2; fi
            if common_add_option mac3; then set netif_num=3; fi
            if common_add_option mac4; then set netif_num=4; fi
            common_add_option netif_num
            if [ -z $zImage ]; then
                    set zImage=zImage
            fi
            linux $img/$zImage $common_args $bootdev_args $extra_args $@
    }
    
    menuentry "DS3615xs 6.1 Baremetal $VERSION" --class os {
            set img=
            savedefault
            loadlinux 3615 usb
            loadinitrd
            showtips
    }
    
    menuentry "DS3615xs 6.1 Baremetal $VERSION Reinstall" --class os {
            set img=
            loadlinux 3615 usb mfg
            loadinitrd
            showtips
    }
    
    #menuentry "DS3615xs 6.1 Baremetal AMD $VERSION" --class os {
    #        set img=
    #        set zImage=bzImage
    #        savedefault
    #        loadlinux 3615 usb
    #        loadinitrd
    #        showtips
    #}
    
    menuentry "DS3615xs 6.1 VMWare/ESXI $VERSION" --class os {
            set img=
            savedefault
            loadlinux 3615 sata
            loadinitrd
            showtips
    }

     

  8. Apologies,

    DSM 6.1.7

    Loader 1.02b

    Yes, always had the 50Mb disk show up. However, now that you mention it, I remember that I had to disconnect the 20GB disk to get the old VM to boot. I would imagine it had something to do with you're referring to about it choosing the wrong boot order. I would imagine that it's booting from the system partition on the degraded array now.

     

    I'm upgrading because I thought there might be a bug that is causing my disks to drop out. I've replaced the controller and the cables. It was fine for almost a month, but now it's happening again. I did have to do the pin modification for the HGST drives, but this was happening before then.

     

    Once the array finishes rebuilding I'm going to shut it down and test the memory next. This thing was stable for 2+ years and all of the sudden this started about 2 months ago.

  9. Quote

    First, did you build a Storage Group and volume on your virtual disk? 

    No I did not. Simply there to allow DSM to install.

     

    Quote

    Do you have DiskIdxMap and SataPortMap already from your previous setup? 

    I'm not sure what this is. 

     

    Quote

    You have a hot pluggable array, so unplug all your disks (just unlatch them and allow them to spin down) and boot your VM back up with the LSI in passthrough and look at Storage Manager.  What is the arrangement of the disks and slots?  You MIGHT see the loader disk, you SHOULD see the VM disk. Take your #1 hot plug drive and temporarily replace it with a blank HDD.  What slot does it show up as?  Record all this information and then report back so we can calculate DiskIdxMap and SataPortMap or report the values you are already using.

    I have it back up and running with the old DSM for now. Although the array didn't import perfectly and two of the drives in the RAID6 dropped out, so I'm currently rebuilding it.

     

    Is this what you're looking for?

     

    image.png.52f7d60479e85a57af16350561f367e7.png

     

     

×
×
  • Create New...