Solutions
-
bmartino1's post in Moving Plex server form Desktop to Docker on Unraid. Desktop works Dock has connection error was marked as the answeryou may need to delete the unraid plex appdata folder.
cd /mnt/user/appdata/ and delete the plex folder
on unraid have your content in a folder structure...
https://trash-guides.info/Plex/
https://trash-guides.info/File-and-Folder-Structure/
if setting up the *Ars (sonar, radar for other autmated media gathering...)
you should have a unraid data sahre called data
data ├── torrents │ ├── books │ ├── movies │ ├── music │ └── tv ├── usenet │ ├── incomplete │ └── complete │ ├── books │ ├── movies │ ├── music │ └── tv └── media ├── books ├── movies ├── music └── tv
so plex data foldder will be the media / data folder...
I recommend using the linux server plex CA template
filling in the folder structure where you movies, tv shows are located at..
as you can edit this to be any continer folder pat such as /data and map it to teh unraid conting folder.
then in plex libaries you add the continer pat folder that has the content...
this will keep your meai content that you have on unraid and reload any and all video metadata downloaded from plex movie database.
-
bmartino1's post in Unable to install a VM on 7.1.2 was marked as the answerThank you for providing the diag file in it is the xml used for the vms...
you may need to use the generic linux option when making a vm
otherwise, lets review the xml directly as there are some problems.
as the issue are that the vm is kernel panicking at boot...
On unraid In your Mint VM in the .xml
Lets review some small things to look at and edit...
AS this VM has some issues... as You have a memory mismatch among other thing to look at...
1. Memory Mismatch
<memory unit='KiB'>8388608</memory> <!-- 8 GB defined --> <currentMemory unit='KiB'>1048576</currentMemory> <!-- Only 1 GB active --> These should match. The VM is being limited to only 1 GB of usable RAM, which is too low for modern Linux distros and could lead to kernel panics or failure to boot.
<currentMemory unit='KiB'>8388608</currentMemory> set current memory to the memory unit...
2. Your using a old machine type...
Machine Type: pc-q35-8.0
<type arch='x86_64' machine='pc-q35-8.0'>hvm</type> While Q35 is usually fine, some distros may be more stable with the default i440fx machine type. Try changing to:
Optional fallback:
<type arch='x86_64' machine='pc-i440fx-8.0'>hvm</type>
3. the (vnc/spice vm generated driver for display...) Video Model: QXL
<model type='qxl' ram='65536' vram='16384' vgamem='16384' heads='1' primary='yes'/> QXL can cause problems, especially if guest additions or spice tools aren't properly installed. For better compatibility, switch to:
<model type='virtio'/> Or even more compatible:
<model type='vmvga'/>
4. potential bus disk incompatibility
<target dev='hdc' bus='virtio'/> VirtIO is good for performance but needs drivers in the installer. Try using sata for easier compatibility (especially in install phase):
<target dev='sda' bus='sata'/> setting sata can help get tot he terminal of a host VM to install the qemu guest agent and other qemu kvm addons...
5. CPU Passthrough Mode
as it looks like you went passthoguh mode...
<cpu mode='host-passthrough' check='none' migratable='on'> This can cause instability with newer kernels or on systems with specific microcode. Try host-model first:
<cpu mode='host-model' check='partial'>
other vm general notes and testing:
-Try Minimal ISO: Use Ubuntu Server or Fedora Netinstall ISO to reduce GUI-related issues.
-Test UEFI vs Legacy BIOS: Although UEFI is specified here, some Linux distros still behave better in legacy mode (remove <loader> and <nvram> for BIOS).
at the vm screen, I normaly use the defeat Linux options...
making some chagnes in teh add configuration...
deselct all setting 4 vcpu
set inital memory to 4 GB (not this matches and sets max memory...
change the vdisk bus to sata...
and add my iso and install...
up at the top right with edit vm you can go to xml view..
My example defautl linux xml code:
And that was just revieing the mint vm first and only... you need to update and fix your vms xml for kvm.qemu to install the other linux distros.
-
bmartino1's post in Unable to ping or access ips outside of the same sub-net was marked as the answerThanks, this confirms a Docker networking conflict, especially related to how Unraid is bridging and routing containers. You're hitting the common issue where Docker containers using a custom bridge or macvlan network can't reach other subnets due to how Linux handles inter-subnet traffic and isolation between interfaces.
as Your container (Nextcloud):
default via 192.168.1.1 dev eth0 192.168.0.0/16 dev eth0 scope link src 192.168.1.9 The container is on 192.168.1.9 and its subnet route is 192.168.0.0/16 — which includes 192.168.10.x and 192.168.30.x — but since it's only on 192.168.1.x, this route is black holing other subnets (10.x, 30.x) because no actual interface routes to them.
Some potential ways to fix:
Option 1: Reduce Container Subnet Scope
If you’re using 192.168.0.0/16 as the container’s subnet in a custom Docker network, reduce it to 192.168.1.0/24 so Docker doesn’t try to "own" the whole 192.168.0.0/16 range.
Go to Docker > Settings > Docker Custom Network
Look for the custom network configuration that includes 192.168.0.0/16
Change it to 192.168.1.0/24
Apply and restart Docker
*This ensures Docker only claims 192.168.1.x, not the entire /16 block that includes 192.168.10.x and 192.168.30.x.
Option 2: Switch from macvlan to ipvlan (if you're using macvlan)
-While I Prefer macvlan do to lan identity... ipvlan will keep the same mac which may be needed here...
If Docker containers are using macvlan, they often cannot communicate with the host or other subnets due to Linux kernel limitations.
Switch to ipvlan which doesn't isolate as aggressively:
In Unraid's Docker network settings, create a custom ipvlan network instead of macvlan
Use that for containers that need inter-subnet communication
You’ll find this under:
Settings > Docker > Advanced
Switch “Docker custom network type” to ipvlan
Apply changes and reassign containers to the new network
Option 3: Add Static Routes (Temporary Workaround)
Inside the container, you could manually add a static route for the other subnets via the gateway:
ip route add 192.168.10.0/24 via 192.168.1.1 ip route add 192.168.30.0/24 via 192.168.1.1 as the docker is not gettign the ip route and adational data beyond teh bridge...
To confirm that the issue is subnet masking, inside the container try:
ipcalc 192.168.1.9/16 -ip calc may note be installed default...
as it appears that unriad via host is working as it should, you may need to edit the dockers you want to cross subnet become the host network...
Review:
Some Docker networking Info when to use what docker network:
-
bmartino1's post in Is it possible to use Unison with Unraid? was marked as the answerif Unison is a linux application. unraid runs on slackware linux.
From what i can find Unison is a MIDI application ? ...
? https://www.cis.upenn.edu/~bcpierce/unison/
you may need to look at a lxc / vm or docker version of Unison, but this seems to be more a home automation something that can be achieved via leveraging udev rules and running scripts when devices are available...
OR You could run unison via docker.
Project pages
https://github.com/moveyourdigital/docker-unison-sync
https://github.com/onnimonni/docker-unison
Docker hub and tag
https://hub.docker.com/r/onnimonni/unison/#!
as a unraid CA template doesn't exist for this, so you would need to make a custom template and pass unraid data folder into the docker container to act as the unison docker folder path when making file shares...
however other dockers and system exist such as syncthing.. that can meet your needs...
Synching would run on the 3 devices and share across
-
bmartino1's post in 7.1.2 Issues was marked as the answercorrect the best course of action is to remove the plugins.
use usb manger over libvrit hotplug
themengine is a bit weird. From other in and out posts with others like folder view and other talks, alot of these are semi maintained. ATM I don't see a issue running theme engine. just not that it was meant for v6 and from what I can tell it has been abandoned.
thempark: is the curent run active in CA
https://docs.theme-park.dev/discord
I would recommend them park:
https://docs.theme-park.dev/themes/unraid/
-
bmartino1's post in Plex Libraries and Unraid file system was marked as the answerin your case, since they are shares already.
I recommend the ladder
so example
"/mnt/disk7/Education"
in the plex template you will need to add multiple additional path to make a docker container path point to a unriad folder path
so click:
example for education
this will mean that the plex docker will have a folder called and located at /education and be maped to the contents of the unrid folder share education...
repeat for each folder share you made this way...
so, when in the plex application within the docker, I can go to docker path /education and see the unraid education share and its contents.
then in plex tell the movie library to search that folder.
by adding education folder to my exising movies library
This way education adn documentaries will be under one plex library...
In my case 2 folders are added to my BMM-Movies library so content form both plex docker container path load the content form the mapped unraid folder share...
Otherwise, I can add a new library and only mount education to the education library
you may need to fix your folder shares and structures...
--Useful if making a kids account and wanting to separate libraries between shared users.
-
bmartino1's post in Help recreating Immich docker container was marked as the answerSee the guide...
If you delete the folder and files, be it share, appdata folder and photo data... Then all data is gone unless you have a backup...
If you have a database backup from immich see post on restoring postgress...
Otherwise your starting over... READ the entire Forum post! and follow the guide I'd recommend the CA route...
-
bmartino1's post in Plex Concurrent Transcoding only running one conversion at any one time despite available headroom was marked as the answerlimitation of plex and hyperthreading...
Review:
https://support.plex.tv/articles/213095317-creating-optimized-versions/
https://forums.plex.tv/t/optimize-transcoding-stop-after-doing-one-file-after-updating-to-latest-windows-server-live-build/905413
https://forums.servethehome.com/index.php?threads/bulk-optimize-media-for-plex-direct-play.10565/
https://forums.plex.tv/t/optimized-versions-just-sit-at-waiting-logs-have-a-message-that-says-diskfull-but-i-have-lots/906283
Essential its told and forced to do one at a time...
your better off using a video convertor and transition the files into a mp4 / mkv file... for direct play use no transcoding...
- I paid for any video convertor for doing this years back with other tools and needs.
plex transcoding was more for live tv dvr tuner stuff and was more based on what tuner or session was open and available.
I have not see muti concuret optimizations work nor run on plex in a long time...
-
bmartino1's post in Having trouble cloning a VM was marked as the answerdid you make snapshots?
-Their is some metadata for the vidsk then that not getting copped...
?rsync is not command to use here you want a full copy cp comand to copy the vdisk...
Ah is see your using the plugin...
The command execution fails due to missing folder /mnt/disk4/domains/WindowsGoldImag_clone
make this folder first...
mkdir -P /mnt/disk4/domains/WindowsGoldImag_clone
esentail script when rsync to confirm and make sure the files are the same failed as the initial vdsik failed to existing in the new "clone" folder...
-
bmartino1's post in Double unraid server project was marked as the answercomes donw to how you wnat to interact with it and what you want it to do.
Due to plex chanign plans and access i would recomend using jelly fin over plex unless you have a plex pass lifetime and user conecting to your plex also have a plex lifetime...
to answer your questiosn..
1. Plex/Jellyfin streaming from storage server — will there be lag?
Not if done right.
As long as:
Both servers are on gigabit or faster (ideally 10GbE) links
You're using direct file access protocols (NFS, SMB, or even iSCSI)
The storage server has enough I/O throughput (e.g., SSD cache, fast HDD pool)
Then Plex/Jellyfin on the "heavy" server can stream with no noticeable lag.
Transcoding performance, though, depends on CPU/GPU on the playback server, not where the files sit.
2. Separate network for inter-server communication — worth it?
Yes, especially if:
You're using 10G between them (e.g., via direct SFP+/RJ45)
You want to isolate storage traffic from internet/LAN access
You plan on heavy inter-server data movement (e.g., backups, syncing, large transfers)
A dedicated link (even 1G via a crossover cable or VLAN) helps reduce LAN congestion and increases transfer performance.
-Tailscale and sftp can be your friends here acorss the internet/intranet...
3. Shutdown on LAN (like Wake-on-LAN)?
-I'm personally not a fan of wol or sleep... if its 24/7 then its up 24/7 ... (I don't want snmp or magic packets on my network....)
There is plugins and other suport on the forum for this though...
Not natively standardized like WOL.
You'd need a workaround, such as:
SSH into the system and issue a poweroff
Use an API if the system supports one (some IPMI/iDRAC/iLO boards can do this)
Use Unraid's SSH plugin or user script for remote shutdown
Or integrate with something like Home Assistant to run shutdown commands via API or SSH
4. Only SSDs in heavy server — is cache drive still useful?
Maybe not needed.
If you're running all SSDs, Unraid's cache pool becomes redundant unless:
You're using a fast NVMe cache to buffer slower SATA SSDs
You want a dedicated scratch disk for certain apps/containers
Otherwise, just treat the SSD array as primary storage and disable Unraid's cache system.
I use unraid 7 to ditch the arrary and go pool only disk with zfs only. while more ram intensive, I don't have problems runnig unraid, nor hit a space and disk issues.
This said cache is recmoend to still have a btrfs voume for the swap plugin for zfs if ram resources are tight and other default setting that need chagned off the caceh disk...
--Some things like database shouldn't run on a array/zfs pool... thus it helpfull but no not needed..
5. What's important for fast data transfer (e.g., 10G on old hardware)?
NIC support is key: make sure the motherboard/CPU can handle the NIC's bandwidth.
PCIe lanes/bus speed must be sufficient — some old boards only have PCIe 2.0 x1 or x4, which bottlenecks 10GbE.
Disk speeds must match network speed — no point in 10GbE if your drives do 100MB/s.
(look into cmr/smr disk you want cmr for spinning rust for large storage...)
RAM and CPU can be a factor for handling network stacks and file services like SMB/NFS.
Use Intel or Mellanox 10G cards (better driver and Unraid support).
So yes, you can use 10G on older systems, but verify that PCIe slots and drivers won’t bottleneck it.
-
bmartino1's post in Restore docker networks from local-kv.db was marked as the answerI'm goin to say no. Mainly due to unknown ip routes and adaption docker.img and sub voulme files that are created and used that are now gon due to the rest commands...
ATM, not that I know of even if you replace the db file there are other location and setting that need restored, and you would just end up still having to recreate the docker network... if not having a corrupt issue as the db file is point to things that don't exist...
First double check your docker settings and make sure preser user is set to yes
if you did the commands there to rebuild you lost every docker network and config. you will need to rerun the docker network create command to make thoese dockers again.
then edit any docker that used that network and set it up again in the template to use that docker network...
-
bmartino1's post in Unable to Boot, gets to "loading /bzroot...ok" and goes no further was marked as the answerper your pictures.
Some are guesses others are questionalbe...
I would use boot mode bios.
-Unless your sure unraid has the correct syslinux for efi boot.
https://docs.unraid.net/unraid-os/troubleshooting/boot-issues/
If keeping uefi, click uefi setting and make sure secure boot is off, fast boot is off and uefi csm (compatibility is enabled)
-Looks like secure boot is disabled. but should be in custom no standard. Shouldn't be a problem. I have seen weird Linux stuff due to it secure boot is more a windows things.
see also :
https://docs.unraid.net/legacy/FAQ/usb-flash-drive-preparation/
you may not have the usb prepped right (can it boot on another system?)
I would disable security freeze lock
-The "Security Freeze Lock" option in Dell PowerEdge BIOS, found within the SATA Settings, is a security feature that sends a command to embedded SATA drives during the POST (Power-On Self Test) to prevent unauthorized access or modification of drive data. This feature is typically enabled by default and is only applicable when the AHCI Mode is selected for embedded SATA drives.
I would enable write cache
-The "Write Cache" BIOS option on Dell PowerEdge servers, when applicable, determines how the controller handles write operations to the storage device. It's a setting within the BIOS that affects how data is cached and written to the disks, impacting performance and data integrity.
I would turn on TPM security as well
-The TPM Module can assist in cryptography latter.
I would set AC power recovery to on or off not last due to memory...
-Set to on to power on after power loss
I would disable x2apic mode.
-x2APIC can improve efficiency in systems with multiple processors and high core counts... https://serverfault.com/questions/873664/when-to-use-x2apic-mode
Its a personal preference for me for iommu and io2apci handshakes to pass pcie devices.
at the grub screen you can edit the unraid boot line you can try adational grub syslinux commands
use "Tab" key and edit the OS boot options.
Examples to try:
acpi=force acpi_osi=Linux usbcore.autosuspend=-1
so after /bzroot ...linux grub sysliux commands...
to disable the usb from entering a power sleep mode and to for linux to use the OSI linux ....
you can even try noapic option at the grub boot menu.
Later once unraid has booted on your platform you can set the grub options at every boot...
as either you have hardware issues, a bios misconfigurations, or your usb is bad try to boot your unraid on anther system to rule out a bad thumb drive.
-
bmartino1's post in How to auto start encrypted array was marked as the answerthe usb is located at /boot
you can place your encrypted file in /boot/config and call it in the go file when starting the array.
the key file will contact teh password string to unlock the array.
for simplicity we will call the file keyfile...
cp /boot/config/keyfile /root/keyfile chmod 600 /root/keyfile
since root needs the keyfile to unlaock the array.
so edit the go file and save it as such
# Copy encryption keyfile to root cp /boot/config/keyfile /root/keyfile chmod 600 /root/keyfile # Start Unraid Management Utility /usr/local/sbin/emhttp & as we want the flash drive file copy to happen before unriad web UI starts.
more info can be found here:
and here:
-
bmartino1's post in Downloading Library system (Koha or other similar) to Docker was marked as the answerI don't know this software and it appears to be a Debian install system. You can use VMs and/or LXC and install a Debian OS to install koha... However, To accomplish the use we need to use docker compose...
Are you familiar with Calibre?
https://calibre-ebook.com/
Docker compose for Calibre docker run on unraid example:
https://github.com/artiomn/library-docker
I mention only because a Unraid CA template already exists:
Community app install docker compose plugin.
In docker web UI add a new stack and set path.
Example...
Edit stack > compose file
Make needed edits and compose up to run ...
Koha exist in docker form already...
It looks like someone made a koha docker stack already:
GitHub:
https://github.com/teogramm/koha-docker
Koha example docker compose file:
https://github.com/teogramm/koha-docker/blob/main/examples/docker-compose.yaml
Unraid may need some small edits
So, This docker github may need cloned and files within pointed for volume mout pathing...
cd /mnt/user/appdata/ git clone https://github.com/teogramm/koha-docker.git cd koha-docker/ ls
this make the advance toggle at making the stack located at:
/mnt/user/appdata/koha-docker
Some adational folder may need created..
mkdir -p /mnt/user/appdata/koha-docker/data/ mkdir -p /mnt/user/appdata/koha-docker/data/koha mkdir -p /mnt/user/appdata/koha-docker/data/mariadb mkdir -p /mnt/user/appdata/koha-docker/data/rabbitmq_plugins
Lets also have the docker create its own bridge network.
a updated unraid docker compose file example
#version: "3.9" services: koha: image: teogramm/koha:24.11 container_name: koha hostname: koha ports: - 8080:8080 - 8081:8081 networks: - koha-net cap_add: - DAC_READ_SEARCH - SYS_NICE environment: MYSQL_SERVER: db MYSQL_USER: koha_teolib MYSQL_PASSWORD: Change-Me-Mysql DB_NAME: koha_teolib MEMCACHED_SERVERS: memcached:11211 MB_HOST: rabbitmq depends_on: - db - rabbitmq - memcached volumes: - koha-data:/var/lib/koha rabbitmq: image: rabbitmq:3 container_name: rabbitmq hostname: rabbitmq volumes: - rabbitmq-plugins:/etc/rabbitmq/enabled_plugins networks: - koha-net db: image: mariadb:11 container_name: mariadb-koha hostname: db volumes: - mariadb-koha:/var/lib/mysql environment: MARIADB_ROOT_PASSWORD: Change-Me-Mysql MARIADB_DATABASE: koha_teolib MARIADB_USER: koha_teolib MARIADB_PASSWORD: Change-Me-Mysql networks: - koha-net memcached: image: memcached container_name: memcached hostname: memcached networks: - koha-net volumes: koha-data: driver: local driver_opts: type: none device: /mnt/user/appdata/koha-docker/data/koha o: bind mariadb-koha: driver: local driver_opts: type: none device: /mnt/user/appdata/koha-docker/data/mariadb o: bind rabbitmq-plugins: driver: local driver_opts: type: none device: /mnt/user/appdata/koha-docker/data/rabbitmq_plugins o: bind networks: koha-net: driver: bridge ipam: config: - subnet: 172.18.0.0/16 gateway: 172.18.0.1
-Please set a secure password for your mara db:
This needs updated in the Koha section and the db section.
MYSQL_PASSWORD: Change-Me-Mysql
-
bmartino1's post in Moving help wanted ;) was marked as the answermore info is need...
you can use the plugin appdata backup to make a backup of your dockers xml and configuration and some volumes needed to be saved.
wahat plex image?
I use linux IO docker tag linuxserver/plex
you will need to keep the same docker image and paths...
You need to find the plex template data options:
as this is the datbase and its entire configuration for your curent plex storage.
Plex does have a way to export its database, but not a good way to import the database...
https://support.plex.tv/articles/202485658-restore-a-database-backed-up-via-scheduled-tasks/
AS long as you get the config folder and not break the dockers internal paths to the host path of data.
You will be able to move plex form one machine to another. If cloneing this way, you will need another plex claim key... 2 keys cant be used at the same time. you can run into backend plex side server errors and can lose the server from plex side.
so you need to keep and move the appdata files, and you ned to keep the media how yo conenct them...
-IF not the database may delete custom edits you have made over the years when a file is not found...
as you can see i Have a /data path for my plex so when/ if moving my curent plex on the test unraid system to my production one.
I need to make sure the pathing and the data within these 2 folders are on the new system...
this bring me back to the appdata backup plugin..
we can use the appdata backup to make a tar backup of the plex database:
In my case I don't want /data as it is big to be backeuped adn zipped. over 7 TB of data i have for plex...
So i have the appdata plugin backup my docker its configuration and config key...
then i can copy the backup over to unraid and restore it via the app data plugin.
then use the add docker option at the unraid web ui to bring plex back point at the correct data paths...
-
bmartino1's post in My usb locked as read on start up was marked as the answertry a different usb port... preferable to use a usb 2.0 port...
This sounds like a bad usb at EOL but if you regain usb write cabalities after a restart, then this indicatees signs that the flash drive is disconecting and being removed at boot via the host..
-
bmartino1's post in Where to place softlinks to facilitate backup was marked as the answermake a share and place them in a directory or use linux temp location...
/tmp
this will write the backup files into ram though...
here is a script example:
1 Create a share (if not already created).
2 Create a directory (/mnt/user/backup-links/) to store soft links.
3 Iterate through the soft links and back up the linked directories.
4 Store the backup in a specified location.
#!/bin/bash # Define variables LINKS_DIR="/mnt/user/backup-links" # Directory to store soft links BACKUP_DEST="/mnt/user/backups" # Destination for backups DATE=$(date +"%Y-%m-%d_%H-%M-%S") # Timestamp for backup BACKUP_NAME="backup_$DATE.tar.gz" # Backup filename # Ensure the backup directory exists mkdir -p "$BACKUP_DEST" # Ensure the links directory exists mkdir -p "$LINKS_DIR" # Create an array to store backup sources declare -a BACKUP_SOURCES=() # Iterate over soft links in LINKS_DIR for link in "$LINKS_DIR"/*; do if [ -L "$link" ]; then TARGET=$(readlink -f "$link") if [ -d "$TARGET" ]; then BACKUP_SOURCES+=("$TARGET") else echo "Skipping $link, target $TARGET is not a directory." fi fi done # Check if there are directories to back up if [ ${#BACKUP_SOURCES[@]} -eq 0 ]; then echo "No valid directories found in $LINKS_DIR." exit 1 fi # Create the backup tar -czf "$BACKUP_DEST/$BACKUP_NAME" "${BACKUP_SOURCES[@]}" echo "Backup completed: $BACKUP_DEST/$BACKUP_NAME"
How to Use:
1 Create a Share for Backup Links
In the Unraid GUI, go to Shares → Add Share
Name it backup-links
Set appropriate permissions
2 Create Soft Links in /mnt/user/backup-links/
Use SSH or terminal:
Example:
ln -s /mnt/user/documents /mnt/user/backup-links/documents ln -s /mnt/user/photos /mnt/user/backup-links/photos
3 Run the Backup Script
Save the script as /boot/config/plugins/user.scripts/scripts/backup_script.sh
* User Script Plugin...
Alternative: Use /tmp/backup-links/ (RAM)
If you want temporary soft links stored in RAM, change:
LINKS_DIR="/tmp/backup-links" However, this will be lost after a reboot.
-
bmartino1's post in Hardware Umzug Lizenz was marked as the answerUnraid license is linked to the usb drive not the motherboard.
https://docs.unraid.net/unraid-os/faq/licensing-faq/
https://forums.unraid.net/forum/76-deutsch/
-
bmartino1's post in [Advice Sought] Optimal Setup to Manage GPU passthrough to VMs - Unraid with Windows VM OR Proxmox with Windows and Unraid on VMs was marked as the answerYou have explained it correctly. To use gpu pasthrough when binding a device and unbinding the device properly, you will need to reboot the host machine each time. While doable there are other ways to go about it to get to the end goal.
For more examples, Review unraid vifo bind and passthorugh: (Spaceinvaders videos)
To further explain, Which is why I recommended proxmox. But after re reviewing... i'm not sure of proxmox vgpu setups for you due to both being 3090s.
Due to access to hardware I have, I followed: https://gitlab.com/polloloco/vgpu-proxmox
*This guide and all my tests were done on a RTX 2080 Ti which is based on the Turing architechture.
and there are china blogs to grab the enterprise grid nvdia downloads installers to patch to use VGPU. as nvida "let the genie out of the bottle" and has been trying to put it back for a long while now...
folowing a proxmox vgpu consumer unlock:
The following consumer/not-vGPU-qualified NVIDIA GPUs can be used with vGPU:
Most GPUs from the Maxwell 2.0 generation (GTX 9xx, Quadro Mxxxx, Tesla Mxx) EXCEPT the GTX 970
All GPUs from the Pascal generation (GTX 10xx, Quadro Pxxxx, Tesla Pxx)
All GPUs from the Turing generation (GTX 16xx, RTX 20xx, Txxxx)
!!! THIS MEANS THAT YOUR RTX 30XX or 40XX WILL NOT WORK !!!
*However, There have been reports and attempts to use the 3000 series cards(due to ther large video ram). some had success other not so much.
To use vgpu technology the only way I know how is to use windows hyper v and the gpup partition scripts in windows power shell to make Virtual machines.
*Played with this and ran this a few times. widows is not that good hyper v system for device passthrough...
However, you could also run both 3090 under windows and use hyper V for NAS vdisk and others partition the GPU.
Review:
https://learn.microsoft.com/en-us/windows-server/virtualization/hyper-v/partition-assign-vm-gpu?tabs=windows-admin-center
https://github.com/jamesstringerparsec/Easy-GPU-PV
https://forum.level1techs.com/t/2-gamers-1-gpu-with-hyper-v-gpu-p-gpu-partitioning-finally-made-possible-with-hyperv/172234
There have also been pushes to use widnwos and use wsl for LLM...
And wsl / direct widnows docker installs:
https://docs.docker.com/desktop/setup/install/windows-install/
*Not all dockers will run on windows...
As I have experimented with a lot of systems hardware and setups...
I may actualy recommend the use of windows pro or enterprise edition. (do not use widnows Server, while server has better pcie devce passthorugh for hyperv it loses the gpup partitions abiltiy) Likewise, Nvidia has alos worked with windows on improving there devices with wsl and hyper v...
Regardless of the options you chose. it comes down to what you want it to do and how you want to interact with it.
-
bmartino1's post in Can unraid run ospf or bgp? was marked as the answernertools 3rd party extra package install...
https://slackbuilds.org/repository/15.0/network/frr/
-
bmartino1's post in Can I set up a RAM-based read-ahead cache with Unraid? was marked as the answeris it possible to make one yes... getting unraid to use it is another story... Theses are advance linux and can break / brick stuff You have been warnned...
Look into ram disk / zdisk... Mainfrezer has some plugin in CA to use a ram disk for dockers as example and there are some scripts lost on the forum...
BUT Yes, you can set up a RAM-based read-ahead cache in unRAID to improve video playback smoothness. Since you're streaming media from HDDs and concerned about mechanical head contention, a RAM cache will help reduce disk seeks and keep playback smoother.
Here are a few options you can try:
1. Increase Linux Read-Ahead Buffer (Preferred)
Linux has built-in disk read-ahead buffering, which unRAID inherits. You can increase it for your HDDs manually:
How to Set Up Read-Ahead Cache
Check the current read-ahead value Open a terminal in unRAID and run:
blockdev --getra /dev/sdX (Replace /dev/sdX with the actual device name of your media drives.)
Increase the read-ahead buffer
blockdev --setra 2048 /dev/sdX This increases read-ahead to 1MB (each unit = 512 bytes), meaning that the drive will pre-fetch 1MB beyond each read request. You can try 4096 (2MB) or 8192 (4MB) for even more aggressive caching.
Make it Persistent Add this to your /boot/config/go file to reapply on reboot:
(I'm more a fan of user script plugin and at array start)
# Set read-ahead on media drives for drive in /dev/sdX /dev/sdY; do blockdev --setra 4096 $drive done
2. ZRAM or ZSWAP for Compressed Caching (Experimental) --more a zfs pool only setup thing...
If you want a RAM-based cache, you can use zram to create a compressed block cache.
modprobe zram echo 1 > /sys/block/zram0/reset echo $((512*1024*1024)) > /sys/block/zram0/disksize # 512MB cache mkswap /dev/zram0 swapon /dev/zram0 -p 100
Make It Persistent
Add the above lines to /boot/config/go so it runs on startup.
Increase disksize to 1GB+ if needed.
...
3. Use a RAMDisk (If You Have Enough RAM)
If you have plenty of RAM (32GB+), you could mount a small tmpfs (RAM disk) and cache frequently used media there:
Create a RAM Disk
mkdir /mnt/ramdisk mount -t tmpfs -o size=4G tmpfs /mnt/ramdisk
Copy Movies to RAM Before Playback
cp /mnt/user/media/movies/movie.mkv /mnt/ramdisk/ This avoids any disk access, keeping playback ultra-smooth.
#########
Best quick fix? Increase Linux read-ahead (blockdev --setra).
Want something more aggressive? Try zram caching.
Have a ton of RAM? Use a RAM disk for temporary media caching.
-
bmartino1's post in [7.0.1] I keep finding SSHD enabled after I've disabled it. was marked as the answeryou can run a user script plugin to kill the service at start of the array.
Yes, some dockers like sftp docker run ssh and may use ssh for inner docker communication and process. (my syss log show this then stoped then shown agan due to sftp docker instance...)
Yes, some plugins like ssh plugin and unriad connect may enable the service for secure communication.
At boot Unraid v7 has a instance of testing and checkin sshd and will temp start then check ssh option and disable the service.
user script to kill:
#!/bin/bash # User Script to Kill and Disable SSH in Unraid (Slackware-based) echo "Stopping all SSH connections..." # Kill all active SSH processes pkill -9 sshd pkill -9 ssh echo "Disabling SSH service..." # Remove execute permissions to prevent SSH from starting chmod -x /etc/rc.d/rc.sshd # Ensure SSH is disabled on boot if [[ -f /boot/config/go ]]; then sed -i '/rc.sshd/d' /boot/config/go fi echo "SSH has been disabled. To re-enable, manually restore permissions to /etc/rc.d/rc.sshd" Run once and it will kill any and all ssh. this will also add data to your go file to disable the service at boot.
-
bmartino1's post in Out of Memory Error, seeking guidance was marked as the answerIf your hitting out of memory. You need to buy more ram and increase the ram in the machine.
Otherwise, to help alienate:
Swap file so when your out of ram it writes the ram contents to disk...
CA install a swap file to assist with low memory issues
requires a btfs formatted disk. Install the CA swap plugin.
General. as unraid sits in ram. clear logs.... Limit memory that a resource is able to have, example the docker in question:
docker extra parm limit ram it gets.
Setting Memory Limit in Unraid Docker:
-Open the Unraid Web UI.
-Navigate to Docker > Click on the container you want to modify.
-Click on Edit.
-Scroll down to the Extra Parameters field (you may need to enable advanced view by clicking the toggle at the top-right).
-Add the following parameter to set a memory limit:
example:
--memory=1g -m 1g - Click Apply and Restart the container.
Explanation of the Flag:
--memory=1g (or -m 1g): Limits the container's memory usage to 1GB.
You can also specify other values like:
512m for 512MB
2g for 2GB
-
bmartino1's post in (6.12.13) Authlimit fix - need instructions was marked as the answeryes I have found that I need to wait 20 seconds after the array has auto started via disk settings for everything to be happy be fore making system services changes.
at first array start is the corn for this script to edit Nginx and add the data.
# Fix NGINX limits # sed cannot find the file when executed directly, waiting for 10 secs first sleep 10 sed -i "s;zone=authlimit:1m rate=30r/m;zone=authlimit:1m rate=60r/s;g" /etc/nginx/nginx.conf sed -i "s;zone=authlimit burst=20;zone=authlimit burst=60;g" /etc/nginx/conf.d/locations.conf /usr/sbin/nginx -s reload
edit nginx at your own risk...
-
bmartino1's post in NGINX Proxy manager custom location (help) was marked as the answer... hard ask... I think subdomains and other spacing... unless you are using the tailscale server feature alongside nginx???
Configuring Nginx Proxy Manager (NPM) to serve applications like Sonarr under a subdirectory (e.g., mydomain.com/sonarr) can be challenging due to how certain web applications handle base paths. Many applications are designed to run at the root (/) and may not support being served from a subdirectory without additional configuration
Challenges:
Application Base Path: Applications like Sonarr may not have built-in support for running under a subdirectory. This means that even if NPM is configured to proxy mydomain.com/sonarr to http://10.0.0.19:8989, Sonarr might still generate URLs pointing to / instead of /sonarr, leading to broken links and missing assets.
Potential Solutions:
Subdomain Approach: Instead of using a subdirectory, consider setting up a subdomain for Sonarr, such as sonarr.mydomain.com. This approach is generally more straightforward and avoids many of the issues associated with subdirectory configurations.
Custom Nginx Configuration: If a subdomain is not desirable, you can attempt to modify the Nginx configuration to rewrite URLs appropriately. However, this can be complex and may not work seamlessly with all applications.