• chevron_right

      Uptobox Goes Dark Following Police Raids on French Datacenters (Updated)

      news.movim.eu / TorrentFreak · Wednesday, 20 September, 2023 - 22:09 · 5 minutes

    uptobox-s It’s no secret that French file-hosting platform Uptobox has been in the crosshairs of rightsholders for some time.

    Founded in 2011, Uptobox gained popularity by making it easy for users to upload, store, and share files with others. In April 2023 alone, Uptobox received 34 million visits, roughly a third of those from France.

    News that Uptobox domains had been blocked by French ISPs emerged in May, but the service remained unfazed. Rather than panic, it offered unblocking advice instead.

    Serious Technical Issues…

    Roughly three hours ago, the official Uptobox account on ‘X’ tweeted that the service was experiencing issues.

    “It appears that we have a technical problem, we are currently investigating, the network seems to be severely disrupted,” the platform reported.

    Reports from all over Europe confirmed that Uptobox was down, accompanied by differences of opinion as to the cause. Soon after, French news outlet l’Informé broke the news that no user of the service wanted to hear.

    Police Raids on Two Datacenters

    According to l’Informé sources, around 20 police officers (see update below) raided Scaleway and OpCore, two cloud service providers based in Vitry-sur-Seine, an area in the southeastern suburbs of Paris.

    At the time of the report, police were still on the scene, reportedly carrying out a court-ordered “counterfeit seizure” operation targeting Uptobox, which presumably utilized servers at Scaleway and OpCore.

    According to l’Informé, the raids were carried out on behalf of the world’s largest entertainment companies; Columbia, Paramount, StudioCanal, Warner Bros, Disney, Apple and Amazon. All are members of the Alliance for Creativity and Entertainment, the world’s largest anti-piracy coalition.

    (Update: ACE has just confirmed its involvement in the operation. Statement below)

    No Uptobox domains are functional at the time of writing.

    One Image Reportedly Sealed Uptobox’s Fate

    A remarkable detail in l’Informé’s report suggests that an image posted to Twitter almost five years ago may have marked the beginning of the end for Uptobox. It was posted to the @Starouille account just before Christmas 2018 by an individual believed to be the chief technical officer of Uptobox.

    ‘Online’ is a reference to Online SAS, the cloud hosting company that rebranded as Scaleway in 2015. DC2 is a reference to datacenter 2, a 4,500 m² facility located in Vitry-sur-Seine, the same suburb targeted by police this morning. Images courtesy of Google comprehensively clear up any remaining doubts over the location.

    When contacted by l’Informé for comment, representatives of the movie industry, Scaleway and OpCore all declined to answer any questions.

    ‘Expert’ Opinions Should Be Ignored

    Some ‘experts’ posting on social media are claiming that the l’Informé article is bogus. Unfortunately, they have to overcome two massive hurdles to remain credible.

    Most importantly, the news was broken by journalist Marc Rees , so we can safely bet the house it’s authentic. Secondly, the official Uptobox account on ‘X’ has just provided important updates.

    “Following the incident, we lost access to the servers containing the user files, they are no longer reachable, we have not yet had any documented confirmation of the seizure of our servers by anyone,” the first tweet reads.

    “The database was not affected, and for security reasons, it was relocated off-web and the servers operating the site were erased in their entirety.”

    Uptobox reports that no user data is currently lost and if it can regain access to its servers, files and user accounts may be reconnected.

    “In the meantime, your files remain anonymous on our servers and are unusable. As for Premium subscriptions, these are frozen and will be restored and credited with compensation as soon as we regain access to the file servers. We are not going to give up, our team is working hard to resolve this situation as quickly as possible.”

    Update:

    ACE informs us that this was not a police action, but a civil action mandated by the court. Two police officers assisted in the operation, which was orchestrated by ACE. In addition, ACE undertook action in Dubai where the main operators allegedly reside.

    Additional statement from the Alliance for Creativity and Entertainment:

    The Alliance for Creativity and Entertainment (ACE), the world’s leading anti-piracy coalition, today announced it has shut down Uptobox and Uptostream, two of the digital piracy world’s most notorious illegal video hosts.

    The action, conducted in France and the United Arab Emirates, puts an end to a piracy operation that was well known for a decade among distributors of infringing content. The illegal service boasted massive audiences, mainly from France, but also from Indonesia, India and Mexico, with 1.5 billion visits over the last three years. The services hosted a sizable infringing library of film and television titles affecting all ACE members and many other rightsholders, allowing users to stream and download copyright-protected content at no cost or through a paid premium subscription.

    The two French nationals who ran the illegal service are based in Dubai, where they amassed illegal gains from selling advertising and premium subscriptions.

    “The action we announced today demonstrates that even the most sophisticated piracy operations are not above the law,” said Jan van Voorn, Executive Vice President and Global Content Protection Chief of the Motion Picture Association and Head of ACE. “This case sends a strong message to criminal operators that their illegal actions will be put to an end eventually. They may think their operations are undercover, but ACE has the network, resources and expertise to identify them and shut them down.”

    “Canal+ supports swift action when acts of piracy compromise intellectual property rights, which in turn has an impact on our business,” said Céline Boyer, Head of Content Protection at Canal+. “Our partnership with ACE is essential to ensuring that the creative marketplace continues to thrive by addressing content piracy at its source.”

    “France Televisions has zero tolerance for piracy and illegal distribution of content and channels,” said Nathalie Bobineau, Senior Vice President of International Development of French public broadcaster France Televisions. “By collaborating with ACE, we reinforce our commitment to upholding the principles of copyright protection and preserving the value of original content.”

    From: TF , for the latest news on copyright battles, piracy and more.

    • Li chevron_right

      Sauvegarde de données

      Funix · pubsub.eckmul.net / linuxfr · Monday, 9 November, 2020 - 18:43 · 11 minutes

    <p>'lut nal,</p> <p>Vous me direz encore un journal sur la sauvegarde de données alors qu'il en existe tant d'autres. Mais il n'est jamais inutile de rappeler à tel point il est utile et nécessaire de ne pas négliger ce point et c'est souvent malheureusement suite à une mauvaise expérience qu'on s'en préoccupe sérieusement, et c'est malheureusement également ce qui m'est arrivé.</p> <p>Pendant longtemps je me suis cru à l'abri de la perte de mes données perso, depuis des années j'utilise d’un serveur Dell PowerEdge avec RAID matériel acheté d’occasion une poignée de figues sur Ebay (PowerEdge 840 puis T310 actuellement) et je fais des sauvegardes régulières sur disque dur externe USB grâce à un script lancé automatiquement avec l’utilitaire cron. Les données les plus précieuses se retrouvent sur un autre disque externe que je stocke au boulot au cas où la maison parte en fumée. Mon RAID était basé jusqu'à présent sur 4 disques Seagate ST2000DM01 de 2To chacun de 2015. Alors certes, on l'a suffisamment martelé sur ce site le RAID n’est pas assimilable à de la sauvegarde, c’est juste un système de redondance qui dispatche les données sur plusieurs disques pour éviter de tout perdre quand un disque crashe, la tolérance au panne est donc censée être meilleure qu’avec un seul disque.</p> <p>Il se trouve cependant que j’ai eu au printemps dernier une panne de mon RAID bas bruit, le RAID est passé en mode dégradé avec la perte d’un disque. Puis un second disque du RAID a commandé à défaillir, c’est là que j’ai commencé à m’en rendre compte car j’ai eu un certain nombre d’erreurs système qui remontaient. Il était temps de changer 2 disques de mon RAID, après avoir fonctionné quasiment 24h/24 7j/7 pendant 5 ans, je trouve que c'est une durée de vie plutôt correcte pour des disques bas de gamme. Je les ai remplacés par des Seagate IronWolf de 3To. Mon RAID 5 est donc maintenant constitué de 2 disques Seagate ST2000DM01 de 2015 et de 2 disques Seagate IronWolf de 3To ce qui donne une capacité utile de 5,5To. D’ailleurs il faut sans doute que je songe à changer les deux disques les plus anciens. </p> <p>Après avoir réinstallé mon RAID avec les nouveaux disques j’ai redescendu la sauvegarde, c’est là que je me suis rendu compte qu’il manquait un paquet de fichiers. Sur le coup je n’ai pas compris car les sauvegardes avaient été régulières, j’ai reconstitué tardivement le fil du drame. Il y a eu donc un crash bas bruit sur le RAID qui a dégradé des données, la sauvegarde s’est faite normalement mais a supprimé les fichiers qui avaient disparu du RAID car corrompus. Mais quel crétin ! Je n’avais pas mis en place un test d’état de santé des disques et du RAID avant de lancer la sauvegarde. Du coup j’ai essayé de récupérer les fichiers supprimés de la sauvegarde avec Photorec, ça m’a pris beaucoup de temps (des mois !) car il y en avait pour des To, mais comme il y a eu plusieurs sauvegardes dans l’intervalle je n’ai récupéré au final que peu de choses. Dans l’histoire, j’ai perdu dans les 400 films et une centaine de vidéos perso :-(</p> <p>J’ai dû revoir de fond en comble ma pratique de la sauvegarde, mes données principales sont toujours stockées sur le RAID 5 et il existe toujours une sauvegarde journalière sur disque de USB externe. Mais j’ai rajouté des sauvegardes croisées avec d’autres PC que je lance manuellement avec unison au moins une fois par semaine et j’ai rajouté également des tests d’état de santé des disques, dès dégradation des disques les sauvegardes ne sont pas lancées, j’ai mis en place un système de mail automatique journalier qui m’informe de l’état des disques.</p> <p>L’architecture ressemble maintenant à ça :<br> <img src="//img.linuxfr.org/img/68747470733a2f2f6f6c69766965722e686f617261752e6f72672f77702d636f6e74656e742f75706c6f6164732f32303230313130382d736368656d612d736175766567617264652e6a7067/20201108-schema-sauvegarde.jpg" alt="Titre de l'image" title="Source : https://olivier.hoarau.org/wp-content/uploads/20201108-schema-sauvegarde.jpg"></p> <p>Les données principales se trouvent sur le serveur Mana qui dispose d’un RAID 1 avec deux disques SAS de 136Go pour le système et d’un RAID 5 pour les données dans le répertoire data d’un espace utile de 5,5To. Cet espace est copié automatiquement sur un disque externe USB de 4To, il est également copié dans son intégralité vers le disque Germaine de 4To de la station Predator et en partie (hors fichiers multimédia) vers le Thinkpad Tetiaroa. Les deux dernières copies sont manuelles et se font avec unison.</p> <p>Concernant le script de sauvegarde, dans le répertoire /etc/cron.daily on va trouver le fichier sauvegarde qui contient :</p> <pre><code>#!/bin/bash /usr/local/linux/systeme/hwraid-master/wrapper-scripts/megaclisas-status &gt; /tmp/megastatus 2&gt;&amp;1 distant1="/media/sauvegardes" # test de vérification de la présence du disque de sauvegarde if [ ! -e "$distant1" ] then #le disque n'est pas monté, j'envoie juste le mail d'état du raid et je stoppe le script cat /tmp/megastatus | mail -s "Etat raid" olivier exit fi #test de l'état de santé du disque dur externe /usr/sbin/smartctl -a /dev/sdc &gt;&gt; /tmp/megastatus 2&gt;&amp;1 #envoi du mail de l'état des disques de mana cat /tmp/megastatus | mail -s "Etat disk mana" olivier # test de l'état du raid raid=$(MegaCli64 -LDInfo -L1 -a0 | grep State) if echo $raid | grep Degraded &gt;/dev/null 2&gt;&amp;1 then exit fi #test de l'état du disque dur externe ddur=$(/usr/sbin/smartctl -A /dev/sdc) if echo $ddur | grep FAILING_NOW &gt;/dev/null 2&gt;&amp;1 then exit fi /usr/sbin/sauve </code></pre> <p>Ce script vérifie la présence du disque dur externe et vérifie son état de santé, ainsi que celui du RAID, il ne va pas plus loin si l’un des deux est dégradé, sinon il lance le script /usr/sbin/sauve qui contient :</p> <pre><code>#!/bin/bash # Script sauvegarde rsync https://www.funix.org inspiré par # celui de Mickaël BONNARD ( https://www.mickaelbonnard.fr ) # sous licence MIT ( http://choosealicense.com/licenses/mit/ ) # Variables # date et heure jour=`date +%Y-%B-%d` # répertoire contenant les logs log="/var/log/sauvegarde" # répertoires à sauvegarder local1="/data" local2="/home" local3="/chroot/data" # point de montage du disque de sauvegarde distant1="/media/sauvegardes" distant2="/media/sauvegardes/base-mysql" # fichiers et répertoires à exclure de la sauvegarde excludes1="/root/bin/exclude-data.txt" excludes2="/root/bin/exclude-home.txt" # nom de la sauvegarde dans le journal echo "-------------------------------------------------------------" &gt; $log/sauvegarde_$jour.log echo "Sauvegarde de $local1 , $local2 et `{mathjax} local3 `(date +%d-%B-%Y)" &gt;&gt; $log/sauvegarde_$jour.log echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log # heure de début du transfert dans le journal echo "Heure de demarrage de la sauvegarde : $(date +%H:%M:%S)" &gt;&gt; $log/sauvegarde_$jour.log echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log #echo "lancement sauvegarde : $(date +%H:%M:%S)" | mail -s "Lancement sauvegarde" olivier # transfert des fichiers echo "Copie de data" &gt;&gt; $log/sauvegarde_$jour.log rsync -av --stats --delete-after --exclude-from=$excludes1 $local1 $distant1 &gt;&gt; $log/sauvegarde_$jour.log echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log echo "Copie de home" &gt;&gt; $log/sauvegarde_$jour.log rsync -av --stats --delete-after --exclude-from=$excludes2 $local2 $distant1 &gt;&gt; $log/sauvegarde_$jour.log echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log echo "Copie de chroot" &gt;&gt; $log/sauvegarde_$jour.log rsync -av --stats --delete-after $local3 $distant2 &gt;&gt; $log/sauvegarde_$jour.log echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log # -a : mode archivage ( équivalent -rlptgoD ). # -z : compression des données pendant le transfert. # -- stats donne des informations sur le transfert (nombre de fichiers…). # --delete-after : supprime les fichiers qui n’existent plus dans la source après le transfert dans le dossier de destination. status=$? echo "Statut de la commande " &gt;&gt; $log/sauvegarde_$jour.log #code d'erreurs rsync case $status in 0) echo Succès &gt;&gt; $log/sauvegarde_$jour.log;; 1) echo Erreur de syntaxe ou d'utilisation &gt;&gt; $log/sauvegarde_$jour.log;; 2) echo Incompatibilité de protocole &gt;&gt; $log/sauvegarde_$jour.log;; 3) echo Erreurs lors de la sélection des fichiers et des répertoires d'entrée/sortie &gt;&gt; $log/sauvegarde_$jour.log;; 4) echo Action non supportée : une tentative de manipulation de fichiers 64-bits sur une plate-forme qui ne les supporte pas \ ; ou une option qui est supportée par le client mais pas par le serveur. &gt;&gt; $log/sauvegarde_$jour.log;; 5) echo Erreur lors du démarrage du protocole client-serveur &gt;&gt; $log/sauvegarde_$jour.log;; 6) echo Démon incapable d'écrire dans le fichier de log &gt;&gt; $log/sauvegarde_$jour.log;; 10) echo Erreur dans la socket E/S &gt;&gt; $log/sauvegarde_$jour.log;; 11) echo Erreur d'E/S fichier &gt;&gt; $log/sauvegarde_$jour.log;; 12) echo Erreur dans le flux de donnée du protocole rsync &gt;&gt; $log/sauvegarde_$jour.log;; 13) echo Erreur avec les diagnostics du programme &gt;&gt; $log/sauvegarde_$jour.log;; 14) echo Erreur dans le code IPC&gt;&gt; $log/sauvegarde_$jour.log;; 20) echo SIGUSR1 ou SIGINT reçu &gt;&gt; $log/sauvegarde_$jour.log;; 21) echo "Une erreur retournée par waitpid()" &gt;&gt; $log/sauvegarde_$jour.log;; 22) echo Erreur lors de l'allocation des tampons de mémoire principaux &gt;&gt; $log/sauvegarde_$jour.log;; 23) echo Transfert partiel du à une erreur &gt;&gt; $log/sauvegarde_$jour.log;; 24) echo Transfert partiel du à la disparition d'un fichier source &gt;&gt; $log/sauvegarde_$jour.log;; 25) echo La limite --max-delete a été atteinte &gt;&gt; $log/sauvegarde_$jour.log;; 30) echo Dépassement du temps d'attente maximal lors d'envoi/réception de données &gt;&gt; $log/sauvegarde_$jour.log;; 35) echo Temps d’attente dépassé en attendant une connection &gt;&gt; $log/sauvegarde_$jour.log;; 255) echo Erreur inexpliquée &gt;&gt; $log/sauvegarde_$jour.log;; esac echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log # heure de fin dans le journal echo "Jour de fin de sauvegarde : $(date +%d-%B-%Y)" &gt;&gt; $log/sauvegarde_$jour.log echo "Heure de fin de la sauvegarde : $(date +%H:%M:%S)" &gt;&gt; $log/sauvegarde_$jour.log echo "-------------------------------------------------------------" &gt;&gt; $log/sauvegarde_$jour.log cat $log/sauvegarde_$jour.log | mail -s "Sauvegarde" olivier exit </code></pre> <p>En parallèle sur le serveur mana j’ai activé smartmontools, cet outil embarque le serveur smartd qui monitore les disques durs et envoie des alertes en cas d’erreur. J'ai mis dans le fichier /etc/smartd.conf la ligne :</p> <pre><code>DEVICESCAN -o on -S on -s (S/../.././01|L/../../1/03) -m olivier -M test </code></pre> <p>Cela signifie que tous les disques subiront un test court tous les jours à 1h du matin et un test long les lundis à 3h du matin, en cas d’erreurs rencontrés un mail me sera remonté. </p> <p>Sur les PC Predator et Tetiaroa ils ne sont pas allumés en permanence, il faut que je pense régulièrement à lancer les commandes de vérification de l’état de santé du disque sur lequel se trouve ma sauvegarde avant chaque lancement d’unison. Je songe à rédiger un script pour vérifier l'état des disques au lancement.</p> <p>Maintenant j’ai sur les bras un disque externe USB de 1To supplémentaire, un disque dur de 2To inutilisé et bientôt 2 autres disques de 2To après les avoir remplacés dans le RAID 5. Je compte grouper tous ces disques dans un boîtier multi disque USB ou un NAS réseau, je n’ai pas encore fait mon choix, ça me permettra de mettre en place une nouvelle redondance de sauvegarde.</p> <p>En guise de conclusion et pour en revenir à mes données perdues, je n’ai plus qu’à reconstituer ma collection de films, en partie en récupérant les fichiers enregistrés sur ma box. Pour ce qui concerne mes vidéos perso, fort heureusement une grande partie sont encore sur des bandes miniDV et sur des cassettes VHS, il ne me reste plus qu'à renumériser tout ça.</p> <p>Je suis preneur de toute remarque sur l'amélioration de ce dispositif.</p> <div><a href="https://linuxfr.org/users/funix/journaux/sauvegarde-de-donnees.epub">Télécharger ce contenu au format EPUB</a></div> <p> <strong>Commentaires :</strong> <a href="//linuxfr.org/nodes/122171/comments.atom">voir le flux Atom</a> <a href="https://linuxfr.org/users/funix/journaux/sauvegarde-de-donnees#comments">ouvrir dans le navigateur</a> </p>
    • At chevron_right

      Ça va devenir RAID dans votre serveur

      raspbeguy · pubsub.gugod.fr / atomtest · Sunday, 20 August, 2017 - 22:00 · 13 minutes

    Récemment j'ai du intervenir sur ma tour parce que j'avais plus tellement de place. J'ai du vite acheter un autre disque dur pour y remédier. Ce qui me donne l'occasion de parler de cette belle technologie sur laquelle je m'étais promis de faire un petit tuto un de ces jours. En théorie RAID est l'a...

    Récemment j'ai du intervenir sur ma tour parce que j'avais plus tellement de place. J'ai du vite acheter un autre disque dur pour y remédier. Ce qui me donne l'occasion de parler de cette belle technologie sur laquelle je m'étais promis de faire un petit tuto un de ces jours.

    En théorie

    RAID est l'acronyme de Redundant Array of Independent Disks (Alignement redondant de disques indépendants), et comme son nom l'indique, il va permettre de regrouper plusieurs disques durs et d'y instaurer une politique de stockage pour faire de la redondance, de l’agrégation de taille, enfin ça répond à plein de besoins différents. En fait on ne devrait pas vraiment parler d'un seul RAID, mais bel et bien de la famille des RAIDs, car en effet il y a autant de RAIDs que de besoins différent.

    On va présenter les assemblages RAID les plus utilisés. Pour plus de détails, je vous conseille la page Wikipédia qui est très claire et qui contient des schémas très explicites.

    Dans la suite, on va beaucoup parler de bandes de stockage : il s'agit d'une quantité de stockage de valeur prédéfinie, qui correspond à une "section" contiguë du disque qui la contient. Dans ce modèle, lors de l'écriture sur le volume, une bande est d’abord remplie avant d'en entamer une suivante. Il s'agit en fait d'abstraire le stockage et de pouvoir mieux comprendre la répartition des données sur les différents disques.

    RAID 0

    Les bandes sont tout bonnement distribuées sur les disques, toujours dans le même ordre. On remplit donc une bande par disque, puis une fois qu'on a touché à tous les disques, on repart du premier disque et on recommence une couche de bandes. Tous les disques contiennent des données différentes. Ainsi, si vous avez n disques durs de capacité exploitable x, la capacité totale du montage sera nx.

    • Avantages : Ce montage permet d'utiliser le plus grand espace possible de votre assemblage. De plus, en moyenne, les accès disques parallèles seront plus rapide, pour peu que ces accès disques se fassent dans des bandes différentes et sur des disques différents.
    • Inconvénients : Il suffit de perdre un seul disque pour corrompre l'intégralité des données. Or, statistiquement, plus on a de disques, plus on a de chances d'en perdre.

    RAID 1

    Les bandes sont écrites à l’identique sur tous les disques. Tous les disques contiennent exactement les même données. Ainsi, si vous avez n disques durs de capacité exploitable x, la capacité totale du montage sera x.

    • Avantages : C'est le montage qui permet la plus grande sécurité des données faces aux pannes : tant qu'il vous reste un disque fonctionnel, vos données sont intactes et complètes. Les accès disques sont aussi nettement améliorés, avec une vitesse théorique multipliée par le nombre de disques dans le montage.
    • Inconvénients : Il est frustrant d'avoir beaucoup de disques durs pour avoir au final l'espace d'un seul disque. Évidemment les données sont très sûres mais quand même, faut pas pousser...

    RAID 5

    Les bandes sont réparties sur tous les disques sauf un, qui reçoit une bande de parité. La bande de parité est tout simplement une bande dont chaque bit est obtenu en appliquant le OU exclusif (XOR) à l'ensemble des bits correspondants dans les bandes alignées des autres disques. Cette bande de parité est attribuée à chaque disque alternativement au fil des couches de bandes remplies. Donc si un disque vient à tomber en panne, pour chaque couche de bande, si la bande du disque en panne est la bande de parité, alors les données de la couche sont intactes. Si la bande contient de la donnée, alors elle peut être recalculée à partir des autres couches de données et celle de parité. C'est du calcul logique, et c'est la force du XOR. Ainsi, si vous avez n disques durs de capacité exploitable x, la capacité totale du montage sera (n-1)x.

    • Avantages : Un bon compromis entre place exploitable et sécurité des données. On se donne le droit de perdre un disque dur dans la bataille. Pour retrouver l'usage des données, il suffit de remplacer le disque défaillant et les données sont reconstruites.
    • Inconvénients : Ça dépends des cas, mais un droit à un unique disque dur en panne, ça peu être peu. Pour certain ça peut être insuffisant.

    RAID 6

    Il s'agit d'une extension du RAID 5 dans laquelle on se permet de pouvoir perdre plus d'un disque. La solution étant d'attribuer plus de bandes de "parité" par couche, une par nombre de pannes maximum permises. Ici, j'utilise les guillemets car il ne s'agit plus vraiment de la parité simple de la logique de base, mais d'un truc chelou reposant sur un principe tout autre dont je ne pas trop vous parler parce que j'en ignore tout. Donc si vous avez n disques durs de capacité exploitable x, et si vous mettez en place k bandes de redondance par couche, la capacité totale du montage sera (n-k)x.

    • Avantages : On se sent un peu plus à l’abri des intempéries matérielles, au pris d'un peu de place de stockage.
    • Inconvénients : Le principe chelou dont je vous ai parlé, enfin dont je ne vous ai pas parlé pour être honnête, eh bien il est tellement chelou qu'il pète pas mal les performances. Et pour couronner le tout, la plupart des implémentations de ce type d'assemblage est bien moins stable que les autres.

    Il est également possible de combiner les RAIDs. Une combinaison fréquente est le RAID 10 (RAID 1 + RAID 0). Par exemple si on a 10 disques, on peu monter 2 RAID 1 de 5 disques chacun, puis assembler ces deux volumes en RAID 0. On a également aussi le RAID 50, combinaison dur RAID 5 et du RAID 0 selon le même principe.

    La gestion du RAID

    Je vous parlais de différentes implémentations du RAID. En fait, le RAID n'est pas un programme en tant que soi, juste un ensemble de spécifications. Du coup chacun y va de sa sauce : il existe des implémentations libres et propriétaires, logicielles et matérielles. Les solutions matérielles se basent sur du matériel dédié (un contrôleur RAID), le système d'exploitation n'a donc pas à s'occuper de ça et le plus souvent ces solutions marchent out of the box, sans avoir besoin de configurer quoi que ce soit. Mais elles ont l'immense inconvénient d'être propriétaire dans leur quasi-totalité, et pour le coup il n'existe aucun standard. Dans certains cas, si votre contrôleur RAID rend l'âme, il vous faudra acquérir exactement le même modèle de contrôleur, sinon, peu importe que vos disques soient tous intacts, plus rien ne pourra les lire, et vous serez alors en légitime position d'être fort contrarié. À mon humble avis, le principal argument des RAIDs matériel auparavant était les meilleures performances. Aujourd'hui cet avantage est de plus en plus obsolète, car désormais les machines sont bien plus puissantes qu'il y a 15 ans et les programmes de RAID ont été nettement optimisés et stabilisés. Cette différence de performance est aujourd'hui presque intangible.

    En pratique

    J'ai hérité par un ami d'une tour de bureau. Elle est bien cool car elle contient une grande baie de disques et pas mal de ports SATA (bien entendu, vous pouvez faire votre RAID avec des disques branchés en USB si vous le souhaitez). J'ai donc décidé d'en faire un NAS fait main.

    Choix des armes

    J'ai donc initialement acheté 3 disques de 3 To chacun (des Western Digital Red, gamme dédiée justement aux usage en RAID) et j'ai opté pour un RAID 5 logiciel. Et sur Linux, le programme de RAID par excellence est mdadm. J'ai décidé de garder branché le disque dur d'origine (500 Go) mais de ne pas l'intégrer au RAID, il sert uniquement de disque de démarrage. Notez que si j'avais voulu optimiser les performances, j'aurais pu troquer ce disque pour un petit SSD, mais bon, je suis déjà content comme ça.

    Par ailleurs, pour faire de la place dans la baie de disques, j'ai du déménager le disque de démarrage dans la baie frontale, celle destinée à accueillir les périphériques comme le lecteur optique.

    Le 4ème disque du RAID, on en parlera plus tard. Je l'ai acheté bien après.

    Pour ça j'ai utilisé un adaptateur 3,5 pouces vers 5,25 pouces bien pratique, qui m'a permis de fixer bien solidement le disque dur au lieu de le laisser se balader dans la tour.

    Partitionnement et formatage

    Du côté software, je me retrouve avec un disque sda de démarrage, et sdb, sdc et sdd des disques vierges prêts à être assemblés en RAID. Avant ça, j'ai besoin de les partitionner. J'utilise donc fdisk pour les trois disques à tour de rôle, je choisis une table de partitions GPT et j'y crée une unique partition de type "Linux RAID" (code 29 dans fdisk).

    Création de l'assemblage RAID

    C'est tout bête, ça tient en une seule ligne de commande :

    mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

    Dans cette commande, j'indique que le nom du volume abstrait sera /dev/md0, que ce sera un RAID 5, qu'il comporte 3 disques et je lui précise les partitions que je veux utiliser.

    Pour suivre l'évolution de la création de l'assemblage, jetez un coup d'oeil au fichier /proc/mdstat. Ce fichier sera votre nouvel ami, c'est lui qu'il faudra consulter dès que vous ferez une opération qui touche au RAID.

    Puis j'ajoute l'assemblage à la configuration de mdadm pour que celui-ci me l'assemble au démarrage :

    mdadm --detail --scan >> /etc/mdadm.conf

    Puis il ne vous reste plus qu'à mettre votre système de fichier préféré sur le volume créé !

    mkfs.ext4 /dev/md0

    Pour que votre assemblage soit monté au démarrage, j'ajoute à mon /etc/fstab :

    /dev/md0 /mnt/data ext4 defaults 0 0

    Il ne faut pas confondre assemblage et montage, il s'agit de deux étapes lors de la connexion d'un RAID. On doit assembler un RAID afin qu'il soit reconnu comme un volume propre, puis on doit monter notre volume pour pouvoir lire et écrire dessus.

    Enfin on monte le volume :

    mkdir /mnt/data
    mount /mnt/data

    Ayé vous avez un RAID 5 qui fonctionne !

    Il est recommandé de procéder régulièrement à des reconstruction de RAID, opération qui va vérifier la cohérence de l'assemblage. Il s'agit d'une opération transparente mais qui dure plusieurs heures et qui va se traduire par une forte augmentation de l'activité des disques. Pour ça il vous faudra lancer un petit programme sans arguments, raid-check, à un intervalle raisonnable, disons, toutes les semaines. Choisissez un horaire de faible activité, comme la nuit du samedi au dimanche à 3h du matin. Pour ça, faites vous plaisir, entre la crontab et les timers de systemd, on manque pas de solutions.

    Ajout d'un nouveau disque à l'assemblage

    Mon RAID 5 était constitué de 3 disques de 3 To ce qui nous fait 6 To exploitables, si vous avez bien suivi. 6 To, c'est un grand espace, il m'a suffi pendant presque 2 ans... Puis j'ai eu besoin de plus de place. J'ai donc racheté un autre disque (même modèle, même taille) que j'ai fourré dans ma tour. Je vous avoue que sur le coup, j'étais encore puceau au niveau extension de RAID, j'ai donc flippé énormément et j'ai fait une sauvegarde de mes 6 To sur divers disques externes que j'ai pu trouver dans ma caverne. Je vous raconte pas comme c'était pénible...

    Petites observations à ce niveau :

    1. Remarquez que l'ordre des disques dans le nommage des périphériques physiques (sdX) et tout sauf fixe. En théorie, il faut être préparé à ce que vos disques changent de noms. Votre petit sdb chéri que vous avez bordé et vu s'endormir dans le creux douillet de son lit un soir peut très bien vous trahir et s'appeler sdc au petit matin dès le prochain redémarrage. Bon c'est un peu exagéré, mais une chose est sure, il ne faut jamais faire confiance au nommage des périphériques physiques (c'est pour ça entre autres qu'il faut privilégier la désignation par UUID dans la fstab).
    2. mdadm se fiche complètement du nommage de ses périphériques. Il utilise sa propre magie noire pour déterminer les membres d'un assemblages. En conclusion, ne vous tracassez pas pour retrouver le nom de vos disques de votre assemblage, mdadm, lui, s'y retrouvera toujours.

    Cependant, faites quand même gaffe lorsque vous allez ajoutez votre nouveau disque dur. Par exemple chez moi, le nouveau disque s'est vu nommé sdb, tandis que les autres s'étaient vu relégués en sdc, sdd et sde. Faut juste le savoir et traiter les disques pour ce qu'ils sont, et non pas des étiquettes à trois lettres.

    Tout ce que j'ai eu à faire, en définitive, a été de partitionner-formater mon nouveau disque ainsi que l'ont été ses aînés, puis j'ai lancé les deux commandes suivantes :

    mdadm --add /dev/md0 /dev/sdb1
    mdadm --grow --raid-devices=4 --backup-file=/root/grow\_md0.bak /dev/md0

    La première va juste indiquer à mdadm qu'on lui ajoute un disque, mais sans plus. C'est la deuxième commande qui va lancer l'opération de reconstruction (rééquilibrage de l'assemblage). Opération qui dure plusieurs heures, donc suivez son déroulement dans /proc/mdstat.

    Une fois que c'est terminé, il faut maintenant procéder à l'extension du système de fichier lui même. Et là vous priez pour avoir choisi un système de fichier pas trop stupide qui accepte ce genre d'opération. Rassurez-vous, ext4 le supporte très bien.

    Il le supporte même tellement bien que vous pouvez le faire directement à chaud, sans démonter votre volume. Pour ça, premièrement, si vous utilisez une connexion SSH, ouvrez une session tmux. Il serait bête qu'un incident réseau de rien du tout vienne corrombre tout votre système de fichire tout de même. Puis il vous faudra exécuter :

    resize2fs -p /dev/md0

    Il va vous mettre en garde et ronchonner un tantinet que votre disque est toujours monté, mais écoutez, il s'en remettra, dans la vie on fait pas toujours ce qu'on veut. Les minutes passent, vous vous rongez les ongles, vous prenez un café, vous videz un pot de glace, et normalement, si tout se passe bien, le système de fichier aura été étendu à tout l'espace disponible sur l'assemblage. Félicitations !

    Conclusion

    J'ai rencontré beaucoup de monde m'ayant dit qu'ils préféraient rester éloigner autant que possible de RAID parce que ça leur faisait peur. En réalité, il n'y a rien d'effrayant là dedans. mdadm est un outil ma foi fort bien codé et les années ont prouvé qu'il était fiable. Il ne faut pas avoir peur du RAID. Enfin un peu quand même, faut pas faire n'importe quoi.

    • Ha chevron_right

      Ça va devenir RAID dans votre serveur

      raspbeguy · pubsub.gugod.fr / hashtagueule · Sunday, 20 August, 2017 - 22:00 · 13 minutes

    Récemment j'ai du intervenir sur ma tour parce que j'avais plus tellement de place. J'ai du vite acheter un autre disque dur pour y remédier. Ce qui me donne l'occasion de parler de cette belle technologie sur laquelle je m'étais promis de faire un petit tuto un de ces jours. En théorie RAID est l'a...

    Récemment j'ai du intervenir sur ma tour parce que j'avais plus tellement de place. J'ai du vite acheter un autre disque dur pour y remédier. Ce qui me donne l'occasion de parler de cette belle technologie sur laquelle je m'étais promis de faire un petit tuto un de ces jours.

    En théorie

    RAID est l'acronyme de Redundant Array of Independent Disks (Alignement redondant de disques indépendants), et comme son nom l'indique, il va permettre de regrouper plusieurs disques durs et d'y instaurer une politique de stockage pour faire de la redondance, de l’agrégation de taille, enfin ça répond à plein de besoins différents. En fait on ne devrait pas vraiment parler d'un seul RAID, mais bel et bien de la famille des RAIDs, car en effet il y a autant de RAIDs que de besoins différent.

    On va présenter les assemblages RAID les plus utilisés. Pour plus de détails, je vous conseille la page Wikipédia qui est très claire et qui contient des schémas très explicites.

    Dans la suite, on va beaucoup parler de bandes de stockage : il s'agit d'une quantité de stockage de valeur prédéfinie, qui correspond à une "section" contiguë du disque qui la contient. Dans ce modèle, lors de l'écriture sur le volume, une bande est d’abord remplie avant d'en entamer une suivante. Il s'agit en fait d'abstraire le stockage et de pouvoir mieux comprendre la répartition des données sur les différents disques.

    RAID 0

    Les bandes sont tout bonnement distribuées sur les disques, toujours dans le même ordre. On remplit donc une bande par disque, puis une fois qu'on a touché à tous les disques, on repart du premier disque et on recommence une couche de bandes. Tous les disques contiennent des données différentes. Ainsi, si vous avez n disques durs de capacité exploitable x, la capacité totale du montage sera nx.

    • Avantages : Ce montage permet d'utiliser le plus grand espace possible de votre assemblage. De plus, en moyenne, les accès disques parallèles seront plus rapide, pour peu que ces accès disques se fassent dans des bandes différentes et sur des disques différents.
    • Inconvénients : Il suffit de perdre un seul disque pour corrompre l'intégralité des données. Or, statistiquement, plus on a de disques, plus on a de chances d'en perdre.

    RAID 1

    Les bandes sont écrites à l’identique sur tous les disques. Tous les disques contiennent exactement les même données. Ainsi, si vous avez n disques durs de capacité exploitable x, la capacité totale du montage sera x.

    • Avantages : C'est le montage qui permet la plus grande sécurité des données faces aux pannes : tant qu'il vous reste un disque fonctionnel, vos données sont intactes et complètes. Les accès disques sont aussi nettement améliorés, avec une vitesse théorique multipliée par le nombre de disques dans le montage.
    • Inconvénients : Il est frustrant d'avoir beaucoup de disques durs pour avoir au final l'espace d'un seul disque. Évidemment les données sont très sûres mais quand même, faut pas pousser...

    RAID 5

    Les bandes sont réparties sur tous les disques sauf un, qui reçoit une bande de parité. La bande de parité est tout simplement une bande dont chaque bit est obtenu en appliquant le OU exclusif (XOR) à l'ensemble des bits correspondants dans les bandes alignées des autres disques. Cette bande de parité est attribuée à chaque disque alternativement au fil des couches de bandes remplies. Donc si un disque vient à tomber en panne, pour chaque couche de bande, si la bande du disque en panne est la bande de parité, alors les données de la couche sont intactes. Si la bande contient de la donnée, alors elle peut être recalculée à partir des autres couches de données et celle de parité. C'est du calcul logique, et c'est la force du XOR. Ainsi, si vous avez n disques durs de capacité exploitable x, la capacité totale du montage sera (n-1)x.

    • Avantages : Un bon compromis entre place exploitable et sécurité des données. On se donne le droit de perdre un disque dur dans la bataille. Pour retrouver l'usage des données, il suffit de remplacer le disque défaillant et les données sont reconstruites.
    • Inconvénients : Ça dépends des cas, mais un droit à un unique disque dur en panne, ça peu être peu. Pour certain ça peut être insuffisant.

    RAID 6

    Il s'agit d'une extension du RAID 5 dans laquelle on se permet de pouvoir perdre plus d'un disque. La solution étant d'attribuer plus de bandes de "parité" par couche, une par nombre de pannes maximum permises. Ici, j'utilise les guillemets car il ne s'agit plus vraiment de la parité simple de la logique de base, mais d'un truc chelou reposant sur un principe tout autre dont je ne pas trop vous parler parce que j'en ignore tout. Donc si vous avez n disques durs de capacité exploitable x, et si vous mettez en place k bandes de redondance par couche, la capacité totale du montage sera (n-k)x.

    • Avantages : On se sent un peu plus à l’abri des intempéries matérielles, au pris d'un peu de place de stockage.
    • Inconvénients : Le principe chelou dont je vous ai parlé, enfin dont je ne vous ai pas parlé pour être honnête, eh bien il est tellement chelou qu'il pète pas mal les performances. Et pour couronner le tout, la plupart des implémentations de ce type d'assemblage est bien moins stable que les autres.

    Il est également possible de combiner les RAIDs. Une combinaison fréquente est le RAID 10 (RAID 1 + RAID 0). Par exemple si on a 10 disques, on peu monter 2 RAID 1 de 5 disques chacun, puis assembler ces deux volumes en RAID 0. On a également aussi le RAID 50, combinaison dur RAID 5 et du RAID 0 selon le même principe.

    La gestion du RAID

    Je vous parlais de différentes implémentations du RAID. En fait, le RAID n'est pas un programme en tant que soi, juste un ensemble de spécifications. Du coup chacun y va de sa sauce : il existe des implémentations libres et propriétaires, logicielles et matérielles. Les solutions matérielles se basent sur du matériel dédié (un contrôleur RAID), le système d'exploitation n'a donc pas à s'occuper de ça et le plus souvent ces solutions marchent out of the box, sans avoir besoin de configurer quoi que ce soit. Mais elles ont l'immense inconvénient d'être propriétaire dans leur quasi-totalité, et pour le coup il n'existe aucun standard. Dans certains cas, si votre contrôleur RAID rend l'âme, il vous faudra acquérir exactement le même modèle de contrôleur, sinon, peu importe que vos disques soient tous intacts, plus rien ne pourra les lire, et vous serez alors en légitime position d'être fort contrarié. À mon humble avis, le principal argument des RAIDs matériel auparavant était les meilleures performances. Aujourd'hui cet avantage est de plus en plus obsolète, car désormais les machines sont bien plus puissantes qu'il y a 15 ans et les programmes de RAID ont été nettement optimisés et stabilisés. Cette différence de performance est aujourd'hui presque intangible.

    En pratique

    J'ai hérité par un ami d'une tour de bureau. Elle est bien cool car elle contient une grande baie de disques et pas mal de ports SATA (bien entendu, vous pouvez faire votre RAID avec des disques branchés en USB si vous le souhaitez). J'ai donc décidé d'en faire un NAS fait main.

    Choix des armes

    J'ai donc initialement acheté 3 disques de 3 To chacun (des Western Digital Red, gamme dédiée justement aux usage en RAID) et j'ai opté pour un RAID 5 logiciel. Et sur Linux, le programme de RAID par excellence est mdadm. J'ai décidé de garder branché le disque dur d'origine (500 Go) mais de ne pas l'intégrer au RAID, il sert uniquement de disque de démarrage. Notez que si j'avais voulu optimiser les performances, j'aurais pu troquer ce disque pour un petit SSD, mais bon, je suis déjà content comme ça.

    Par ailleurs, pour faire de la place dans la baie de disques, j'ai du déménager le disque de démarrage dans la baie frontale, celle destinée à accueillir les périphériques comme le lecteur optique.

    Le 4ème disque du RAID, on en parlera plus tard. Je l'ai acheté bien après.

    Pour ça j'ai utilisé un adaptateur 3,5 pouces vers 5,25 pouces bien pratique, qui m'a permis de fixer bien solidement le disque dur au lieu de le laisser se balader dans la tour.

    Partitionnement et formatage

    Du côté software, je me retrouve avec un disque sda de démarrage, et sdb, sdc et sdd des disques vierges prêts à être assemblés en RAID. Avant ça, j'ai besoin de les partitionner. J'utilise donc fdisk pour les trois disques à tour de rôle, je choisis une table de partitions GPT et j'y crée une unique partition de type "Linux RAID" (code 29 dans fdisk).

    Création de l'assemblage RAID

    C'est tout bête, ça tient en une seule ligne de commande :

    mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

    Dans cette commande, j'indique que le nom du volume abstrait sera /dev/md0, que ce sera un RAID 5, qu'il comporte 3 disques et je lui précise les partitions que je veux utiliser.

    Pour suivre l'évolution de la création de l'assemblage, jetez un coup d'oeil au fichier /proc/mdstat. Ce fichier sera votre nouvel ami, c'est lui qu'il faudra consulter dès que vous ferez une opération qui touche au RAID.

    Puis j'ajoute l'assemblage à la configuration de mdadm pour que celui-ci me l'assemble au démarrage :

    mdadm --detail --scan >> /etc/mdadm.conf

    Puis il ne vous reste plus qu'à mettre votre système de fichier préféré sur le volume créé !

    mkfs.ext4 /dev/md0

    Pour que votre assemblage soit monté au démarrage, j'ajoute à mon /etc/fstab :

    /dev/md0 /mnt/data ext4 defaults 0 0

    Il ne faut pas confondre assemblage et montage, il s'agit de deux étapes lors de la connexion d'un RAID. On doit assembler un RAID afin qu'il soit reconnu comme un volume propre, puis on doit monter notre volume pour pouvoir lire et écrire dessus.

    Enfin on monte le volume :

    mkdir /mnt/data
    mount /mnt/data

    Ayé vous avez un RAID 5 qui fonctionne !

    Il est recommandé de procéder régulièrement à des reconstruction de RAID, opération qui va vérifier la cohérence de l'assemblage. Il s'agit d'une opération transparente mais qui dure plusieurs heures et qui va se traduire par une forte augmentation de l'activité des disques. Pour ça il vous faudra lancer un petit programme sans arguments, raid-check, à un intervalle raisonnable, disons, toutes les semaines. Choisissez un horaire de faible activité, comme la nuit du samedi au dimanche à 3h du matin. Pour ça, faites vous plaisir, entre la crontab et les timers de systemd, on manque pas de solutions.

    Ajout d'un nouveau disque à l'assemblage

    Mon RAID 5 était constitué de 3 disques de 3 To ce qui nous fait 6 To exploitables, si vous avez bien suivi. 6 To, c'est un grand espace, il m'a suffi pendant presque 2 ans... Puis j'ai eu besoin de plus de place. J'ai donc racheté un autre disque (même modèle, même taille) que j'ai fourré dans ma tour. Je vous avoue que sur le coup, j'étais encore puceau au niveau extension de RAID, j'ai donc flippé énormément et j'ai fait une sauvegarde de mes 6 To sur divers disques externes que j'ai pu trouver dans ma caverne. Je vous raconte pas comme c'était pénible...

    Petites observations à ce niveau :

    1. Remarquez que l'ordre des disques dans le nommage des périphériques physiques (sdX) et tout sauf fixe. En théorie, il faut être préparé à ce que vos disques changent de noms. Votre petit sdb chéri que vous avez bordé et vu s'endormir dans le creux douillet de son lit un soir peut très bien vous trahir et s'appeler sdc au petit matin dès le prochain redémarrage. Bon c'est un peu exagéré, mais une chose est sure, il ne faut jamais faire confiance au nommage des périphériques physiques (c'est pour ça entre autres qu'il faut privilégier la désignation par UUID dans la fstab).
    2. mdadm se fiche complètement du nommage de ses périphériques. Il utilise sa propre magie noire pour déterminer les membres d'un assemblages. En conclusion, ne vous tracassez pas pour retrouver le nom de vos disques de votre assemblage, mdadm, lui, s'y retrouvera toujours.

    Cependant, faites quand même gaffe lorsque vous allez ajoutez votre nouveau disque dur. Par exemple chez moi, le nouveau disque s'est vu nommé sdb, tandis que les autres s'étaient vu relégués en sdc, sdd et sde. Faut juste le savoir et traiter les disques pour ce qu'ils sont, et non pas des étiquettes à trois lettres.

    Tout ce que j'ai eu à faire, en définitive, a été de partitionner-formater mon nouveau disque ainsi que l'ont été ses aînés, puis j'ai lancé les deux commandes suivantes :

    mdadm --add /dev/md0 /dev/sdb1
    mdadm --grow --raid-devices=4 --backup-file=/root/grow\_md0.bak /dev/md0

    La première va juste indiquer à mdadm qu'on lui ajoute un disque, mais sans plus. C'est la deuxième commande qui va lancer l'opération de reconstruction (rééquilibrage de l'assemblage). Opération qui dure plusieurs heures, donc suivez son déroulement dans /proc/mdstat.

    Une fois que c'est terminé, il faut maintenant procéder à l'extension du système de fichier lui même. Et là vous priez pour avoir choisi un système de fichier pas trop stupide qui accepte ce genre d'opération. Rassurez-vous, ext4 le supporte très bien.

    Il le supporte même tellement bien que vous pouvez le faire directement à chaud, sans démonter votre volume. Pour ça, premièrement, si vous utilisez une connexion SSH, ouvrez une session tmux. Il serait bête qu'un incident réseau de rien du tout vienne corrombre tout votre système de fichire tout de même. Puis il vous faudra exécuter :

    resize2fs -p /dev/md0

    Il va vous mettre en garde et ronchonner un tantinet que votre disque est toujours monté, mais écoutez, il s'en remettra, dans la vie on fait pas toujours ce qu'on veut. Les minutes passent, vous vous rongez les ongles, vous prenez un café, vous videz un pot de glace, et normalement, si tout se passe bien, le système de fichier aura été étendu à tout l'espace disponible sur l'assemblage. Félicitations !

    Conclusion

    J'ai rencontré beaucoup de monde m'ayant dit qu'ils préféraient rester éloigner autant que possible de RAID parce que ça leur faisait peur. En réalité, il n'y a rien d'effrayant là dedans. mdadm est un outil ma foi fort bien codé et les années ont prouvé qu'il était fiable. Il ne faut pas avoir peur du RAID. Enfin un peu quand même, faut pas faire n'importe quoi.