Installing TrueNas Scale: "Can not find sda3 Not a block device"

Hi folks!

This started out as a way to long post, but summed up, my questions are:

  1. How to best utilize my drives
  2. Core vs Scale
  3. Problems installing scale

The hardware I have so far is:

  • Case: Cooler Master CM590
  • Motherboard: Asus P6T Deluxe v2
  • CPU: Intel Core i7 LGA1366
  • RAM: 24GB HyperX Genesis DDR3 800MHz (6x 4GB)
  • PCIe x8 Nvidia Quadro F1500
  • PCIe x8 LSI SAS3 9300-16i HBA with SAS to Sata (IT-mode)
  • Slim DVDRW (from an old laptop) (Sata to MB)
  • 1x 256GB LiteOn Sata SSD (Sata to MB)
  • 2x 256GB SanDisk Sata SSDs (Sata to MB)
  • 4x 256GB Samsung P871a SSDs (Sata to LSI)
  • 4x Seagate 10TB Enterprise (ST10000NM0156) (Sata to LSI)

Given the drives that I have, my plan is to use:

  • OS of 2x SanDisk SSDs
  • zPool of
    ā€” 4x 10TB drives i raidz1
    ā€” 2x Samsung SSDs as cache
  • 1x LiteOn SSD as spare
  • 2x Samsung SSDs as spares or cache in a future addidional pool.
  1. Do you approve or would you suggest another setup?

I have been considering Core vs Scale, and as of now it kind of get down to these questions. I think I already know the answer, but still:
2. Does any of these features require Scale? (for all I know they might not be possible on either Core or Scale)
a) Backup/sync to another TrueNas physically located somewhere else, like at another family member.
b) Autosync from a mobile phone (outside of house) (my, wifeā€™s, kidā€™s) to my/our TrueNas
c) Stream video/content from Nas to mobile phone (outside of house)

  1. Help with the ā€œnot a block deviceā€ message when installing Scale, is this due to the motherboard (Asus P6T Deluxe v2) being old and no support of UEFI? Is it resovable, or will I get less hassle, now and in the future, by just getting a newer motherboard (or just go core for now)?

Now, this is my first system, and I thought Iā€™d try out stuff before I put it into use. So I installed TrueNas Core on one of the SSDā€™s, and chose legacy boot in the process, as the motherboard do not have UEFI. This worked fine, I also tested with a few 320GB drives I had laying around to make a pool. So far, so good.

So, my next thought was to test Scale. I got the impression that Scale might give more functionality, both now and in the future.

But installing Scale failed with the ā€œCant find sda3 Not a block deviceā€ message, and the next time I tried to install the drive was marked with ā€œNULLā€. I have searched for sollutions, I have found a few suggestions, but have not been able to solve this, I got lost in the process on some of them too.

The drives seems good, cause when connected to a windows pc later, I can delete partitions, make new ones and such, so the SSDā€™s are fine.

Any advice? Iā€™ll provide more info/details on demand.

Hi

So, first question is what is your use case ?
Do you need to frequently access different files or not. Or are the files large, e.g. movies.

What is your network topology ? 1G, 10G?
Because L2ARC (ā€œcashā€) is in most homelab situations not beneficial at all because the network is the bottleneck anyway and latency doesnt matter if your just streaming a movie.

Your cash is your RAM=ARC but with your mobo your already maxed out at 24GB. And in most cases this should be ok if you are not running VMs or tons of apps.

I would use 1 ssd for the bootpool
6 ssds as a fast ssd pool
And the hds for another pool.
Be aware of the risks running a raidz1 with large discs.

Did you try another ssd for the bootdrive ? Did u get the same error?

EDIT: also watch out for the temps on that 9300-16i. They get HOT, especially when not used in a server case with tons of airflow.

Thank you for your reply!

Iā€™ve tried both the Sandisks and the Liteon SSD, both separate and several. Same error. And when I connect it to my windows pc, I can see that 4 partitions have been created, swap, EFI and such.

And yes, my LAN will be the bottleneck. I use wifi mesh (Deco M9+) for the most part. Grouped wired units by each mesh accesspoints are 1Gbit, but speedtesting the wireless gives me about 200Mbit between accesspoints. More tp cables is coming up, but as of now 200Mbit is the bottleneck.

I donā€™t picture VMs or tons of apps. I picture the use will be relativly modest. Each familiy member having their own ā€œfolderā€, made availible on each of their computers, and then a shared space for such as family pictures.

