Y'all are trans, and I know how much you trans Zoomers code (no idea if that's a Linux thing or not tho), so I thought I might try Hexbear for some tech help. I'm fried, I've watched so damn many tutorials and read so many threads on this but I can't seem to work it out. I barely know a few basic commands in the console, and the alphabet soup of different directories, programs, and the very language that's used to discuss Linux is too much for me to process. I've learned a lot, but I need some help.
I've built a pretty nice server that's not doing much right now besides NAS storage. I'm running a TrueNAS scale VM on Proxmox, I'm filling it up with all my pirate booty, and I want to watch it through Jellyfin, which I have installed to an LXC container (unprivileged for security, tried it both ways and I can't get it). The problem is, how do I get jelly to see the NAS drive? I don't know how to map it one way or another. I'm running the storage through an HBA in ZFS mirror with an SMB data set that I can see just fine and access in Windows, but jelly seems to just be stuck in it's own little world.
I've seen things about creating users within jelly, which I tried, and it just tells me that the user I supposedly created with SMB credentials doesn't exist. Tried using the GUI to find the NAS via IP, no dice. I'm fucking tired, I've been at it for a week or so now, I just want to watch a movie this weekend.
Okay, so I did that. My directory is [IP]/mnt/M14 - Media/Media, so I changed it to /mnt/M14\040-\040Media/Media. Is that correct? it hasn't worked yet, getting this error:
mount /mnt/lxc_shares/nas_rwx mount error(2): No such file or directory Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg) mount: (hint) your fstab has been modified, but systemd still uses the old version; use 'systemctl daemon-reload' to reload.
okay that took care of the space issue at least judging by the different error!
https://unix.stackexchange.com/a/154465/162315 this seems to indicate that for CIFS
No such file or directory
errors could be caused by a variety of non-obvious issues. if you ran the mkdir command the mount point /mnt/lxc_shares/nas_rwx should exist so I'm going to leave that aside.This post seems like a more plausible issue. Is the name of your smb share really "mnt", or is that just the start of the path to the dir you've shared?
If that is the actual SMB share name, then maybe it is an issue with subdirectories... In that case I would try mounting the base level share directly, and if that works, then you can change the /etc/pve/lxc/ configuration to only bind mount the subdirectory you want into the jellyfin container.
Okay, so under the SMB tab on TrueNAS the "path" is /mnt/M14 - Media/Media. The name of the ZFS pool is just M14 - Media though. So I'm not at all sure what the answer is there. And as far as your solution... I have know idea what the heck that means lol! I read the thread and I still don't know what to do.
so, looking at some tutorials, as I haven't used truenas before, when you look at this bit there should be both a Path (the local-to-truenas path to the directory being shared) and a Name (the name of the share). You want the Name field.
I believe it should be
//192.168.x.xxx/name_here
rather than giving the full path. So hopefully truenas can tell you the name of the smb share.Buuuut, according to that truenas page, the default name if none is set is the last folder in the path. So if you can't find any indication of a name for the SMB share that you set, try
//192.168.x.xxx/Media
since that is (correct me if I'm wrong) the last folder name in the path.the subdirectory thing I can elaborate on if that turns out to be the issue still somehow, but I'm kinda doubting it at this point.
SMB is a windows thing so the concepts aren't usual linux concepts exactly, especially having a named share rather than just mounting based on the file/dir path is... a bit weird
You magnificent, beautiful person... I love you.
Edit: Jellyfin is displaying two mount points for some reason... both work, so I'll assume that won't be a problem?
I mean it's not ideal but I can't think of why it would be an issue. If it breaks then worry about fixing it, imo
anyhow fuck yea! gl sailing the seas :rat-salute:
Yarrr! 🏴☠️
New problem, Can't connect to the drive from windows now... What have I done?!!
Edit: Windows was giving me a code, I couldn't even get to a point of entering credentials. I followed a tutorial to get it back up and running. Now I can enter credentials, but it won't accept any of them...
Edit 2: Now the Jellyfin container won't start! 😭 😭 😭
Edit 3: Windows can't see the drive again... I'm about done.
Noooo
hmm. shit.
well first off, it sounds like there are some issues that can prevent multiple clients from mounting the same share but I havent found a lot of specifics...
any chance you could check first: is your SMB share set to use ACLs for permissions? I think this would be the Enable ACLs checkbox under advanced options on the smb share. it doesnt necessarily need to be but it chnges how permissions are done
Then ideally you'd check the logs to see what error the server side is spitting out when it fails. So, get the windows computer ready to try connecting to the share, then run
tail -f /var/log/samba4/log.smbd
, then try connecting and see what that tail spits out. then Ctrl-C to quit out of the tail.could do the same thing for the lxc but if it's not starting maybe best to stick to one problem at a time to start with
Okay, so here's what I did. I cleared the ACL on the SMB share, then unchecked the enable ACL box. The LXC finally started again, still don't know what was going on there. I worked and was able to access the NAS just fine and stream things. But once I turned off the ACL it doesn't have access anymore. The tail command gave me this:
While that was running I tried to log in to the drive through windows, which is still seeing the NAS, but when I type in the password it doesn't even register as an attempt on the log now. Previously my attempts to log on showed up under alerts, now nothing and the connection attempts are non stop from the LXC....
Update even before I post: I was able to manually enter in the PVE IP as an "allowed" host under the SMB share and now Jellyfin can do its thing. I tried to access the share drive on my phone and it couldn't get on, so I added my phone's IP to the list and it works again. But when I add my main PC's IP to the list it still won't allow access. So it's clearly a setting on my PC now - the tails command still isn't registering any attempt from my PC. I feel like this should only be a temporary fix.