Perdez-vous tout lorsque vous avez une panne de disque dur dans un LVM à plusieurs disques durs qui n'utilise PAS RAID?

16

Je discute de l'utilisation de LVM pour un serveur de médias / fichiers parce que je voudrais combiner plusieurs disques durs physiques en un seul volume. Je ne souhaite pas utiliser de RAID dans mon LVM donc ma question est:

Si l'un des multiples disques durs de mon volume venait à tomber, est-ce que je perdrais toutes mes données ou perdrais-je simplement les données qui étaient stockées sur ce disque individuel?

De plus, si je perdais simplement les données sur le disque individuel, serait-ce aussi simple que de remplacer ce disque et de restaurer ce qu'il y avait à partir d'une sauvegarde pour récupérer?

Fujin
la source

Réponses:

11

Si l'un des multiples disques durs de mon volume venait à tomber, est-ce que je perdrais toutes mes données ou perdrais-je simplement les données qui étaient stockées sur ce disque individuel?

Non, vous perdrez des données stockées sur LVM entier

De plus, si je perdais simplement les données sur le disque individuel, serait-ce aussi simple que de remplacer ce disque et de restaurer ce qu'il y avait à partir d'une sauvegarde pour récupérer?

Non, ce n'est pas si simple

Vous pouvez lire ici une question similaire LVM et reprise après sinistre

B14D3
la source
7

