Актуализация на фърмуера

Това ръководство описва как да актуализирате фърмуера на Nitrokey 3.

Warning

Това ръководство все още е в експериментално състояние!

Note

Актуализациите са възможни само с версия на фърмуера 0.11 и по-нова.

Important

Актуализацията може да доведе до загуба на данни, затова се уверете, че имате активирани подходящи методи за резервно влизане и/или се уверете, че Nitrokey Pro не е единственият начин за удостоверяване/2FA за вашите приложения/услуги.

Как да актуализирате

Important

Никога не изключвайте Nitrokey 3 или не прекъсвайте процеса по време на актуализиране, защото това вероятно ще направи устройството ви безполезно!

  1. Уверете се, че имате инсталирана най-новата версия на pynitrokey, моля, проверете инструкциите за инсталиране <../../software/nitropy/all-platforms/installation.html>`__ за вашата операционна система.

  2. Изтеглете най-новото стабилно образа на фърмуера.

    Important

    За производствена употреба трябва да изберете последната стабилна версия (т.е. само версии, които не съдържат „pre-release“ или „RC“).

  3. За да приложите актуализацията, стартирайте:

$ nitropy pro enable-update
$ nitropy pro update nitrokey-pro-firmware-<version>.bin

Алтернативен метод за актуализация

Алтернативно може да се използва dfu-util за актуализиране на фърмуера:

  1. Инсталиране на dfu-util

    Binaries for Windows are available at: * http://dfu-util.sourceforge.net/releases/

    For macOS binaries are available via Homebrew: * https://formulae.brew.sh/formula/dfu-util

    само за MacOS: Инсталирайте dfu-util чрез Homebrew

    brew install dfu-util
    
  2. Използвайте приложението Nitrokey App v1.5-RC7 или по-висока версия, за да промените режима на зареждане на Nitrokey Pro в режим на актуализация.

  3. Сега изпълнете следната команда, за да приложите актуализацията

    $ dfu-util -D update_binary.bin
    
  4. Сега режимът на зареждане може да бъде променен отново с приложението Nitrokey.

Отстраняване на неизправности

Проблем: libnitrokey не може да бъде намерен.

В случай че libnitrokey не бъде намерен автоматично, пътят до него може да бъде предоставен с променливата env:

$ env LIBNK_PATH=/libnk/path/libnitrokey.so nitropy pro enable-update

За да намерите libnitrokey на вашата система, използвайте:

$ locate libnitrokey.so

Грешка в разрешението на Linux

Проблем: Получавам permission denied for /dev/hidrawX по време на актуализация.

Това вероятно означава, че вашият потребител няма необходимите разрешения за четене и запис на устройството. Уверете се, че сте настроили правилно udev-rules. Изтеглете този набор udev-rules и го поставете в директорията с правилата на udev (например /etc/udev/rules.d). След това извадете вашия Nitrokey 3 от USB слота и стартирайте: udevadm control --reload-rules && udevadm trigger или рестартирайте машината си. След това актуализацията би трябвало да работи без проблем с разрешенията.