Comment monter automatiquement un faux raid?

9

Matériel

  • Asus K8N4-E Deluxe Mobo
  • Sil 3114 Fake Raid, à bord
  • 2 Seagate 250 Go HD, hébergeant mon / ma maison
  • Une sauvegarde sur un disque dur séparé de / home

Ce que j'ai jusqu'ici

J'ai fait le raid en utilisant le firmware Sil 3114. J'utilise le niveau de raid 1. J'ai un script bash que je lance en tant que root dès que je reçois une invite:

dmraid -ay
mount /dev/mapper/sil*1 /home

Le problème

Je dois me connecter en tant que root et utiliser ce stupide script bash à chaque démarrage. Ubuntu ne comprend pas automatiquement le volume du raid. Je n'ai pas mis le volume de raid fstabcar il n'existe pas au démarrage. Comment dois-je / home de mon fakeraid monté automatiquement au démarrage?

djeikyb
la source

Réponses:

4

Voici les étapes nécessaires pour configurer fakeraid et obtenir le montage automatique des partitions pertinentes:

  1. Installez le paquet dmraid:

    sudo apt-get install dmraid
    
  2. Redémarrez (c'est parce que dmraid s'ajoute dans initramfs)

  3. Le dispositif fakeraid devrait apparaître par exemple:

    $ ls /dev/mapper/*
    brw-rw---- 1 root disk 252,   0 Dec  6 16:21 /dev/mapper/isw_dhdhchcbaf_Dima
    brw------- 1 root root 252,   1 Dec  6 16:21 /dev/mapper/isw_dhdhchcbaf_Dima1
    crw------- 1 root root  10, 236 Dec  6 16:22 /dev/mapper/control
    

    Ci-dessus, *Dimale périphérique fakeraid, tandis que *Dima1la partition. Si vous n'avez pas * N, vous devez créer une table de partition, créer une partition, formater ot avec un système de fichiers et redémarrer à nouveau.

  4. Dans Ubuntu, toutes les partitions sont montées par UUID par défaut. Découvrons l'UUID:

    $ sudo blkid
    [sudo] password for xnox: 
    /dev/sda: TYPE="isw_raid_member" 
    /dev/sdb: TYPE="isw_raid_member" 
    /dev/mapper/isw_dhdhchcbaf_Dima1: UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae" TYPE="ext4" 
    /dev/sdc1: UUID="A904-D2E7" TYPE="vfat" 
    /dev/sdc2: UUID="6669d411-80c3-41cc-a629-ad84e1ee6854" TYPE="ext4" 
    /dev/sdc3: UUID="2bf263f1-753f-4b2e-92a6-b00381515e0c" TYPE="swap" 
    /dev/sdd1: UUID="C499-1A68" TYPE="vfat" 
    

    Voir que le recherché est UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae"

  5. Par conséquent, l' /etc/fstabentrée serait:

    UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae" /srv/dima ext4 defaults 0 0
    
Dima
la source
1
Vous avez modifié ma question en quelque chose de très différent et fourni ce qui ressemble à une bonne réponse. Cependant, crucial pour ma question est qu'au démarrage, les appareils n'existent qu'après dmraid -ay. Je pense fermement que votre montage devrait être annulé et devenir une toute nouvelle question pour laquelle c'est une excellente réponse.
djeikyb
Les règles udev exécutent dmraid -ay.
Dima
ils devraient , mais à l'époque, ils ne l'étaient pas (ou ont échoué lors de la tentative), d'où la question.
djeikyb
des bugs sont signalés sur launchpad.net
Dima
Dima, cingle-moi dans le chat si tu veux en parler. Je ne pense plus que nos commentaires soient constructifs ici.
djeikyb
3

Cela devrait simplement fonctionner car le paquet dmraid installe des crochets dans le ramdisk pour sonder les faux appareils de raid. Si cela ne fonctionne pas, vous avez un vrai bug. Pour revenir à une ligne de base saine, veuillez effectuer:

sudo -s
apt-get install --reinstall dmraid
update-initramfs -u -k all
reboot

Si cet appareil n'apparaît toujours pas dans / dev / mapper, merci de signaler un bug.

ppetraki
la source
Après la mise à niveau d'Ubuntu 16.04 (Xenial) vers 18.04 (Bionic Beaver), le dmraidfonctionnement a cessé. La solution ci-dessus ne résout pas le problème.
Paweł Szczur
Cela a fonctionné pour moi. Bhagwan apka bhala kare!
Rahul Prasad
3

Je pense que @ppetraki a raison sur le fait qu'il s'agit d'un bug dans la version d'ubuntu dont il s'agissait. Une bonne solution de contournement est la suivante:

  1. Écrivez un service parvenu qui s'exécute au dmraid -aydémarrage du système.
  2. Dans fstab, montez les appareils par leur UUID
djeikyb
la source
1

Votre nom de volume contient -il des espaces?

J'ai rencontré votre problème, tout en recherchant le mien. Dans mon cas, le volume était appelé "Big Data Volume". dmraid a mappé cela en tant que / dev / mapper / isw_gdghjicjaBig% x20Data% x20Volume, mais d'autres parties du processus ont continué à essayer d'utiliser "/ dev / mapper / isw_gdghjicja_Big Data Volume" et ont échoué.

Je suis retourné dans Windows (je suppose que c'est pourquoi vous utilisez vous aussi dmraid, pour Windows à double démarrage) et le gestionnaire de stockage matriciel d'Intel, et j'ai renommé mon volume en Big_Data_Volume. Linux a ensuite démarré et monté correctement le volume en miroir, sans que je fasse quoi que ce soit d'autre.

Andy Yelland
la source
Non, il n'y avait pas d'espace. Heureux que vous ayez résolu votre problème! J'espère que cela aidera quelqu'un là où c'est le problème.
djeikyb
0

essayez ceci dans fstab:

/dev/mapper/sil*1  /home  reiserfs  user,nosuid,exec,nodev  0  0 

Ensuite, faites sudo mount -aou redémarrez

Engels Peralta
la source
1
Je suis à peu près sûr que vous ne pouvez pas utiliser de caractères génériques dans fstab, et il a déjà dit qu'il ne pouvait pas l'ajouter à fstab car il devait s'exécuter en dmraid -aypremier.
psusi
0

Vous n'avez rien à faire normalement; cela fonctionne juste hors de la boîte. Ubuntu s'exécute dmraidpour activer le volume dès qu'il est détecté, sauf si vous avez fait quelque chose d'étrange. Les idées qui vous viennent à l'esprit sont que vous avez compilé la vôtre dmraidau lieu de l'installer via le gestionnaire de packages, ou que vous démarrez avec l'argument du noyau nodmraid. Vous pouvez également vérifier et vous assurer que sudo blkidles disques sous-jacents sont identifiés comme des composants de raid sil.

Soit dit en passant, le fakeraid n'est pas aussi bien pris en charge que le mdadmraid, donc à moins que vous n'ayez un double démarrage avec Windows, vous devriez abandonner le fakeraid et continuer mdadm.

psusi
la source