hostapd не запустится через “сервис” — но запустится непосредственно

просто выразить то, что должно быть сделано:

1 Для каждой строки, между которой включают "$ и " удалите все ,
2 удаляют окружение "$ и "

Это - sed выражения. При использовании его на полотне команды, необходимо заключить его в кавычки соответственно. Более просто поместить его в файл, например, command.sed, и назвать его

sed -f command.sed data.csv

Это - программа, которая реализует эти два шага:

:repeat
s/"\$\([^,"]*\),/"$\1/g 
t repeat
s/"\$\([^"]*\)"/\1/g 

Этот документ помог мне решить проблему.

19
12.03.2014, 00:20
8 ответов
[1125649] Все, что вам нужно сделать, это написать эту команду:

она перечислит вам все ошибки, вы можете исправить их в файле [1126097]hostapd.conf[1126098]

ls {file,otherfile}*.txt
14
27.01.2020, 19:44

вы должны настроить:

sudo nano /etc/default/hostapd

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Найдите строку выше и сообщите конфигурации по умолчанию, где находится ваш.

14
27.01.2020, 19:44

Вам нужно установить DAEMON_CONF в /etc/init.d/hostpad .

Это действительно совершенно очевидно, если вы посмотрите в /etc/init.d/hostapd , По умолчанию выглядит по умолчанию:

...
14 PATH=/sbin:/bin:/usr/sbin:/usr/bin
15 DAEMON_SBIN=/usr/sbin/hostapd
16 DAEMON_DEFS=/etc/default/hostapd
17 DAEMON_CONF=
18 NAME=hostapd
19 DESC="advanced IEEE 802.11 management"
20 PIDFILE=/var/run/hostapd.pid
21
22 [ -x "$DAEMON_SBIN" ] || exit 0
23 [ -s "$DAEMON_DEFS" ] && . /etc/default/hostapd
24 [ -n "$DAEMON_CONF" ] || exit 0
...

, потому что DAEMON_CONF пуст для начала, сценарий выходит в строку 24. Слишком плохой, нет сообщения об ошибке или что-либо не существует. Изменение строки 17 на

 DAEMON_CONF=/etc/hostapd/hostapd.conf

и поместить конфигурацию в указанный файл, работал для меня.

1
27.01.2020, 19:44

Я только что столкнулся с этой проблемой. По умолчанию на моем распианском хрипе запущен хостапд как S01 в сервисах. Это делает его запущенным до ifplugd, который конфигурирует eth0 и wlan0. Причина этого в том, что S01h[ostapd] < S01i[fplugd], так как скрипты отсортированы в алфавитном порядке для выполнения.

Я думаю, что мосту трудно настроиться раньше всего. Перемещение его в S05 тоже не помогло, поэтому я переместил его в rc.local, который после всего остального выполняется "некоторое время". Я также удалил все ссылки с rc[2-5].d на hostapd. Я думаю, что S05 все еще слишком рано, чтобы dhclient закончил должным образом. Я не уверен, что это соответствует лучшей практике. Похоже, что сейчас происходит то, что еслиplugd не сможет поднять br0, но eth0, то он будет более сговорчивым. Я не уверен, почему wpa_supplicant здесь не работает, вероятно, потому что wlan0 уже обещано br0. Его все равно нужно отключить. Позже hostapd снова пытается поднять br0 и добивается успеха, так как eth0 в порядке и никто не взял под контроль wlan0.

Существует другая возможная конфигурация, в которой можно указать опцию post-up/pre-down для br0 в /etc/network/interfaces (man-интерфейсы). Оттуда можно запускать/останавливать хостапд. Правда, мне не удалось заставить его работать, но это выглядит гораздо более чистым решением.

3
27.01.2020, 19:44

Это было проблемой и для меня, и, очевидно, все еще существует. Я исправил ошибки, удалив hostapd из /etc/rc2.d/ и /etc/networking/if-pre-up.d/

/ etc / network / interfaces теперь управляет hostapd ..

iface wlan0 inet static
         post-up /usr/sbin/hostapd -B /etc/hostapd/hostapd.conf
         post-up service isc-dhcp-server restart
         address 192.168.10.1
         netmask 255.255.255.0

Перезагрузка подтвердила, что открывает интерфейс; и станции подключаются нормально. Раньше мне приходилось использовать ssh и останавливать isc и hostapd и делать то, что теперь делает post-up (в этот приказ)

11
27.01.2020, 19:44

Я думаю, проблема в ваших цитатах в строке 11 / etc / default / hostapd :

”/etc/hostapd/hostapd.conf”

Здесь следует читать:

"/etc/hostapd/hostapd.conf"

Ваше сообщение действительно помогло мне решить мою проблему, поэтому спасибо!

1
27.01.2020, 19:44

На Arch linux, где systemd кажется нормой по сравнению с rc/init.d, у меня была похожая проблема. Этот ответ отличается от других следующим образом :

  1. Конфигурационный файл находится не в /etc/init.d, а где-то в /etc/systemd/system/. А именно /etc/systemd/system/multi-user.target.wants/hostapd, в моем случае, где строка ExecStart указывает на используемый файл конфигурации.

  2. Важно, что этот конфигурационный файл также указывает на используемый двоичный файл, а именно /usr/bin/hostapd.

Затем нужно проверить, какой файл hostapd вы выполняете. Выполнение whereis покажет вам, какие версии доступны и где они расположены. Таким образом

whereis hostapd

получается что-то вроде

/sbin/hostapd /usr/bin/hostapd /usr/local/bin/hostapd

Проверяем каждую из них, систематически вызывая PATH/hostapd /etc/hostapd/hostapd.conf для каждой PATH определяет, какую из них вы действительно вызываете, а какую вызывает systemd. Опять же, в моем случае последний путь - это то, что я вызывал, когда вводил sudo hostapd /etc/hostapd/hostapd.conf. Второй путь - это то, что вызывала systemd.

Фокус в том, чтобы скопировать двоичный файл из /usr/bin/local в /usr/bin или указать systemd на рабочий hostapd. Я считаю, что первый вариант является более "безопасным".

sudo mv /usr/bin/hostapd /usr/bin hostapd.bkp     # delete later as necessary
sudo cp /usr/local/bin/hostapd /usr/bin

Опять же, в моем случае бинарник под /usr/bin/local появился в результате компиляции драйвера Realtek из исходников с их сайта, как описано здесь. Спасибо Realtek за поддержку Linux.

Надеюсь, это поможет, не является специфическим для моей системы (Arch (Arm) Linux на Raspberry Pi B) и квалифицируется как подходящий ответ в соответствии с правилами UE.

0
27.01.2020, 19:44

Добавление 10 секунд сна в файл /etc/init.d/hostapdрешило проблему для меня.

1)sudo nano /etc/init.d/hostapd2 )Добавьте sleepв секцию start), как показано ниже

case "$1" in
  start)
        log_daemon_msg "Starting $DESC" "$NAME"
        sleep 10
        start-stop-daemon --start --oknodo --quiet --exec "$DAEMON_SBIN" \
                --pidfile "$PIDFILE" -- $DAEMON_OPTS >/dev/null
        log_end_msg "$?"
        ;;
1
27.01.2020, 19:44

Теги

Похожие вопросы