Cheap Rockstor Build

CHEAPSTOR

I decided to use rockstor on my old hotspot system.
It was used in an art association as radius eap, print and file server, and as simple iptables firewall. Each network segment was additionally secured by an intrusion detection system and managed switches. 4 Buildings with 5 offices 4 seminar rooms, but the area i had to cover doubled, 15000 squaremeters wanted to be covered by a wireless distribution system. A new system was needed to be constructed tested and installed. So i got my mainboard back earlier than expected, which is now my base system to get in touch with ROCKSTOR.

  • Gigabyte J1900N-D3V --> http://www.gigabyte.de/Motherboard/GA-J1900N-D3V-rev-1x#ov
  • 4GB RAM -SAMSUNG M471B5273CH0-CH9 10600S 2Rx8
  • SandDisk UltraFlair 32GBs USB 3.0 ROOTFS (GPT EFIBOOT) SDCZ73-032G-G46
  • 2x2TB RAID1 (1.8TB real) Seagate SV35 2TB (24/7)
  • 3x SandDisk UltraFlair 32GBs USB 3.0 Flash as Raid5 SDCZ73-032G-G46
  • 2xPicoPSU-90

Always update bios to the latest version.
The mainboard has no usb 2.0 ports so we need to boot with usb 3.0!
The installation is not that easy to accomplish.
Remember anaconda, which is the installer of centos!

Boot

To boot from uefi which is recommended(by me) you need to go into to the boot menu
by pressing F12 and start the UEFI shell.
I dont like to mess around with changing the USB ports to hopefully get the UEFI
locate the bootloader. So we easily will change to the USB sticks root by writing
fs0: in the shell cd EFI cd centos grubx64.efi and
voila the grub bootloader should give you two choices.
We do not need the rescuesystem yet so you should test the install media and start the installer.

When system is booted we will be in the ugly and slow running centos installer,
So i recommend to start the installer in text mod by editing the boot options:
In grub bootloader press TAB and write inst.text between the bootoptions.
Install Rockstor as recommended in the Rockstor instalöl instructions!
The bootloader install will fail, apparently because we boot from USB3.0!
Press yes so that the installation will succeed without the
bootloader to be installed correctly.

installing bootloader

Then change to a shell by pressing STRG+F2 !
You have to configure the efibootmgr!

  • Chroot into your new system with chroot /mnt/sysimage
  • If /boot/efi/EFI/centos/grubx64efi exists ls -lh /boot/efi/EFI/centos/grubx64.efi
  • then configure UEFI with efibootmgr -c -v -L "Rockstor" -d /dev/sdc -p1 -l "/boot/efi/EFI/centos/grubx64.efi"
  • use efibootmgr -b x -B to remove the wrong Rockstor entry where x is the number of the boot entry 1 for 0001
  • now we need to write the grub.cfg configuration file to /boot/efi/EFI/centos/grub.cfg we do that by issuing grub2-mkconfig -o /boot/efi/EFI/grub.cfg

Now we can switch back to the installer and finish the installation process -
restart and the system should be ready.
###About the system
My DiskDrives are at 30 to 47 degrees
Celsius without a fan so the only noise is coming from them. I recommend to use a usb 3.0 hub,
i didnt have a unused one here to test it but the usbsticks i am using are very hot so cooling is
important i will put them into the airstream with my diskdrives.

#Update
###StableBoot
Like mentioned in another build example here in the forum, booting from usb3.0 is not well supported on these boards and i am encountering the same faults. The USB stick is not found sometimes. Its to expensive to build a good bios when the mainboard itself is about 60-90 euro with cpu. So we have to get along with that by using a second usbstick which is usb2.0 and serves as the bootpartition stick! I choosed what was left somewhere in my bag for along time. A Kingston micro with 8GB. So i partitioned it with parted with a esp (efi system partition), a boot partition and a sysbackup called one to backup my system partition every 7 days.
####The partition tables looks like:

[root@nas ~]# parted /dev/sdd
GNU Parted 3.1
Verwende /dev/sdd
(parted) print
Modell: Kingston DT Micro (scsi)
Festplatte  /dev/sdd:  7862MB
Sektorgröße (logisch/physisch): 512B/512B
Partitionstabelle: gpt
Disk Flags:

Nummer  Anfang  Ende    Größe   Dateisystem  Name       Flags
 1      1049kB  537MB   536MB   fat32        ESP        boot
 2      537MB   2684MB  2147MB  ext4         boot
 3      2814MB  7862MB  5048MB  btrfs        sysbackup

