====== Cubieboard 2: SATA port multiplier a RAID ======
//Vytvořeno: **24.3.2019**//
> **Poznámka k aktuálnosti:** Toto je dobový článek. Postup vychází z testů na Cubieboardu 2 s Armbianem a dnes už ho beru hlavně jako dokumentační zkušenost.
[[https://www.armbian.com/cubieboard-2/|Cubie Board 2]] má jen jeden SATA port, takže když jsem začal přemýšlet o softwarovém RAID1 pro zálohy, řešil jsem, jak k desce připojit dva HDD. Teoreticky to šlo přes SATA port multiplier, jenže právě tam se ukázalo zásadní riziko integrity dat.
===== Jeden SATA port, ale dva HDD =====
Po vyřešení napájení 3,5" disků jsem hledal možnost, jak připojit víc zařízení do jednoho SATA portu. Narazil jsem na SATA port multiplier, tedy rozbočení jednoho SATA portu na více zařízení. Pro test jsem pořídil destičku z [[https://www.aliexpress.com/item/SATA-to-SATA-Adapter-Card-1-to-5-Ports-Multiplier-Converter-Expansion-Cards/32956620598.html|AliExpressu]], která umožňuje připojit až pět SATA zařízení.
{{hardware:jednodeskove-pocitace:cubieboard2:pasted:sata-port-multiplikator.jpg}}
Počítal jsem s tím, že se propustnost jednoho SATA portu musí mezi zařízení dělit, ale pro domácí zálohy to samo o sobě nebyl zásadní problém.
===== Zapnutí podpory SATA port multiplier v Armbianu =====
V základním kernelu byla podpora SATA port multiplier vypnutá. Bylo potřeba při bootu přidat parametr:
ahci_sunxi.enable_pmp=1
Nejdřív jsem zkoušel ''/boot/armbianEnv.txt'', ale bez výsledku. Zabralo až doplnění parametru do ''/boot/boot.cmd'', konkrétně na konec řádku s ''bootargs'' podle [[https://github.com/armbian/build/issues/548|diskuse v armbian/build issues]]:
setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs} hdmi.audio=EDID:0 disp.screen0_output_mode=${disp_mode} panic=10 consoleblank=0 loglevel=${verbosity} ubootpart=${partuuid} ubootsource=${devtype} ${extraargs} ${extraboardargs} ahci_sunxi.enable_pmp=1"
Pak bylo nutné znovu přegenerovat ''boot.scr'':
mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr
Po restartu šlo v ''dmesg'' ověřit, že je podpora PMP aktivní:
dmesg | grep -i sata
Důležitý byl zejména řádek s flagem ''pmp''.
===== Zásadní problém =====
Během dalšího hledání jsem narazil na to, že levné multipliery postavené na čipech ''JMB321'' nebo ''JMB393'' mají podle zkušeností uživatelů sklony k přehřívání a poškozování dat. A právě to byl případ i destičky, kterou jsem koupil.
Místo zvýšení bezpečnosti dat jsem si tak přidal další rizikovou vrstvu. Pro zrcadlení dat přes RAID1 mi to nakonec přestalo dávat smysl.
===== Praktický závěr =====
Výsledek pro mě byl jednoduchý:
* pro zrcadlení dat není dobré spoléhat na levný SATA port multiplier
* bezpečnější je mít desku se dvěma nativními SATA porty
* případně připojit druhý disk jinou cestou, třeba přes USB, pokud to dává smysl
===== Zdroje =====
* [[https://www.armbian.com/cubieboard-2/|Cubie Board 2]]
* [[https://www.armbian.com/|Armbian]]
* [[https://github.com/armbian/build/issues/548|Zprovoznění port multiplier na Armbianu]]
* [[https://docs.armbian.com/Hardware_Allwinner-A20/#bugs-or-limitation|Armbian – Bugs or limitations Allwinner A20 board]]
* [[https://forum.armbian.com/topic/981-pmp-support-build-in-or-recompile/|Diskuse Armbian a PMP support]]
* [[http://linux-sunxi.org/SATA#Caveats|Úskalí port multiplier na Allwinner A20 board]]