Thunderbolt (Polski)
Thunderbolt 3 działa od razu z najnowszymi wersjami jądra Linux [1]. Kernel Linux, zaczynając od wersji 4.13, wspiera również Thunderbolt Security.
Aktualizacje oprogramowania układowego
Producenci często wypuszczają aktualizacje oprogramowania układowego dla portów i urządzeń Thunderbolt, aby te działały poprawnie. Więcej informacji można znaleźć na https://thunderbolttechnology.net/updates.
Autoryzacja urządzeń użytkownika
Nowoczesne urządzenia Thunderbolt implementują tryby bezpieczeństwa, które wymagają autoryzacji użytkownika podczas podłączania urządzeń - ma to na celu ochronę przed złośliwymi urządzeniami wykonującymi ataki DMA lub w inny sposób ingerującymi w sprzęt (patrz Thunderstrike 2).
Aktualnie obsługiwanymi trybami na Linuxie są:
-
none
- Brak zabezpieczeń, wszystkie urządzenia są domyślnie połączone i inicjalizowane. W ustawieniach BIOSu jest to zazwyczaj nazwane Legacy mode. -
user
- Wymagana jest autoryzacja przez użytkownika za każdym razem, gdy urządzenie zostaje podłączone. W ustawieniach BIOSu to ustawienie jest zazwyczaj nazywane Unique ID. -
secure
- Wymagana jst autoryzacja użytkownika, ale urządzenie zostaje zapamiętane i nie wymaga ponownej autoryzacji. W ustawieniach BIOSu to ustawienie jest zazwyczaj nazywane One time saved key. -
dponly
- Thunderbolt działa tylko na DisplayPort, wszystkie inne urządzenia nie są autoryzowane. W ustawieniach BIOSu tryb ten zazwyczaj nazywa się Display Port Only.
Poziom bezpieczeństwa jest normalnie konfigurowany na poziome oprogramowania układowego; zalecane jest, aby ustawić ten poziom na przynajmniej secure
. Stan tego ustawienia może być odczytany za pomocą:
$ cat /sys/bus/thunderbolt/devices/domain0/security
Interfejsy graficzne
- GNOME natywnie obsługuje autoryzowanie urządzeń poprzez interfejs graficzny od wersji 3.30
- Integracja z Plasma jest możliwa dzięki temu repozytorium git oraz dzięki pakietowi plasma-thunderbolt.
Automatyczne podłączanie urządzeń
Użytkownicy, którzy chcą po prostu podłączyć dowolne urządzenie bez jakiejkolwiek ręcznej pracy, mogą utworzyć regułę udev jak w 99-removable.rules
:
/etc/udev/rules.d/99-removable.rules
ACTION=="add", SUBSYSTEM=="thunderbolt", ATTR{authorized}=="0", ATTR{authorized}="1"
Wymuszanie zasilania
Wielu producentów OEM zawiera metodę, której można użyć do wymuszenia włączenia zasilania kontrolera Thunderbolt. Jeśli jest to obsługiwane przez maszynę, zostanie to ujawnione przez magistralę WMI z atrybutem sysfs o nazwie force_power [2].
Wymuszenie zasilania może być szczególnie przydatne, gdy podłączone urządzenie utraci połączenie lub kontroler sam się wyłączy.
Aby wymusić włączenie/wyłączenie zasilania, wpisz 1 lub 0 do tego atrybutu, np. wymuś zasilanie:
# echo 1 > /sys/bus/wmi/devices/86CCFD48-205E-4A77-9C48-2021CBEDE341/force_power
force_power.
Rozwiązywanie problemów
Magistrale PCI nie są zarejestrowane
Czasami podczas podłączania urządzenia Thunderbolt magistrale PCI mogą nie zostać zarejestrowane. Objawia się to działającymi ekranami, podczas gdy urządzenia USB nie rejestrują się na komputerze. Można to rozwiązać poprzez ponowne skanowanie PCI:
# echo 1 > /sys/bus/pci/rescan
Zwiększenie rozmiaru magistrali hot-plug i pamięci
Niektóre BIOS-y mogą zgłaszać zbyt mały rozmiar magistrali i pamięci do jądra, co powoduje, że sterowniki nie ładują się. Dodaj poniższe polecenie do wiersza poleceń jądra, aby ręcznie ustawić rozmiar.
pci=hpbussize=0x33,hpmemsize=256M