Skip to content

Installing RetroNAS

Dan Mons edited this page Jan 30, 2024 · 26 revisions

Installing RetroNAS

SECURITY WARNING

RetroNAS installs and enables numerous legacy protocols, many of which are highly insecure by design (in order to be compatible with legacy/retro computers and operating systems). These protocols frequently have known, unfixable exploits due to their legacy nature, and often transmit information such as your Raspberry Pi's usernames and passwords in cleartext (unencrypted).

Please take every effort to keep RetroNAS behind a router/firewall, and never put it on a device with a public IP address.

All RetroNAS installers run as the "root" (admin) user on your Raspberry Pi in order to make changes to your system. While we intend to make our software as bug-free as possible, this does have the potential to delete your data. Please ensure you have everything backed up before installing any RetroNAS component. All RetroNAS code is open source and available in GitHub should you wish to inspect it yourself.

Video Guides:

This video will show you how to install RetroNAS on Raspberry Pi OS:

Watch the video

And here's Bob from RetroRGb demonstrating an install too, along with the directory symlink features:

Watch the video

The entire playlist of all RetroNAS videos is available here:

Install Rasberry Pi OS

See Supported hardware for a list of supported Raspberry Pi devices and operating systems.

Install Raspberry Pi OS (RPiOS) as per the official RPi Foundation guides:

RetroNAS does not require a desktop environment to run. You may install one if you wish, however RetroNAS provides a "TUI" menu-driven interface that works via the command line or over SSH, but requires minimal Linux admin or command line skills to operate.

After installation, ensure you run raspi-config and do the following:

  • Set up any networking or WiFi (physical wired Ethernet is recommended)
  • Set up the RPi's hostname
  • Set up the password for both the "root" (admin) and "pi" (standard unprivileged account) users
  • Set your locale in the Localisations menu. US users should choose "en_US.UTF-8" if they find things like their "#" symbol are bound to the wrong key (RPiOS is UK made, and will default to UK layouts).
  • Enable SSH access if you wish to admin RetroNAS from another machine (highly recommended). This also enables SCP/SFTP (file copy over SSH) which is handy.

A full guide to raspi-config is provided by the Raspberry Pi Foundation:

Install RetroNAS

If you are going to use the web based tool Cockpit, you will need to enable the root user and set the password. This is optional, however recommended for things like managing external storage. You can do that with the following command:

sudo passwd root

Currently RetroNAS only supports Debian 11 "Bullseye". You can verify your release with the following command:

lsb_release -a

And should see output like such:

No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 11 (bullseye)
Release:        11
Codename:       bullseye

RetroNAS is strongly recommended to be run on 64bit hardware and software. You can find out what your install is with the following command:

uname -m

Which should output something like the following on a Raspberry Pi 3 or 4 with a 64bit OS:

aarch64

Or the following on an Intel or AMD x86 system in 64bit mode:

x86_64

If you see something like "i386" or "armv7l", you're running in 32bit mode. This is fine for simple tasks and smaller storage, however please note that there have been strange bugs reported with advanced tools like FSP, ps3netsrv and very large hard disks under 32bit mode.

It is strongly recommended that your OS has been upgraded to the latest stable version and patch set, including both software and if you are on a Raspberry Pi, it's onboard firmware. To do so, run the following commands:

sudo apt update
sudo apt full-upgrade

Once Raspberry Pi OS is installed and configured, download the RetroNAS installer. You can either save it in a browser and copy it across via SFTP/SCP, or download it directly on the RPi with the following commands:

sudo apt install -y curl
curl -O https://raw.githubusercontent.com/retronas/retronas/main/install_retronas.sh

Once downloaded, make the script executable:

chmod a+x ./install_retronas.sh

And run the script:

sudo ./install_retronas.sh

This will create the /opt/retronas folder, and place the latest version of RetroNAS within. Once successful, you can run the RetroNAS main interface with the command:

retronas

in older installations before they are automatically upgraded you will need the command:

sudo /opt/retronas/retronas.sh

On first run you will be presented with a screen communicating security and license information, please read it and type AGREE to continue when prompted.

=============================================================================
                    WARNING / TERMS OF USE / LICENSE
=============================================================================

          RetroNAS is a compilation of existing opensource products. 

              RetroNAS is made available under the MIT license
            https://github.com/retronas/retronas/blob/main/LICENSE

You may view this information again by passing command line options

sudo /opt/retronas/retronas.sh -d

If the default user pi and default group pi do not exist on first run the system you will be prompted to enter an appropriate user and group for RetroNAS to run services as. The user will need to have sudo access, this is the default on rpi installation for the first user.

If the group is misconfigured some services (e.g Samba for MiSTer, Samba for PS2) will fail to install with chgrp: failed to lookup group listed in the red failure text output by ansible.

Home

Getting started:

Contributing

Multi-system protocols:

Specific system configurations:

Services:

Tools:

Physical Media:

On-Device Management:

Advanced storage options:

  • BtrFS RAID, Snapshots, Compression, Deduplication
  • FAT Advanced guide to using FAT loopback mounts for EtherDFS
  • TBA
    • SMR Shingled Magnetic Recording hard drives (TBA)
    • NTFS Advanced guide for NTFS formatted disks
    • SMB Loopback Mounting an existing SMB NAS
    • NFS Loopback Mounting an existing NFS NAS
    • MDRAID (TBA)
    • LVM (TBA)
    • iSCSI Configuring iSCSI

Other:

Clone this wiki locally