Simple: vous recherchez des mhddfs .
Il prétend être un grand système de fichiers, écrit sur les disques dans l'ordre où ils ont été mentionnés et déplace éventuellement les gros fichiers vers un autre périphérique, si le premier était trop plein. Il peut en fait également utiliser des sous-dossiers sur les disques, permettant la même fonctionnalité.
Les disques individuels doivent être montés en premier et rester accessibles. Il ne modifie pas du tout les systèmes de fichiers et ne se soucie pas du système de fichiers en place (tant que l'espace libre est correctement signalé par le système de fichiers). En cas de perte d'un disque, vous devrez remonter vos mhddfs (à la volée) et les données sur ce disque auront disparu.
Usage:

mhddfs /dir1,/dir2[,/path/to/dir3] /path/to/mount [-o options]

ou dans /etc/fstab

 mhddfs#/path/to/dir1,/path/to/dir2 /mnt/point fuse defaults 0 0

Complexe et puissant: vous voulez des unionfs .
Bien que mhddfs soit agréable et extrêmement simple, j'ai eu des problèmes avec les autorisations de fichiers lors de l'octroi aux autres d'un accès via SSH. Je n'ai trouvé aucune solution, mais j'ai trouvé unionfs.
Unionfs vous permet également de monter plusieurs dossiers sur différents systèmes de fichiers en un seul, mais c'est magique sur les autorisations. Vous pouvez fusionner plusieurs dossiers en lecture seule et un seul en écriture, de sorte qu'il apparaît comme un seul. Les personnes avec lesquelles vous avez partagé votre dossier fusionné peuvent ensuite écrire dans un dossier en lecture seule - tel qu'il leur apparaît - mais les fichiers se retrouvent dans le seul dossier accessible en écriture. Les CD de démarrage Linux fonctionnent comme ceci, le disque inscriptible est un disque virtuel. Les gens peuvent même supprimer des fichiers dans des dossiers en lecture seule, ce qui ne supprime pas vraiment le fichier, mais crée un fichier de liste blanche caché dans leur répertoire d'écriture. Si vous attrapez toutes les options, vous pouvez essentiellement utiliser votre système de fichiers comme un SVN de pauvre homme .
Si vous utilisez trop les options de type SVN, vous risquez de manquer des données existantes deux fois (improbable dans votre scénario, mais possible), tandis que votre dossier accessible en écriture se remplit de minuscules fichiers de liste blanche masqués. En dehors de cela, il garde vos disques propres et utilisables individuellement. Que se passe-t-il si un fichier est trop volumineux pour un disque, je ne sais pas encore.
Usage:

 unionfs-fuse -o cow,max_files=32768 \
                 -o allow_other,use_ino,suid,dev,nonempty \
                 /path/to/dir1=rw:/path/to/dir2=ro:/dir3
                 /u/union/etc

=rwrend le dossier en lecture et en écriture et le =rorend en lecture seule, même si les autorisations indiquent le contraire. Dans etc/fstabc'est

unionfs-fuse#/path/to/dir1=rw:/path/to/dir2=ro:dir3 /path/to/mount fuse cow,allow_other 0 0
DennisH
la source
Comment ces éléments gèrent-ils un disque amovible non branché?
endolith
@endolith Un mhddfs sur un disque amovible signifierait ne pas savoir ce qui va se terminer dessus, un unionfs a un sens, mais nécessite un remontage différent, selon la disponibilité du périphérique amovible.
DennisH
Je ne comprends pas ton commentaire. Si vous avez combiné 3 clés USB à l'aide de mhddfs et que vous y avez placé des fichiers, puis que vous en avez supprimé une, est-ce que quelque chose de mauvais de manière permanente se produit? Si vous le rebranchez, est-ce qu'il revient à ce qu'il était avant?
endolith
3
@endolith Le débranchement en écriture n'est jamais bon. Si vous débranchez après avoir écrit, les clés USB sont toutes OK individuellement, pas de problème. Vous pouvez débrancher un lecteur, le brancher sur PC2, l'utiliser, le rebrancher sur PC1 et remonter pour continuer à les utiliser comme avant. Entre le point de montage de votre PC1 habituel, vous devez être informé que vous avez pris le lecteur (remontage). Mais, supposez que vous partagez 2 fichiers avec PC2, vous ne pouvez pas dire dans quel lecteur du montage mhddfs ils se retrouveront, ou s'il s'agit même du même lecteur. Les lecteurs sont toujours accessibles individuellement pour vérifier / garantir l'emplacement, mais cela n'implique plus mhddfs.
DennisH
4

Si vous connectez simplement plusieurs appareils ensemble, il n'y aurait pas de redondance, vous pourriez donc perdre les données. Mais si vous utilisez un serveur de médias / fichiers pour une entreprise, vous ne devriez rien perdre car vous avez tout sauvegardé sur un serveur de sauvegarde / lecteur de bande.

Pourquoi évitez-vous le RAID? Le point de RAID est la disponibilité; si vous ne voulez pas perdre de temps en raison d'une panne de disque, vous pouvez utiliser une configuration RAID 1, qui peut également accélérer vos lectures. Ils ne sont pas trop chers, payent par eux-mêmes la première fois que vous rencontrez une panne de disque, et si vous évitez VRAIMENT d'avoir à payer pour une carte, vous pouvez configurer Linux pour utiliser le RAID logiciel, même si cela prend un peu plus de soin dans la configuration et dépannage pour vous assurer de remplacer le bon lecteur.

Sinon, vous devrez sauter à travers certains cercles pour essayer de récupérer les données que vous pouvez à partir des disques restants. Ce serait possible, mais vous demandez un peu plus de problèmes que vous n'auriez dû. Obtenez une bonne sauvegarde en place et reconsidérez le RAID.

Bart Silverstrim
la source
1
J'évite le RAID parce que je ne suis pas préoccupé par la disponibilité. Ceci est pour un usage personnel. J'essaie d'éviter le RAID parce que je recherche davantage la fiabilité. Une petite chose se passe mal en RAID et vous perdez toute la baie et je n'ai pas envie de m'occuper de ça. J'ai plutôt un grand dépôt de fichiers que je peux sauvegarder plutôt que plusieurs.
Fujin
1
Je ne suis pas sûr de comprendre cela. Le RAID ne vous fait pas perdre la baie en cas de problème. Ne pas utiliser RAID, c'est quand un échec tuera le tout.
JOTN
4
@ user72630: Vous avez de sérieuses idées fausses sur le fonctionnement d'un RAID. Tout d'abord, il existe différents niveaux de RAID, dont la plupart sont conçus pour éviter la perte de données en cas de panne de disque. Ensuite, vous pouvez configurer un RAID pour n'avoir qu'un seul système de fichiers sur plusieurs disques, comme vous le prévoyez avec LVM. Veuillez lire en.wikipedia.org/wiki/RAID
Sven
Ce que les autres ont dit. L'intérêt du RAID est de maintenir la disponibilité ... c'est-à-dire que le disque tombe en panne, les données sont toujours accessibles. Avec l' équipement approprié , vous pouvez échangeable à chaud le disque défectueux sans vous soucier de temps d' arrêt du tout .
Bart Silverstrim
3

Si vous utilisez un système de fichiers couvrant tous les volumes LVM, l'ensemble du système de fichiers sera endommagé car le FS ne connaît pas les volumes physiques sous-jacents et ne créera pas de structures alignées sur celui-ci. Il peut être possible de sauver certaines des pièces sur les disques de travail, mais il n'y a aucune garantie pour cela.

Et juste récupérer les fichiers du disque endommagé ne fonctionnera pas non plus pour la même raison.

Sven
la source
2

Je pense qu'un itinéraire beaucoup plus simple serait de configurer mdadm pour votre partition multimédia. Si vous n'avez pas le matériel pour un "vrai RAID", la route mdadm serait considérablement plus facile et semble répondre à vos exigences de redondance et de remplacement de disque simple.

# Format your drives first
# Create your MD
mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2

# In the event that a drive fails do the following
mdadm /dev/md1 --fail /dev/sda1
# Format the new drive
mdadm --add /dev/md1 /dev/sda1

Pour plus d'informations: http://en.wikipedia.org/wiki/Mdadm

Si l'un des multiples disques durs de mon volume venait à tomber, est-ce que je perdrais toutes mes données ou perdrais-je simplement les données qui étaient stockées sur ce disque individuel?

Si vous utilisez mdadm et RAID 5, vous seriez en mesure de perdre un disque et la baie serait fonctionnelle, mais vous ressentiriez une dégradation des performances.

Lac Aaron
la source
1

Je pense que la chose importante à comprendre qui n'a pas été mentionnée est qu'un fichier dans un système de fichiers n'est pas nécessairement assis au même endroit sur un disque. Il est divisé en blocs qui peuvent résider n'importe où dans les systèmes de fichiers. Le premier 4K si votre fichier se trouve sur le disque 1, le disque suivant 2, etc. Vous pouvez imaginer le désordre d'essayer de récupérer quoi que ce soit si vous avez perdu une partie du système de fichiers.

JOTN
la source
0

Btrfs est un bon choix ici; vous pouvez avoir des métadonnées résistantes à la perte d'un disque (le profil de bloc "raid1"); les données sur les autres disques seront toujours accessibles (juste pour que ce soit clair, cela se traduit par des fichiers pleins de trous partout où le disque manquant est référencé). Cela se fait en exécutant btrfs balance avec un filtre :

sudo btrfs balance start -m convert=raid1 /mnt/point
Gabriel
la source