前言
由於某些所必須的原因,Linux 系統想要使用無線網卡開啟熱點提供服務。
我實現了 系列 樹莓派 配置 OMV 搭建 NAS ,但是 OMV5 自動禁用了無線網卡,為避免訪問 NAS 時還要經過一道路由轉發,以及避免路由器抽風時不提供服務。
啟用無線網卡
- 樹莓派4b 自帶無線網卡,你也可以使用外接的無線網卡,需要驅動的提前安好驅動即可。
由於 OMV5 默認禁用無線網卡,需要啟用無線網卡。
-
查看無線網卡是否啟用,命令:
ifconfig
。查找無線網卡(樹莓派4b 板載無線網卡名
wlan0
)。 -
如果沒有找到,查看所有網卡,命令:
ifconfig -a
-
如果找到,啟用它。
ifconfig wlan0 up
安裝依賴
-
安裝 network-manager
sudo apt-get install network-manager
-
安裝 git
sudo apt-get install git
-
安裝依賴庫
sudo apt-get install util-linux procps hostapd iproute2 iw haveged dnsmasq
-
如果出現以下問題:
Job for dnsmasq.service failed because the control process exited with error code.See"systemctl status dnsmasq.service" amd "journalctl -xe" fro details.
-
輸入提示命令,查看錯誤:
systemctl status dnsmasq.service 或 journalctl -xe
-
如果提示:
failed to create listening socket for port 53: 地址已在使用
-
修改配置文件
-
修改 NetworkManager 配置文件
-
修改或創建 NetworkManager 配置文件:
sudo nano /etc/NetworkManager/NetworkManager.conf
-
修改或寫入內容,保存退出:
dns=dnsmasq
-
重啟 NetworkManager 服務。
sudo service network-manager restart
-
-
修改 dnsmasq 配置文件
-
編輯配置文件。
sudo nano /etc/dnsmasq.conf
-
查找
listen-address
一行內容。 -
取消該行注釋,並設置為:
listen-address=127.0.0.1
-
重啟 dnsmasq 服務。
sudo /etc/init.d/dnsmasq restart
-
克隆 git 項目
克隆 git 項目到本地進行編譯。
sudo git clone https://github.com/oblique/create_ap
cd create_ap
sudo make install
啟用熱點
-
啟用熱點。
sudo create_ap wlan0 eth0 <熱點名> <密碼>
-
如果提示
WARN
可用下面命令啟用熱點。sudo create_ap --no-virt wlan0 eth0 <熱點名> <密碼>
熱點以服務開機重啟
-
修改重啟服務的配置,添加--no-virt參數。
sudo nano /usr/lib/systemd/system/create_ap.service
將:
ExecStart=/usr/bin/create_ap --config /etc/create_ap.conf
修改為:
ExecStart=/usr/bin/create_ap --no-virt --config /etc/create_ap.conf
-
修改 create_ap.service 服務功能的配置
sudo nano /etc/create_ap.conf
設置自己的 GATEWAY(網關)、SSID(熱點名)、PASSPHRASE(密碼)
GATEWAY=??? SSID=??? PASSPHRASE=???
-
設置服務開機啟動。
systemctl enable create_ap.service
-
查看服務是否開機啟動。
systemctl is-enable create_ap.service
服務管理
# 啟動服務:
systemctl start create_ap.service
# 關閉服務:
systemctl stop create_ap.service
# 重啟服務:
systemctl restart create_ap.service
# 顯示服務狀態:
systemctl status create_ap.service
# 禁用服務開機啟動:
systemctl disable create_ap.service