Skip to content

Instantly share code, notes, and snippets.

@Dasutin
Last active March 9, 2025 05:21
Show Gist options
  • Save Dasutin/73b321668c033d5c88a57274afcddb8a to your computer and use it in GitHub Desktop.
Save Dasutin/73b321668c033d5c88a57274afcddb8a to your computer and use it in GitHub Desktop.
RetroNAS on Unraid

RetroNAS on Unraid

This guide is intended for installing RetroNAS on an already configured Unraid server. If you're not familiar with Unraid or RetroNAS, head over to the RetroNAS GitHub page to learn about RetroNAS and consider setting it up on a Raspberry Pi.

Unraid NFS Setup

Within Unraid, enable NFS by going to Settings and NFS.

  • Enable NFS: Yes
  • Click Apply

Unraid Share Setup

Create a new share in Unraid and call it retronas (case sensitive). Use your desired settings for Allocation method, minimum free space, included disks, and excluded disks. Select No for cache pool setting.

Make sure the following is set for NFS Security Settings:

  • Export: Yes
  • Security: Private
  • Rule: retronas.local(sec=sys,rw,async,no_root_squash) Note: You can replace retronas.local with a static IP or different hostname if desired

Make sure the following is set for SMB Security Settings:

  • Export: No
  • Case-sensitive names: Auto
  • Security: Private

RetroNAS VM Setup

Download the Latest version of Debian 64-bit and upload it to your isos folder in Unraid. Click Add VM under the VM tab in Unraid and choose Debian from the list. Keep all settings default but change the following:

  • Logical CPUs: 2
  • Initial Memory: 2048 MB Max Memory 2048 MB
  • OS Install ISO: Select the Debian ISO uploaded to isos folder
  • Primary vDisk Size: 20G

Debian Install

Once the VM setup is done run the VM and launch the VNC Remote window. Install Debian with default settings.

  1. Hostname: retronas
  2. Domain Name: Leave Blank
  3. Choose a username (retronas) and password (retronas) for RetroNAS. This will also be used when devices connect to the RetroNAS server.
  4. Partitioning Disks Guided - use entire disk and use default settings (expert Linux users can use manual)
  5. Choose the default package manager
  6. Select only Standard system utilities under Software Selection.
  7. Once Debian install completes, shut the VM down and remove the install iso, then start the VM again.

RetroNAS Server Setup

Log into Debian with the username and password created during the install.

Install and setup sudo and nfs

  1. Log in the root user using su -
  2. Enter a new root password
  3. Install sudo apt update && apt install -y sudo nfs-common avahi-daemon
  4. Add retronas user to the sudoers group usermod -aG sudo retronas
  5. Enter the command exit to logoff of the root user.
  6. Enter the command exit again to logoff of the retronas user.
  7. Log back into the retronas user.

(optional) Set static IP address

  1. sudo nano /etc/network/interfaces Note: replace nano with your editor of choice, e.g., vi or nano
  2. Edit iface enp2s0 inet dhcp to iface enp2s0 inet static Note: Interface name may differ, e.g., enp2s0
  3. Configure a static IP address: address 192.168.1.35
  4. Add a subnet mask: netmask 255.255.255.0
  5. Set up a default gateway: gateway 192.168.1.1
  6. Add DNS servers: dns-nameservers 192.168.1.1 1.1.1.1 8.8.8.8

iface enp2s0 inet static
     address 192.168.1.35
     netmask 255.255.255.0
     gateway 192.168.1.1
     dns-nameservers 192.168.1.1 1.1.1.1 8.8.8.8

  1. Press Control-X to save the file and close nano.
  2. Type sudo reboot to restart the VM.

Mount Unraid RetroNAS share

  1. Create the mount directory: sudo mkdir /mnt/retronas
  2. Edit fstab: sudo nano /etc/fstab Note: replace nano with your editor of choice, e.g., vi or nano
  3. Add the following line to the end of fstab:   tower.local:/mnt/user/retronas /mnt/retronas nfs nfsvers=3,rw 0 0 Note: Replace tower with the name of your Unraid server or with a static IP if desired
  4. Press Control-X to save the fstab file and close nano.
  5. Reload fstab sudo mount -a