Allthoug most contet now is streamed, I also will have a share for any movies/series I happen to still have, so they can stream it to their unit.

And by risks running a raidz1 with large discs I assume you mean risk of 2nd drive fail while rebuilding failed drive? I will have another computer with duplication of the most important stuff from the NAS, so that should be ok.

All of this works very stable on CORE. And no need for L2ARC.
So if you can install CORE, I would go with that.
Once we/you figured out a solution, you can always switch to SCALE.

Hello,

I had the similar issue recently with being unable to install on a bios system with 24.04.

The error was:
lsblk: CANT_FIND_sda3_OR_sdap3: not a block device

This is what I did(based on this pull request):

  1. In the installer, select ā€œ2. Shellā€.
  2. In the shell, type in vi /usr/sbin/truenas-install
  3. In vi, type /SUCCESS
  4. Look in the next few for a line with return 0 (maybe 15 lines)
  5. Move the cursor on the line before (should be empty)
  6. Type in a to append text
  7. Type sleep 20
  8. Press the escape key.
  9. Type in :wq followed with the enter key
  10. You should be back in the shell
  11. Press CTRL + d to return to the installer.
  12. Choose Install/Upgrade

This will cause the script to pause for 20 seconds for both drives(if a mirroir install is selected) and should be enough for the partition to show up. If not increase the sleeping time.

For reference, hereā€™s the function where the sleep cmd should be inserted(near the end)

wait_on_partitions()
{
    if [ "$#" -lt 2 ]; then
        echo "FATAL: A disk and at least one partition number must be given" > /dev/tty
        return 1
    elif [ ! -b "/dev/${1}" ]; then
	# we assume the block special device exists
	echo "FATAL: Disk device (/dev/${1}) not found" > /dev/tty
	return 1
    fi

    local _disk="$1"
    shift
    local _sleeptime=1
    local _maxwait=30
    local _slepttime
    local _parts="$*"
    local _part _slepttime
    for _part in ${_parts}; do
        _slepttime=0
        while [ ${_slepttime} -lt ${_maxwait} ]; do
	    if [ -b "/dev/${_disk}${_part}" ]; then
                echo "SUCCESS: Found /dev/${_disk}${_part}" > /dev/tty
                break
            elif [ -b "/dev/${_disk}p${_part}" ]; then
                echo "SUCCESS: Found /dev/${_disk}p${_part}" > /dev/tty
                break
            else
                sleep ${_sleeptime}
		_slepttime=$(expr $_slepttime + 1)
                echo "Slept ${_slepttime} seconds waiting on disk (${_disk}) partition number: ${_part}" > /dev/tty
		if [ ${_slepttime} -eq ${_maxwait} ]; then
		    echo "FATAL: Could not find /dev/${_disk}${_part} or /dev/${_disk}p${_part}" > /dev/tty
		    return 1
		fi
	    fi
	done
    done

    sleep 20 # This is where the sleep cmd should be inserted
    return 0
}
1 Like

Thanks for your detailed answer,

I had the same Issue, but unfortunately, I could not resolve this issue with your solution.
In the end, my BIOS showed no proper boot devices.
So my only solution was to change my the BIOS from SeaBios to OVMF. In my case, with Proxmox, I also had to add an EFI disk. I used the default settings for this. In the UEFI BIOS itself, I then had to disable Secure Boot. And now it works.

1 Like

Thanks for your reply, Iā€™ll try that when Iā€™ve got the time. I tried a similar guide, but got lost in the code, thanks for the specifications.

As I understand it, this is just an installation issue, and should not be a problem once itā€™s installed?

Yes, itā€™s an installation issue. Iā€™m currently running truenas quite happily after using that fix.

Allright, I have given it a few more attempts, but with no luck. I tried to install on a single drive, sda, and on a mirror, sdb and sdc, with the same result.

After the step of confirming swap and legacy boot if prompted, i get the following lines:

Creating new GPT entries in memory.
The operation has completed successfully.
The operation has completed successfully.
The operation has completed successfully.
The operation has completed successfully.
SUCCESS: Found /dev/sdb1
SUCCESS: Found /dev/sdb2
SUCCESS: Found /dev/sdb3
SUCCESS: Found /dev/sdb4
lsblk: CANT_FIND_sdb3_OR_sdbp3: not a block device
The TrueNAS installation on sdb sdc has failed. Press enter to continue...

Same thing when I try to install on sda only as well. I tried to add 200 as well, but no difference.

