Raspbianセットアップのまとめ(モニタ、キーボード不要、OSインストール、固定IPアドレス設定からリモートデスクトップ、ファイル共有まで)
再セットアップのときに楽になるようにまとめました。
最低限必要な道具
普通であればこの他にキーボード、マウス、モニターを用意しますが、そんな甘えは許しません。いきなりwifiにつないでSSHで接続して設定をしてきます。
microSDのフォーマットとraspbianのインストールからラズパイ起動
いきなりですが、ラズパイ公式からダウンロードできるRaspberry Pi Imagerを使うとかんたんにraspbianのインストールが出来ます。インストールするOSを選んで、SDカードのドライブを指定して書き込みボタンを押せば15分程度でインストールしてくれます。
なのでこの先は、こういうやり方もあるよ程度のものになってしまいました。
↑ここから最新のraspbian /w desktopをダウンロードして、パソコン上で解凍します。macを使っているなら".img"ファイルが出来上がります(Win知らず)。
次にmicroSDをフォーマットします。"list"でドライブ名を確認してフォーマット(ドライブ名は/dev/disk2だった)。終わったらアンマウントします。
$ diskutil list
$ diskutil eraseDisk FAT32 RPI /dev/disk2
$ diskutil unmountDisk /dev/disk2
microSDにraspbianをインストールします。安全を見越してブロックサイズを1Mbyteで書く(bs=1m)ので、30分くらいかかります(ティータイム)。進捗はCtrl+Tで。
$ sudo dd bs=1m if=2018-10-09-raspbian-stretch.img of=/dev/disk2 conv=sync
インストールが終わったら/Volumes/bootというドライブが出来上がります。
ラズパイ起動時にSSHといきなりwifi接続できる設定
ラズパイ起動時にSSH接続する準備とwifiに接続する準備をします。SSHはboot/直下にsshという空ファイルを作成、wifiはwpa_supplicant.confというファイルを作成します。
$ touch /Volumes/boot/ssh
$ touch /Volumes/boot/wpa_supplicant.conf
$ nano /Volumes/boot/wpa_supplicant.conf ← nanoエディタ起動
wpa_supplicant.confの内容は以下。
SSIDとPSKの値はダブルクオーテーションで括ってあげてください。たとえばSSIDがabcdefであればssid="abcdef"です。
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP
network={
ssid="接続したいSSID"
psk="SSIDのパスワード"
key_mgmt=WPA-PSK
}
microSDのセットアップができたのでラズパイに挿入して電源ON。
ネットワークにDHCPサーバが居ればラズパイにIPアドレスを振ってくれるので、LanScanなどのツールでラズパイのアドレスを探してSSH接続します。(このときは192.168.1.108)
パスワード変更とアプデ
デフォルトでのuser名はpi、パスワードはraspberryです。
$ ssh pi@192.168.1.108
The authenticity of host '192.168.1.108 (192.168.1.108)' can't be established.
ECDSA key fingerprint is SHA256:*****************************************
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.1.108' (ECDSA) to the list of known hosts.
pi@192.168.1.108's password:
.
.
.
.
.
Last login: Tue Oct 9 12:43:53 2018
SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.
pi@raspberrypi:~ $
パスワードを変更します。
pi@raspberrypi:~ $ passwd
Changing password for pi.
(current) UNIX password: (デフォのパスワード"raspberry")
Enter new UNIX password: (新しいパスワード)
Retype new UNIX password: (もう一度新しいパスワード)
passwd: password updated successfully
pi@raspberrypi:~ $
raspbianのアプデをします。
updateはインストール可能なパッケージ一覧を更新。
upgradeで実際にパッケージ自体の更新とインストールを行います。
pi@raspberrypi:~ $ sudo apt-get update
pi@raspberrypi:~ $ sudo apt-get upgrade
(必要なら)固定IPアドレス設定
DHCPで振られたIPアドレスが嫌なら固定IPアドレスを振りましょう。
/etc/dhcpcd.confの最後に固定IPアドレスなどを追記します。
pi@raspberrypi:~ $ nano /etc/dhcpcd.conf
追記する内容↓
interface wlan0
static ip_address=?.?.?.?/? ←固定IPアドレスとサブネットマスク
static routers=?.?.?.? ← wifiルータのアドレス
static domain_name_servers=1.1.1.1 8.8.8.8 8.8.4.4
書き終わったらリブートします。
pi@raspberrypi:~ $ sudo reboot
再セットアップ時などにSSH接続で蹴られたら
普通ならリブート後は固定IPアドレスでSSH接続できるのですが、こんなメッセージが出たら、、
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
ここを参照してください。
起動後の設定
初期設定をします。
pi@raspberrypi:~ $ sudo raspi-config
raspi-configを実行すると↓の画面が出ます。設定する内容は、リンク先の「忘れていた初期設定の続き」参照。
ファームウェアのアップデート
もうひとつラズパイのファームウェアをアップデートします。終わったらリブート。
pi@raspberrypi:~ $ sudo apt-get install -y rpi-update
リモートデスクトップ(tightvncserver)の設定
リモートデスクトップの設定をします。tightvncserverをインストールして起動(パスワードを求められます)。起動確認はログファイルの中を見る。
pi@raspberrypi:~ $ sudo apt-get install tightvncserver
pi@raspberrypi:~ $ tightvncserver
pi@raspberrypi:~ $ cat /home/pi/.vnc/raspberrypi\:1.log
MacからVNCで接続してみます。
Cmd+Kでサーバ接続画面を出して"vnc://192.168.1.10:5901"と入力し、パスワード要求に対応すると、デスクトップが起動します。
次回起動時にtightvncserverが動くようにセットアップして権限を755にします。
↓の真ん中あたりの"-geometry 1440x900"が画面サイズ指定です。
pi@raspberrypi:~ $ sudo nano /etc/init.d/vncboot
pi@raspberrypi:~ $ sudo cat /etc/init.d/vncboot
#! /bin/sh
### BEGIN INIT INFO
# Provides: vncboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.
### END INIT INFO
# /etc/init.d/vncboot
USER=pi
HOME=/home/pi
export USER HOME
case "$1" in
start)
echo "Starting VNC Server"
#Insert your favoured settings for a VNC session
su $USER -c '/usr/bin/vncserver :1 -geometry 1440x900 -depth 24'
;;
stop)
echo "Stopping VNC Server"
su $USER -c '/usr/bin/vncserver -kill :1'
;;
*)
echo "Usage: /etc/init.d/vncboot {start|stop}"
exit 1
;;
esac
exit 0
pi@raspberrypi:~ $
pi@raspberrypi:~ $ sudo chmod 755 /etc/init.d/vncboot
自動起動に登録します。
認証をpiで行くかrootでいくか尋ねられます。1でパスワードを入力しす。
pi@raspberrypi:~ $ update-rc.d vncboot defaults
==== AUTHENTICATING FOR org.freedesktop.systemd1.reload-daemon ===
Authentication is required to reload the systemd state.
Multiple identities can be used for authentication:
1. ,,, (pi)
2. root
Choose identity to authenticate as (1-2): 1
Password:
==== AUTHENTICATION COMPLETE ===
pi@raspberrypi:~ $
ファイル共有(samba)の設定
次にsambaの設定をします。
インストールして設定ファイルに設定を追記します。
pi@raspberrypi:~ $ sudo apt-get install samba
pi@raspberrypi:~ $ /etc/samba/smb.conf
追記する内容↓
[pi]
comment = Raspberry Pi
path = /home/pi
guest ok = yes
read only = no
public = yes
browsable = yes
force user = pi
書き込んだらsambaを再起動してパソコンからCtrl+Kで接続します。
pi@raspberrypi:~ $ sudo service smbd restart
pi@raspberrypi:~ $ sudo service nmbd restart
pi@raspberrypi:~ $
接続する時はゲスト権限で。
おわり