Install RetroNAS

  1. Return to retronas user home folder: cd ~
  2. Install curl: sudo apt install -y curl
  3. Download RetroNAS installer: curl -O https://raw.githubusercontent.com/danmons/retronas/main/install_retronas.sh
  4. Make the script executable: sudo chmod a+x ./install_retronas.sh
  5. Run the install script: sudo ./install_retronas.sh
  6. Run RetroNAS: retronas
  7. Configure the RetroNAS top level directory to the UnRAID share /mnt/retronas
  8. Configure RetroNAS as normal. Refer to the RetroNAS wiki for more information
@CTRFK8
Copy link

CTRFK8 commented Feb 2, 2025

unraid broken, requires guest agent to be installed to pick up IP address
not sure what to do . Even after installing guest agent it will not work.

Unraid app retronas made by space invader one

@TheInfamousAlk
Copy link

Same issue, how do I get an IP:port and connect to the VM from another device?

@bretlinden
Copy link

Thank you for this. Everything worked, and I can map to the share and create docs and see them on the opposite "side" in the other. But, when I try to edit a doc on the client side that I created server side, or vice versa, I just can't. I can't get the permissions right. Can someone talk to me like I'm really stupid and spoonfeed me how to get the permissions right to retronas will install the things it needs to on the NFS share? Please?

@bretlinden
Copy link

I am unsuccessfully trying to run RetroNAS on a VM with the data directory pointing to a NFS Share.

I need help getting RetroNAS going. I am at my wit's end. I know what I'm trying to do can be successful because I've done it before. Something went wrong with my VM and I destroyed it and created another one. But, despite weeks of trying I cannot recreate the success I had. I really want this to work again. I was looking so forward to getting into RetroNAS.

Here's my Setup...

-TrueNAS Scale. Dataset called "retronas". NFSv3 Enabled. NFS Share set up there. No restrictions.
-VM. Debian 12. This is what RetroNAS is installed on. This VM isn't doing anything else except trying to run RetroNAS.

On TrueNAS, NFS share appears to create without issue.
On VM, I made a directory called /mnt/retronas
On VM, in /etc/fstab I put the following line to map to the NFS share....

192.168.0.200:/mnt/pool1/retronas /mnt/retronas nfs nfsvers=3,rw 0 0

On VM, I test the ability to write to that directory by using "touch whatever.txt", then using nano to attempt to modify and save that file. That is successful. This leads me to believe that permissions are good to write to the directory. I also go to TrueNAS and look in the directory on there to ensure the VM wrote it to that directory as it should of. All good.

On the VM, I install Cockpit. I confirm that the storage looks as it should there, with my NFS share on TrueNAS mapped as a hard drive. It is. All good.

I can install RetroNAS itself on the VM without issue. First thing I do in RetroNAS is set the user (which I named pi), the group (which I also named pi), and the directory (which, again, in my case is /mnt/retronas).

But, no matter how many permissions changes and reattempts I make, I can't get past the following error when I try to install Samba from the RetroNAS menu. (I'd tell you all the changes I've tried to make but there's so many I can't remember them all.)

TASK [RetroNAS dependencies - configure top level share directory] *************
Saturday 08 March 2025 22:14:30 -0700 (0:00:00.736) 0:00:02.263 ********
fatal: [localhost]: FAILED! => {"changed": false, "gid": 0, "group": "root", "mode": "0777", "msg": "chown failed: [Errno 1] Operation not permitted: b'/mnt/retronas'", "owner": "root", "path": "/mnt/retronas", "size": 4, "state": "directory", "uid": 0}

I would really appreciate some help. I really don't want to be left out of this wonderful RetroNAS thing. Thanks in advance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment