Hardware: Raspberry Pi at home YunoHost version: 11.0.10 I have access to my server : direct access via keyboard Are you in a special context or did you perform some particular tweaking on your YunoHost instance ? : no
Description of my issue
I’m considering installing yunohost on my rasperry pi 4 because it looks amazing and it will make my life and my switch to self hosted applications much easier!
I’m currently installing all my software/applications and I’m storing all the media files on a external hard drive connected to my rasperry pi using USB and automatically mounted at boot. I install on the internal SD card just the bare minimum and I use more or less 8Gb of space
Before installing yunohost I’m trying to understand if a 16Gb SD card will be enough. I want to install at least 10 applications and I’m not sure if it is possible to install them on the external hard disk or if I will need to buy a bigger SD card.
Before formatting and reinstalling I prefer to double check with you.
I don’t know if it’s possible during install (I don’t think so without editing app script), but afterwards I believe it should work by moving the /var/www/app_folder (and any other one if they create it for instance in /opt) to your external drive and creating a symbolic link on its previous location, with same rights and owner than the original folder.
Interesting solution because it reduce the stress on the 2Tb disk.
Did you find a way to do it during the first installation or did you configure it after?
Unfortunately I’m not a IT expert and I think my skills are not enough to do something like that without a step by step howto.
Unfortunately the Yunohost image for Raspberry Pi does not implement that.
Move your system to SSD
do the regular setup on the sd-card
extract the card
with your laptop copy the root partition from sd-card to SSD. You can use the command line dd or simply the graphical tol gnome-disk (backup and restore a partition).
expand the partition to the disk size using something like resize2fs /dev/sda1
edit the /boot/cmdline.txt en tell where the new root is
Add a backup disk
Edit /etc/fstab to permanently mount the partition(s) on your HDD
For example, add some external storage in Nextcloud
Use a scheduled backup tool or script to backup on SSD and copy backups on HDD. I keep 7 days backup on SSD and 21 days backup on HDD.
This is not a fully documented tutorials. I have no time for writing more details now but this give you hints, and maybe someone can correct/complete it.
Be aware that will eventually be the first part to crash, or rather in an unexpected timing.
So I would advice you to make good, (tested ?) regular backups of that /boot folder, just in case.
Clearly, that’s a good idea, while a bit expensive.
The ‘boot’ partition is very small. The image of the partition is small and easy to store. I understand this partition is only accessed in read-only at startup. I already had a HDD failure (on ‘root’) but not yet on boot. Anyway I have a spare SD-card.
Not more expensive than a Synology or any other option for sharing 2Tb multimedia at home.
Anyway with the actual Yunohost image for Raspberry, this requires a few manuel steps for configuring this.
Yes, that’s really not a big deal to backup, and it does not change very often.
But as it’s on an SD card it’s quite important to backup it (I had several big crashed in the past because of that… - while both HDD and SSD are still alive).
Sure, but not as cheap as having only one drive for the whole system.
For the raspberry pi 4 I don’t know, but older versions share the same controller for ethernet and USB, which is a bottleneck. I’m not sure you have a gain with your 240Gb SSD, althought this is probably easier to manage / backup with separate drives.
On a Pi3 I have no performance gain I guess. And the Ethernet speed is not magic anyway. The main goal was to avoid a mechanical HDD turning 24/7. Because I already loose a disk.
Like you say, the drive management is also easier. And also, all backups are duplicated on two physical disks (except for multimedia but those are synchronized with laptops).
My target is not performance, but having a personal/family cloud available 24/7 with low energy consumption. The only public thing on it is a Grav CMS blog, started a few weeks ago.
Even if performance is not the target, on a Raspberry Pi 4 this would give a very nice improvement compared to the very slow speed of an SD card (often <10~20MB/s) + reduced competition for storage access.
I don’t know if one should expect high performance (for my part on an SSD for the whole system I don’t see it that much), but it will give the necessary buff to feel confortable on most apps. For my part it changed a lot the responsiveness of Nextcloud for instance, going from very poor and laggy behavior to a fair speed (but nothing fancy). Backup management is also quitte faster, and app upgrade too as a result.
I went up from around 10MB/s of real writing speed to around 100MB/s (far away from the 500MB/s that a modern SATA SSD can provide) in real life use case. That’s not very fast, it’s (decent) HDD speed class, but it’s an order of magnitude better and enough to go away from the “too limited” zone up to “good enough”.
Hence I would recommend it if you have any storage read/write intensive app or use case.
Yes I understand. I’m very satisfied with Yunohost (the software) but on my Pi3 nextcloud and piwigo are so slow… Now I start to think to the future and start a reflexionon a better setup to avoid mess with cables and increase performance.
Basically, I would have;
an arm card (low consumption)
with SSD for the OS
2 HDD drives for the datas (RAID)
in an integrated box if possible
cheap
able to do the coffea
@Dams you are talking about Synology, I wonder if it is possible to do a DIY setup based on a reformed synology NAS…
From my past research on that point, if you have to buy the hardware (either a commercial NAS or custom pieces), it will be more expensive and maybe not more confortable than a commercial one. If you have some part of the hardware, sure, you can try something (it isn’t that easy ).