trunk-studio / hme-web-api

1 stars 3 forks source link

raspbary pi 相關設置 #117

Open smlsunxie opened 8 years ago

smlsunxie commented 8 years ago

occi wifi connect

/boot/occidentalis.txt

ostname=hmepi
wifi_ssid=
wifi_password=

wifi ap mode

/etc/network/interfaces

origin

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

for ap mode

auto lo
iface lo inet loopback

iface eth0 inet dhcp

## bridge ##
auto br0
iface br0 inet dhcp
bridge_ports eth0 wlan0

setup hostapd

/etc/hostapd/hostapd.conf

interface=wlan0
driver=rtl871xdrv
bridge=br0
ssid=pi_ap
channel=1
wmm_enabled=0
wpa=1
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
auth_algs=1
macaddr_acl=0

讓 service 呼叫有作用

修改 /etc/default/hostapd

加入

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

debug

sudo hostapd /etc/hostapd/hostapd.conf

start

sudo service hostapd start

referance: http://www.lxway.com/829692604.htm

smlsunxie commented 8 years ago

目前完成第一版 script

ap_mode:
        sudo cp interfaces_ap /etc/network/interfaces
        sudo cp hostapd /etc/default/hostapd
        # sudo service hostapd restart
        # sudo /etc/init.d/networking restart
        sudo reboot

client_mode:
        # sudo service hostapd stop
        sudo rm /etc/default/hostapd
        sudo cp interfaces_client /etc/network/interfaces
        # sudo /etc/init.d/networking restart
        sudo reboot

相關檔案如上述,用 reboot 方式,若用 hot reload 的方式異常比較多

smlsunxie commented 8 years ago

不用 reboot 就可以切換 mode

ap_mode:
        sudo ifdown wlan0
        sudo cp interfaces_ap /etc/network/interfaces
        sudo cp hostapd /etc/default/hostapd
        sudo cp udhcpd_ap /etc/default/udhcpd
        sudo service hostapd restart
        sudo service udhcpd start
        sudo ifup wlan0

client_mode:
        sudo service hostapd stop
        sudo service udhcpd stop
        sudo ifdown wlan0
        sudo rm /etc/default/hostapd
        sudo cp udhcpd_client /etc/default/udhcpd
        sudo cp interfaces_client /etc/network/interfaces
        sudo /etc/init.d/networking restart
        sudo ifup wlan0
lyhcode commented 8 years ago

要再加上 update-rc.d 讓 service 預設開機不啟動, 這樣重新開機後才會維持 client_mode;;; ap_mode 則相反預設啟動

client_mode:
    update-rc.d -f hostapd remove
    update-rc.d -f udhcpd remove
lyhcode commented 8 years ago

然後通常需要 root 權限時,慣例是 Makefile 裡面不用 sudo,在執行 make 指令依照狀況 + sudo

sudo make client_mode
smlsunxie commented 8 years ago

got it 在調整