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 🙂