Newsgroup: it.comp.os.linux.debian
Titolo: Ripristinare Raid1

ciao a tutti,
ho installato debian in raid1.
Il raid ha smesso di funzionare, infatti digitando:
 cat /proc/mdstat
ottengo questo output:
debian:~# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] 
[raid10]
md0 : active (auto-read-only) raid1 hdd1[1]
      28732096 blocks [2/1] [_U]
unused devices: <none>
Come devo fare per rimettere in piedi il raid? ho cercato in giro per la 
rete ma nonostante abbia provato vari comandi nessuno ha funzionato.
Mi sapete aiutare?
Grazie 

 rete ma nonostante abbia provato vari comandi nessuno ha funzionato.
Basta leggere le pagine di man...
[CUT]
Assemble
Assemble the components of a previously created array into an active array.
Components can be explicitly given or can  be searched  for.  mdadm checks
that the components do form a bona fide array, and can, on request, fiddle
superblock information so as to assemble a faulty array.
[CUT]
Se l'assemble non funzionasse puoi usare --manage per forzare l'assemblaggio:
mdadm --manage /dev/md0 --add /dev/hdX1
-- 
Flavio Visentin
Ubuntu in Zulu significa "Non so usare Debian". (cit. CtRiX)

Grazie per la risposta.
Ho eseguito i seguenti passi:
debian:~# smartct -a /dev/hdc
-bash: smartct: command not found
allora ho saltato questa operazione ed ho tentato il riassemblaggio:
debian:~# mdadm /dev/md0 --add /dev/hdc1
mdadm: Cannot open /dev/hdc1: Device or resource busy
debian:~# mdadm --manage /dev/md0 --add /dev/hdc1
mdadm: Cannot open /dev/hdc1: Device or resource busy
cosa mi consigli di fare? Sono quasi convinto che il disco sia buono perch� 
non ha nemmeno un mese di vita

 cosa mi consigli di fare? 
Di capire quello che stai facendo.
Che dischi ci sono?
Dove sono connessi?
Funzionano?
A queste domande devi dare una risposta PRIMA di tentare qualsiasi
operazione sul raid, rischi di perdere anche quello che hai ancora.
cominciamo con un
fdisk -l
e vediamo che device sono visibili dal sistema e come si chiamano.
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

Grazie!
Allora:
questo server l'ho ereditato e non l'ho configurato io.
Guarda caso le sfighe arrivano sempre quando non devono.
Ci sono 2 dischi IDE sul secondo canale in raid 1
I dati del raid non sono importanti in quanto � un server che stiamo per 
dismettere ed � gia tutto salvato e funzionante in un altra macchina.
debian:~# fdisk -l
Disk /dev/hdc: 30.7 GB, 30738677760 bytes
255 heads, 63 sectors/track, 3737 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000eed87
   Device Boot      Start         End      Blocks   Id  System
/dev/hdc1   *           1        3577    28732221   fd  Linux raid 
autodetect
/dev/hdc2            3578        3737     1285200    5  Extended
/dev/hdc5            3578        3737     1285168+  82  Linux swap / Solaris
Disk /dev/hdd: 41.1 GB, 41110142976 bytes
16 heads, 63 sectors/track, 79656 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Disk identifier: 0x0960095f
   Device Boot      Start         End      Blocks   Id  System
/dev/hdd1   *           1       57009    28732221   fd  Linux raid 
autodetect
/dev/hdd2           57009       59559     1285200    5  Extended
/dev/hdd5           57009       59559     1285168+  82  Linux swap / Solaris
Disk /dev/md0: 29.4 GB, 29421666304 bytes
2 heads, 4 sectors/track, 7183024 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Disk identifier: 0x00000000
Disk /dev/md0 doesn't contain a valid partition table

 autodetect
Geometria diversa... che barba...
Comunque sembra che tutto venga riconosciuto correttamente.
Posta l'output di
mdadm -E /dev/hdc1
mdadm -D /dev/md0


Eccolo:
debian:~# mdadm -E /dev/hdc1
mdadm: No md superblock detected on /dev/hdc1.
debian:~# mdadm -D /dev/md0
/dev/md0:
        Version : 00.90
  Creation Time : Thu May  6 23:56:41 2010
     Raid Level : raid1
     Array Size : 28732096 (27.40 GiB 29.42 GB)
  Used Dev Size : 28732096 (27.40 GiB 29.42 GB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 0
    Persistence : Superblock is persistent
    Update Time : Fri May  7 00:50:53 2010
          State : clean, degraded
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
  Spare Devices : 0
           UUID : 448678df:a328625b:c230666b:5103eba0
         Events : 0.82
    Number   Major   Minor   RaidDevice State
       0       0        0        0      removed
       1      22       65        1      active sync   /dev/hdd1
debian:~#

 mdadm: No md superblock detected on /dev/hdc1.
Quindi non ci sono preclusioni ad utilizzarlo come device....
ma siamo sicuri che non lo hai montato? Magari anche come root?
cat /proc/mounts
10 a 1 che ï¿œ cosï¿œ. E in questo caso "l'ï¿œ un burdel".


Non escludo in uno dei tanti smanettamenti di aver combinato qualche 
cazzata...
debian:~# cat /proc/mounts
rootfs / rootfs rw 0 0
none /sys sysfs rw,nosuid,nodev,noexec 0 0
none /proc proc rw,nosuid,nodev,noexec 0 0
udev /dev tmpfs rw,size=10240k,mode=755 0 0
/dev/hdc1 / ext3 rw,errors=remount-ro,data=ordered 0 0
tmpfs /lib/init/rw tmpfs rw,nosuid,mode=755 0 0
usbfs /proc/bus/usb usbfs rw,nosuid,nodev,noexec 0 0
tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
devpts /dev/pts devpts rw,nosuid,noexec,gid=5,mode=620 0 0
debian:~#

 /dev/hdc1 / ext3 rw,errors=remount-ro,data=ordered 0 0
C.V.D.
hdc1 ï¿œ la tua root, quindi hai montato un membro del raid direttamente senza
passare dal device raid.
A questo punto ti trovi con hdc1 che ï¿œ aggiornato e md0 che non lo ï¿œ. La
procedura per il ripristino delle cose ï¿œ la seguente:
* parti con una live
* mkfs -t ext3 /dev/md0
* monti /dev/hdc1 in /mnt/hdc1 e /dev/md0 in /mnt/md0
* (cd /mnt/hdc1 ; tar cf - .) | (cd /mnt/md0/ ; tar xfv -)
* umount /mnt/hdc1
* modifichi, sostituendo a hdc1 la stringa md0 i file:
  /mnt/md0/etc/fstab
  /mnt/md0/boot/grub/menu.lst o /mnt/md0/etc/default/grub
  Se ï¿œ una squeeze che usa gli UUID per determinare il filesystem,
  disabilita l'uso di UUID e specifica manualmente il rootfs
* mount -t proc proc /mnt/md0/proc
* chroot /mnt/md0
* update-grub
* update-initramfs -u -k all
* exit
* umount /mnt/md0/proc /mnt/md0
* reboot
Ovviamente ï¿œ una traccia e sei invitato a *COMPRENDERE* quello a cui serve
ciascuna fase e ciascun comando indicato. Se hai dubbi *CHIEDI*.
Una volta ripartito dovresti ritrovarti con il raid usato correttamente e
quindi puoi aggiungere il membro mancante come indicato precedentemente.


 * parti con una live
Dimenticavo. In questo caso la scelta migliore come live da utilizzare
finnix: 
http://www.finnix.org
