RaspberryPi3を、パソコンからいじる
最近寒くて、RaspberryPi3がおいてある場所に長く居ることが出来ません。
電子回路をいじるときは、そこに居なければ無理だと思いますが、Pythonの学習なら遠隔でいじってもいいじゃん!というわけで遠隔からアクセスする設定を確認しました。
RaspberryPi3は、LinuxベースのRaspbianで動いているわけだから、SSHでの接続ならなにもしなくても繋がるはずやん、と思っていましたよ(笑)
確認した事
1.RaspberryPi3のIPアドレス
有線ではなく無線でつないでおり、またDHCPでアドレスを取得しているのでよくわからないのですが、コマンドプロンプトでifconfigコマンドを打つとアドレスが解ります。
pi@raspberrypi:~ $ ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether b8:27:eb:70:b7:c5 txqueuelen 1000 (イーサネット)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (ローカルループバック)
RX packets 4 bytes 200 (200.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4 bytes 200 (200.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.13 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fd51:42f8:caae:d92e::ff prefixlen 64 scopeid 0x0<global>
inet6 fe80::546c:f21c:b66b:3deb prefixlen 64 scopeid 0x20<link>
ether b8:27:eb:25:e2:90 txqueuelen 1000 (イーサネット)
RX packets 900 bytes 113170 (110.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 239 bytes 37659 (36.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
pi@raspberrypi:~ $
これを見ると インターフェース名は”wlan0”、DHCPから割り当てられたアドレスは192.168.0.13です。ですがサーバになるのでアドレスを動的に取得するより固定的にアドレスが付けられた方が便利なはずです。
なので固定的にIPアドレス192.168.0.20を割り付ける為に /etc/dhcpcd.conf に設定を追記します。最終行の下でOK
# static IP configuration:
interface wlan0
static ip_address=192.168.0.20/24
static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=192.168.0.1
static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1
再起動してみてifconfigでアドレスがちゃんと192.168.0.20になっていれば成功です。
2.SSHで接続してみる
これで繋がるはずなのにパソコンからteratermで、192.168.0.20にSSHアクセスしても繋がりません!(>_<)
なんで?sshが有効にされていないから?
理由はよくわからないけど設定確認。
>sudo raspi-config
x 1 Change User Password Change password for the current u x
x 2 Network Options Configure network settings x
x 3 Boot Options Configure options for start-up x
x 4 Localisation Options Set up language and regional sett x
x 5 Interfacing Options Configure connections to peripher x
x 6 Overclock Configure overclocking for your P x
x 7 Advanced Options Configure advanced settings x
x 8 Update Update this tool to the latest ve x
x 9 About raspi-config Information about this configurat x
・こういうキャラメニューが出るのでカーソルキーでハイライト行を 5 Interfacing Options に合わせてエンター押下。
・同じようにキャラメニューが出るのでカーソルキーでハイライト行を P2 SSH に 合わせてエンター押下。
・Would you like the SSH server to be enabled?
と聞かれるので <はい> でエンター押下
The SSH server is enabled
と確認メッセージが出るので <了解>でエンター
なんだかわからないけどSSHが無効にされていたみたい。セキュリティの問題かなぁ。
ここまで設定して、パソコンからteratermで、192.168.0.20にSSHアクセスすると無事に繋がりました。
けど、目的のPythonはここからどうしたら使えるの?? おや?
できましたよ。
pi@raspberrypi:~/python_program $ cat test1.py
print ("Hello!")
pi@raspberrypi:~/python_program $ python test1.py
Hello!
pi@raspberrypi:~/python_program $
デバッガは無理かな(笑)