SAS Mania Episode 3

So let me start by saying, sorry for no update.
But haven’t forgotten to talk about my last part of this journey where we gonna take a look what we need on a software perspective.

What we need to understand first is how the controller works.
This controller in particular is ah RAID Controller which were you can make fancy RAID’s and everything but that is not what we need.
We need JBOD which stands for “Just a Bunch Of Drives”.

Why do we need that ?
Well because Unraid like to do stuff on their own with just a Disk and no Raid behind that what so ever.

So we basically give Unraid the disks without anything.
Just a Disk, nothing else.

Well how we do that ?
By configuring the RAID Controller to set it in HBA mode which just passes through the Disks to the Operating System so for the System it’s “Just a Bunch Of Disks”

First we need to download a configuration utility.
Because from my understanding Unraid doesn’t have this installed by default.

In my case i am running a DELL PERC H730 Controller which means i need the PERCCLI from Dell (downloaded it from here)

After downloading it i unpacked it on the Server and well then i would say it’s party time cause now we configure this thing

root@Tower:/mnt/user0/software/perccli# ./perccli64 

      PercCli SAS Customization Utility Ver 007.2110.0000.0000 Sep 27

    (c)Copyright 2022, Broadcom Inc. All Rights Reserved.


help - lists all the commands with their usage. E.g. perccli help
<command> help - gives details about a particular command. E.g. perccli add help

List of commands:

Commands   Description
-------------------------------------------------------------------
add        Adds/creates a new element to controller like VD,Spare..etc
delete     Deletes an element like VD,Spare
show       Displays information about an element
set        Set a particular value to a property 
get        Get a particular value to a property 
compare    Compares particular value to a property
start      Start background operation
stop       Stop background operation
pause      Pause background operation
resume     Resume background operation
download   Downloads file to given device
expand     expands size of given drive
insert     inserts new drive for missing
transform  downgrades the controller
reset      resets the controller phy
split      splits the logical drive mirror
/cx        Controller specific commands
/ex        Enclosure specific commands
/sx        Slot/PD specific commands
/vx        Virtual drive specific commands
/dx        Disk group specific commands
/fall      Foreign configuration specific commands
/px        Phy specific commands
/lnx       Lane specific commands
/[bbu|cv]  Battery Backup Unit, Cachevault commands
Other aliases : cachecade, freespace, sysinfo

Use a combination of commands to filter the output of help further.
E.g. 'perccli cx show help' displays all the show operations on cx.
Use verbose for detailed description E.g. 'perccli add  verbose help'
Use 'page[=x]' as the last option in all the commands to set the page break.
X=lines per page. E.g. 'perccli help page=10'
Use J as the last option to print the command output in JSON format
Command options must be entered in the same order as displayed in the help of 
the respective commands.
Use 'nolog' option to disable debug logging. E.g. 'perccli show nolog'

root@Tower:/mnt/user0/software/perccli# 

So this is what we get when we run this command.
Well what the hell do we do now ?
Good question we gonna configure our controller to switch to HBA mode so he see puts all the disk as “Just a Bunch of Disks

#First command is to show our controller /c0 stands for controller 0
./perccli64 /c0 show 
#Then we set the personality 
./perccli64 /c0 set personality=HBA
#And then to confirm we check if the settings wer set
./perccli64 /c0 show personality

And after that we should reboot our system just to be sure.

I have then this if i put in /c0 show

root@Tower:/mnt/user0/software/perccli# ./perccli64 /c0 show
Generating detailed summary of the adapter, it may take a while to complete.

CLI Version = 007.2110.0000.0000 Sep 27, 2022
Operating system = Linux 6.1.106-Unraid
Controller = 0
Status = Success
Description = None

Product Name = PERC H730 Adapter
Serial Number = 71501RZ
SAS Address =  51866da098e00200
PCI Address = 00:2e:00:00
System Time = 11/15/2024 18:40:34
Mfg. Date = 01/07/17
Controller Time = 11/15/2024 17:40:32
FW Package Build = 25.5.9.0001
BIOS Version = 6.33.01.0_4.19.08.00_0x06120304
FW Version = 4.300.00-8368
Driver Name = megaraid_sas
Driver Version = 07.719.03.00-rc1
Current Personality = HBA-Mode 
Vendor Id = 0x1000
Device Id = 0x5D
SubVendor Id = 0x1028
SubDevice Id = 0x1F43
Host Interface = PCI-E
Device Interface = SAS-12G
Bus Number = 46
Device Number = 0
Function Number = 0
Domain ID = 0
Security Protocol = None
JBOD Drives = 8

JBOD LIST :
=========

----------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model            Sp Type 
----------------------------------------------------------------------------
 :0       0 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :1       1 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :2       2 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :3       3 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :4       4 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :5       5 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :6       6 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :7       7 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
----------------------------------------------------------------------------

ID=JBOD Target ID|EID=Enclosure Device ID|Slt=Slot No|DID=Device ID|Onln=Online
Offln=Offline|Intf=Interface|Med=Media Type|SeSz=Sector Size
SED=Self Encryptive Drive|PI=Protection Info|Sp=Spun|U=Up|D=Down

Physical Drives = 8

PD LIST :
=======

----------------------------------------------------------------------------
EID:Slt DID State DG     Size Intf Med SED PI SeSz Model            Sp Type 
----------------------------------------------------------------------------
 :0       0 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :1       1 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :2       2 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :3       3 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :4       4 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :5       5 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :6       6 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
 :7       7 JBOD  -  9.095 TB SAS  HDD N   N  4 KB HUH721010AL42C0  U  -    
----------------------------------------------------------------------------

EID=Enclosure Device ID|Slt=Slot No|DID=Device ID|DG=DriveGroup
DHS=Dedicated Hot Spare|UGood=Unconfigured Good|GHS=Global Hotspare
UBad=Unconfigured Bad|Sntze=Sanitize|Onln=Online|Offln=Offline|Intf=Interface
Med=Media Type|SED=Self Encryptive Drive|PI=PI Eligible
SeSz=Sector Size|Sp=Spun|U=Up|D=Down|T=Transition|F=Foreign
UGUnsp=UGood Unsupported|UGShld=UGood shielded|HSPShld=Hotspare shielded
CFShld=Configured shielded|Cpybck=CopyBack|CBShld=Copyback Shielded
UBUnsp=UBad Unsupported|Rbld=Rebuild

Well we see we have our drives now and they are listed as JBOD

And on that note my friends we have successfully configured our System to detect our SAS drives for Unraid.

Keep in mind this is my System so your config may vary a lot between the steps i did here but so summarize:

Check the Power Supply for the drives to be MOLEX
Check the RAID Config to be HBA mode so the drives are JBOD
And most of all have fun while doing small little homelab projects

Closing thoughts:

Well this was a fun endavour, i wish i had more time to write stuff down and be more productive on writing my stories but all in all i am happy with the outcome.
I learned a lot about how SAS drives work and how they are powered and how everything works with the raid controller and perccli and in the end i have a shit ton of space now, so all in all happy me 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *