[Th] mdadm i mdadm.conf...

Grzegorz Pietrzak grzes w artikon.pl
Pią, 29 Paź 2010, 11:02:08 CEST


Dnia piątek, 29 października 2010, Pawel Sikora napisał:

> mozesz sprawdzic (strace) czy faktycznie mdassemble faktycznie odczytalo
> /dev/sdb1, czy dostalo jakis blad i komunikat 'has no superblock',
> to tylko bzdura.
>
> wrzuc tez nam wynik ' mdadm -QD /dev/md0'

No to już...
Przy następujących wpisach w mdadm.conf:
DEVICE /dev/sd[ab][13]
ARRAY /dev/md1 devices=/dev/sdb1,/dev/sda1
ARRAY /dev/md3 devices=/dev/sdb3,/dev/sda3
#ARRAY /dev/md1 UUID=32e0590b:365f827d:8b62f743:401d69bd
#ARRAY /dev/md3 UUID=a74f0428:1997ebc4:504cb46f:032e2411

strace zeznaje następująco:
#######################stąd
execve("/sbin/mdadm", ["/sbin/mdadm", "--assemble", "--scan", "--auto=yes"], 
[/* 16 vars */]) = 0
brk(0)                                  = 0x80ae164
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb777a000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or 
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=10433, ...}) = 0
mmap2(NULL, 10433, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7777000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0:n\1\0004\0\0\0"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1421784, ...}) = 0
mmap2(NULL, 1432072, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7619000
mmap2(0xb7771000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
MAP_DENYWRITE, 3, 0x157) = 0xb7771000
mmap2(0xb7774000, 10760, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
MAP_ANONYMOUS, -1, 0) = 0xb7774000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7618000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb76186c0, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, 
seg_not_present:0,
mprotect(0xb7771000, 8192, PROT_READ)   = 0
mprotect(0x8094000, 4096, PROT_READ)    = 0
mprotect(0xb7798000, 4096, PROT_READ)   = 0
munmap(0xb7777000, 10433)               = 0
time(NULL)                              = 1288339796
getpid()                                = 1424
brk(0)                                  = 0x80ae164
brk(0x80cf164)                          = 0x80cf164
brk(0x80d0000)                          = 0x80d0000
open("/etc/mdadm.conf", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0640, st_size=2911, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7779000
read(3, "# mdadm configuration file\n#\n# m"..., 4096) = 2911
brk(0x80cf000)                          = 0x80cf000
read(3, "", 4096)                       = 0
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0xb7779000, 4096)                = 0
uname({sys="Linux", node="poczta", ...}) = 0
geteuid32()                             = 0
open("/dev", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
fcntl64(3, F_GETFD)                     = 0x1 (flags FD_CLOEXEC)
getdents64(3, /* 1088 entries */, 32768) = 32744
getdents64(3, /* 1088 entries */, 32768) = 32744
getdents64(3, /* 783 entries */, 32768) = 23584
getdents64(3, /* 0 entries */, 32768)   = 0
close(3)                                = 0
uname({sys="Linux", node="poczta", ...}) = 0
open("/dev", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
getdents64(3, /* 1088 entries */, 32768) = 32744
getdents64(3, /* 1088 entries */, 32768) = 32744
getdents64(3, /* 783 entries */, 32768) = 23584
getdents64(3, /* 0 entries */, 32768)   = 0
close(3)                                = 0
open("/dev/sdb1", O_RDONLY|O_EXCL|O_DIRECT|O_LARGEFILE) = -1 EBUSY (Device or 
resource busy)
write(2, "mdadm: /dev/sdb1 has no superblo"..., 54mdadm: /dev/sdb1 has no 
superblock - assembly aborted
) = 54
#######################dotąd
Zatem zdaje się, że to nie wina mdadm...
Tylko po co on się czepia uruchomionej macierzy?...

A tutaj wynik mdadm -QD /dev/md1 zaraz po zatrzymaniu systemu:

#######################stąd
/dev/md1:
        Version : 0.90
  Creation Time : Mon Oct 25 11:38:02 2010
     Raid Level : raid1
     Array Size : 10490304 (10.00 GiB 10.74 GB)
  Used Dev Size : 10490304 (10.00 GiB 10.74 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 1
    Persistence : Superblock is persistent

    Update Time : Fri Oct 29 10:15:32 2010
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 32e0590b:365f827d:8b62f743:401d69bd
         Events : 0.6

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       1       8       17        1      active sync   /dev/sdb1
#######################dotąd


Pozdrawiam
-- 
: Grzegorz Pietrzak || grzes w artikon.pl
: Ciało dopiero przez erotyzm staje się interesujące i symboliczne.
: Karol Irzykowski


Więcej informacji o liście dyskusyjnej pld-users-pl