Comments 9
В современных системах shell скрипты не запускаются через udev, поэтому приходится извращатся запуская их через systemd юнит.
Может быть есть какой другой путь заставить их запускаться, но у меня не получилось. И где то даже видел, что это скорее "фича". Но ссылку сходу не нашел.
Debian Bookworm, 6.7.12, всё запускается...
Может как раз systemd мешает это делать? Я-то его убрал специально, чтобы не было вот этих "почему-то"
PS: попробовал на Убунте с работающим systemd: скрипт в принципе запускается (лог /var/log/wpa_auto.log), но с какими-то урезанными правами, не может создать каталог /run/wpa_supplicant, например, хоть и работает как root.
Интересно, посмотрим...
как, не имея установленного современного Desktop Environment, с Network Manager и systemd, управлять подключением к Wi-Fi сетям без особых проблем?
Не понял. Разве DE связан с Network Manager? Чем плох systemd? Скорее он хорош как раз
Тем, что не требует установки кучи всего, только самое необходимое.
И при этом обслуживает всё, включая загрузчик ОС. И как скрипт с окошками может претендовать на «ничего лишнего» - тоже не понял.
Таким образом, вся установка сводится к тому, чтобы установить необходимые пакеты:
sudo apt install wpasupplicant libgtk3-perl isc-dhcp-client iw
Необходимые? К iw это ещё в некотором смысле относится, но с точки зрения моей системы - остальное если и не заведомый мусор, то точно не необходимое.
Чем это лучше iwd, например? Не знаю. Может быть тем, что тут всё прозрачно, кто что делает, и всегда можно посмотреть, что и где пошло не так.
Докладываю - тут всё точно так, как Вы предположили. Из чего делаю вывод, что ничем не лучше. А вот хуже ли - тут вижу две школы мысли. «Шей да пори, не будет пустой поры» скажет что нет, точно не хуже, а вот «зачем сидеть если можно лежать»…
Сама задача кажется немного угловым случаем. Типа таскаем ноутбук не только без Wi-Fi, но и не способный потянуть никакого DE, по огромному количеству мест где есть другие ноутбуки без Wi-Fi и заимствуем у них USB адаптеры. Свой, естественно, с собой не носим - он же может потеряться…
Решение тоже кажется угловым случаем. Если нужен крайний минимализм - своими руками получится Puppy Linux. Если минимализм но не крайний - просто читаем Arch Wiki.
Почему я это не только прочитал, но и взялся комментировать? Эта тема близка к той, которая кажется мне интересной и достойной того, чтобы менее ленивые люди её популяризировали - Линукс консоль своими руками. Потому что просто минимализм разбивается о первый же запуск браузера, а машина без графики может удивительно много и даёт супер бюджетные варианты типа очень дешёвый системный блок в кладовке, чтобы не шумел, и любой планшет в руках, чтобы пользовать системник через браузер и ssh. Всех делов - один раз отнести блок к более преуспевающим знакомым владеющим монитором, мышью и клавиатурой чтобы установить какой понравился rolling release и настроить ssh.
И есть интересные продолжения. Вниз - зачем системник если есть смартфон и Temux, и ожидается родной андроидный Terminal, и вверх - апгрейднуть системник и установить DE и VNC.
Для вкатунов в IT и обучения заинтересовавшихся IT (прочих лучше не мучить) детей - большего и не нужно. Разве что BT клавиатуру докупить или украсть выпросить.
Чем плох systemd: я уже приводил примеры СТРАННОГО поведения программ, при работающем systemd.
И вот буквально только что, свежее:
Система Debian Bookworm, без systemd. Скрипты работают именно так, как ожидается - wpa_supplicant запускается, устанавливается соединение, все ОК.
Система Ubuntu, с systemd. Скрипт запускается, wpa_supplicant запускается - НО ругается на отсутствие некоего модуля в ядре.
При этом тот же самый wpa_supplicant, запущенный руками от рута, в соседнем окне - прекрасно работает, и модуль в том же ядре вдруг есть, все ОК.
Видите разницу? Одна и та же программа (один бинарник) с одними и теми же правами, запускается с идентичными ключами - но в одном случае она работает так как должна, а в другом почему-то нет. В одно и то же время.
И вот это "почему-то" - и есть СТРАННОЕ. Так быть не должно, это неправильно.
Для этого у нас уже есть Винда, там - так.
Ну, что бинарник один и права одни - это для Линукса не препятствие 😊, начиная с env и SELinux, если таковой на Ubuntu есть. Просто я на EndeavourOS (Arch со скромно и осторожно поправленным до человеческого лицом) проблем с systemd не имел вообще, потому и поинтересовался. С другой стороны, там iwd вместо wpa_supplicant, может и неспроста…
там на уровне стека протоколов, подобное может быть если модуль ядра не подгружается, но он подгружен уже.
В общем, загадочности, а я их терпеть не могу.
Но если без лишнего зоопарка - всё работает как часы.
Выводы укаждого свои, для меня - отказ от непредсказуемых систем. Тем более что к Убунте и без того вопросы накопились...
Возможно вам будет интересен kiss linux (https://kisscommunity.org/). Там можно подсмотреть много решений.
Я новичок в Linux, в январе установил Arch по гайду без archinstall. При установке для подключения WiFi я пользовался iwd. Однако после установки системы у меня возникли проблемы с WiFi. Как оказалось у меня были установлены 2 службы wpa_supplicant и iwd. В итоге я решил оставить iwd, а wpa_supplicant удалить. В интернете как-то не смог найти информацию о том что лучше. Только то что iwd более новый и был создан intel(а у меня WiFi от него же), поэтому его и оставил.
Linux-десктоп своими руками: WiFi-manager