How-To Przywrócenie pracy serwera/dostępu do danych w RAID

Status
The first post in this thread is a WikiPost, and can be edited by anyone with the appropriate permissions.
Not open for further replies.

Silas Mariusz

SysOp
Administrator
Apr 5, 2008
9,144
7
1,803
153
37
www.devspark.pl
QNAP
TS-x77
Ethernet
1 GbE
awaria podczas aktualizacji oprogramowania firmware Poniższe procedury mogą być wykorzystane alternatywnie do How-To - System nie startuje i Finder nie wykrywa serwera jako podstawa do ręcznej aktualizacji oprogramowania lub jako awaryjny dostęp do danych.

[INFO='Informacja o zastosowaniu procedury']Odzyskanie dostępu do danych dotyczy awarii systemu lub konfiguracji RAID i wymaga sprawnego uruchomienia serwera bez zainstalowanych w nim dysków twardych.[/INFO]

Poniższe procedury opisują sposób dostępu do danych w celu natychmiastowego wykonania kopii bezpieczeństwa lub przywrócenia dostępu do serwera i przywrócenia jego konfiguracji.

Spis:
  • Procedura wstępna
  • Procedura przyłączenia woluminów danych w serwerze z firmware 4.1.0 i nowszym (opcjonalnie przywrócenie domyślnej konfiguracji)
    • Jak przywrócić .conf (w przypadku niepoprawnego złożenia md9)
  • Przywrócenie pracy serwera z oprogramowaniem starszym od 4.1.0 przez przywrócenie domyślnej konfiguracji
  • Krytyczne uzyskanie dostępu do danych bez próby przywrócenia pracy serwera z oprogramowaniem firmware starszym od 4.1.0


Procedura wstępna
  1. Wysuń delikatnie wszystkie dyski, tak aby za chwile można było je łatwo zamontować.
  2. Włącz serwer i poczekaj na jego pełne uruchomienie.
  3. Kiedy usłyszysz długi sygnał dźwiękowy gotowości serwera (po ok. 2 minutach) połącz się na konsolę FAQ shell serwera (FAQ SSH).
    W tym celu wykonaj:
    1. Uruchom program Finder i znajdź adres IP serwera NAS.
      finder nie wykrywa serwera
    2. Pobierz i uruchom program PuTTY
      W otwartym oknie programu w polu
      • Host Name... podaj adres IP serwera znaleziony Finderem,
      • wybierz Connection type FAQ SSH
      • oraz w polu Port podaj numer portu - domyślny 22.
      2948-23b9194155865d6c68bc3eaa7dfa37fb.jpg
    3. Następnie kliknij przycisk Open.
    4. Przy pierwszym logowaniu przez FAQ SSH zostaniesz poproszony o akceptację certyfikatu - potwierdź.
    5. Zaloguj się używając konta 'admin'
      2949-c99c1a956253e12f4eedcec0949d24e9.jpg
    6. Zamknij program finder i pozostaw PuTTY uruchomione.
  4. Wsuń wymontowane dyski w oryginalnej kolejności.


