logo elektroda
logo elektroda
X
logo elektroda

Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

p.kaczmarek2 16107 47

TL;DR

  • A Banana Pi BPI-M1+ file server pairs Armbian with OpenMediaVault, a 480GB GOODRAM SSD, SMB sharing, Docker/Portainer containers, qBittorrent, Cloud Commander, and RDesktop.
  • The build uses the Banana Pi's SATA connector with a self-soldered 5V power lead, then installs OMV through an Armbian install script and manages everything via the web panel.
  • The finished server cost around £500, and measured power draw stayed below 3W, with a recorded peak of 4.3W and an average of 2.23W.
  • Windows and Android clients could access the share over SMB, qBittorrent ran in Docker, and Cloud Commander exposed both file browsing and a web terminal.
  • OpenMediaVault needs a fixed IP for stable Windows access, Cloud Commander is open by default, and the RDesktop container is slow enough that it is only occasionally comfortable to use.
Generated by the language model.
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Hello my dears
    I will present here a detailed description of the implementation of a noiseless, energy-efficient file server based on the Banana PI M1+ and an SSD connected via SATA. I have made the final version of the server shown here (480GB+60GB on SD) at a cost of around £500 (£200 Banana Pi + £270 SSD + small parts) and the power it draws from the mains is less than 3W.

    Introduction
    In the topic I will describe in detail:
    - first boot of Banana Pi (uploading Armbian to SD card, defining its IP, connection via UART/TTL)
    - connecting an HDD/SSD to Banana Pi via SATA
    - installing OpenMediaVault on Banana Pi
    - creation of Share on OpenMediaVault (connection via SMB)
    - installing the ShareRootFS plugin on OpenMediaVault (to share a folder from the SD card)
    - docker/Portainer installation on OpenMediaVault
    - qBitTorrent installations on OpenMediaVault (via Stacks with Portainer)
    - cloud Commander WWW installations on OpenMediaVault (a tool to manage files, copy them, upload them via a web panel; via Stacks with Portainer)
    - rDekstop installation (remote desktop; via Stacks with Portainer)
    - energy consumption of my server (based on data collected over two weeks of server operation)
    The topic will probably still be edited, as I am just getting acquainted with Banana Pi.
    I invite you to read on.

    Project assumptions
    The aim of the project was to make a noiseless, energy-efficient server for extra file backups that could go 24 hours a day in the bedroom.
    The transfer speed itself (to disk and over the network) was not a priority here, it doesn't matter to me if a file takes a little longer or a little shorter to copy.

    What was used for the project?
    For the project shown here (in its final version) I used:
    - banana Pi BPI-M1+ single board computer (although in the end I didn't use WiFi anyway)
    - a 5V power supply with a current capacity of at least 1A
    - 64GB microSD card (for the operating system for Banana Pi)
    - gOODRAM CL100 G2 480GB SATA3 2.5 SSD (for data for Banana Pi; SSD because I wanted a silent one)
    - a SATA cable to connect the drive to Banana Pi
    - a self-made power supply cable for the SATA drive (to connect the 5V)
    - a microUSB cable to connect Banana Pi to the power supply
    Additionally, during testing, I used an old 2.5" HDD as I was worried that if I connected something wrong, I might damage the much more expensive SSD.

    Purchase of Banana Pi M1+
    For the project I used a Banana Pi BPI-M1+ single board computer made by SINOVOIP. I bought it from one of the online shops in our country for about 200 PLN + shipping. Its parameters were presented by the shop as follows:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The Banana Pi came in a small box:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    A specific product model: BPM M1+
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The single-board computer was additionally protected with anti-static film:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    When removed from the foil it presented as follows:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    What is on board the BPI-M1+? I will use a picture here from http://wiki.banana-pi.org/ :
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    More information http://wiki.banana-pi.org/Banana_Pi_BPI-M1%2B
    I'm also attaching the documentation and BPI related files here (there are files in the packages for various Banana Pi's, not just the M1+ used here):
    BPI schema...7Z-001.zip (4.65 MB)You must be logged in to download this attachment.
    BPI DXFfil...3Z-001.zip (7.65 MB)You must be logged in to download this attachment.
    BPI 3D des...1Z-001.zip (29.17 MB)You must be logged in to download this attachment.


    Purchase of SSD
    I only bought the SSD for this project after testing everything with the Banana Pi on the old HDD - I wanted to be sure the whole thing would work before I bought it.
    I decided on a drive GOODRAM SSD CL100 G2 480GB SATA3 2.5 for which I paid £270 + postage. I'll admit I wasn't keen on this drive being exceptionally fast though, I probably won't use it to its full potential anyway, primarily I opted for the SSD because it's noiseless.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    I also chose this drive because it offers a 36 month warranty from the manufacturer.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Soldering the 2.5" drive power cable with the Banana Pi
    The Banana Pi BPI-M1+ has one SATA connector on board. Connecting a 2.5" drive to the Banana Pi essentially requires two cables:
    - a standard SATA signal cable
    - a SATA power (5V) cable - unfortunately a rather unusual one, generally fitting into the two-pin 5V connector on board the Banana Pi.
    You can get both of these cables in combined form from several online shops, I recommend searching under "banana pi sata cable", they look like this:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    But I didn't want to wait for the project to be shipped, so I soldered a suitable cable myself to start with from what I already had in my drawer.
    I used a two-pin cable with a plug:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    And wires from an old computer power supply:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Before soldering, I double-checked the polarity of the connector from the Banana Pi - connecting it the other way round would certainly damage the drive.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Finished adapter:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    I tested the adapter with an old 2.5" drive, still without SD card in the Banana Pi:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    By the way, I measured that even without the SD card, the Banana Pi itself with the 2.5" HDD draws 0.4-0.5A.
    I also used a SATA data cable to connect the drive:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Full disk connection:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Hardware ready, now need to prepare the SD card with the operating system for the Banana Pi.

    Preparing the SD card with the Armbian operating system
    SD card with operating system for the Banana Pi I prepared on a Windows 10 PC using the Balena Etcher program, more specifically its portable version 1.5.91, from here:
    https://github.com/balena-io/etcher/releases
    Of the various operating systems available for the Banana Pi, I decided on Armbian, which is simply Debian for Arm processors. One of the reasons for this was that I was planning to use OpenMediaVault and OMV supports it.
    I chose the most current version, Armbian_20.02.5_Bananapi_buster_current_5.4.26.7z. I downloaded the system via torrent network, below I attach the torrent of the selected version:
    Armbian_20...orrent.zip (24.02 kB)You must be logged in to download this attachment.
    After downloading, I prepared myself a 64GB SD card:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    I connected the SD card to my Windows PC via such a USB adapter:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    and using Etcher I uploaded the system to it (file Armbian_20.02.5_Bananapi_bionic_current_5.4.26.img):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once the system has been uploaded, the SD card can be inserted into the Banana Pi and the microcomputer is already running with the appropriate button.

    First communication with Banana Pi
    The first communication with the Banana Pi can really be done in various ways, e.g:
    - you can connect a monitor on HDMI and a keyboard on USB:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    ( the view on your monitor after the first boot may be a bit different from the picture from me, because I took this picture already after installing OpenMediaVault to Armbian )
    - you can connect a wired network with a router with DHCP and find what IP the Banana Pi has and access it via SSH (Putty program). We can find the IP of the Banana Pi itself via an IP scanner, such as Angry IP Scanner (and there we will recognise the Banana PI by its hostname, and if it is missing, we can manually check each of the active IP addresses in the browser, especially if there are not many):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    - you can use the on-board serial port and the UART-USB adapter
    I chose the latter method.
    Banana PI has derived RX/TX pins with a default baud of 9600:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The pins are signed. You can connect to them with any USB-UART adapter, I used a cheap USB TO TTL HW-597:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You need to connect both RX and TX - and of course ground. We connect the Rx from the adapter to the Tx from the Banana Pi, and the Tx from the adapter to the Rx from the Banana Pi.
    Communication with the Banana Pi will be via a virtual COM port.
    I recommend having the Banana Pi switched off when connecting - it is best to switch it on once connected.
    You will still need some software to communicate via the virtual COM port.
    For example, this is how communication with the Banana PI looks like via RealTerm:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Although I do not recommend using this program for this purpose, it is much more convenient to use Putty. Just select the 'Serial' mode there and enter the name of our virtual COM port (you can easily find it, if only in the Device Manager):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once connected:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once the system is fully up and running, you can log in via the UART like this:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The default login credentials for Armbian are as follows:
    Quote:

    Login: root
    Password: 1234


    When you log in for the first time, the system will force you to change your password. The requirements for a new password are rather standard. It cannot be just a few characters, there must be at least one upper case letter, at least one lower case letter and at least one number.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once the password has been entered, the system asks us for a username we have yet to come up with and some additional information (which is optional and not sent anywhere on the network):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Having already created our user account, I recommend connecting the Ethernet cable and checking that the Banana Pi is definitely seeing the network correctly. The most convenient way to do this is with the ping command and some certainly available IP address, such as 8.8.8.8.8 from Google. The screenshot shows the expected result ' ping 8.8.8.8 ':
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    This worked on the spot for me - DHCP from the router assigned the correct IP and the Banana Pi saw the network straight away.
    It's also worth checking that DNS is working correctly. For this you can use the nslookup command, which takes the domain name of the host (e.g. elektroda.pl) as an argument and converts it into an ip address. The results are shown below:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    As you can see, the wired internet connection works without any prior configuration.

    Updating apt on Armbian
    Just after that, I recommend performing the classic update/upgrade operation, just to make sure we have everything up to date. To do this, type the commands in the terminal:
    
    apt-get update
    apt-get upgrade
    reboot
    

    The update itself can take quite a long time, but I think it's worth it.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After the update it is worth rebooting the system (reboot command).

    Installing OpenMediaVault
    It is now possible to install the OpenMediaVault overlay on our Armbian. This can be done manually, but the most convenient is to use the ready-made script available on Github, in the OpenMediaVault-Plugin-Developers repository, here:
    https://github.com/OpenMediaVault-Plugin-Deve...master/Adden-A-Installing_OMV5_on_Armbian.pdf
    I attach a copy of this document below:
    Adden-A-In...rmbian.pdf (1.34 MB)You must be logged in to download this attachment.
    The entire running of the OMV installation script is limited to typing:
    
    wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash
    

    in the system console and waiting less than an hour for everything to execute. Zero unnecessary configuration.
    You can find more details and a detailed description of how to use this script here:
    https://github.com/OpenMediaVault-Plugin-Deve...master/Adden-A-Installing_OMV5_on_Armbian.pdf
    Below are screenshots of the execution of this script.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    First launch of OpenMediaVault
    From this point on, the OpenMediaVault Web Panel is accessible via the browser on port 80, we can access it by typing the server address in the address bar:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The default login credentials for OpenMediaVault are:
    Quote:

    admin
    openmediavault

    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once logged in, we have visible information about the running services (e.g. NFS, FTP, RSync, SMB/CIFS, SSH), and about the system itself (hostname, system version, processor, kernel, system time and how long the server has been running):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Connecting the HDD to Sata
    I connected the drive as previously described:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Banana Pi, after booting, already detects this disk by itself in the OpenMediaVault panel, more precisely in Storage->Disks. No commands need to be entered:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    (In the screenshot above, you can see two disks - /dev/sda is the 2.5" HDD discussed here connected via SATA, and /dev/mmcblk0 is the SD card on which the system for the Banana Pi itself is also stored).
    The HDD still needs to be mounted before use (mount operation):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    If the disk is not formatted, it must also be formatted (create partitions) beforehand.
    Once mounted, its state changes, but the OpenMediaVault panel prompts us to confirm the changes:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Only confirming the changes saves the new configuration, which can take a few moments:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    From this point on, the drive is mounted. You can create shares, etc. on it. We can still verify that everything went ok via the console - use the fdisk -l command:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Running SMB
    Running SMB (Samba) on OpenMediaVault is very simple - the whole thing comes down to enabling 'Enable' from the Services tab -> SMB/CIFS:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Before enabling it, it is worth checking that the default settings suit you, e.g. the workgroup name (Workgroup; the client should have the same to connect to SMB).
    Samba can take a while to start up:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Add a shared folder
    A shared folder (Share) is a folder that we can share on the network. It is created under Access Rights Management -> Shared Folders:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    When creating a Share, we choose which media we want it to be on (which partition), specify its name, path and user permissions (in my case it's a home server, so I gave everyone read/write).
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Adding Share also requires saving changes and also takes a bit of time:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    If using Samba, Share needs to be added a second time already in the Smb settings itself, i.e. in Services -> SMB/CIFS -> Shares. Yes, there is a Shares tab there too, and that's where you have to add the Share you just created.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The 'Add Share' window from Samba shown below allows us to select an existing Share and share it via SMB.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Only after adding it in this way will we be able to connect to it via SMB.

    Connecting to a shared folder from within Windows - via Network
    A properly configured OpenMediaVault with SMB will be visible in the "Network" tab from within Windows. If it is not visible, I recommend checking the firewall and workgroup settings (the workgroup name on both machines should be the same).
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The first time you open a network place may require you to log in.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once the network place has been opened, we will have a view of all the folders we have shared:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You can then operate on them normally from within Windows (move files, open, edit, create subfolders, etc.):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Connecting to a shared folder from within Windows - adding a network location
    The second way to connect directly from Windows to SMB with OpenMediaVault is to manually add a network location by entering its IP address and Share name.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The name is given in the format of ↪Ll_1ADRES_IP_NAME_SHARE, for example, ↪Ll_1ADRES_IP_name192.168.0.105</HDD300GB
    It is worth remembering that if the IP address of our server changes then we will lose the attached folder, so we should set a fixed IP address for the server before attaching it. By default, the Banana Pi has DHCP, so a variable IP.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    We may have to log in when adding:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once Share has been successfully added we will receive the appropriate message:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    and the Share folder will be visible on Windows:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    It is also worth knowing that what the current SMB connections are can be checked in the OpenMediaVault panel itself:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Connecting to a shared folder from within Android
    I then checked that I could easily access the server from my Android phone. I wanted to be able to conveniently read the pdfs provided there.
    On Google Play I chose one of the free samba clients, AndSMB from Lysesoft:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Using it is fairly straightforward - you specify the server access details once (without pointing to a specific share):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    and then we can open this folder and browse its contents, including the shared folders:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The pdfs I prepared earlier are also there:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After clicking on such a file, a window appears, where you can select the application with which you want to open it.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault


    Plugin sharerootfs
    The inquisitive OpenMediaVault user will notice that in the basic version of OMV'ki you cannot create a shared folder on the partition where the system is installed.
    This is a known limitation of OpenMediaVault and fortunately it is circumventable.
    With help comes the plugin 'sharerootfs', which, as the name suggests, allows us to create a share on the root filesystem.
    We install it from the Web Panel from the System->Plugins tab:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    In my case, its openmediavault-sharerootfs version (5.0.2-1) was available for installation. Installation may take a little while.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After installing the plugin, I recommend restarting the server just to be sure.
    From then on, under Access Rights Management -> Shared Folders, in the 'Add shared folder' dialogue we will be able to select the file system on which the system resides.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You can see from the screenshot above that after installing the sharerootfs plugin on mine, I was able to create a shared folder on /dev/mmcblk0p1 with 54GB of free space, i.e. on the SD card.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The remaining Share sharing steps are the same as I described earlier.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    In this way (by also following the previously described steps for creating Share SMB), we can make the folder on the SD card itself public even for Windows.
    The result:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Very useful - if you have a 64GB SD card, a good few tens of GB would be wasted without this. Of course, you can also get around this in another way - make two partitions on the SD card, but I haven't tried that.

    Installing the Torrent client - Installing Docker/Portainer
    I then decided to add torrent support to my server, specifically qBitTorrent.
    Torrents are a great way to share files. A lot of free software (including but not limited to operating systems - e.g. Gimp) is published on torrents.
    In a nutshell, torrents work in such a way that anyone who downloads a file also shares it, as well as being able to further share it once it has been downloaded. In BitTorrent, files are downloaded by the same users as ourselves, and it also depends on us how many other people are able to download the selected file.
    Therefore, by torrenting e.g. ISO files of various Linux distributions, you can help the open source community - because then anyone can download such a distribution from you.
    On OpenMediaVault, it is most convenient to install the qBitTorrent client - we will need Docker first. Docker is a mechanism which creates a simplified hermetic environment (so-called 'container') where we can comfortably run the selected process. You can read more about it here: https://www.docker.com/
    To start with, we need to go to OMV-Extras and enable test/extras Repositories there:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Then under the Docker tab (further in OMV-Extras) we can start installing Docker:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    This process will take a little while. You should wait patiently until the end. The progress is displayed in a window.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    If during the installation of Docker you get an error like in the screenshot below ("Failed to update apt repos."), then you need to do an apt clean (click the apt clean button, also available in OMV-Extras).
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The apt clean button is here (you have to expand this list from Update to find it):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The apt-clean process itself also takes a little while - its progress is displayed in a window.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After apt-clean, we can reinstall Docker (as I described earlier) and now Docker should install successfully:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    We wait for the message "Successfully installed docker.", then we can close the installation window with the 'Close' button.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After installation, the status of Dockerae in the Docker tab from OMV Extras should be 'Installed and running'.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    We already have Docker, now we will install Portainer.
    Portainer is an additional tool that makes it easier for us to manage Docker. You can read more here: https://www.portainer.io/
    Its installation looks analogous - in OMV Extras, under Docker, there is a Portainer button:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You have to select "Install" from the drop-down list and wait for it to install:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once the Portainer has been successfully installed, its status should be shown as Up:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Installing the Torrent client - Installing qBitTorrent via Stacks in the Portainer
    We have already installed Docker, we have installed Portainer.
    We will now use the Portainer tool to install the qBitTorrent client.
    The Portainer can be accessed via the 'Open Web' button from OMV Extras/Docker:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    This button opens a completely independent, separate Web Panel of the Portainer, in my case accessible on port 9000 (ip the same as the server of course).
    The first time we run it, we have to create an account:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Then we need to connect the Portainer client to our server once:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    From this point on, we have a functional Portainer available.
    Here we can install various add-ons for OpenMediaVault.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Our interest here is in the Stacks list - this is where the modules will be added.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    So-called 'Stacks' are added via the 'Add stack' button in the 'Stacks list' view:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    We will now install qBitTorrent. We will use the following stacks script to install:
    
    ---
    version: "2"
    services:
      qbittorrent:
        image: linuxserver/qbittorrent
        container_name: qbittorrent
        environment:
          - PUID=TWOJE_PUID
          - PGID=TWOJE_PGID
          - TZ=Poland/Warsaw
          - UMASK_SET=022
          - WEBUI_PORT=8080
        volumes:
          - /srv/dev-disk-by-label-TwojShare/TwojShare/Btrt/Config:/config
          - /srv/dev-disk-by-label-TwojShare/TwojShare/TwojShare/Data:/downloads
        ports:
          - 6881:6881
          - 6881:6881/udp
          - 8080:8080
        restart: unless-stopped
    

    Unfortunately we have to complete it.
    We need to correct in it:
    - PUID
    - PGID
    - twojShare path (full path)
    To begin with, we will complete the PUID/PGID. These can be easily found out by logging into the terminal with the command "id <user_name":
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Now we need to know the full path (Absolute Path) to the Share of our SSD. This is most conveniently found in the OpenMediaVault Web panel, under Storage -> Shared Folders.
    By default 'Absolute Path' is not shown, you need to enable it in the column view settings (column settings are as you expand that checkmark on the right, you can see it in the screenshot):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once these have been enabled, we have an additional column - Absolute Path, and copy its contents:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    In my case, this path looks like this: /srv/dev-disk-by-label-Bsv/Bsv
    We already have everything we need. Now you can enable adding Stacks (Stacks->Add stack) from the Portainer:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    and paste the duly completed script there (I corrected PUID, PGID, and paths in it):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The final version of the script I used:
    
    ---
    version: "2"
    services:
      qbittorrent:
        image: linuxserver/qbittorrent
        container_name: qbittorrent
        environment:
          - PUID=1000
          - PGID=100
          - TZ=Poland/Warsaw
          - UMASK_SET=022
          - WEBUI_PORT=8080
        volumes:
          - /srv/dev-disk-by-label-Bsv/Bsv/Btrt/Config:/config
          - /srv/dev-disk-by-label-Bsv/Bsv/Btrt/Data:/downloads
        ports:
          - 6881:6881
          - 6881:6881/udp
          - 8080:8080
        restart: unless-stopped
    

    I didn't change the port settings in it, I set the time zone to Poland/Warsaw, but I think that suits you.
    After pasting the script press the 'Deploy the stack' button:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Then we have to wait until the stack is done; during this time the button will have the text 'Deployment in progress' and cannot be pressed.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once the Deployment is done, qbittorrent should be visible in our Stacks list in the Portainer.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    We can go into its settings and check its status - it should be 'running'. Here we can also see when it was created and what ports it occupies (Published Ports column).
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    In theory, when you click on 'Published Ports' it should redirect you to the given service's web panel on the selected port in your browser, but if that doesn't work, you can simply type in the server's IP in the address bar and then the selected port (e.g.: bb59c896666f 192.168.0.128:8080 ).

    Installation of the Torrent client - logging into qBitTorrent and first Ubuntu ISO download test
    After successful installation, qBitTorrent is accessible via a web browser on port 8080. To open its panel, we need to type :8080 preceded by our server's IP address into the address bar, for example 192.168.0.128:8080 .
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The qBitTorrent service requires you to log in - the default login is 'admin' and the password is 'adminadmin'.
    Once logged in you get access to the entire panel:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    In the screenshot above we can see the columns:
    - Name - torrent name
    - Done - progress bar / % how much has been downloaded
    - Size - size of the torrent
    - Status - status of the torrent (downloading, uploading, etc.)
    - Seeds - number of torrent seeds, i.e. users who have already downloaded the torrent and are now sharing it with others (they can send us when we download)
    - Peers - the number of peers of a torrent, i.e. users who are now also downloading the torrent (we can also send them the torrent; peers can also send each other parts of the torrent they have already downloaded)
    - Down Speed - torrent download speed
    - Up Speed - torrent upload speed (as we upload to others)
    - ETA - estimated time to complete download

    New torrent jobs to download are added via the two icons indicated in the screenshot:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    There are basically two ways you can add a new torrent download:
    - via a .torrent file - we need to have a small file with a .torrent extension and send it to the panel via the form
    - via a so-called 'magnet link' - we need to have a 'link' to the torrent, such a link starts starts with 'magnet:' and can be conveniently copied and sent via text messaging, even via IRC
    I'll demonstrate here the addition of a task via a torrent file. I will do this using Ubuntu as an example - the .torrent files from its ISO can be downloaded from here:
    https://ubuntu.com/download/alternative-downloads
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After a while qBitTorrent should start downloading. Of course, when the download starts and how fast it goes depends on a number of factors, such as how many people are currently sharing the file with each other. This is a P2P network, meaning we download from users like ourselves (and send to others too).
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault


    WWW Cloud Commander - Installing a file manager via Docker
    OpenMediaVault does not have a built-in file viewer that we can use via a web browser - we have to install one separately. There are various file viewers available, but I opted for Cloud Commander.
    Cloud Commander homepage:
    https://cloudcmd.io/
    Cloud Commander is easiest to install as I previously installed qBitTorrent, i.e. via Stacks with Portainer. We need to have Portainer installed beforehand.
    We open Portainer->Stacks:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    There we click 'Add stack'. In the new form we enter the name of our stack, e.g. 'cloudcommander':
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    Next we need to prepare the Compose script. Here is an example that will create a Cloud Commander service on port 7000:
    
    version: '2'
    services:
      web:
        ports:
          - 7000:8000
        volumes:
          - ~:/root
          - /:/mnt/fs
          - /srv/dev-disk-by-label-Bsv:/srv/dev-disk-by-label-Bsv
        image: team0/rpi-cloudcmd # arm-based docker images for cloudcmd
        # image: coderaiser/cloudcmd
    

    In it you should at least change dev-disk-by-label-Bsv to your disk label.
    It is also worth noting that image coderaiser/cloudcmd is commented out because he does not provide a build for the Banana Pi/Raspberry Pi architecture, so we use image team0/rpi-cloudcmd .
    Completed form:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Then click 'Deploy' and wait for the installation. With me it took a bit of time, definitely longer than I thought it would:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After a successful installation, you will be automatically redirected to the Stacks list, where our cloudcommander should appear:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You can click on it and check its status - it should be running.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    It looks like everything is ok - from now on cloudcommander web should be available on port 7000 on our Banana Pi address. I will check this in the next paragraph.

    WWW Cloud Commander - Running Example
    Once installed, Cloud Commander is accessible via the browser on the port of your choice. In my case I was able to access it via the address 192.168.0.128:7000 :
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Cloud Commander does not require any login in the default configuration. This should be kept in mind if we want our server to be accessible from the Internet.
    In Cloud Commander we can it's easy to look at what's on the drive connected to the Banana Pi, in my case it's under the /srv/dev-disk-by-label-Bsv/Bsv path:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The same files, of course, I have on Windows accessible via Samba:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    In Cloud Commander you can also access the Share created on the SD card (using the sharerootfs plugin). In my case this is located under the path /mnt/fs/SDShare/:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You can see the same files there as Windows sees them, of course:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Cloud Commander allows you to perform various operations on files, move them, create folders, new files, etc. The menu after right-clicking on a file looks like this:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Menu when right-clicking in the current folder:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    WWW Cloud Commander - Command Console via WWW
    Cloud Commander also offers a very convenient terminal which is accessible via the WWW. It is fully functional.
    It is opened here:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Once launched, it presents itself as follows:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    It can be operated normally with commands:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    This is quite useful - it allows me to give myself Cloud Commander in my web browser bookmarks and I don't have to run Putty and SSH to do something in cmd.


    Installing Remote Desktop - RDesktop
    You can also install a remote desktop on the Banana Pi. I will show how to do this using Docker/Portainer, which is analogous to previous installations.
    Stacks script:
    
    ---
    version: "2"
    services:
      rdesktop:
        image: linuxserver/rdesktop
        container_name: rdesktop
        privileged: true #optional
        environment:
          - PUID=TWOJE_PUID
          - PGID=TWOJE_PGID
          - TZ=Poland/Warsaw
        volumes:
          - /var/run/docker.sock:/var/run/docker.sock #optional
          - /srv/dev-disk-by-label-Bsv/Config/RDesktop:/config #optional
        ports:
          - 3389:3389
        # shm_size: "2gb" #optional \
        restart: unless-stopped
    

    You also have to complete the script as in previous installations - give the PUID/PGID and the disk label.
    I additionally commented out "shm_size" which specifies the memory size for RDesktop, as the Banana Pi used here doesn't even have that much RAM.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The installation was successful:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After the installation, I used a Windows 10 PC to check that the remote desktop was working - Windows has a built-in app for this, it can be found in the start menu under the name "Connect Remote Desktop".
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Login requires first of all the IP of our server:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    You also need to accept the certificate:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Then the login form on the RDP itself already appears to us:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The default login details for RDP here are:
    Quote:
    abc
    abc

    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    After logging in, you may see a black screen for a while, but then the remote desktop should appear.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Yes exactly, this is not the Armbian/Banana Pi desktop, it is the RDesktop virtual desktop from Portainer.
    RDesktop on the Banana Pi runs quite slowly, but it's still usable and can be more convenient than the web panel and command console in certain situations.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    It is even possible to open a web browser and display web pages on this RDP:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Various pre-installed tools can also be used:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    However, I do not recommend relying heavily on this remote desktop when running on, for example, a Banana Pi, as it is quite resource-intensive and sometimes not responsive enough to work comfortably on it.

    Little tip - NTFS partitions
    OpenMediaVault in its current version does not support the creation of partitions with the NTFS file system, but it supports existing ones without any problems, so if someone wants to use this file system then they can format the drive on Windows and then just connect it to the Banana Pi.

    Adding an SSD (actually swapping an HDD for an SSD)
    After doing the first tests and seeing that everything was working as it should, I decided to ditch the old HDD in favour of a new, noiseless SSD (GOODRAM SSD CL100 G2 480GB SATA3 2.5):
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The SSD is added to the server in quite the same way as the HDD - we simply plug it in and create a file system (or just mount an existing one) from the OpenMediaVault web panel.
    The only problem we may have here is if we have previously connected and configured another drive.
    OpenMediaVault 'doesn't like' to have disconnected disks stored in the system but disconnected. We will then not be able to add another disk, the addition will end with an error.
    To remove a disk we must:
    - first delete its Shared Folders from Samba
    - then its Shared Folders in general
    - finally unmount its file system
    I.e. we perform the operations in the reverse order of connecting the disk. If the drive is, for example, used by some Share with Samba, it will not be possible to remove it from the file system.
    After performing these operations, the connection of the SSD went without problems:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    And it was this drive that I eventually used for my server.

    Permanent IP for OpenMediaVault (wired connection)
    Banana PI has a dynamic IP address configured by default - that is, the IP address is assigned to us by the router via the DHCP service. Basically, it can change at any time (although this also depends on the router and how long it assigns us an IP for).
    This is not desirable when setting up a server, especially as once the OpenMediaVault IP is changed we will immediately lose access to all shared folders and have to reconnect to them (also reconnecting them to Windows from scratch).
    Fortunately, it is very easy to configure a fixed IP address and this can be done fully via OMV's WebPanel under System->Network->Interfaces:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Select the interface you are interested in (here: eth0, i.e. cable connection) and click Edit. Here we have to change the 'Method' for IPV4 to 'Static' and then fill in the fields Address (selected IP for our server - must be free), Netmask (netmask), Gateway (default gateway). IPv6 can be turned off if not in use.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    If we don't know how to set the default mask/gateway, we can simply rewrite what it displays us our Windows system located on the same network after typing the 'ipconfig' command in the console:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Of course, more advanced users (or Linux users) probably don't need to rewrite this and know how their network is configured.
    Once the configuration has been set, you must of course save the changes with Apply and wait for them to take effect.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    At this point, the connection to OpenMediaVault will be lost - we have to re-establish it, already on the IP address we selected earlier.


    Power consumption after 2 weeks of use
    I will describe here the results of measuring the server's power consumption already normally in operation, measured with a plug-in power consumption meter purchased in China on a V9261F chip.
    I started up the server and left it switched on for 2 weeks without an enclosure. Only the Ethernet cable and the SSD were connected to the Banana PI. OpenMediaVault was running on the server along with an enabled torrent client providing the aforementioned .ISO images of the operating systems. This was to create additional load - so that there was always something going on in the network. In addition, of course, Samba was also enabled and I backed up files from my PC to the server from time to time. I also used it to flip files between computers.
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    The results of the measurements (from the photos above and the calculations) are as follows:
    Energy measurement - time since switch-on: 13 days, 20 hours and 31 minutes -> approximately 332.5h non-stop operation.
    Highest recorded power measurement: 4.3W
    Power consumption during this period: 0.756KWh
    Average energy consumption per day: 0.055KWh
    Average power: 0.756KWh/332.5h = 2.23W

    Related topic - OpenMediaVault on old hardware
    If anyone is interested in the topic, as a supplement I recommend checking out my previous build, which was based on old hardware and an older version of OpenMediaVault:
    https://www.elektroda.pl/rtvforum/topic3626452.html

    Following the topic - the enclosure
    Here I was still going to describe the process of creating the enclosure for this server, but the topic has already become very long (almost 60k characters), so I decided that I will give the description of the enclosure on the forum as a separate section, then I will update this post here and paste the link here. I will also replace the sata cable with a better one then.

    Summary
    I am very satisfied with the server. The server is absolutely silent and yet it does not heat up excessively - it is only warm. The server consumes no more than 3W, even during active operation (transferring files over the network). The Banana Pi is fast enough for the application I have chosen for it and does its job well.

    Cool? Ranking DIY
    Helpful post? Buy me a coffee.
    About Author
    p.kaczmarek2
    Moderator Smart Home
    Offline 
    p.kaczmarek2 wrote 14612 posts with rating 12630, helped 655 times. Been with us since 2014 year.
  • ADVERTISEMENT
  • #2 18788754
    Anonymous
    Level 1  
  • ADVERTISEMENT
  • #3 18788762
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14612
    Help: 655
    Rate: 12630
    spec220 wrote:
    If the C 'designer' had made graphical programming available, perhaps our paths would have crossed....

    I don't really see a link to my project here, but if you want to program 'graphically' on the Banana Pi/Raspberry Pi then I guess you have the option of using 'visual programming'/blocks:
    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
    Simple programs can probably be implemented this way.
    Helpful post? Buy me a coffee.
  • #4 18788765
    Anonymous
    Level 1  
  • #5 18789174
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    I am impressed by such a well documented project. I like it very much, especially as I also have an OMV server but on a Raspberry Pi 4, 2GB rRAM. Plus 2 1TB 2.5'' disks in an old HP T5500 enclosure.... My costs closed at a lower amount, and I do not hide that it is much easier to put OMV on RPi due to the fact that it is better documented. I closed at 400 for everything (RPi4-2GB, 2x usb3.0 to sata adapter, 16GB microSD card, 5V 4A power supply and the old case - all bought on Alledrogo). Recently I struggled to additionally run an FTP server but with access from outside the network (from outside NAT) and I can't say it wasn't easy, but I managed. With a bit of time, I'll present how it looks at my place.

    I can confidently recommend servers on OMV, especially that I still have Qnap 4-disk which in terms of power consumption does not compare to OMV on RPi. When on RPi disks are not working power consumption is at the level of less than 2W, when both disks are working it's max about 5-8W :) .

    As for attaching SSDs to the OMV server on single board computers, I do not see much point due to the fact that you can not use their potential in the form of speed. A regular HDD will suffice, as it is limited by the LAN port, even though it is 1Gb it is the bottleneck, as transfers from a regular drive are higher and the LAN port limits them. In addition, the reliability of HDD is many times greater than the popular SSD, the price is lower even for such 2.5'' HDD. And the capacity, if you look carefully you can buy 1TB 2.5'' for 100 PLN.

    In general, a big plus for the project and the description presented here colleague.
  • ADVERTISEMENT
  • #6 18789271
    .:KoSik:.
    Level 18  
    Posts: 622
    Help: 19
    Rate: 308
    A very useful and nicely described project. I am sure that many people will benefit from it. I miss only one and probably the most important thing - transfers. It would be useful to have a test of read/write speeds of files, one file, a streaming video. In addition, you could compare the transfer rates over WiFi and LAN.
    I don't know how BananaPi performs, but I can say something about RPi 3+. The RPi is a tragedy. The transfer rates are disastrous. The bottleneck, unfortunately, is the bridge, which has one bus for the network and USB, so it has to switch between reading from the disk and sending to the network.
    While it is suitable for storing individual files or photos, watching a film in 720p resolution can be forgotten.

    adversus wrote:
    What to mount SSD to OMV server on single board computers I don't see much sense

    As I wrote earlier, I don't know about here, but there is a power problem on the RPi 3+. While it can pull SSD through one USB without any problem, HDD needs to be powered from outside or through 2 ports on Raspberry. This complicates things a bit, so you may want to go for an SSD. In addition, noiseless operation is a real advantage (especially if it has to work under LAN).
  • #7 18789322
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14612
    Help: 655
    Rate: 12630
    Thank you for your positive comments.
    Overall, this first post will still be supplemented by me with some more information.

    adversus wrote:
    Recently I have been struggling to additionally run an FTP server but with access from outside the network (from outside NAT) [

    Did you solve this by getting your ISP to forward/share one of the ports with you? Or through some kind of no-ip style service?

    adversus wrote:
    especially since I still have a Qnap 4-disk which doesn't compare to OMV on RPi in terms of power consumption

    I also have a QNAP 4 disk, I'm just going to add the power measurement results by this QNAP to the first post, just for a rough comparison.

    adversus wrote:
    What to mount SSDs to an OMV server on single board computers I don't see much point due to the fact that you can't use their potential in terms of speed

    I haven't tested this, but I think you're absolutely right here. Except that the only motivation for using an SSD on mine was that I wanted a absolutely silent solution.
    If you care about capacity and price, there is only one choice - an HDD.

    .:KoSik:. wrote:
    I am only missing one and probably the most important thing - transfers. It would be useful to have some kind of test of the read/write speed of files, one file, a streaming video. In addition to this, WiFi and LAN transfer rates could be compared.

    High speed was not the aim of the project, but it is an interesting point and I intend to test it myself. I will add the measurement results to the first post soon.
    I'll also check this with the video, although I'm unlikely to use this server for that purpose.
    Helpful post? Buy me a coffee.
  • #8 18789418
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    .:KoSik:. wrote:
    I don't know how BananaPi performs but I can say something about RPi 3+. The RPi is a tragedy. The transfer rates are disastrous. The bottleneck is unfortunately the bridge having one bus for the network and USB so it has to switch between reading from the disk and sending to the network.


    I'll comment on this, because regardless of whether I had an SSD or HDD over the network, when the drive was shared via SMB transfers reached after 1Gbit Lan to 100-115MBytes / s (the same HDD in tests on a computer with Windows 10 connected via USB 3.0 reached 150-170MBytes / s) so in my opinion very good for such a budget solution. The Qnap TS431P reaches a similar figure, except that it has an additional second 1Gbit LAN port. But on a single port the transfers are similar. On the RPi 4 you have separate bridges for LAN and USB, so the transfers don't affect each other.
  • ADVERTISEMENT
  • #9 18789634
    Anonymous
    Level 1  
  • #10 18789717
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    .:KoSik:. wrote:
    I don't know how BananaPi performs but I can say something about RPi 3+. On the RPi it is a tragedy. The transfer rates are disastrous. The bottleneck is unfortunately the bridge having one bus for the network and USB so it has to switch between reading from the disk and sending to the network.


    I'll comment on this, because regardless of whether I had an SSD or HDD over the network, when the drive was shared via SMB transfers after 1Gbit Lan reached 100-115MBytes / s (the same HDD in tests on a computer with Windows 10 connected via USB 3.0 reached 150-170MBytes / s) so in my opinion very good for such a budget solution. The Qnap TS431P reaches a similar figure, except that it also has a second 1Gbit LAN port. But on a single port the transfers are similar. On the RPi 4 you have separate bridges for LAN and USB, so the transfers don't affect each other.

    .:KoSik:. wrote:
    As I wrote earlier, I don't know about here, but on the RPi 3+ there is a power problem. While it can pull SSD through one USB without any problem, HDD needs to be powered from outside or through 2 ports on Raspberry. This complicates things a bit, so you may want to go for an SSD. In addition, the noiseless operation is indeed a big advantage (even more so if it has to work under LAN).


    I on the RPi 4 without any problem plug in a 2.5'' 1TB WD Blue drive.... powered from the RPi via a USB/sata adapter. Everything works, but with two HDDs I had to take the power out of the USB/sata adapters and power in parallel with the RPi from a 5V 4A power supply, and that's why the current output is so high, because with HDDs they generate a current peak during startup, however, and a weak power supply could not cope.

    p.kaczmarek2 wrote:

    adversus wrote:
    I recently struggled to additionally run an FTP server but with access from outside the network (from outside NAT) [

    Did you solve this by making a deal with your ISP to redirect/access one of the ports for you? Or through some kind of no-ip style service?


    There was no problem with the ports from the ISP side, I have a purchased public address but no fixed IP (this I arrange through a purchased service on DYNDNS - $100 for 5 years - to my mind works very well and is cost effective). All ports are available to me, the problem is the FTP port forwarding in the router, because on port 21 (from ftp) are sent commands and on a random range of ports are sent data. It's a bit confusing which is why I bothered, but it can be done.

    p.kaczmarek2 wrote:
    adversus wrote:
    As for attaching SSDs to the OMV server on single board computers, I don't see much point due to the fact that you can't use their potential in terms of speed

    I haven't tested this, but I think you're absolutely right here. Except that the only motivation for using an SSD in my case was that I wanted an absolutely silent solution.
    If you care about capacity and price, there is only one choice - a HDD.


    I don't know what drives my colleague tested, I have 2.5'' 1TB WD Blue and 1TB Seagete drives and they are really silent. The only thing you can hear is during wake-up when they boot up, but you really have to listen to hear it. So in my opinion the volume doesn't matter because my HDDs are virtually silent.

    p.kaczmarek2 wrote:

    .:KoSik:. wrote:
    I'm only missing one and probably the most important thing - transfers. It would be useful to have some kind of test of the read/write speed of files, one file, a streaming video. For this you can compare the transfer rates over WiFi and LAN.

    High speed was not the aim of the project, but it is an interesting point and I intend to test it myself. I will soon add the measurement results to the first post.
    I will also check this with this video, although I will rather not use this server for this purpose.


    Here I can report on my tests, it quietly pulls 100MBytes/sec. I streamed full HD movies to 2 different computers at the same time, I also copied some files and everything went very smoothly. I am still very pleasantly surprised and the performance of such a system in relation to the finished product Qnap.

    Now I've ordered a pocket for 2.5'' drives working at once in one pocket with the possibility of working in Raid or as 2 independent drives plugged into a single USB3.0 port (so if this pocket works out, I'll be able to have 4 drives connected on two such pockets to the RPi)
  • #11 18789902
    szelus
    Level 34  
    Posts: 1508
    Help: 315
    Rate: 53
    I am also in the process of setting up a backup server on a Banana Pi (M1) with a terabyte HDD and I can comment on the speed: it is satisfactory. :)
    Specifically - transfers using normal FTP between laptop (Linux MX) and Banana Pi are at 45 MB/s (gigabit ethernet).
  • #12 18790839
    black_elwis
    Level 13  
    Posts: 53
    Help: 5
    Rate: 1
    My question, regarding these builds- is it possible to watch a ~16GB/32GB/64GB 4k movie over the network? Will these transfers not be too low? I currently have this done on a laptop fuselage with an i5-3337U and 16GB video will still manage, but above that it starts to rip.
  • #13 18790960
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    black_elwis wrote:
    My question, regarding these builds-is it possible to watch a ~16GB/32GB/64GB 4k movie over the network? Won't these transfers be too low? I currently have this done on a laptop fuselage with an i5-3337U and the 16GB movie can still handle it, but above that it starts to rip.


    Mate, if you had just done a little research you probably wouldn't have asked, the link below should explain everything

    Link

    But for the record, 4k can have bitrates as high as 100-120Mbit/s and the LAN port on such an Orange Pi or Raspberry Pi 4 is 1Gbit/s (1000Mbit/s) so you've got plenty of headroom for that 4K. On top of that, another issue is encoding, if you have a film in H265 then you need an even lower bitrate because this is taken care of by the compression of the H265 codec. And not to be outdone, streaming platforms such as Netflix, Amazon Prime and Apple TV recommend a minimum connection of 25Mbit/s, which is up to 4 times slower than the bitrate of uncompressed material in 4K (the aforementioned codec takes care of this).

    Is that 16/32/64GB the file size of the film or what else do you mean? The largest file I had with a film was 59GB. I was able to copy it without any problems (although due to the size it took a while even with a 1Gb LAN) and I was able to play the film over the network without any problems, either on my computer or on a dedicated SmartTV BOX player or something like that on Android, also in 4K resolution. And I confirm, it works brilliantly.
  • #14 18791286
    truski
    Level 18  
    Posts: 166
    Help: 34
    Rate: 21
    I have a question for the author because I didn't find it in his description, on the OMV project pages it says that when installing OMV on flash media, you have to install the FlashMemory plugin, which extends the life of the media by minimising the number of write operations. The question is whether or not this needs to be installed in the end ?
  • #15 18791314
    Anonymous
    Level 1  
  • #16 18791346
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    truski wrote:
    on the OMV project pages there is information that when installing OMV on flash media the FlashMemory plugin must be installed


    I checked out of curiosity on the OMV that I've had running since the autumn, and on a second test one that I ran to test accessing the ftp service from behind the router (behind NAT), and on both this plugin automatically installed.

    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault

    baseemitercollector wrote:
    For the sake of accuracy, the fact that "PI has 1Gbit/s" does not mean that physically such a continuous transfer can be achieved. This 1Gbit/s only means that the physical ethernet layer can operate in the gigabit ethernet standard, but it does not mean that the processor in PI is capable of pushing data at this speed.


    Mate, I have repeatedly tested the speed by copying large files (movies) of a few GB each via SMB, disk mapped on Windows 10 and the transfers reached 100-110Mbytes/s without any trouble. I wrote early on that the largest file I copied was 59GB and all the time the transfer stayed at 100Mbytes/s (practically the LAN port max if you would convert it to Mb from MB).
    Shall I paste a screenshot to my colleague as proof? Here you go.

    Silent, energy-efficient 480GB file server on Banana Pi - OpenMediaVault
  • #17 18791361
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14612
    Help: 655
    Rate: 12630
    truski wrote:
    I have a question for the author because I didn't find this in his description, on the OMV project pages there is information that when installing OMV on flash media, the FlashMemory plugin should be installed, which extends the life of the media by reducing the number of write operations. The question is whether this needs to be installed in the end or not ?


    Very good question - but the script I recommended from github does it automatically.
    This one here:
    https://raw.githubusercontent.com/OpenMediaVa...lugin-Developers/installScript/master/install
    install202..630.zip (5.26 kB)You must be logged in to download this attachment.
    More specifically, this excerpt:
    Code: Bash
    Log in, to see the code

    The script installs this plugin by default, although this can be bypassed with the appropriate flag.
    How much this will help extend the life of the SD card - I don't know, depends a lot on the card itself. But if there's any failure I'll probably let this topic know and we'll find out how much non-stop operation the card has endured.

    And in general, I think you can even see in one of the pictures from my topic that this plugin works for me.

    PS: I'll add speed measurements and a test with video soon
    Helpful post? Buy me a coffee.
  • #18 18791442
    Baskhaal
    Level 20  
    Posts: 397
    Help: 22
    Rate: 182
    Great! A seemingly simple server and such great documentation has been created. I am impressed.

    I myself have one C. H. I. P. still from the pre-order kickstarter phase and a 520 GB drive from an old laptop. I'll have to think about what and how to squeeze from it. Specifically from this pair, at no extra cost (apart from the small stuff of course).
  • #19 18794484
    Ibuprom
    Level 26  
    Posts: 1377
    Help: 52
    Rate: 180
    Gratu;acje to the author for such a clear description. I've been using OMV myself for many years (since version 2.x) but trying to use docker in version 3.x led me to frustration. While in bash and a mile-long command it was possible to install and manage the image, graphically in OMV something was always falling apart. Here you have used an additional overlay which also requires the use of something like a script, however. As you can see, it is not possible to make a fully clickable and simple menu for such applications. And it's a shame, it will put many off. I too gave up and simply stopped using the docker menu in OMV because of the myriad of management problems - mainly with updating images without losing configuration or configuring shared directories with other images.

    As for the torrent client I suggest using transmission. Installing natively in the plugins section of OMV, we also have a webgui. But there is one nice feature - remote management. I use firefox, and there are plugins available for firefox that provide the transmission menu in the remote browser. You can directly add and manage torrents, without the need for tedious copying, transferring etc. That is, the transmission gui on our computer but the programme itself works on another machine designed for this.
  • #20 18795592
    TechEkspert
    Editor
    Posts: 7171
    Help: 16
    Rate: 5539
    A good description allowing you to make your own version,
    the various mini computer (SBC) solutions find many uses,
    recently I even came across SBC mounts for RACK cabinets.... https://www.myelectronics.nl/us/raspberry-pi-19-inch-rack-mount/
    although SBCs are more of an amateur solution, for some applications where high availability is not important this can work well and make it easier to mount more SBCs.
  • #21 18799804
    pawelr98
    Level 39  
    Posts: 6464
    Help: 413
    Rate: 1154
    The economic aspect would always be raised with these constructions.
    When the electricity saved will cover a rather exorbitant price.

    At 3W we have about 20kWh (from the calculations of a colleague times 365) per year times 70gr is 14£ per year.
    Increasing the power consumption to 30W, i.e. 10 times, we have approximately 140PLN per year.

    Let's assume a "poor set" for 100£ and a colleague's cost about 500£.

    (500-100)/(140-14)=3.17 years
    Is this a lot or a little ?
    You have to answer for yourself, the average terminal can go well below 30W (e.g. T5740 uses 12W) and the payback time will be much longer.
    Then you also get a noiseless computer with X86 architecture, where the choice of software and hardware is much greater. Only the classic hard drive can make noise, which can simply be circumvented by relocating to a low-noise location or using a soundproofed case.

    I wouldn't assume a good lifespan for a TLC-based SSD either. They are so cheap precisely because of the not very "interesting" properties of these memories.
    In addition, slab computers are not very economical and not very convenient (lack of connectors, different architecture) for building servers.

    But still, congratulations on building a nice device.
    As a correction, it would be worthwhile to make a "normal" power supply for this computer.
    That is, do not use a USB cable, but use thicker wires directly to the charger.
    You unnecessarily lose voltage on thin wires and contacts.
    It would be no different to supplying power to the drive.
    You can also give power to the drive directly to the charger and not through the computer.
    In the case of the Rpi3, I found it more convenient to simply solder a thicker copper wire directly to the 5V pin rather than fiddling with the power supply via the microUSB cable.

    As for the torrent client.
    I recommend transmission because there is a dedicated transmission remote gui app.
    There is an app for PC and phone so you can remotely manage from whatever you want.
    I have never used the web interface on a browser.
  • #22 18802321
    pitron
    Level 24  
    Posts: 811
    Help: 51
    Rate: 99
    I am curious to compare the sata port transfers on the Banana and the usb3 sata adapters on the Raspberry.
    Banana now has a R2 model 2x sata and 4x ETH on offer.
  • #23 18802872
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    pitron wrote:
    I am curious to compare the sata port transfers on the Banana and the usb3 sata adapters on the Raspberry.
    Banana now has a R2 model 2x sata and 4x ETH on offer.


    You have the speed snapshots shown, the limitation is the gigabit LAN, the drives can easily handle the adapters, I also wrote earlier that I checked the transfers on SSD and HDD 2.5'', but there is no difference because the bottleneck is the LAN port which pulls out anyway almost its maximum speed (115MB/s catalogue maximum transfer is 124MB/s). The SATA 2.0 ports are 3Gb/s, which is still 3 times faster than the capacity of the LAN port.

    The Banana Pi R2 is sensational in terms of what it has on board, but the price is prohibitive, and the price just excludes it from use in amateur builds.

    Myself, I'm after a weekend testing OMV (and a few other systems - Volumio, Windows10) on a Thin Client bought from the internet for 69 pln with shipping in the configuration: 2GB RAM, 16GB Sata SSD, 2 SATA ports on the board, 2-core x86-compatible 64-bit processor, has passive cooling, 2 USB3.0 ports, power consumption at 12W. The results exceeded my expectations, the performance of transfers from HDDs connected via sata/usb3.0 adapter over the network identical to the OMV put on the RPi 4. The OMV system occupies 2.2GB after the update, so more than 12GB is free on the system disk. I've played Full HD videos over the network (over twisted pair) on 4 different computers without any problems and nothing cuts. So for the price it beats the OMV put on the RPi so what if it takes 3x more power as it costs literal buttons. You can always do WoLAN wake-up from an app on your phone or computer (the system itself gets up in under 1 minute). In addition, without any special grommets, you can place a second large drive in the enclosure (there is space and a sled) and 2 more on the usb3.0 ports.
    And there is no need to carve up the case, because we have an original one with dimensions of about 20x20x5 cm. I will probably post a description of the project on the forum.
  • #24 18847238
    Ibuprom
    Level 26  
    Posts: 1377
    Help: 52
    Rate: 180
    adversus wrote:
    I'm after a weekend testing OMV (and a few other systems - Volumio, Windows10) on a Thin Client bought from the internet for 69p with shipping in the configuration: 2GB RAM, 16GB Sata SSD, 2 SATA ports on the board, 2-core x86-compatible 64-bit processor, has passive cooling, 2 USB3.0 ports, power consumption at 12W.

    Any link? I've got a few RPIs on the net for various services, I'd love to consolidate this. Particularly the pi-hole on the BananaPi, it takes a few minutes to load the lists and then problems on the LAN.
  • #25 18857636
    black_elwis
    Level 13  
    Posts: 53
    Help: 5
    Rate: 1
    adversus wrote:
    I am after a weekend testing OMV (and a few other systems - Volumio, Windows10) on a Thin Client bought from the internet for 69p with shipping in the configuration: 2GB RAM, 16GB Sata SSD, 2 SATA ports on the board, 2-core x86-compatible 64-bit processor, has passive cooling, 2 USB3.0 ports, power consumption at 12W. The results exceeded my expectations, the performance of transfers from HDDs connected via sata/usb3.0 adapter over the network identical to the OMV put on the RPi 4. The OMV system occupies 2.2GB after the update, so more than 12GB is free on the system disk. I've been playing Full HD videos over the network (over twisted pair) on 4 different computers with no problems and nothing cuts. So for the price it beats the OMV put on the RPi so what if it takes 3x more power as it costs literal buttons. You can always do WoLAN wake-up from an app on your phone or computer (the system itself gets up in under 1 minute). In addition, without special grommets, a second large drive can be placed in the enclosure (there is space and a sled) and 2 more on the usb3.0 ports.
    And there is no need to carve up the case, because we have an original one with dimensions of about 20x20x5 cm. When there is time, I will probably upload a description of the project to the forum.


    I'm just wondering about the Thin Wyse Z90D, similar specs will it be able to handle a 4K file transfer on the fly to the TV, are you able to check for me if it will be possible to smoothly play a 4k file of say 30-50GB?
  • #26 18857672
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    black_elwis wrote:
    I'm just wondering about the Thin Wyse Z90D, similar specs if it can handle a 4K file to transfer on the fly to the TV, are you able to check for me if it will be possible to smoothly play a 4k file of say 30-50GB?

    I don't have videos of that resolution and size unfortunately. But I was streaming 4 different full hd movies at once to different computers and it was manageable. Otherwise, with a 1Gb/s LAN you have theoretically 125MB of bandwidth (real speed comes out 110-115MB/s). Do the maths, or look in the file to see what biterate is there and you'll have the answer. I have a feeling we wrote earlier that it should be able to do this.

    I don't know what you mean by "on the fly", the file transfer works at the speeds given because it's a file server, but certainly no transcoding or that kind of operation works, because I stress it's a pure file server.
  • #27 18857828
    Ibuprom
    Level 26  
    Posts: 1377
    Help: 52
    Rate: 180
    black_elwis wrote:
    are you able to check for me if it will be possible to smoothly play a 4k file of say 30-50GB?
    But what is there to check? You divide the file size by the length of the video and by simple maths you arrive at the amount of data transferred per second. Here only the transfer rate matters.

    For example 50GB/2 hours = 25GB/hour
    25GB/3600s=~7MB/s
  • #28 18857892
    p.kaczmarek2
    Moderator Smart Home
    Posts: 14612
    Help: 655
    Rate: 12630
    Ibuprom wrote:
    black_elwis wrote:
    are you able to check for me if it will be possible to smoothly play a 4k file of say 30-50GB?
    But what is there to check? You divide the file size by the length of the video and by simple maths you arrive at the amount of data transferred per second. Here only the transfer rate matters.

    For example 50GB/2 hours = 25GB/hour
    25GB/3600s=~7MB/s


    Just a quick remark - it seems to me that video playback programs (both browser-based and regular, e.g. GomPlayer on Windows) buffer the video anyway, so even if it's less than those 7MB/s, if you take a break after opening the video, it will still buffer the video enough for you to watch.... but maybe I'm wrong, I don't know how it is in other programmes.t
    Helpful post? Buy me a coffee.
  • #29 18857928
    Ibuprom
    Level 26  
    Posts: 1377
    Help: 52
    Rate: 180
    Ok, but when you play continuously then buffering will not help as the transfer will be lower than the required bitrate. Even a variable bitrate will not help here. The minimum average must be maintained.
  • #30 18857982
    adversus
    Level 32  
    Posts: 1607
    Help: 188
    Rate: 597
    Netflix guarantees 4k with a minimum transfer of around 20Mb/s (with the compression involved) but I still think that with 100MB/s of transfer you can play a film in this resolution without any problem. Note the units, Mb (mega bit) and MB
    (mega byte) a difference of 8 times.
📢 Listen (AI):
ADVERTISEMENT