Skip to content

Latest commit

 

History

History
126 lines (106 loc) · 6.17 KB

adaptec.org

File metadata and controls

126 lines (106 loc) · 6.17 KB

adaptec

Learning

identify

To identify a disk which you need to replace you need to get a channel number and a device number:

arcconf GETCONFIG 1
...
Reported Channel,Device(T:L)       : 0,1(1:0)
Reported Location                  : Connector 0, Device 1
...

Next you need to identify it with a command:

arcconf IDENTIFY 1 DEVICE 0 1

because of

arcconf IDENTIFY 1 DEVICE <channel> <device>

5ee

Описание

Описание: RAID - основные понятия и советы: RAID 5EE

Обычно при построении RAID 5 один диск оставляют свободным ( Hotspare ), чтобы в случае сбоя система сразу стала перестраивать (rebuild) массив. При обычной работе этот диск работает вхолостую. Система RAID 5EE подразумевает использование этого диска в качестве элемента массива. А объём этого свободного диска распределяется по всему массиву. Минимальное число дисков – 4 штуки. Доступный объём равен n-2, объём одного диска используется (будучи распределенным между всеми) для четности, объем еще одного – свободный. При выходе из строя диска происходит сжатие массива до 3-х дисков (на примере минимального числа) заполнением свободного пространства. Получается обычный массив RAID 5, устойчивый к отказу ещё одного диска. При подключении нового диска, массив разжимается и занимает вновь все диски.

Замена

Как только контроллер увидит hotspare диск, он тут же начнет “разворачивать” на него 5EE-массив.

arcconf setstate 1 device 0 1 hsp logicaldrive 0
arcconf RESCAN 1

После замены

root@kvm12:~# arcconf getstatus 1
Controllers Found: 1
Logical Device Task:
   Logical Device                 : 0
   Task ID                        : 102
   Current operation              : Expanding
   Status                         : In Progress
   Priority                       : High
   Percentage complete            : 26

После окончания expanding:

Status of Logical Device                 : Optimal
Status of RAID 5EE                       : Expanded

gdb

[nix-shell:~]# LD_LIBRARY_PATH='/nix/store/d97kkhkxwj9lxjl4ba81jlzplyzlzjb8-gcc-8.3.0-lib/lib' gdb  /nix/store/883blaa1cn68ddy7398ga3dn0hl7l97s-arcconf-v2_00_21811/bin/arcconf.orig  arcconf.coredump 
GNU gdb (GDB) 9.2
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /nix/store/883blaa1cn68ddy7398ga3dn0hl7l97s-arcconf-v2_00_21811/bin/arcconf.orig...
(No debugging symbols found in /nix/store/883blaa1cn68ddy7398ga3dn0hl7l97s-arcconf-v2_00_21811/bin/arcconf.orig)
[New LWP 10779]
[New LWP 10914]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/nix/store/kksyrix1bpklvgkmvngcv0q9nh8hn2fl-glibc-2.27/lib/libthread_db.so.1".
Core was generated by `/nix/store/883blaa1cn68ddy7398ga3dn0hl7l97s-arcconf-v2_00_21811/bin/arcconf.ori'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x000000000062ab5d in ArcAdapter::buildChildren(Ret&) ()
[Current thread is 1 (Thread 0x7f583ced2740 (LWP 10779))]
/nix/store/d97kkhkxwj9lxjl4ba81jlzplyzlzjb8-gcc-8.3.0-lib/lib/../share/gcc-8.3.0/python/libstdcxx/v6/xmethods.py:731: SyntaxWarning: list indices must be integers or slices, not str; perhaps you missed a comma?
  refcounts = ['_M_refcount']['_M_pi']
(gdb) where 
#0  0x000000000062ab5d in ArcAdapter::buildChildren(Ret&) ()
#1  0x00000000006dfd5c in ArcSystem::buildChildrenForSingleAdapter(StorLib*, unsigned long, Ret&) ()
#2  0x0000000000558dab in StorLib::getSystemConfigForSingleAdapter(unsigned long) ()
#3  0x00000000004d8d02 in main ()
(gdb) bt full
#0  0x000000000062ab5d in ArcAdapter::buildChildren(Ret&) ()
No symbol table info available.
#1  0x00000000006dfd5c in ArcSystem::buildChildrenForSingleAdapter(StorLib*, unsigned long, Ret&) ()
No symbol table info available.
#2  0x0000000000558dab in StorLib::getSystemConfigForSingleAdapter(unsigned long) ()
No symbol table info available.
#3  0x00000000004d8d02 in main ()
No symbol table info available.
[root@web32:~]# nix-shell -p glibc.bin                                               
[nix-shell:~]# LD_LIBRARY_PATH='/nix/store/d97kkhkxwj9lxjl4ba81jlzplyzlzjb8-gcc-8.3.0-lib/lib' catchsegv   /nix/store/883blaa1cn68ddy7398ga3dn0hl7l97s-arcconf-v2_00_21811/bin/arcconf.orig