Procedura przyłączenia woluminów danych w serwerze z firmware 4.1.0 i nowszym
(opcjonalnie przywrócenie domyślnej konfiguracji)
:
  1. Wykonaj procedurę wstępna
  2. Sprawdź plik /etc/enclosure_0.conf czy wszystkie dyski zostały poprawnie zainstalowane, w tym celu wykonaj:
    Bash:
    egrep '(Disk|sd)' /etc/enclosure_0.conf
    ... lub szczegółowo wyświetl cały plik:
    Bash:
    cat /etc/enclosure_0.conf
  3. Uruchom pierwszą sekwencję uruchomienia magazynu danych, aby przyłączyć /dev/md9 oraz /dev/md13 wykonując polecenie:
    Bash:
    storage_util --sys_startup
    1. Wyświetl listę dostępnych mountów /dev/md poleceniem:
      Bash:
      mount | grep /dev/md
      Przykład:
      Code:
      /dev/md9 on /mnt/HDA_ROOT type ext3 (rw,data=ordered)
      /dev/md13 on /mnt/ext type ext3 (rw,data=ordered)
    2. Sprawdź dostępną przestrzeń dyskową mountów /dev/md wykonując:
      Bash:
      df -h | grep /dev/md
      Przykład:
      Code:
      /dev/md9                509.5M    113.8M    395.7M  22% /mnt/HDA_ROOT
      /dev/md13               364.2M    296.7M     67.6M  81% /mnt/ext
    • (!) Jeśli /dev/md9 nie został przyłączony poprawnie (do /mnt/HDA_ROOT), odnieś się do dodatkowej instrukcji załączonej pod tą procedurą.
    • (!) Jeśli /dev/md13 nie został przyłączony poprawnie, wykonaj poniższe polecenie, aby odtworzyć wolumin RAID md13:
      Przykład na urządzeniu: TS-469 z zainstalowanymi dwoma dyskami w konfiguracji: disk1(/dev/sda), disk2(/dev/sdb), disk3(missing/brakujący), disk4(missing/brakujący)
      Bash:
      /sbin/mdadm -CfR /dev/md13 -e 1.0 -z 458880 --bitmap=internal --write-behind --level=1 --chunk=64 --raid-devices=4 /dev/sda4 /dev/sdb4 missing missing
  4. Uruchom kolejną sekwencję uruchomienia magazynu danych, aby przyłączyć woluminy dysków:
    Bash:
    storage_util --sys_startup_p2
    1. Sprawdź dostępną przestrzeń dyskową mountów CACHEDEV?_DATA/MD?_DATA wykonując:
      Bash:
      df -h | grep _DATA
      Przykład:
      Code:
      /dev/mapper/cachedev1     2.7T      2.4T    257.7G  91% /share/CACHEDEV1_DATA
      /dev/mapper/cachedev2   909.0G    331.1G    577.4G  36% /share/CACHEDEV2_DATA
    • (!) Jeśli woluminy nie zostały przyłączone, wykonaj poniższe, aby podmountować wolumin danych:
      • Dla starszej konfiguracji dysków z woluminem MD:
        Bash:
        mount -t ext4 /dev/md0 /share/MD0_DATA
      • Dla nowej konfiguracji dysków z elastycznym LVM'em:
        Bash:
        mount -t ext4 /dev/mapper/cachedev1 /share/CACHEDEV1_DATA
    • [!] Jeśli w dalszym ciągu wolumin nie został poprawnie przyłączony, superblock może być uszkodzony.
      1. Odczytaj wielkość superblocku poleceniem dumpe2fs_64 ...:
        • Dla /dev/md0, wykonaj:
          Bash:
          dumpe2fs_64 /dev/md0 | grep superblock
        • Dla /dev/mapper/cachedev1, wykonaj:
          Bash:
          dumpe2fs_64 /dev/mapper/cachedev1 | grep superblock
        Przykład:
        Code:
        dumpe2fs 1.42.6 (21-Sep-2012)
          Primary superblock at 0, Group descriptors at 1-346
          Backup superblock at 32768, Group descriptors at 32769-33114
          Backup superblock at 98304, Group descriptors at 98305-98650
          Backup superblock at 163840, Group descriptors at 163841-164186
        ...
        Wynik: Wielkość superblocku z powyższego przykładu to 32768 bajtów.
      2. Przeprowadź skanowanie systemu plików określając wielkość superblocku z powyższego polecenia: e2fsck_64 -b 32768 ...:
        [DANGER='Wielkość superblocku']Niepoprawne określenie wielkości superblocku może skutkować trwałym uszkodzeniem struktury plików bez możliwości odzyskania zapisanych danych.[/DANGER]
        • Dla /dev/md0, wykonaj:
          Bash:
          e2fsck_64 -b 32768 /dev/md0
        • Dla /dev/mapper/cachedev1, wykonaj:
          Bash:
          e2fsck_64 -b 32768 /dev/mapper/cachedev1
        Przykład:
        Code:
        ...
        Pass 1: Checking inodes, blocks, and sizescf
        ...
        Free blocks count wrong for group #241 (32254, counted=32253).
        ...
        Fix? yes
        ...
        /dev/sda2: ***** FILE SYSTEM WAS MODIFIED *****
        ...
        /dev/sda2: 59586/30539776 files (0.6% non-contiguous), 3604682/61059048 blocks
        ...
  5. Wykonaj, aby przyłączyć wszystkie woluminy:
    Bash:
    /etc/init.d/mountall
  6. Wyświetl listę dostępnych mountów /dev/md oraz /dev/mapper poleceniem:
    Bash:
    mount | egrep '(/dev/md|/dev/mapper)'
    Przykład:
    Code:
    /dev/md9 on /mnt/HDA_ROOT type ext3 (rw,data=ordered)
    /dev/mapper/cachedev1 on /share/CACHEDEV1_DATA type ext4 (rw,usrjquota=aquota.user,jqfmt=vfsv0,user_xattr,data=ordered,delalloc,noacl)
    /dev/mapper/cachedev2 on /share/CACHEDEV2_DATA type ext4 (rw,usrjquota=aquota.user,jqfmt=vfsv0,user_xattr,data=ordered,delalloc,noacl)
    /dev/md13 on /mnt/ext type ext3 (rw,data=ordered)
    • (!) /dev/md13 powinien zostać przyłączony do /mnt/ext:
  7. Wykonaj, aby uruchomić:
    • Samba (Microsoft Networking) w celu uzyskania dostępu do plików przez otoczenie sieciowe Windows:
      Bash:
      /etc/init.d/smb.sh start
    ... lub:
    • Wszystkie usługi w serwerze NAS w tym Samba:
      Bash:
      /etc/init.d/services.sh start
  8. Jeśli po restarcie serwera w dalszym ciągu serwer nie uruchamia się prawidłowo, można powtórzyć powyższe kroki i przywrócić podstawową konfigurację systemu do domyślnej dodatkowym poleceniem:
    Bash:
    cp /etc/default_config/uLinux.conf /etc/config/

