Как человек, в своё время съевший на hostapd собаку, советую купить хардовый роутер
Понаблюдав за работой компа с вай-фей адаптером, я понял почему вы так написали.
Иногда дрова не грузятся.
Написал скрипт проверки статуса сервиса isc-dhcp-sever, который возвращает статус failed, если wlan0 не поднят.
Скрипт выгружает дрова, грузит снова, назначет интерфейсу wlan0 правильный сетевой адрес (который почему то автоматом не назначается, хотя прописан в /etc/interfaces), перезапускает hostapd и isc-dhcp-server. Ip-камера сразу же подхватывает dhcp как только появляется точка доступа, так что ее перезапускать не надо. Motion тоже сразу же подхватывает поток с айпи-камеры, как только та подключается к точке доступа.
Может кому вдруг пригодится, скину подредактированный скрипт из просторов инета сюда:
#!/bin/bash
function checkIt()
{
ps auxw | grep -P '\b'$1'(?!-)\b' >/dev/null
if [ $? != 0 ]
then
sudo /sbin/modprobe -r rtl8192cu;
sleep 3;
sudo /sbin/modprobe rtl8192cu;
sleep 5
sudo ip a add 192.168.1.1/24 dev wlan0;
sleep 3;
sudo /etc/init.d/isc-dhcp-server restart;
sleep 3;
sudo /etc/init.d/hostapd restart;
sleep 3;
echo $1" its bad";
# else
# echo $1" its good";
fi;
}
Пользователь добавил сообщение 26 Августа 2021, 17:34:45:
что-то этот скриптик неправильно определяет статус запущенного демона. Поначалу все ок, но по происшествии 5 минут сервис как будто умер, а это не так. Модернизировал его:
#!/bin/bash
function checkIt()
{
service $1 status | grep -P '\b'running'(?!-)\b' >/dev/null
if [ $? != 0 ]
then
sudo /sbin/modprobe -r rtl8192cu;
sleep 3;
sudo /sbin/modprobe rtl8192cu;
sleep 5
sudo ip a add 192.168.1.1/24 dev wlan0;
sleep 3;
sudo /etc/init.d/isc-dhcp-server restart;
sleep 3;
sudo /etc/init.d/hostapd restart;
sleep 3;
echo $1" its bad";
else
echo $1" its good";
fi;
}
Пользователь добавил сообщение 26 Августа 2021, 17:55:13:
Нифига понять не могу. Запускаю скрипт от себя - вывод пишет, что сервис поднят. Если скрипт запускается по кронтаб, от имени рута, то вывод пишет что сервис не запущен. Что за фигня?
Пользователь добавил сообщение 26 Августа 2021, 18:01:29:
В ощем опять модернизировал скрипт, заменил проверку условия с
if [ $? != '0' ] на
if [ $? = '' ]Будем наблюдать. Хотя наверное уже не по теме...