Eu tenho vários erros ao tentar iniciar o Hostapd. Vou postar a saída de erros que recebi depois que tentei iniciá-lo e observei o status:
root@l0calh0st:~# service hostapd status
● hostapd.service - Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator
Loaded: loaded (/lib/systemd/system/hostapd.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Sun 2018-01-07 16:42:38 CET; 4s ago
Process: 1682 ExecStart=/usr/sbin/hostapd -P /run/hostapd.pid -B $DAEMON_OPTS ${DAEMON_CONF} (code=exited, sta
Jan 07 16:42:38 l0calh0st systemd[1]: Starting Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticato
Jan 07 16:42:38 l0calh0st hostapd[1682]: Configuration file:
Jan 07 16:42:38 l0calh0st hostapd[1682]: Could not open configuration file '' for reading.
Jan 07 16:42:38 l0calh0st hostapd[1682]: Failed to set up interface with
Jan 07 16:42:38 l0calh0st hostapd[1682]: Failed to initialize interface
Jan 07 16:42:38 l0calh0st systemd[1]: hostapd.service: Control process exited, code=exited status=1
Jan 07 16:42:38 l0calh0st systemd[1]: hostapd.service: Failed with result 'exit-code'.
Jan 07 16:42:38 l0calh0st systemd[1]: Failed to start Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authe
Não sei por que ele não encontra o arquivo de configuração que parece procurar por '' aka nothing...! Eu não editei nada....! Aqui, se eu tentar iniciá-lo normal:
root@l0calh0st:~# service hostapd start
Job for hostapd.service failed because the control process exited with error code.
See "systemctl status hostapd.service" and "journalctl -xe" for details.
Se usar o comando "journalct1 -xe", recebo:
root@l0calh0st:~# journalctl -xe
-- Unit systemd-tmpfiles-clean.service has finished starting up.
--
-- The start-up result is RESULT.
Jan 07 16:57:44 l0calh0st systemd[1]: Starting Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator...
-- Subject: Unit hostapd.service has begun start-up
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- Unit hostapd.service has begun starting up.
Jan 07 16:57:44 l0calh0st hostapd[1865]: Configuration file:
Jan 07 16:57:44 l0calh0st hostapd[1865]: Could not open configuration file '' for reading.
Jan 07 16:57:44 l0calh0st hostapd[1865]: Failed to set up interface with
Jan 07 16:57:44 l0calh0st hostapd[1865]: Failed to initialize interface
Jan 07 16:57:44 l0calh0st systemd[1]: hostapd.service: Control process exited, code=exited status=1
Jan 07 16:57:44 l0calh0st systemd[1]: hostapd.service: Failed with result 'exit-code'.
Jan 07 16:57:44 l0calh0st systemd[1]: Failed to start Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator.
-- Subject: Unit hostapd.service has failed
-- Defined-By: systemd
-- Unit hostapd.service has failed.
--
-- The result is RESULT.
lines 1521-1543/1543 (END)
Editar: Ok, encontrei o arquivo "hostapd.service", mas não vejo nada comentado. (#?):
[Unit]
Description=Advanced IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator
After=network.target
[Service]
Type=forking
PIDFile=/run/hostapd.pid
EnvironmentFile=/etc/default/hostapd
ExecStart=/usr/sbin/hostapd -P /run/hostapd.pid -B $DAEMON_OPTS ${DAEMON_CONF}
[Install]
WantedBy=multi-user.target
Este é o arquivo /etc/default/hostapd:
# Defaults for hostapd initscript
#
# See /usr/share/doc/hostapd/README.Debian for information about alternative
# methods of managing hostapd.
#
# Uncomment and set DAEMON_CONF to the absolute path of a hostapd configuration
# file and hostapd will be started during system boot. An example configuration
# file can be found at /usr/share/doc/hostapd/examples/hostapd.conf.gz
#
#DAEMON_CONF=""
# Additional daemon options to be appended to hostapd command:-
# -d show more debug messages (-dd for even more)
# -K include key data in debug messages
# -t include timestamps in some debug messages
#
# Note that -B (daemon mode) and -P (pidfile) options are automatically
# configured by the init.d script and must not be added to DAEMON_OPTS.
#
#DAEMON_OPTS=""
Seu sistema está usando
systemd
. Em algumas distribuições, notei que usar oservice
wrapper legado pode ocultar algumas mensagens de erro que seriam visíveis usando osystemctl
comando systemd-native. Mas parece que há informações suficientes aqui.No
/lib/systemd/system/hostapd.service
arquivo, a linha que determina o comando real usado para iniciarhostapd
é aparentemente esta:Como inclui variáveis de ambiente que estão fora
systemd
do conjunto padrão (consulteman systemd.exec
para obter detalhes), ohostapd.service
arquivo provavelmente deve ter uma opção comoEnvironment=
,EnvironmentFile=
ouPassEnvironment=
. Provavelmente algo como:Se tal arquivo existir, provavelmente tem alguns padrões comentados que você precisará editar para corresponder à configuração do sistema e, em seguida, remover o comentário antes de iniciar o
hostapd
.Normalmente, esses arquivos são preparados pelos mantenedores de sua distribuição e possuem comentários úteis descrevendo o que você precisa fazer. Caso contrário, pode haver algumas informações específicas da distribuição no
/usr/share/doc/hostapd-*/
diretório que você deve ler primeiro.Eu tive o mesmo problema que você no Raspbian Stretch. Acabei de pesquisar em packages.debian.org e encontrei dois pacotes diferentes.
Eu instalei "hostapd_2.4-1+deb9u4_armhf.deb" e teve muitos problemas. Então, instalei "hostapd_2.7+git20190128+0c1e29f-4_bpo9+2_armhf.deb" e foi bom.