Instruktaż/Tutorial Jak zrobić backup biosu w Qnapie (QTS 4.3.2)

killjoy

Systems Admin...
Q's Expert
9 Lipiec 2015
389
68
28
QNAP
TS-x53
Ethernet
1 GbE
Witam !

Jeszcze do dziś pamiętam jakie miałem problemy kiedy wyłaczyłem sobie obsługę usb w biosie i mój qnap przestał bootować.
Dzięki pomocy Silasa i reszty jego teamu udało mi się przywrócić NAS do używalności.
Już wtedy chciałem jakość zrobić backup wsadu kości flash z biosem ale było to niemożliwe - kernel qnapowy nie miał włączonej opcji dostęu do /dev/mem, bez którego appka flashrom nic nie odczyta z flash-a.
Teraz spróbowąłem znowu ten trick na becie 4.3 i to działa !
A więc po koleji:
  1. W Ubuntu 16.04 (zainstalowany w Linux station) instalujemy paczkę flashrom
  2. Za pomoca mc przenosimy z kontenera lcx do realnego systemu trzy pliki: flashrom (np. do /share/Public/ ) i libpci.so.3.3.1 oraz libudev.so.1.6.4 wraz z dowiązaniami symbolicznymi do /lib

    Plii te znajdziemy w:
    biblioteki z dowiązanami: /share/CACHEDEV1_DATA/.qpkg/ubuntu_hd/lxc/ubuntu_1604/rootfs/lib/x86_64-linux-gnu/
    plik flashrom: /share/CACHEDEV1_DATA/.qpkg/ubuntu_hd/lxc/ubuntu_1604/rootfs/usr/sbin/
  3. Po wejściu do /share/Public wystarczy wydać komendę
    Bash:
    flashrom -p internal -r flash.bin
    ...i po chwili mamy plik z kopią naszego biosu :)
    Takie jest wyście z terminala:
    Kod:
    flashrom v0.9.9-rc1-r1942 on Linux 4.2.8 (x86_64)
    flashrom is free software, get the source code at [URL='https://flashrom.org']flashrom[/URL]
    
    Calibrating delay loop... OK.
    Found chipset "Intel Bay Trail".
    Enabling flash write... OK.
    Found Winbond flash chip "W25Q64.W" (8192 kB, SPI) mapped at physical address 0x00000000ff800000.
    Reading flash... done.

Oby ten plik nigdy nam się nie przydał :D

BTW - opis dotyczy QTS 4.3.2 i TS 453mini - NIE WIEM, czy zadziała na 4.2.x. i innym hardware-u.
 
Na przyszłość zamiast robić dowiązania odpal komendę:
Bash:
LD_LIBRARY_PATH=/sciezka/do/lib flashrom ...
Lub wyeksportuj do zmiennych środowiskowych:
Bash:
export LD_LIBRARY_PATH=/sciezka/do/lib
flashrom ...

A także staraj się używać Ubuntu 14.04 - na nim bazuje system.
 
  • Lubię to
Reakcje: killjoy
Na przyszłość zamiast robić dowiązania odpal komendę:
Bash:
LD_LIBRARY_PATH=/sciezka/do/lib flashrom ...
Lub wyeksportuj do zmiennych środowiskowych:
Bash:
export LD_LIBRARY_PATH=/sciezka/do/lib
flashrom ...

A także staraj się używać Ubuntu 14.04 - na nim bazuje system.

Dzięki za tips, co do 14.04 to wiem, ale instalowałem ze względu na nowe kodi :) A to wyszło tak przypadkiem...