Polanskiman Posted October 28, 2016 Share #1 Posted October 28, 2016 (edited) I created a tutorial for the French section so I thought, what the heck, let's do it for the English one as well. Here it goes. As most of you know by now Jun was able to find a way to install DSM 6 on non Synology boxes. Here is the thread that I recommend reading. At least make an effort and read the OP: https://xpenology.com/forum/topic/6253-dsm-6xx-loader/ Below is what you need for the operation. I will assume you are doing all this under Windows 10, 8, 7 or XP. If you are on a MAC computer have a look at this post I made on how to burn the image to a USB drive and then mounting the USB drive for editing the content. The rest of the tutorial still applies. If you are currently using DSM 5.1 or below first update to DSM 5.2. If you are doing a fresh install of DSM 6.0 then carry on with the tutorial and omit references to DSM 5.2. - Win32 Disk Imager to make a bootable USB drive; - A 4GB (or any size really) USB drive (flash drive) to install the loader. Not that this is necessary but use preferably a brand name (Kingston, SanDisk...); - A way to read your USB drive VID/PID. Here is a how-to >>> VID and PID; - A good text editor: Notepad++ I really don't recommend using Windows's Notepad; - DSM 6.0.2. The file comes straight from Synology servers; - Jun's official v1.01 loader (mirror). This is a hybrid UEFI/BIOS loader so it should work in most machines. Loader supports Intel and AMD CPUs; - Customized extra.lzma ramdisk. This ramdisk is optional and should only be used if the default ramdisk included in the loader is not detecting your hardware. I am just providing it for those who are having issues with network detection or unrecognised HDD controllers. This custom ramdisk contains additional modules (drivers) that were mostly taken from Quicknick's loader. I don't warranty they all work but I think most do. If you chose to use this ramdisk, you will need to replace (or rename, so you can revert) the default extra.lzma ramdisk from Jun's loader with this one. See change log at the end of the tutorial for additional modules. - Make sure your drives are plugged in direct succession starting from the 1st SATA port. Usually the first port is described as SATA0 on motherboards. Check with your MB manufacturer for exact nomenclature. - OSFMount to modify the grub.cfg file within the loader's image. This is not strictly necessary as Jun has made it possible to configure what needs to be modified via the Grub Boot Menu. I recommend you use OSFMount for now although it adds an extra step. If you prefer using Jun's new feature simply skip Point 5, read Note 4 instead and pick up at Point 6. PLEASE READ EVERYTHING PRIOR ATTEMPTING ANYTHING Use this loader at your own risk. I wont be held responsible for any loss of data or black smokes that may result in the use of this loader. Please note that this loader is based on DSM 6.0 Beta 2 branch 7274 and that a limited amount of drivers are included in the loader. If it is fundamental for you to have a NAS operating as quick as possible I recommend you look at the included drivers first at the bottom of this tutorial. If they are not there you will have to compile your own drivers. One last thing: DO NOT UPDATE DSM BEYOND VERSION 6.0.2 (6.0.3, 6.1, 6.1.X, 6.2) with loader v1.01. You have been warned. Here we go: 1 - BACKUP your data and save your configuration prior any attempts to migrate from DMS 5.2 to DSM 6.0.2. I can't stress this enough. JUST DO IT, as Nike likes to say. Also, print this tutorial if you can. It will make your life easier. 2 - Turn off your NAS and unplug the USB drive you are currently using with DSM 5.2. I recommend you put this USB drive aside in case migration to DSM 6.0.2 doesn’t go as expected and you need to revert to DSM 5.2. It will just make your life easier. 3 - Now go to your workstation/PC, plug a new USB drive (or the old one if you really don’t have any spare USB drives). Use the link I provided earlier to check your USB drive VID/PID. Write down the info somewhere as we will need it later. 4 - Unzip the loader you downloaded earlier. You will end up with a folder containing several files. Since we are installing on bare-metal you will only need the image file "synoboot.img". 5 - Now launch OSFMount. Select Mount New, then select the image file (i.e. synoboot.img) to open. Now select partition 0 (the one that is 30 MB). Click Ok. Then at the bottom of the window make sure to un-tick the "Read only drive". Click Ok. The EFI partition of the image file should now be mounted in file explorer. At this point you can navigate to the /image/DS3615xs directory and replace the extra.lzma ramdisk with the one provided above. When you are done come back to the root directory and go to the /grub directory and edit the grub.cfg file. Below is what you will see in the file. I am only showing below the portion of the code that is relevant for the purpose of this tutorial [...] 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' 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' [...] You want to modify the following: Change vid=0x090C to vid=0x[your usb drive vid] Change pid=0x1000 to pid=0x[your usb drive pid] Change sn=C7LWN09761 to sn=generate your sn here with DS3615xs model Change mac1=0011322CA785 to mac1=[your NIC MAC address]. You can also add set mac2=[your NIC MAC address #2] and so on until mac4 if you have multiple NICs. However, this is not necessary. Optional: Change set timeout='1' to set timeout='4' - This will allow you more time to make a selection in the Grub Boot Menu when it appears. Once you are done editing the grub.cfg file, save it and close your text editor. Now in OSFMount click on Dismount all & Exit. You are now ready to burn the image to your USB drive. 6 - Now use Win32 Disk Imager to burn the image file onto the USB drive. This will also make the USB drive bootable. 7 - Eject and unplug the USB drive from your workstation. Plug it in your NAS (avoid USB 3.0 ports. Use USB 2.0 port if available). Boot your NAS and before doing anything fancy, access your BIOS so to make your USB drive the 1st boot drive if it's not the case. The loader can boot in UEFI or in legacy BIOS, so you chose what suits you best. Also, make sure your HDDs are booting in AHCI mode and not in IDE, else it wont work. Finally, if disabled, also enable the serial port in BIOS. Some BIOS don't have this option so don't get too cranky on this if you can't find it. Save changes to the BIOS and REBOOT the NAS. 8 - Once rebooted, if you have a monitor connected to your NAS you will see the following Grub Boot Menu: If you are on an Intel based machine you can simply let it be and the loader will automatically start. However, if you are on a AMD based machine you will need to select the 4th line and then press enter. ADVICE: even before you see the Grub Boot Menu press the up/down key. This will stop the countdown so you will be able to select the desired line. You won’t see much other than the following after you press enter: If you booted the USB drive in EFI mode then you will see the same text without the last 3 lines but that's ok. 9 - Now go back to your workstation, and launch Synology Assitant or go to http://find.synology.com. Within one minute or so you should normally be able to see your NAS on the local network (it took 55 seconds on a test I did on a VM). Just follow the instructions and either chose "Install" if you wish to have a clean install or chose “Migration” if you are coming from DMS 5.2 and wish to update while retaining your data. You will be asked to provide the .PAT file you downloaded earlier (DSM_DS3615xs_8451.pat). 10 - When the migration is finished you will most probably have to update some of your packages. You can then proceed and update DSM 6.0 up to DSM 6.0.2-8451 update 11. It is possible you might either need to hard reboot or re-image your usb drive. DO NOT UPDATE DSM TO VERSIONS 6.0.3, 6.1, 6.1.x, 6.2, with loader v1.01. Make sure to deactivate auto-updates within DSM. 11 - You are done. If you have questions, first search the forum and/or Google then leave a comment if nothing helps. Please provide your hardware specifications (motherboard model, LAN controller, driver controller etc). Failure to prove such information will lead to the post being deleted. -------------- Note 1: If after following the tutorial you can’t find your NAS through http://find.synology.com ou Synology Assistant it is highly possible that the drivers of your NIC are not included in the ramdisk of the loader. Make an effort and use Google to know what modules your NIC and HDD controller are using, then check if those modules are included in the custom extra.lzma ramdisk. If yes then use the custom ramdisk. Don't ask me to look for you. If nothing works then ask your question. Note 2: Synology increased security in DSM 6. Root access through SSH is no longer available out of the box. You can however use your admin account and elevate permissions with the following command sudo -i Note 3: Please check you have the right VID/PID prior proceeding. If you get the following error ”Failed to install the file. The file is probably corrupted. (13)" it means your VID and/or PID is wrong. If you are 200% sure that your VID/PID is correct and you still get that error message then try to 'Force Install'. If that doesn't work then try another USB drive. Note 4: Changes made to the grub.cfg file can also be done directly during the Grub Boot Menu, so technically you can skip Point 5 and burn the image on the USB drive without editing anything (read Point 6 onward first). If you wish to do the changes from the Grub Boot Menu directly you need to press the letter 'C' when you see the Boot Menu. You will literally only have one second, so be fast. Once you press C you will be in a Grub command line environment. To change your VID enter the following: vid 0xYOUR 4 DIGITS USB DRIVE VID Do the same for pid, sn and mac1. Press enter at each command. The commands are: pid 0xYOUR 4 DIGITS USB DRIVE PID sn YOUR NAS SERIAL NUMBER mac1 YOUR NAS MAC1 ADDRESS If you have multiple NICs you can also issue mac2, mac3 and mac4 as commands. Maximum is mac4. See below: mac2 YOUR NAS MAC2 ADDRESS mac3 YOUR NAS MAC3 ADDRESS mac4 YOUR NAS MAC4 ADDRESS If you think you made a mistake in the numbers simply re-issue the command. When you are done press esc and select the appropriate menu entry. Below is an example of how it looks under the Grub command line environment: Note 5: If your encounter the error "We've detected errors on your hard drives [drive number] and the SATA ports have also been disabled" during installation, try the Force Install menu entry in the Grub Boot Menu. If this does not work then you have to fallback to adding SataPortMap to the grub environment. Press the letter 'C' at the Grub Boot Menu and then add the following: append SataPortMap=XX where XX is the number of drives. Don’t forget to update this parameter if you add additional drives to your machine. If you use Force Install, don't forget to re-select the first line of the Boot Menu once the NAS has rebooted after the installation else the Loader will re-select Force Install and you will be faced with some issues so please beware of this. @@@@@@@@ What does SataPortMap mean? @@@@@@@ setsunakawa said: SataPortMap=4 means first 4 ports of 1st controler. SataPortMap=44 means first 4 ports of 1st controler and first 4 ports of 2nd controler. SataPortMap=422 means first 4 ports of 1st controler, first 2 ports of 2nd controler and first 2 ports of 3rd controler. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ############## Know issues ##################### - When running on a slow single core machine, there is a race condition that causes the patcher to load too late. The most obvious sign is that console is not working properly. - Some ethernet drivers crash when set MTU above about 4096 (Jumbo frame). ############# Included default modules in Jun's Loader ############# Spoiler Original Post Updated broadcom tg3, bnx2, bnx2x, cnic Updated intel e1000e (I219 support) Add/Updated realtek r8168, r8169 and r8101 (r8169 from realtek website no the one inside the kernel tree) Spoiler Original Post Added below kernel modules: r8101: RTL8100E/RTL8101E/RTL8102E-GR/RTL8103E(L) RTL8102E(L)/RTL8101E/RTL8103T RTL8401/RTL8401P/RTL8105E RTL8402/RTL8106E/RTL8106EUS r8168: RTL8111B/RTL8168B/RTL8111/RTL8168 RTL8111C/RTL8111CP/RTL8111D(L) RTL8168C/RTL8111DP/RTL8111E r8168: RTL8168E/RTL8111F/RTL8411 RTL8111G/RTL8111GUS/RTL8411B(N) RTL8118AS * Note: r8169 from Trantor archive doesn't work with my on-board Realtek RTL8111GR. So I kept the existing which is also much bigger. e1000e: 82573L/82572EI/82571EB/82573E/82573V/82567/82574L/82566MM/82566MC e1000e: 82566DM/82566DC/82563EB/82574IT/82583V/82579LM/82579V/82577LC/82577LM e1000e: 82578DC/82578DM/Gigabit CT Desktop Adapter/PRO/1000 PT/PF/I217-LM/V/I218-V/LM/I219 LM/V bnx2: Broadcom NetXtremeII BCM5706/BCM5708/5709/5716 bnx2x: Broadcom NetXtremeII 10Gb BCM57710/BCM57711/BCM57711E/BCM57712 tg3: Broadcom Tigon3 BCM5705/BCM5703/BCM5702/BCM5701/BCM5700/BCM5721/BCM5751/BCM5788/BCM5704/BCM5752/BCM5789 tg3 : BCM5723/BCM5761/BCM5787/BCM5755/BCM5722/BCM5754/BCM57781/BCM57785/BCM5718BCM57765/BCM57761 tg3: BCM5719/BCM5725/BCM5762/BCM5720/BCM57790/BCM57795/BCM57766/BCM57780 * Note: Existing modules updated with version from Trantor archive. I also added missing firmware files. ax88179_178a : ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet mpt2sas: LSI SAS 6Gb/s Host Adapters SAS2004, SAS2008, SAS2108, SAS2116, SAS2208, SAS2308 and SSS6200 * Note: It's already included in existing ramdisk but not loaded. By dmesg it's started correctly. evdev, button: for acpid Spoiler Original Post * Fixed loading modules after installation step and upgrading from previous ramdisk version * Fixed order of loading kernel modules (cause not loading cnic) -------------------------------------------------------------------------------- Recompiled kernel modules: r8169: r8169-6.022.00 sources * Note: Compiled by Trantor igb: igb-184.108.40.206 sources ixgbe: ixgbe-4.4.6 sources * Note: Compiled from latest sources at intel.com megaraid_sas: megaraid_sas-06.812.07.00 sources mpt2sas: mpt2sas-20.00.04.00 sources * Note: Compiled from latest sources at lsi.com/avagotech.com -------------------------------------------------------------------------------- Added kernel modules: mpt3sas: mpt3sas-14.00.00.00 sources * Note: Compiled from latest sources at lsi.com/avagotech.com ftdi_sio, cp210x, ch341, pl2303 * Note: ftdi_sio is compiled by Synology, others are compiled from 7274 kernel sources ############# Additional modules in the custom extra.lzma ramdisk ############# Spoiler 3c59x.ko 3w-9xxx.ko 3w-sas.ko 3w-xxxx.ko 8021q.ko 8139cp.ko 8139too.ko a100u2w.ko aacraid.ko advansys.ko ahci_platform.ko aic79xx.ko aic7xxx.ko aic94xx.ko amd8111e.ko ata_generic.ko atl2.ko atp870u.ko b44.ko broadcom.ko caif.ko catc.ko ch.ko cn.ko crc-ccitt.ko crc-itu-t.ko cxgb.ko cxgb3.ko cxgb4.ko dl2k.ko dm-log.ko dm-mirror.ko dm-region-hash.ko dummy.ko forcedeth.ko gf128mul.ko isci.ko iscsi_boot_sysfs.ko isp116x-hcd.ko isp1362-hcd.ko isp1760.ko kaweth.ko macvlan.ko mlx4_core.ko mlx4_en.ko mpt2sas.ko mvsas.ko mvumi.ko nvme.ko pata_ali.ko pata_amd.ko pata_artop.ko pata_atp867x.ko pata_cmd64x.ko pata_hpt366.ko pata_hpt37x.ko pata_hpt3x2n.ko pata_hpt3x3.ko pata_it8213.ko pata_it821x.ko pata_jmicron.ko pata_marvell.ko pata_netcell.ko pata_ninja32.ko pata_oldpiix.ko pata_pdc2027x.ko pata_pdc202xx_old.ko pata_rdc.ko pata_sch.ko pata_serverworks.ko pata_sis.ko pata_via.ko pdc_adma.ko pegasus.ko pm80xx.ko qla1280.ko r8152.ko rng-core.ko rtl8150.ko sata_highbank.ko sata_inic162x.ko sata_nv.ko sata_promise.ko sata_qstor.ko sata_sil.ko sata_sis.ko sata_svw.ko sata_sx4.ko sata_uli.ko sata_via.ko sata_vsc.ko sc92031.ko scsi_transport_srp.ko sis190.ko ssb.ko stex.ko sundance.ko sym53c8xx.ko udf.ko via-velocity.ko zlib_deflate.ko zlib.ko ############## Tutorial UPDATES ################## Spoiler [30/10/2016] Jun loader updated to version v1.0. This loader now supports AMD [03/11/2016] Jun's loader updated to version v1.01 [18/11/2016] Overhaul of the tutorial to reflect new features and fixes in the loader [19/11/2016] Minor edits and clarifications [20/11/2016] Minor edits + added link on how to burn & mount image in MAC OS. 3rd Paragraph [05/12/2016] Added note about SATA0. Modified/improved warning + detailed note 5 (Force Install) [09/12/2016] Title changed from "Tutorial: Migrate from DSM 5.2 to 6.0 - Baremetal" to "Tutorial: Install/Migrate DSM 5.2 to 6.0 (Jun's loader)" [19/01/2017] Point 10. Added following comment: "Update 9 seems to be causing some issues, so stay on update 8 until further notice" [20/01/2017] Minor edits [30/01/2017] Note 5 clarified [22/02/2017] Edit Warning message due to inaccuracy: DSM 6.0.2 Beta branch 7274 to DSM 6.0 Beta 2 branch 7274 [23/02/2017] Point 10. Added following comment: DO NOT UPDATE DSM TO VERSION 6.1. [27/02/2017] Trantor added a mirror to loader [02/03/2017] Link to Loader updated [08/03/2017] Added following comment to Warning message: DO NOT UPDATE DSM TO VERSION 6.1 with loader v1.01 + Minor edits [24/04/2017] Point 10. You can update to Update 11 [28/04/2017] Do not update to DSM 6.1.1 [09/05/2017] Do not update to DSM 6.0.3 [12/05/2017] Added link to serial generator & clarification about MAC address [19/05/2017] Added custom extra.lzma ramdisk link + how to replace ramdisk in loader + ramdisk change log + additional minor edits [28/05/2017] Updated custom ramdisk -- broadcom.ko module was not loading due to module not being mentioned in to rc.modules [18/06/2017] Updated tutorial links to new forum platform [21/06/2017] Do not update to DSM 6.1.2 + Title changed from "Tutorial: Install/Migrate DSM 5.2 to 6.0 (Jun's loader)" to "Tutorial: Install/Migrate DSM 5.2 to 6.0.2 (Jun's loader)" [21/08/2017] Modified warning message: DO NOT UPDATE DSM BEYOND VERSION 6.0.2 (6.0.3, 6.1, 6.1.1, 6.1.2, 6.1.3 etc) with loader v1.01. + minor edits [03/09/2017] Temporarily removed custom ramdisk [10/09/2017] Removed 'amd-rng.ko', 'via-rng.ko' and 'pata_atiixp.ko' modules from custom extra.lzma ramdisk. All modules were failing and 'pata_atiixp.ko' was cause a kernel panic. [15/09/2017] "[...] Please provide your hardware specifications (motherboard model, LAN controller, driver controller etc). Failure to prove such information will lead to the post being deleted. Click the 'Like this' button if you liked the tutorial." [27/01/2018] Updated link to serial generator. 24/05/2018] Updated warning regarding DSM 6.2 [30/07/2018] Updated spoiler code plugin Edited July 30, 2018 by Polanskiman See Tutorial UPDATES log above ^ 5 Quote Link to comment Share on other sites More sharing options...
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.