[SOLVED] Mount USB drive in Hassio to be used on the Media Folder with udev customization

I used the second version, and made no changes.
Both drives, the original 1TB, and the new 8TB, are formatted as NTFS. That doesn’t seem to be a problem. The problem is that the volumes reported by “df -h” reflect the size of the original 1TB drive. When I unplugged the 1TB drive and plugged in the 8TB drive, that additional space isn’t reflected anywhere.

I figured it out. Turns out, NEITHER external drive actually got mounted. A folder was created under /media for each of the external drives when I plugged them in, but neither drive was actually mounted to the relevant folder.

I manually mounted the 8TB drive to its folder, and now I’m seeing the additional space reported, and can read/write files there.

  • did you label the drive?
  • after unplugging the 1tb and plugging in the 8tb it won’t reflect the space until haos is rebooted

You shouldn’t need to manually mount the drive. But if you change drives or add new, you will need to reboot to see the space reflected.

Both drives were labelled, and the folder that was created under media for each of them matched the labels accordingly. I rebooted the PC multiple times before/during/after the drive additions and removals, had no effect.

Manually mounting to the folder under /media has solved my problem, I’m good to go now.

Hello. I recently purchased a Beelink U50 Pro mini pc similar from this review. There is an optional 2.5 in ssd/hdd I can add via sata3. Will this setup work or does it have to be plug in to a usb port??

Hi @tracymckibben , i have the same problem you had with the udev method. What command do you use tu mount your drive ? Is your external drive NTFS ? Is it persistant on reboot or you have to mount it back every time ?

I have tried the following via ssh user@pwd 22222:

/usr/bin/mkdir -p /mnt/data/supervisor/media/MYDIRECTORY (this works OK and it create the directory

/usr/bin/systemd-mount --no-block --automount=no --collect /dev/sdb1 /mnt/data/supervisor/media/MYDIRECTORY

The systemd-mount command shows the following : Started unit mnt-data-supervisor-media-MYDIRECTORY.mount for mount point: /mnt/data/supervisor/media/MYDIRECTORY BUT the lsblk command show the drive with no mount point

I also tried the -t ntsf option but I have the same result

thanks for your help

@goldriver - did you find a solution? I have the exact same issue here - I can get usb sticks to mount, but not an ntfs hdd (I haven’t got the usb sticks mounting automatically through udev rules - but not trouble shooting that, because I can’t get usb ntfs hdd to mount).

1 Like

how to create switch.mountusb?

I followed the instructions here and managed to mount NTFS drives:

1 Like

I already tried that method but in HAOS NTFS is NOT an option, I have been able to mount all FAT and ext4 formatted drive but ANY ntfs are not mounting as they are not recocnised as a type by the mount command

check my previous post, I was able to mount NTFS drives using the instructions from that video. Basically, you need real root access before you can mount anything.

I made all test from root access but when trying to mount the drive, there is always a message saying that MOUNT doesn’t have NTFS drivers.

Wondering, what is your installation, HASSOS, Container,Supervised or Core ?

Hi duceduc
Just spotted your post. I’m doing exactly as you’ve said, and have the following as my udev rule to mount the second drive:

KERNEL!="sdb", GOTO="abort_rule"

ACTION=="add", RUN{program}+="/usr/bin/systemd-mount --no-block --automount=no --collect /dev/disk/by-uuid/8bfc6f38-341b-412c-82c0-7590b46b7262 /mnt/data/supervisor/media/frigate"
ACTION=="remove", RUN{program}+="/usr/bin/systemd-umount /mnt/data/supervisor/media/frigate"

LABEL="abort_rule"

well, recompiling HAOS is a solution; i extracted 5.15.90 ntfs.ko and ntfs3.ko modules, loaded them successfully., mounting is working, transferring files seems to be ok, but i’ll stay away from ntfs3 right now, just not sure if i want to risk some tens of terabytes of data…
insmod only manually, or as a automation, until now, i;m looking for an elegant solution to load these modules (among others) at start
also, recompiling will be required after each HAOS update, for sure … dkms is a very long run here:)

later edit: i created an autorun script, ran as homeassistant container startup. unfortunately, this will mean that any disk already connected to system will require unplugging and re-plugging, because udev will not have the ntfs driver loaded at that time (i give up to ntfs3, i can load it manually if needed). also, a home assistant restart is required, as for the content to be seen in media folder (maybe someone have another solution?)

This is what I was looking for. But I’m afraid to mess up my system…

I have HA Supervised on Debian Linux 11 Busllseye. NUC i5.
System it’s at sda (ssd m.2) and have another drive sdb (ssd) where I would like to store media from my cameras.
I would like to used sdb1 as the media folder.
Could someone please tell me if I have to change lines 50 & 53?

Someone? Please?

Hello all.

I am sooo weak in writing udev rules, so i’m having the hardest time.

I have two internal discs on my Intel NUCi5. An m.2 nvme and a SSD. Problem is that the system drive is on sdb, and the extra drive is on sda, so i want the rule to skip mounting the sdb drive.

I have tried different udev rules, but it gives me weird results.

This is the original rule:

# Filter on block devices, exit otherwise
# CAUTION: Change to 'sd[b-z][0-9]' if booting from a USB drive (e.g.: sda)
KERNEL!="sd[a-z][0-9]", GOTO="abort_rule"

# Skip none USB devices (e.g.: internal SATA drive)
ENV{ID_PATH}!="*-usb-*", GOTO="abort_rule"

I have modified it to:

# Filter on block devices, exit otherwise
# CAUTION: Change to 'sd[b-z][0-9]' if booting from a USB drive (e.g.: sda)
KERNEL!="sd[a-z][0-9]", KERNEL=="sdb[0-9]" GOTO="abort_rule"

# AND DELETED THIS RULE
ENV{ID_PATH}!="*-usb-*", GOTO="abort_rule"

I have also tried

# Filter on block devices, exit otherwise
# CAUTION: Change to 'sd[b-z][0-9]' if booting from a USB drive (e.g.: sda)
KERNEL!="sd[c-z][0-9]", GOTO="abort_rule"
KERNEL!="sd[a][0-9]", GOTO="abort_rule"

and

KERNEL!="sd[a,c-z][0-9]", GOTO="abort_rule"

Got the weirdest result, where lsblk showed that the USB drive on sdc wasn’t mounted, but it actually was and was accessible in the media folder. The sda drive did show up as mounted, but wasn’t accessible from the media file.
One time, when i did a host restart, it actually mounted every drive, including the ram, so had to do a complete system restore.

So please - how do i make the udev rule, so that i mounts every sd drive, including sata, except the sdb.

How did you get the USB with the key imported into HA ? I don’t see this option anymore in the latest release

I used this solution and its working. But cant get automatic drive mount. Fighting with that right now

1 Like

Great, thanks. Just wonder how you have created the required SSH Key ?