Now, the function you added in your post, ā€œwait_on_partitionsā€, does include some sleep allready. I tried to adjust the values of _sleeptime to 5 and _maxwait to 50, but no difference. But I think that function actually finds all the partitions, becaus the four ā€œoperation has completed successfullyā€ phrases and the four ā€œSUCCESSā€ phrases comes from that function.

I searched the whole code in that file, and I have not found that particular error phrase in that code. The only phrase I could find that partly resembles, is within the get_partition function, but it lacks the initial part and ending part; "lsblk: " and ā€œ: not a block deviceā€.

Can you see the whole error message in the code? Is it from another file/set of code?

Iā€™m also thinking it might be caused by old hardware / motherboard with BIOS only, and not UEFI. But how/why, I donā€™t know.

Thanks for your help on this :slight_smile:

get_partition()
{
    local _partitio =$(ls /dev/$1$2 /dev/$1p$2 2>/dev/null)
    if [ -z $_partition ]; then
        Echo CANT_FIND_$1$2_OR_$1p$2
    else
        Echo $_partition
    fi
}

Where you able to fix this issue ?

I have no idea why im getting this error. I am trying to install this on a dell optiplex 9020 ultraslim pc

I just hit the same installation failure.
ā€œCan not find sdc3 or sdcp3 Not a block deviceā€

I already installed TN from this USB stick onto this SSD a week ago and have been running OK since. I decided to do a clean install and hit this error.

I tried all combinations of choices in install script
I tried removing the HBA leaving only the SSD.
I tried a different SSD
I tried removing the partitions on the SSD using Windows.
Couldnā€™t remove 1 of the 4 partitions which was labelled as EFI
I had been using a 24.04.1 install and also downloaded and tried a 24.04.2 version

note: The original installation has been deleted/corrupted so it wonā€™t boot.

When I originally installed TN last week I was using a clean SSD. This time it had been partitioned by the previous install. Do I need to wipe the disk before doing the install.

Update: I wiped the SSD clean using Windows DiskPart. When I tried the install, it reallocated the partitions before complaining about ā€˜Block Deviceā€™

BTW - what is a block device

I found a solution that works. It seems that this problem is in the TN Scale 23 & 24 releases.

I downloaded and installation iso of the latest Core - TrueNAS-13.0-U6.2 and installled it. I also downloaded a copy of the the update file to migrate Core to Scale - TrueNAS-SCALE-24.04.2.update.

I installed the Core without issue then used the update file to do a manual update. Lo and behold - I have a working clean install of Scale 24.04.2

And I only spent about 6 hours working on this problem.

1 Like

I similarly spent most of the weekend attempting to install a ā€œbackupā€ copy of my working Scale onto a 32 GB industrial SSD card, to no avail. The idea is to have a spare OS drive in case the current SSD ever fails, albeit unlikely.

Now that I have found this thread, at least I now have new approach to attempt!

I saw the same errors and I also use vi to introduce a 20 s delay via instructions found on Reddit somewhere (it didnā€™t work):

[edit - add URL]

https://www.reddit.com/r/truenas/comments/1794z3n/error_installing_scale_lsblk_cant_find_sda3_or/?rdt=47144

However, the approach discussed in this currrent TrueNAS forum thread is a different way to avoid this infernal ā€œnot a block deviceā€ statement.

Iā€™m a bit surprised that the Scale installer is failing.

Has anybody opened a new bug ticket? We had a similar issue a while back and found we needed a fix in the installer to wait longer for block devices to become available.

I havenā€™t - it didnā€™t occur to me to do so because Iā€™m only a hobby user and my ability to present germane information might be quite limited! Might be best if one of the other posters submits a report; likely to be better than mine.

[edit - I did just try to create an Atlassian account but none of my ā€œdisposableā€ email addresses were accepted]

edit again - it worked the second time I tried to register: I have just submitted my first bug!

https://ixsystems.atlassian.net/browse/NAS-130061

EB

My limited grasp: a ā€œblock deviceā€, when you do ā€œlsblkā€, just means some form of mass storage where the structure is defined in blocks (e.g. 512 bytes for an SSD or 8192 or 256 etc.) and I think the blocks make up sectors in the case of magnetic HDDs but I am not sure about SSDs.

copying from $ man lsblk, it says a lot more and hereā€™s the first bit of prose:

ā€œlsblk lists information about all available or the specified block devices. The lsblk command reads the sysfs filesystem and udev db to gather information. If the udev db is not available or lsblk is compiled without udev support, then it tries to read LABELs, UUIDs and filesystem types from the block device. In this case root permissions are necessaryā€.

