51231


USBキーボードを接続しているとき、接続していないときでwlan0のIPアドレスが  
取得できる・できないの症状が発生しています。

確認すべきことやヒントなどを教えていただけると幸いです。

**症状**  
RaspberryPi3 BにUSBキーボードを接続して起動・再起動をするとSSHで接続ができる  
（DHCPサーバーからwlan0にIPアドレスが付与される）  
USBキーボードを外して起動するとSSHで接続ができない。

起動画面では下記のメッセージが表示されて

[code]

    Started LSB: Switch to ondemand cpu governor (unless shift key is pressed).
    Started Load/Save RF Kill Switch Status.
    Started Bluetooth service.
    Reached target Bluetooth.
    Started Raspberry Pi bluetooth helper.
             Starting Hostname Service...
    Started Hostname Service.
     A start job is running for dhcpcd on all interfaces (49s / 1min 32s)
    
[/code]

カウントアップが始まりIPアドレスが取得できずにログイン画面が表示される。

**動作環境**  
Raspberry Pi3 B  
Raspbian (stretch), 2018-11-13-raspbian-stretch-lite.img  
Windows10からSSHで接続して使っています。

[code]

    # uname -a
    Linux myweb 4.14.79-v7+ #1159 SMP Sun Nov 4 17:50:20 GMT 2018 armv7l GNU/Linux
    
[/code]


CC BY-SA 4.0
2018-12-14T08:04:41.767
51210
2018-12-16T14:27:37.367
2018-12-16T02:39:15.060
15346
15346
question
raspberry-pi ssh wifi
RaspbianでWi-Fiの接続ができるとき・できないときがある


セキュリティ上の理由でディスプレイやキーボードがつながっていない状態だと(デフォルトでは)sshが有効とならないようです。

対応としては、SDカードの`/boot/`ディレクトリ直下に`ssh`という名前の空ファイルを配置して起動すれば`ssh`が有効となるようです。

参考：  
[Raspberry Pi
3(Raspbian)をディスプレイなしでセットアップする方法](https://memoteki.net/archives/1341)  
[Raspberry
Piをディスプレイ・キーボード・マウス無しの三重苦でもセットアップする方法](https://karaage.hatenadiary.jp/entry/2015/07/15/080000)  
[Enable ssh and connect to a wifi network without a keyboard or a screen -
Raspberry Pi Stack
Exchange](https://raspberrypi.stackexchange.com/q/66949/95039)


CC BY-SA 4.0
2018-12-14T08:20:21.730
51213
2018-12-15T11:34:15.980
2018-12-15T11:34:15.980
3060
3060
51210
answer


Raspbianのセキュリティのため、キーボードやモニターが接続されていないとWiFiが使えないことがわかりました。

下記の手順にてキーボード、モニタの接続なしでもWiFi接続ができるようにサービスを登録しました。

[code]

    # cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
    
    # systemctl disable wpa_supplicant.service
    
    # systemctl enable wpa_supplicant@wlan0.service
    
    # systemctl list-unit-files | grep wpa_supplicant
      wpa_supplicant-wired@.service          disabled
      wpa_supplicant.service                 disabled
      wpa_supplicant@.service                enabled
    
    # reboot
    
[/code]


CC BY-SA 4.0
2018-12-15T09:45:54.627
51231
2018-12-16T14:27:37.367
2018-12-16T14:27:37.367
15346
15346
51210
answer