Log said:
Screen:
aqnapsupport.net_wp_content_uploads_2014_08_Qnap_mount_volume1.jpg


Code:
[~] # cat /etc/enclosure_0.conf
[Index]
pd_bitmap=0x2
pd_sysid_sg1=1
[PhysicalDisk_1]
port_id=1
pd_sys_id=sg1
enc_sys_id=root
pd_sys_name=/dev/sdb
...

[~] # storage_util sys_startup
Detect disk(8, 0)...
ignore nonroot enclosure disk(8, 0).
Detect disk(8, 16)...
...

[~] # df
Filesystem                Size      Used Available Use% Mounted on
/dev/ram0               151.1M    130.8M     20.3M  87% /
devtmpfs                909.2M      4.0k    909.2M   0% /dev
tmpfs                    64.0M    224.0k     63.8M   0% /tmp
tmpfs                    32.0M         0     32.0M   0% /.eaccelerator.tmp
/dev/md9                509.5M    198.7M    310.8M  39% /mnt/HDA_ROOT

[~] # storage_util sys_
startup_p2
sys_startup_p2:got called count = 1
Perform NAS model checking...
NAS model match, skip model migration.

[~] # df
Filesystem                Size      Used Available Use% Mounted on
/dev/ram0               151.1M    138.8M     12.3M  92% /
devtmpfs                909.2M      4.0k    909.2M   0% /dev
tmpfs                    64.0M    224.0k     63.8M   0% /tmp
tmpfs                    32.0M         0     32.0M   0% /.eaccelerator.tmp
/dev/md9                509.5M    198.7M    310.8M  39% /mnt/HDA_ROOT
/dev/mapper/cachedev1     1.7T      5.8G      1.7T   0% /share/CACHEDEV1_DATA

[~] # /etc/init.d/mountall
Update Extended /flashfs_tmp/boot/rootfs_ext.tgz...
...

[~] # df
Filesystem                Size      Used Available Use% Mounted on
/dev/ram0               151.1M    130.8M     20.3M  87% /
devtmpfs                909.2M      4.0k    909.2M   0% /dev
tmpfs                    64.0M    224.0k     63.8M   0% /tmp
tmpfs                    32.0M         0     32.0M   0% /.eaccelerator.tmp
/dev/md9                509.5M    198.7M    310.8M  39% /mnt/HDA_ROOT
/dev/mapper/cachedev1     1.7T      5.8G      1.7T   0% /share/CACHEDEV1_DATA
/dev/md13               364.2M    177.5M    186.7M  49% /mnt/ext

[~] # /etc/init.d/smb.sh start
Starting winbindd services:Starting SMB services:.

[~] # ps | grep smbd
5426 admin      1008 S   /usr/local/samba/sbin/smbd -l /var/log -D -s /etc/config/smb.conf
5433 admin       336 S   /usr/local/samba/sbin/smbd -l /var/log -D -s /etc/config/smb.conf
5434 admin       340 S   /usr/local/samba/sbin/smbd -l /var/log -D -s /etc/config/smb.conf
14613 admin       544 S   grep smbd