It goes on to say things I donā€™t understand, namely

ā€œThe relationship between block devices and filesystems is not always one-to-one. The filesystem may use more block devices, or the same filesystem may be accessible by more paths. This is the reason why lsblk provides MOUNTPOINT and MOUNTPOINTS (pl.) columns. The column MOUNTPOINT displays only one mount point (usually the last mounted instance of the filesystem), and the column MOUNTPOINTS displays by multi-line cell all mount points associated with the deviceā€.

I just wanted to add something here because Iā€™ve struggled with this issue.

When I edited the file in vi initially I totally forgot how important the ā€œindentā€ before the ā€œsleepā€ command was and naturally the delay didnā€™t happen.

I subsequently edited that with the indent and I can certainly confirm that in my case the ā€œwaitā€ for the partition happened.

However on my HP MicroServer Gen 8 with a single SSD installed on SATA 5 it still failed with the ā€œCANT_FIND_sda3ā€¦ā€ error.

So now I will try the alternative solution here to install TrueNas Core and then update and see if that works.

Quite frustrating since Iā€™m sure when I installed previous versions I didnā€™t pick up this error at all

Iā€™ve had a day full of disasters, compounded because of this continuing problem (but in spite of this continuing installer problem, my immediate problem is now thankfully fixed).

I wanted to clone my system OS+boot pool SSD. My reasoning was that ordinarily, a quick re-install to a new drive ought to be painless but given these ongoing problems I decided Iā€™d make a ā€œbackupā€ spare disk just in case.

I took my existing system disk out, intending to use gparted on my desktop machine to copy the partitions to a new drive of similar (but it turns out, slightly smaller) size, also connected to my desktop machine.

It didnā€™t work and, having been careful not to mount the system drive during this cloning attempt, I put it back into my TueNAS box only to find the TN wouldnā€™t boot. I donā€™t know why and I was too anxious to do much experimenting. This was turning into a disaster.

I decided to reinstall the OS on this original SSD, installed back in my TN box. Using iLO 4 I mounted the latest TrueNAS-SCALE-24.04.2 ISO which I downloaded today and attempted to install the OS.

The first problem I hit was the inability to select the drive I wanted to target - see screenshot1 below where I could move the blue bar up and down and I could select OK or cancel but no matter how many times I pressed the space bar or clicked with my mouse, the asterisk wouldnā€™t turn up [*].

Trying to proceed, I removed the RAIDED drives so the only disk was this original and now-broken system SSD. Perhaps the installer would see sense and install to the only disk available? That didnā€™t work. Screenshot2 below:

I started the process again - same problem.

I started the process yet again and this time, for reasons I have no idea about, the selection worked. By now I had spent the best part of 45 minutes trying to reinstall.

It got to the point where it says ā€œdo you want a UEFI (select yes) or a legacy boot (select no)ā€. I took the advice and I selected ā€œnoā€ and was horrified to see the familiar ā€œthis is not a block deviceā€. Screenshot3:

Reasoning that the installer might be different, I tried using a newly downloaded ISO of TrueNAS-SCALE-23.10.2 and got the same failure message at the same point.

I read that someone had successfully installed ā€œCoreā€ and then upgraded so I tried the same approach with TrueNAS-13.0-U6.2 and I got a different problem in that I couldnā€™t proceed Screenshot4 says something about a full path or shorthand device name.

I then made a bootable USB stick to try and speed things up and also use a slightly different installation method. I tried booting from that. I got to the same point and got the same ā€œnot a block deviceā€ error.

I tried again using the USB stick and this time selected ā€œUEFI (select yes)ā€ on account of having run out of ideas. The process continued to completion I reinstalled my config+secrets file and all was well. Screenshot5.

Only about three and a half hours and a loss of a pint of sweat and tears!

I now have a working system, fully reinstalled and a spare blank SSD on which to attempt installing a backup copy with secrets so that, in the unlikely event of an SSD failure, I can power down, switch SSDs and be working again within ten minutes. Ten minutes is about how long it takes to install trueNAS on a fresh SSD when the installer does work, so once the problem is fixed I can simply go down that avenue to create a ā€œbackupā€.

In the mean time, If anyone can advise a safe way of cloning my SSD bearing in mind its ZFS nature, please let me know. I should have looked at CloneZilla but I wanted to do something which avoided rebooting my main linux box (for no particularly good reason to be honest).