Add a hard drive on an olimex board in order to store user files

Hi,

I was wondering how could I add an hard drive on an Olimex-lime2, i already have sata wires to connect it but what I would like to get in the end is an “software part” on the micro sd card and all the “user data” on hard drive.
So I would end with having all my OS and Application stored on the micro SD and all the user files such as mail, cloud files, jappix data and such stored to the hard drive.
That way I can back up and extend capacity easily and I avoid risking to loose all data if I do something wrong in Yunohost install.
I guess I would just have to redirect the application file directories to the hard drive but I don’t know how to proceed.
Anyone has an idea ?

Thanks !

---- En Français —

Salut,

J’aimerais savoir comment ajouter un disque dur sur une carte Olimex-lime2, j’ai deja les cables de connexion sata mais en gros je voudrais obtenir une installation avec une partie “programmes” sur la carte micro sd et toutes les "donnes utilisateurs "sur le disque dur.
Le but est d’arriver a avoir l’OS et les applications stocker sur la micro SD et tous les fichier utilisateurs, comme par exemples les email, les fichier du cloud, les donnes de jappix et autres stocker sur le disque dur.
L’intérêt principale est de pouvoir augmenter la capacité de stockage et faire des sauvegardes facilement, et ca évite de perdre toutes les donnes si je fait une fausse manip sur l’install de Yunohost.
J’imagine qu’il suffit de rediriger les répertoires ou les applications stockent leur fichier vers le disque dur mais je ne sais pas du tout comment faire.
Quelqu’un a une idee ?

Merci!

1 Like

Hello

I run Yunohost on an InternetCube (with a Lime2 also) with a hard drive. What I did is that I created two* partitions on the hard drive, one for /home and one /var (I copied the content of these folders from the SD card before I mounted the partitions for the first time) ; I hope most of the data is on the hard drive this way :slight_smile:

  • Actually, three : I also added a partition for swapping (not sure is it used though, sorry, noob inside)

I hope this helps !

— En Français —

Salut,

Je fais tourner Yunohost sur une BriqueInternet (aussi avec une Lime2) avec un disque dur. Ce que j’ai fait, c’est que j’ai créé deux* partitions sur le disque dur, une pour /home et une pour /var (j’ai copié le contenu de ces deux dossiers depuis la carte SD avant de monter les partitions pour la première fois) ; j’espère que de cette façon la majeure partie des données est sur le disque dur :slight_smile:

  • Trois en fait : j’ai aussi ajouté une partition de swap (pas certain qu’elle soit utilisée ceci dit, je suis un peu noob)

J’espère que ça pourra être utile !

Squeeek

Hi mathieu,
Firstly be sure your hard disk is auto mounted and if possible use esata cable.

If you want to be sure to rerun very quickly your mini-server you can create a RAID 1 with 2 disks (usb2.0+ 2x1To = 120€ or esata+ 2x1To= 180€), you put allmost all your system (even /etc) on it and keep /boot and may be other small root direcory on the SD card.

Like that you can have a copy of the SD card, and put it if the first is dead. Finally, you can have replacement for all the rest (olimex card, power supply).

— En Français —
Salut mathieu,
Premièrement, sois sur que ton disque soit monté automatiquement à chaque démarrage et utilise le cable esata si c’est possible.

Si tu veux être sur de relancer ton serveur rapidement, tu peux mettre en place un RAID1 avec 2 disques (usb2.0+ 2x1To = 120€ or esata+ 2x1To= 180€), tu mets quasiment tout le système dessus (même /etc) et tu gardes /boot et peut être d’autres petits répertoires racines sur la SD.

Tu peux avoir une copie de ta SD sur une autre SD prête au cas où la première tombe en panne. Enfin, tu peux t’assurer d’avoir le matériel en doublons (carte olimex + chargeur).

There is only one SATA port (no e-SATA) on the LIME2, or you can go for two USB but I am not sure it is more efficient than single SATA… If you move all but /boot on the hard drive, if I remember well you may not be able to upgrade the kernel.

Il n’y a qu’un seul port SATA (pas de e-SATA) sur LIME2, ou sinon en USB mais je ne sais pas si c’est plus efficace que le SATA simple… Si tu mets tout sauf /boot sur le disque dur, de mémoire tu risques de ne pas pouvoir faire de MàJ du kernel, ça coince.
Sqk

This post might not be useful since I’m still trying to get around a few things but I will edit and translate it in English later if necessary


Salut et merci pour toutes vos réponses,

Pour clarifier, voila le câble que j’utilise pour connecter mon disque : https://www.olimex.com/Products/Components/Cables/SATA-CABLE-SET/ .