After formating the partitions we need to mount them in a newly created mountpoint i used a new directory called /manualmount !
Then we have to mount the boot partition first! I simply copied all files in /boot/* to the mounted fs and removed the /boot/efi/EFI directory to be able to mount cleanly the ESP partition to /boot/efi afterwards. We now need to change the UUID values in /etc/fstab! Use the command blkid to get all the uuids of your partitions! Make a backup of your fstab and change the values of your boot and efi partition!
Now we simply need to write a new grub config and we are ready to go!
After mounting according to the new fstab(mount -a):
grub2-mkconfig -o /boot7efi/EFI/centos/grub.cfg
I think it is wise to clean your efiboot entry we wrote with efibootmgr earlier because we dont need it anymore! Here we see the reason why we didnt see the efiboot corrected by the maintainers.
They dont need to as long as the mainboards are booting with the bootx64.efi
file what happens when booting from usb2.0.
I dont like to have wrong entries in my uefi so we delete them like mentioned above!
Till now (2 days) this is booting stable!

I will edit this for recent updates and speed test when the system is running stable!
I will edit this for typos and readability.
GL HF eliasmagnush alias morn

1 Like

@morn Welcome to the Rockstor community.
This is a great post, and thanks for providing your work around for the UEFI issue you have already reported in the rockstor-iso repo:

I’ve got a question regarding S.M.A.R.T on your SanDisk Ultra Flair USB 3.0 sticks. Do they show up by default in the Rockstor disk page with their smart switch on (ie having been identified as supporting smart without any custom smart options) and if not your rockstor.log is likely full of attempts to ascertain this support status: akin to the example used in the Disk Custom S.M.A.R.T Options section of the official docs? Especially given you have 4 of them! I have a plain Sandisk Ultra USB 3.0 here where “-d scsi” sorts the noisy logs entries for that device. However the device itself doesn’t then support a full smart function set. But at least it’s not there after spamming the logs. I use the Sandisk Extreme USB 3.0 (ssd -> ‘sata-to-usb bridge’) as a system disk on a few Rockstor instances in test and production, and they end up responding fully S.M.A.R.T wise in the GUI with the addition of a “-d sat” custom option. Anyway I’d be interested to know how that goes and you may benefit from quieter logs if in deed all are cluster spamming your rockstor.log :grinning:.

Thanks again for your contribution here and let us know how those smart options play out if you fancy trying them.

I dont wanted to bother you with my cheap usbstick play so i didnt created an issue on that. They show up as unsupported and the sata to usb bridge is claimed to be unsupported in the log for each one of them. With -d scsi they answer smart and they are running without spamming the logs.

=== START OF INFORMATION SECTION ===
Vendor:               SanDisk
Product:              Ultra USB 3.0
Revision:             1.00
User Capacity:        30.752.000.000 bytes [30,7 GB]
Logical block size:   512 bytes
Serial number:        4C530001230605113361
Device type:          disk
Local Time is:        Wed Jul 12 19:46:27 2017 CEST
SMART support is:     Available - device has SMART capability.
SMART support is:     Enabled
Temperature Warning:  Disabled or Not Supported

=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK

Error Counter logging not supported

Device does not support Self Test logging

I assume they do have disabled temp logging cause they shouldnt be used constantly
on that temps(around 70*) i think ill glue them on a cooler board when my hub arrives. I have a disassembled stick here as well, which i am using as multiboot stick with easy2boot. Yeah i putted some cooling paste inside to make it running “smarter”. The usb connector housing is in touch with the nand for cooling which then is in touch with a piece of metal to make it more heavier. hopefully i can expect some performance improvements by cooling them down.

@morn Cool, yes that is the same as I get for my Sandisk Ultra, ie clicking on the disk name yields the “Device does not support Self Test logging” via Rockstor’s surfacing this. OK was just curios if they were a step-up from the Ultra model.

smartctl -d scsi -a /dev/disk/by-id/usb-SanDisk_Ultra_4C531001540117116264-0:0
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-4.10.6-1.el7.elrepo.x86_64] (local build)
Copyright © 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               SanDisk
Product:              Ultra
Revision:             1.00
User Capacity:        15,552,479,232 bytes [15.5 GB]
Logical block size:   512 bytes
Serial number:        4C531001540117116264
Device type:          disk
Local Time is:        Wed Jul 12 19:23:46 2017 BST
SMART support is:     Available - device has SMART capability.
SMART support is:     Enabled
Temperature Warning:  Disabled or Not Supported

=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK

Error Counter logging not supported

Device does not support Self Test logging

At least your logs should be a little less hounded now.

I think the issue would be best opened against the smartmontools project in this case, were you to want to pursue it further. But I don’t think there is much here really and given no other info I don’t think we can depend on the single “Health Status” indicator; a call of this type would normally yield a couple of pages of info.

Can you read any model numbers off the chips on the one you have opened, might help with identifying if it’s a proper wear levelling controller?

As you can see its a fully integrated cirquit:
They only have a fuse(j), two condensators and a spacer for the usb contacts(the blue plastic)
I believe mine are the cheaper ones with lesser chip quality. I’ve payed 10 euro for 32GB. i have 9 of them and when my hub arrived i’ll try to make a raid with 7 of them… so i can exchange the faulty ones later XD. Of course an ssd would have been cheaper but i cant regulate the chip usage and i will use them for testing and dev! This cheap mainboard only has two sata ports which is very bad XD

1 Like