Спасибо за советы и рекомендации!
Обязательно займусь изучением... Но сейчас, дабы не откладывать в долгий ящик, воткнул внешний свисток и на этом, пока что, временно считаю что проблема устранена.
--------------------
Не знаю где можно написать, есть еще одна проблема по wlan, но совершенно другого характера, не менее вредоносная, но на другом боксе и на другом RK-чипе.
Насколько можно судить из логов, wlan реализован на
rtl8723bs.
Определяется, работает под андроидом и линуксом.
Но!
Каждый ребут приводит к необходимости ввода пароля WiFi: негодяй не хочет помнить свой MAC-адрес.
Это происходит в обоих системах.
Но с андроидом всё и так сложно: NAND, по уже сложившейся традиции, ушёл в R/O, а из линукса, в наличии есть только LE.
Причем с андроида бокс преспокойно загружается, работает, но, как водится - ничего не запоминает и все вновь установленные приложения после перезагрузки, благополучно исчезают.
Под LE - ситуация, примерно, та же, за исключением того, что установленные дополнения остаются, но пароль надо вводить снова.
Были предприняты 3,5 попытки назначить MAC при загрузке, но они ни к чему не привели. 3,5 потому что третья не удалась в полном объёме по причине "несовместимости" (за давностью) инструкций и возможностей имеющейся оси.
Первый способ заключался в создании скрипта, который должен был исполняться при запуске системы, в котором (насколько я понял) МАС-адрес должен был присваиваться принудительно.
autostart.sh
(
sleep 30;
ifconfig eth0 down;
ifconfig eth0 hw ether 2E:98:41:4F:3D:C1;
ifconfig eth0 up
) &
Непонятно назначение скобок и символа "&" в конце, но было заявлено что скрипт полностью рабочий.
Реакции на этот скрипт вообще не последовало никакой или она не выводится ни в UART ни на экран, ведь речь идёт об LE.
Второй способ в чем заключается, я так и не понял, потому как речь уже шла о каких-то тонких понятиях, которые для меня еще за 7-ю печатями.
macspoof@.service
[Unit]
Description=MAC Address Change %I
Wants=network-pre.target
Before=network-pre.target
BindsTo=sys-subsystem-net-devices-%i.device
After=sys-subsystem-net-devices-%i.device
[Service]
Type=oneshot
ExecStart=/sbin/ip link set dev %i address 00:E0:4C:4E:65:27
ExecStart=/sbin/ip link set dev %i up
[Install]
WantedBy=multi-user.target
Этот файл следовало поместить в "
storage/.config/system.d", сделать ему ссылку (
systemctl enable macspoof@eth0.service) и перезапустить систему.
Ссылка сделалась, но при перезагрузке выскакивает какая-то ошибка и что с ней делать - я тоже не знаю:
Третий способ тоже особо не расписывался и сводился к созданию еще одного файла, расположенного в "
udev.rules.d"
99-mac-address.rules
SUBSYSTEM=="net", KERNEL=="wlan0", RUN+="/sbin/ip link set dev %k address D8:FC:93:6F:29:01"
SUBSYSTEM=="net", KERNEL=="eth0", RUN+="/sbin/ip link set dev %k address D8:FC:93:6F:29:02"
Никакой реакции.
Четвертый способ предполагал сотворить нечто глобальное, что решало бы проблему раз и навсегда, но в этом случае не все команды выполняются и чем их заменить и вообще что происходит - мне так же непонятно.
4th
# ip link
Эта команда отработала и выдала некоторые сведения:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST8000> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:e0:4c:4e:65:27 brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP8000> mtu 1500 qdisc mq qlen 1000
link/ether 00:e0:4c:fe:67:7f brd ff:ff:ff:ff:ff:ff
4: p2p0: <NO-CARRIER,BROADCAST,MULTICAST,UP8000> mtu 1500 qdisc mq qlen 1000
link/ether 02:e0:4c:fe:67:7f brd ff:ff:ff:ff:ff:ff
Затем следовало "Подтвердить происхождение этого MAC-адреса" следующей командой, которая уже не выполнилась:
# fw_printenv | grep ethaddr
-sh: fw_printenv: not found
Затем следовала еще одна команда, которая выполнилась:
# dbus-uuidgen | cut -c1-12 | sed -e 's/../:&/2g'- -e 's/~^://' |tr [:lower] [:upper]
2e:98:41:4f:3d:c1
Насколько я могу судить, это была генерация случайного МАС-адреса.
Следующая команда, самая главная, наверно, тоже не выполнилась:
#fw_setenv ethaddr 2e:98:41:4f:3d:c1
-sh: fw_setenv: not found
На всякий случай прилагаю логи загрузок.
(уже забыл как вложения вставлять в сообщение. я его прикрепил, но не уверен что оно будет доступно)