L’idée de mettre les répertoires tels que /home et /var ou autres sur le disque dur est bien mais je comprends pas comment Yunohost va les retrouver, ils me semble que ca ferait des conflit? Je précise que j’ai flasher l’image yunohost sur la SD en utilisant la commande DD. Peut être que il y a plus d’options de paramétrages en utilisant le script d’install de la BriqueInternet ?

Bon j’ai quand même avancé un peu de mon coté et j’ai trouvé une solution qui semble fonctionner, même si je suis pas encore tout a fait au point.
L’Idée de base c’est qu’une fois Yunohost installé je déplaces les répertoires ou sont stocker les fichiers de la carte SD vers le disque dur et les remplaces en suite par des liens symboliques qui vont vers le disque dur. Comme ca pas de conflit.
Je l’ai tester avec Jirafeau et les fichier uploader s’écrivent automatiquement sur le disque mais quand je démonte/remonte le disque pour tester Jirafeau (en interface web) il n’arrive plus a reconnecter le lien au fichier sur le disque dur.

Je vous fait quand même une explication détailler de comment j’ai procéder:

D’abord je localise le disque avec lsblk (list block devices)

 root@x:/# lsblk
 NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
 sda           8:0    0 111.8G  0 disk
 mmcblk0     179:0    0  14.9G  0 disk 
 └─mmcblk0p1 179:1    0  14.9G  0 part /

Ici mon (vieux) disque dur 120go est “sda”

je monte le disque vers le répertoire “/mnt/sda” avec la commande mount:

root@x:/# mount /dev/sda /mnt/sda/

après avoir localiser les répertoires ou sont stocker les fichier pour Jirafeau je le transfère sur le disque.
ici faute de savoir les distinguer autrement, il ma sembler logique que les fichier entaient stocker sous “/home/yunohost.app/jirafeau/files”.

Commande mv (move):

root@x:/# mv /home/yunohost.app/jirafeau/files/ /mnt/sda/

enfin pour créer un lien symbolique (raccourcis) vers le nouveau répertoire j’utilise ln (link)

 root@x:/# ln -s /mnt/sda/files /home/ynohost.app/jirafeau/files

(Pour ceux que ca interesse voila un cours sur comment manipuler les fichiers dans linux )

On peux également tester si ca a bien fonctionner en uplodant un fichier dans jirafeau et en observant les différences de tailles entre “/mnt/sda/files” et “/home/yunohost.app/jirafeau/files” avec la commande du (disk usage):

root@x:/# du -hs /mnt/sda/files
40M     /mnt/sda/home/yunohost.app/jirafeau/files
root@pral:/# du -hs /home/yunohost.app/jirafeau/files
0       /home/yunohost.app/jirafeau/files

Comme dit ça pose encore problème quand je démonte/remonte le disque donc je vais encore chercher de mon coté mais si vous avez de bonnes idées je prend :wink:

Hello

Oui ça devrait marcher comme ça, avec des liens symboliques. C’est normal que ça se mette en carafe quand tu démontes le disque, puisque ces répertoires sont nécessaires à ton serveur. Pourquoi veux-tu les démonter ?
L’alternative que j’ai mise en place sur ma Lime2 est la suivante :

  • créer trois partitions sur mon disque dur (une de 4 Go pour swap, une grosse pour home et une moins grosse pour var)
  • modifier le fichier /dev/fstab de la façon suivante (en adaptant les numéros de partition à ce qu’on a préparé à l’étape précédente :
    /dev/mmcblk0p1      /    ext4    defaults        0       1
    /dev/sda1        /var    ext4    defaults    0    0
    /dev/sda2        swap    swap    defaults    0    0
    /dev/sda5        /home    ext4    defaults    0    0
    

Ceci dit, de la même manière que ce que tu as fait, cela pose le souci qu’on ne peut pas débrancher le disque dur

Bonne jorunée

Salut,

Deja merci pour ta réponse.
J’ai démonter le disque dans le but de simuler un changement ou un redémarrage du serveur. Bien sur j’ai tester les applications après avoir remonté le disque mais c’est justement la que ca fonctionnait plus. Bon j’avoue que c’est sans doutes un peu du bidouillage de noob quand même mais ceci dit ce n’est plus un problème.
J’ai placer /home et /var sur le disque et crée des liens symboliques puis éditer fstab grâce a ce que tu m’as expliqué. Ca redémarre et ca tourne parfaitement.

Encore merci a tous.

Hello

A priori les liens symboliques ne sont pas nécessaires si tu montes les partitions directement comme je te l’ai indiqué, mais peu importe, ça ne doit pas gêner non plus je suppose.
sqk

Oups il fallait lire /etc/fstab et non/dev/fstab, merci @jershon pour la détection de la cagade