Come posso montare automaticamente un falso raid?


9

Hardware

  • Asus K8N4-E Deluxe Mobo
  • Sil 3114 falso raid, a bordo
  • 2 Seagate 250 gb hd, hosting my / home
  • Un backup su un disco rigido separato di / home

Quello che ho finora

Ho fatto il raid usando il firmware Sil 3114. Sto usando il livello raid 1. Ho uno script bash che eseguo come root non appena ricevo un prompt:

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

Il problema

Devo accedere come root e usare quello stupido script bash ad ogni avvio. Ubuntu non capisce automaticamente il volume del raid. Non ho inserito il volume del raid fstabperché non esiste all'avvio. Come posso avere / home dal mio fakeraid montato automaticamente all'avvio?

Risposte:


4

Ecco i passaggi necessari per configurare fakeraid e ottenere le partizioni rilevanti montate automaticamente:

  1. Installa il pacchetto dmraid:

    sudo apt-get install dmraid
    
  2. Riavvia (questo perché dmraid si aggiunge a initramfs)

  3. Il dispositivo fakeraid dovrebbe apparire ad esempio:

    $ 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
    

    Sopra, *Dimaè il dispositivo fakeraid, mentre *Dima1è la partizione. Se non si dispone di * N, è necessario creare una tabella delle partizioni, creare una partizione, formattare ot con un filesystem e riavviare nuovamente.

  4. In Ubuntu, tutte le partizioni sono montate da UUID per impostazione predefinita. Scopriamo 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" 
    

    Vedi che è quello desiderato UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae"

  5. Pertanto la /etc/fstabvoce sarebbe:

    UUID="92edd1fd-94c5-4617-b829-fa4a8378b7ae" /srv/dima ext4 defaults 0 0
    

1
Hai modificato la mia domanda in qualcosa di completamente diverso e hai fornito quella che sembra una risposta corretta. Tuttavia, fondamentale per la mia domanda è che all'avvio, i dispositivi non esistono fino a dopo dmraid -ay. Sento fortemente che la tua modifica dovrebbe essere annullata e quindi diventare una domanda completamente nuova per la quale questa è un'ottima risposta.
djeikyb,

le regole udev eseguono dmraid -ay.
Dima,

avrebbero dovuto , ma al momento non lo erano (o fallirono durante il tentativo), quindi la domanda.
djeikyb,

i bug sono riportati su launchpad.net
Dima

Dima, chiamami in chat se vuoi parlarne. Non credo che i nostri commenti siano più costruttivi qui.
djeikyb,

3

Questo dovrebbe funzionare mentre il pacchetto dmraid installa gli hook nel ramdisk per sondare i falsi dispositivi raid. Se non funziona, allora hai un vero bug. Per tornare a una linea di base sana, eseguire:

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

Se quel dispositivo non viene ancora visualizzato in / dev / mapper, ti preghiamo di presentare un bug.


Dopo l'upgrade da Ubuntu 16.04 (Xenial) a 18.04 (Bionic Beaver) il sistema ha dmraidsmesso di funzionare. La soluzione sopra non risolve il problema.
Paweł Szczur,

Questo ha funzionato per me. Bhagwan apka bhala kare!
Rahul Prasad,

3

Credo che @ppetraki abbia ragione sul fatto che si trattava di un bug nella versione di Ubuntu. Una buona soluzione alternativa è:

  1. Scrivi un servizio di avvio che viene eseguito dmraid -ayall'avvio del sistema.
  2. In fstab, monta i dispositivi dal loro UUID

1

Il tuo nome volume contiene spazi?

Mi sono imbattuto nel tuo problema, mentre cercavo il mio. Nel mio caso il volume è stato chiamato "Big Data Volume". dmraid lo ha mappato come / dev / mapper / isw_gdghjicjaBig% x20Data% x20Volume, ma altre parti del processo hanno continuato a provare a utilizzare "/ dev / mapper / isw_gdghjicja_Big Data Volume" e non sono riuscite.

Sono tornato su Windows (presumo sia per questo che anche tu usi dmraid, per eseguire il dual-boot di Windows) e Intel Matrix Storage Manager, e ho rinominato il mio volume in Big_Data_Volume. Linux quindi si è avviato e ha montato correttamente il volume con mirroring, senza che io facessi altro.


No, non aveva spazi. Sono contento di aver risolto il tuo problema però! Spero che possa aiutare qualcuno dove questo è il problema.
djeikyb,

0

prova questo in fstab:

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

Quindi eseguire sudo mount -ao riavviare


1
Sono abbastanza sicuro che non puoi usare jolly in fstab, e ha già detto che non può aggiungerlo a fstab perché deve correre per dmraid -ayprimo.
psusi,

0

Non devi fare nulla normalmente; funziona appena fuori dalla scatola. Ubuntu funziona dmraidper attivare il volume non appena viene rilevato, a meno che tu non abbia fatto qualcosa di strano. Le idee che ti vengono in mente sono quelle che hai compilato dmraidinvece di installarle tramite il gestore pacchetti, o che avvii con l'argomento kernel nodmraid. È inoltre possibile verificare e assicurarsi che sudo blkididentifichi i dischi sottostanti come componenti di sil raid.

A proposito, fakeraid non è ben supportato come mdadmraid, quindi a meno che tu non abbia un doppio avvio con Windows, dovresti abbandonare il fakeraid e andare avanti mdadm.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.