* Dla powyżej procedury w przypadku błędu z woluminem md9:
Jak przywrócić .conf (w przypadku niepoprawnego złożenia md9)
  • Try to mount 1st partition of any disk
    1. Please open /etc/enclosure_0.conf to get the correct disk mapping name.
      Code:
      [PhysicalDisk_1]
      port_id=1
      pd_sys_id=sg6
      enc_sys_id=root
      pd_sys_name=/dev/sdg
    2. Example command of mount Disk1 1st partition.
      Bash:
      /bin/mount /dev/sdg1 /mnt/sdg_root
  • Try to read /mnt/sdg_root/.conf
    Bash:
    cat /mnt/sdg_root/.conf
  • It should be a valid text file. If .conf file is is garbled, remove it and try to
    regenerate it.
  • Example of HAL support firmware(SMB):
    1. MAC address 1: 00:08:9B:CB:A3:EA
    2. World wide name of DISK1: 50014EE25C0D43B9
    3. World wide name of DISK2: 5000C5004EE02CCB
    4. World wide name of DISK3: 5000CCA378EF2455
    5. World wide name of DISK4: 50014EE2B21AEE7C
    6. To get the correct disk WWN, please refer to /etc/enclosure_0.conf.
    Bash:
    cat /mnt/sdg_root/.conf
    Przykład:
    Code:
    hw_addr=00:08:9B:CB:A3:EA
    QNAP=TRUE
    mirror=0
    hal_support=yes
    sm_v2_support=yes
    pd_dev_wwn_50014EE25C0D43B9=0x1
    pd_dev_wwn_5000C5004EE02CCB=0x2
    pd_dev_wwn_5000CCA378EF2455=0x3
    pd_dev_wwn_50014EE2B21AEE7C=0x4
  • Mount each disk 1st partition
  • Copy this new .conf to each disk 1st partition


Przywrócenie pracy serwera z oprogramowaniem starszym od 4.1.0 przez przywrócenie domyślnej konfiguracji
  1. Wykonaj procedurę wstępna
  2. "Zmirroruj" partycję ROOT poleceniemconfig_util 1:
    Bash:
    config_util 1
    root failed Jeśli powyższe polecenie zwróci błąd: Root Failed natychmiast przerwij wykonywanie dalszych czynności i skontaktuj się z pomocą techniczną QNAP: helpdesk.qnap.com
  3. Przyłącz partycję ROOT poleceniem: storage_boot_init 1
    Bash:
    storage_boot_init 1
  4. Odczekaj ok. 30 sekund. Dyski powinny być już zamontowane. Możesz to sprawdzić poleceniem mount, df -h lub fdisk -l (dysk 1: /dev/sda3, dysk 2: sdb3, dysk 3: sdc3, ...).
  5. Sprawdź dostępną przestrzeń na woluminie HDA_ROOT poleceniem df -h:
    Bash:
    df -h | egrep '(use|/dev/md9)'
    brak wolnej przestrzeni na woluminie Jeśli wolumin HDA_ROOT jest w pełni wykorzystany należy natychmiast przewać dalsze czynności i skontaktować się z pomocą techniczną QNAP: helpdesk.qnap.com
  6. Teraz możesz:
    • spróbować uruchomić serwer ponownie
    ... lub ...
    • przywrócić jego konfigurację do domyślnej a tym samym w większości przypadków przywrócić pracę serwera:
      Bash:
      cp /etc/default_config/uLinux.conf /mnt/HDA_ROOT/.config/
      rm -rf /etc/config
      ln -sf /mnt/HDA_ROOT/.config /etc/config
      setcfg -f /etc/config/uLinux.conf Misc configured TRUE
      # wykonaj jesli masz zamiar wykonac aktualizacje firmware Finderem:
      #ln -sf /mnt/HDA_ROOT/update /mnt/update
      # kontynuuj https://forum.qnap.net.pl/temat/5670/ punkt 13

Krytyczne uzyskanie dostępu do danych bez próby przywrócenia pracy serwera z oprogramowaniem firmware starszym od 4.1.0
  1. Wykonaj procedurę wstępna
  2. "Zmirroruj" partycję ROOT poleceniemconfig_util 1:
    Bash:
    config_util 1
    root failed Jeśli powyższe polecenie zwróci błąd: Root Failed natychmiast przerwij wykonywanie dalszych czynności i skontaktuj się z pomocą techniczną QNAP: helpdesk.qnap.com
  3. Załaduj konfigurację dysków storage.conf i przyłącz partycję DATA poleceniem: storage_boot_init 2
    Bash:
    storage_boot_init 2
  4. Odczekaj ok. 30 sekund. Dyski powinny być już zamontowane. Możesz to sprawdzić poleceniem mount, df -h lub fdisk -l (dysk 1: /dev/sda3, dysk 2: sdb3, dysk 3: sdc3, ...).
Log said:
 
  • Love
Reactions: pigers
Status
The first post in this thread is a WikiPost, and can be edited by anyone with the appropriate permissions.
Not open for further replies.