群晖DSM7.X版本自动获取SataPortMap和DiskIdxMap的教程(2022年6月4日更新)

       群晖DSM7.X的引导出来有大半年了,老司机早就已经上车了,很多萌新小白估计被SataPortMap和DiskIdxMap这两个参数折磨得不成人形了吧?给博主留言问得最多的就是关于这两个参数的设置。好在pocopico大神给大家留了一个好东西,可以自动获取SataPortMap和DiskIdxMap这两个参数的,再次感谢pocopico大神!

      具体操作步骤:

      一、如果是使用物理机安装群晖的,先把群晖要用的硬盘全部接上去,接好数据线和电源线。

      二、如果是使用ESXI、PVE、UNRAID、VMware等虚拟机安装群晖的,有硬盘直通的设置好直通,使用虚拟硬盘的添加好虚拟硬盘。

      三、打开pocopico大神的github开源地址(https://github.com/pocopico/tinycore-redpill),找到如下图所示的文件,根据需要下载对应的文件:

      1、tinycore-redpill-uefi.v0.4.6.img.gz文件:适用于物理机安装群晖、主板仅支持uefi启动的(比如J4105、J5005等),以及PVE和UNRAID安装群晖(虚拟机用uefi方式启动的);

      2、tinycore-redpill.v0.4.6.img.gz文件:适用于物理机安装群晖、主板支持legacy启动的,以及PVE和UNRAID安装群晖(虚拟机用bios方式启动的);

      3、tinycore-redpill.v0.4.6.vmdk.gz文件:适用于ESXI或者VMware安装群晖;

      4、上述gz文件均为压缩文件,下载到电脑后使用解压软件解压出来,对应会得到tinycore-redpill-uefi.v0.4.5.img、tinycore-redpill.v0.4.5.img和tinycore-redpill.v0.4.5.vmdk;

      5、如果你的电脑访问github有困难的,可以直接从【GXNAS网盘】下载对应的文件。

 

(2022年3月10日更新内容:我写教程的时候还是0.4.5版本,pocopico大神的文件已经更新到0.4.6版本了,所以就懒得换图片了,一样操作方法。)

(2022年6月4日更新)pocopico的github开源地址中tinycore-redpill已更新到tinycore-redpill.v0.8.0.0了,请自行下载新版本。

 

      四、如果是物理机安装群晖的,先准备一个U盘插到Windows系统的电脑(不是NAS主机哦)的USB口,然后在电脑上打开rufus写盘工具(电脑没有这个软件的,可在rufus官网下载或者GXNAS网盘下载),先确认一下设备那里显示的U盘是否正确。

 

 

      五、点“选择”。

 

 

      六、找到第三步骤下载的文件(如果下载的是.gz文件,需要先解压出来,才有.img文件),根据NAS主机是使用uefi还是legacy启动方式,选择对应的文件,打开。

 

 

      七、确认无误了就点“开始”。

 

 

      八、点“确定”以后,U盘的数据就会被擦除,如果U盘有数据就先备份。

 

 

      九、如果你的U盘刷过NAS的引导或者刷过PE系统,存在多个分区的,就会有这个提示,点“确定”。

 

 

      十、看到状态正在写入镜像,耐心等待。

 

 

      十一、U盘写入完成后状态会显示“准备就绪”,点“关闭”关掉软件。

 

 

      十一、使用物理机安装群晖的,把刚才刷好的U盘放到NAS主机上,进入BIOS设置设置从U盘启动;虚拟机安装群晖的,把第三个步骤下载的文件自行转换成虚拟机格式的文件并上传到虚拟机中,设置好启动顺序。开机以后正常会显示如下图的菜单,此时会有一个5秒的倒计时,如果不动键盘的话5秒以后会自动进入。

 

 

      十二、启动中,耐心等待。

 

 

      十一、显示到这个界面就算启动好了,点下方工具栏最右边图标。

 

 

      十三、左上角会弹出一个命令行的窗口。

 

 

      十四、在绿色光标处输入以下命令,并回车:

./rploader.sh satamap now

 

 

 

      十五、屏幕上就会显示出本机的SataPortMap参数和DiskIdxMap参数,自己记下来吧,修改引导文件就会用到。不同的机器显示的数值不一样的哦,别抄我的!

 

 

      十六、关机需要点下方工具栏左边第一个图标。

 

 

      十七、选“Shutdown”,再点“OK”。

 


【2022年3月11日更新】

补充说明

一、有关DiskIdxMap、SataPortMap、SasIdxMap三个参数的说明

1、在群辉系统中,一个控制器默认只能控制9个硬盘,所以SataPortMap=的数值范围只能是0-9,0则表示屏蔽该控制器,不可以设为SataPortMap=0来隐藏引导盘!

2、如果有多个控制器的(每个主板具体有几个控制器,请查阅主板说明书),则SataPortMap=后面的数值有几位就表示有几个控制器。比如SataPortMap=148,表明第一个控制器有1个硬盘,第二个控制器有4个硬盘,第三个控制器有8个硬盘。

3、DiskIdxMap=这个参数值,按顺序从左到右每两位数为一个控制器的盘序数值,这两位数为16进制数,如果数值小于等于9或者大于10的,需要在数值前面加个0。比如DiskIdxMap=000105的意思是,第一个控制器的磁盘(引导盘)从序号1(00为序列1)开始往后排,第二个控制器的4个硬盘从序号2(01为序号2)开始往后排,第三个驱动器的8个硬盘从序号5(05为序号6)开始往后排。此时在群晖DSM7.X的系统里面看到磁盘序号就会从磁盘1(引导盘)到磁盘13。

4、这里有个小技巧,可以将控制器的盘序设置超过当前最大磁盘数量。例如我想把第1个控制器的引导盘隐藏,可以改成DiskIdxMap=0C0004,引导盘在群晖系统里面就看不到了,此时在群晖DSM7.X的系统里面看到磁盘序号就会从磁盘1到磁盘12(引导盘被隐藏了),同时还治愈了很多患有强迫症的童鞋!

5、SasIdxMap为SAS硬盘的个数,使用SATA硬盘的时候默认设置为0。

 

二、如果你实在不会找出这三个参数,或者使用tinycore-redpill工具获取到的参数与实际不符,那么可以试一下以下方法:

1、使用物理机安装群晖的,在引导文件中使用这三个参数DiskIdxMap=00 SataPortMap=1 SasIdxMap=0,同时在主板的SATA1口插上一个硬盘(这个位置的硬盘不可以拆走),然后把引导文件刷到U盘去启动,绝大多数情况应该可以正常安装。等安装好群晖系统以后群晖关机,把所有的硬盘都插上,同时把U盘引导里面这三个参数去掉再次启动,如果硬盘数量不超过8个并且无扩展卡无阵列卡无直通卡的情况下,应该会正常认出硬盘。硬盘数量超过8个或者使用扩展卡/阵列卡/直通卡的,在系统安装完成后再根据上面“补充说明”的第一条,自行在U盘的引导文件中添加对应的参数。

2、使用虚拟机安装的,如果硬盘数量不超过8个并且无扩展卡无阵列卡的情况下,在引导文件中去除“DiskIdxMap、SataPortMap、SasIdxMap”这三个参数,应该是可以正常安装系统的。如果硬盘数量超过8个或者使用扩展卡/阵列卡/直通卡的,在系统安装完成后把群晖虚拟机关机,再根据上面“补充说明”的第一条,自行在虚拟机引导文件中添加对应的参数。

3、有时候,发现不加这三个参数,硬盘也可以全部识别出来。

 

 


【2022年5月12日更新】

一个命令查看你的主板有几个SATA控制器和几个SATA接口

 

1、在前面具体操作步骤做到第十三步的时候,输入以下命令(注意大小写和空格):

dmesg | grep SATA

 

2、此时屏幕上把当前主板的SATA控制器和SATA接口信息全部显示出来;

比如上图显示的内容中包含了以下信息:

(1)一共有2个ahci就表示有2个SATA控制器;

(2)第1个ahci控制器和第2个ahci控制器的带宽都是6Gbps;

(3)每个控制器显示的2 ports,表示该控制器有2个SATA接口;

(4)第1个ahci控制器控制的是ata1(SATA1口)和ata2(SATA2口),第2个ahci控制器控制的是ata3(SATA3口)和ata4(SATA4口);

(5)2个硬盘分别接在SATA2口和SATA3口上面;

 

3、如果用前面的./rploader.sh satamap now获取不了参数或者参数不正确的话,建议使用dmesg | grep SATA来获取,然后通过人为去判断吧。

点赞
  1. 麻绳儿灯芯说道:
    WebView Android 10
    您好大佬,我最近用技嘉B360M主板和9100tCPU装7.1918+和3622都成功,但是,3622重启就会要求重装。918则偶尔会要求重装,而且是全新重装,没有显示保留数据那种,不知为何。
    1. 博主说道:
      Google Chrome Windows 10
      具体不清楚,我在ESXI上全部测试过,全部用新安装的方式,都是Ok的。
      1. 麻绳儿灯芯说道:
        WebView Android 10
        您好,问题找到了是U盘的问题,群联主控重启设备会无限重装,用安国或者慧荣都没问题。技嘉主板问题不大。
  2. Mark说道:
    Google Chrome Windows 10
    博主 我搭建的nas使用的是intel DQ77KB主板 之前安装3617 6.23系统现在打算升级 7.1.0系统看了您的帖子我也用以上您介绍的方案得到了主板的Sata 接口表,但是得出的内容为SataProtMap=6 “我理解为DQ77KB主板拥有1个控制器6个硬盘”;diskIdxMap=00 “我理解为从第一个硬盘开始识别”(不知这样理解有无错误),我主板上有一个1g的U盘作为引导盘(pid、vid 以及sn 和 mac 都已经改好)。现在引导做好后能启动,但是不能进行系统安装,提示未能在DS-3617xs上检测到硬盘,麻烦博主忙里抽空帮忙看看是不是我哪里做错了还是什么原因导致的。
    1. 博主说道:
      Google Chrome Windows 10
      首先,物理机安装DSM7.X,硬盘要插到主板SATA1口上面。如果你写SataProtMap=6意味着这个主板只有1个控制器并且已经接了6个硬盘,我印象中DQ77KB不是有2个SATA3.0和2个SATA2.0吗,应该是2个控制器啊。
      1. Mark说道:
        Google Chrome Windows 10
        博主 您好 我折腾了一个晚上总算折腾好了,您说的没错只能在sata1 接口上接入一块硬盘来安装系统,根据大神的识别系统识别出来的也端口也正确,DQ77KB的确是用了PCH里的4个sata和一个MSata并未外接任何其他的控制器。原来安装系统的时候只能将SataProtMap=设置为1,装好系统还需要把SataProtMap=设置为6才能识别别的硬盘,现在系统已经正常了就是群晖会对新识别的硬盘阵列组进行数据清理,那个时间真是感人啊8个小时了才走了40%,问题搞好了谢谢您,还是没有仔细看您的教程。
  3. aspirell说道:
    Google Chrome Windows 10
    你好,请问DSM7.0.1安装老是卡在57%的时候,出现文件可能已损毁,和这个设置有关吗?谢谢
    1. 博主说道:
      Google Chrome Windows 10
      感觉是你的安装技术火候不够。
      1. aspirell说道:
        Safari iPhone iOS 15.4.1
        我用的j4125就没问题,我的蜗牛星际pro J1900就不行,这个机器能插4块硬盘,这四个硬盘都是靠转接卡直接接主板的,外加一个msata硬盘
        1. aspirell说道:
          Safari iPhone iOS 15.4.1
          J4125有nvme接口,但是没装,用的u盘做引导,j1900是用msata做引导
          1. aspirell说道:
            Safari iPhone iOS 15.4.1
            会不会是msata引导的问题
          2. 迷情说道:
            Google Chrome Mac OS X 10.15.7
            引导文件有问题占比一半 还有就是群晖的pat安装包版本或者下载md5你校验过没?。还有就是局域网如果有另外一台群晖SN没洗白也有可能 (我遇见的是网页丢失换了洗白码搞定)
  4. 小野沐风说道:
    Google Chrome Windows 7
    esxi6.7安装3622 设置 DiskIdxMap=0C0004 SataPortMap=1 SasIdxMap=0 这三个参数还有用了虚拟机俩个SATA控制器 引导盘一个 添加的硬盘一个 引导选项BIOS 2分钟搜到地址 .只是不知道这三个参数是不是没用上. SataPortMap=1这个我记得不能用0不明白 :heixian:
    1. 博主说道:
      Google Chrome Windows 10
      这几个参数搞不明白的建议别装DSM7.X,去装6.23吧,不需要折腾这些东西就能用。
  5. en说道:
    识别出来如下图: HBA:00:12.0 Disks:2 HBA:00:13.0 Disks:12 HBA:00:13.2 Disks:12 SataPortMap=21212 DiskIdxMap=000C18 实际是威廉通的Ts-551 五盘位,只能实际识别一个硬盘(13盘,对应0C)。 请教博主 按照SataPortMap意义理解,有五个控制还是 3个控制器? ----------------------------------- 在群辉系统中,一个控制器默认只能控制9个硬盘,所以SataPortMap=的数值范围只能是0-9,0则表示屏蔽该控制器,不可以设为SataPortMap=0来隐藏引导盘! 2、如果有多个控制器的(每个主板具体有几个控制器,请查阅主板说明书),则SataPortMap=后面的数值有几位就表示有几个控制器。比如SataPortMap=148,表明第一个控制器有1个硬盘,第二个控制器有4个硬盘,第三个控制器有8个硬盘。
    1. 博主说道:
      Google Chrome Windows 10
      你这个是3个控制器啊,哪来的5个控制器
      1. entro说道:
        SataPortMap=21212 不是一个位标识一个控制器么?如果是三个控制器,12不是超过了0-9
        1. 博主说道:
          很明显不对啊
          1. entro说道:
            Google Chrome Windows 10
            哈,就用这个工具识别出来的,而且还能用,只是只能识别到到一块硬盘。
  6. 梦想说道:
    Google Chrome Windows 10
    你好博主: 我的机器是台老机器,HP的i3 550 10年的,我想装一下7.0.1的按你的详细说明,修改完用U盘引导后 怎么也搜不到这台群晖。网卡是网卡是RTL8168D/8111D的,主板好像是微星的,是网卡驱动的问题吗?请有时间赐教一下。
    1. 博主说道:
      Google Chrome Windows 10
      这个CPU太老了,你先看一下BIOS里面如果硬盘模式有AHCI的话可以装3615或者3617的6.17版本,如果没有AHCI就只能装3615-5.2版本。再高就不支持了。
      1. 梦想说道:
        Google Chrome Windows 10
        我的机器太老?无法安装7.0.1 了呗! :han:
      2. 梦想说道:
        Google Chrome Windows 10
        添加网卡驱动也不可以?? :yinxian:
  7. judewell说道:
    Google Chrome Windows 10
    博主您好,这两天都在学习您博客中关于DSM7.0的内容。根据您的教程,我在蜗牛A单上使用U盘全新安装了918+7.0.1,我将硬盘笼第一块硬盘的sata线从原位拔下,查到了主板正中单独的一个SATA口,并在安装时使用了DiskIdxMap=00 SataPortMap=1 SasIdxMap=0,屏蔽了主板上的mSATA,安装一切正常。 令我困惑的是,我并未将上面三个参数删除,机器依然可以识别4个硬盘笼上的硬盘。恳请博主不吝赐教。谢谢!
    1. 博主说道:
      Google Chrome Windows 10
      有一篇文章是我记录了使用蜗牛星际安装DS918-7.01的折腾过程,你可以去看看。
  8. link说道:
    Google Chrome Windows 10
    博主您好,网上新到的n5105小主机,接了nvme 固态,就一个sata口,接了一个sata ssd, 还有一个minipcie 转接了一个千兆网卡。装在nvme硬盘中的 是esxi7.0+openwrt(拨号)+黑裙918+ 7.0 就是从您那儿下的最新版。在安装918时出现 我们检测到硬盘1中有错误,因此SATA端口已被禁用。请关闭DS918+以替换或卸载硬盘并重试。请问怎么解决啊。麻烦了,谢谢。(把那三个参数删去不行,改一下也不行,实在是没办法了)
    1. 博主说道:
      Google Chrome Windows 10
      博客有安装群晖7.01的教程,请认真学习。
  9. BeeFour说道:
    Google Chrome Windows 10
    博主你好,我用的是蜜獾超存机箱七彩虹cvnb560itx加i5 10500.,主板上带4个sata口,不够用我又加了个m2转5口sata的扩展卡,想着组两组raid5就在主板和扩展卡上各插了3个盘位,然后主板上剩下的那个盘位上考虑接个固态。我现在用u盘做引导,文件是你网盘上的DSM7.0.1,然后这三个参数不知道怎么设置,如果用自动获取的那个,我没有那么多盘插满,目前只打算用3个机械盘(一个固态待定),那自动获取出来的是不是会不准?手动的话我要设置成什么参数?劳驾帮我看看,谢谢!
    1. 博主说道:
      Google Chrome Windows 10
      我跟你用的硬件不一样,所以你问我怎么设置,我也不知道!自动获取是不是准确的你自己试了才知道。如果想精准的获取参数,就自己去查清楚SATA控制器的数量和每个控制器实际接入硬盘的数量。
  10. 精灵说道:
    Google Chrome Windows 10
    博主:你好!我的主板上有1个MSATA接口接了1个固态硬盘装系统,4个SATA接口分别接了4块硬盘,另外用PCIE转SATA扩展卡又接了4块硬盘,用这个方法得到SataPortMap=65 DiskIdxMap=0005,其中装系统的固态硬盘序号被认成了硬盘5,如果我想把这块固态硬盘的序号设成硬盘1,要怎么调整以上两个参数啊? 谢谢了!
    1. 博主说道:
      Google Chrome Windows 10
      群晖每个存储硬盘都有系统的,所以你说的“装有系统的固态硬盘”这个说法是不准确的。
      1. 精灵说道:
        Google Chrome Windows 10
        那就是用这个固态硬盘做引导盘。

发表回复