Raspberry Pi2に対してRaspbian Jessieをインストールした時の備忘録
Raspbian JessieのイメージをSDに作成する
ここからイメージをダウンロードする。
https://www.raspberrypi.org/downloads/raspbian/
> unzip 2017-07-05-raspbian-jessie-lite.zip
以下はMAC OSXでイメージをSDに書き込んだ場合。SDカードがどこにマウントされているかを確認する。そのあとにddコマンドでイメージを書き込む。
> diskutil list
:
/dev/disk2 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *8.0 GB disk2
1: Windows_FAT_32 boot 66.1 MB disk2s1
2: Linux 7.9 GB disk2s2
> sudo dd bs=4m if=./2017-07-05-raspbian-jessie-lite.img of=/dev/rdisk2
Raspbian Jessieのログインと初期設定
作成したSDカードをRaspberryPiに挿入して、電源ONする。
ログインの初期ユーザは"pi"、パスワードは"raspberry"でログインする。
ログインに成功したら、raspi-configコマンドで初期設定を行う。
> raspi-config
-
Change User Password
任意のパスワードに変更 -
Hostname
任意のホスト名に変更 -
Localisation Options
Localeを"en_US.UTF-8"と"ja_JP.UTF-8"を選択しデフォルトは"en_US.UTF-8"にしておく(jpを選択すると、標準コンソールで文字化けするので)、TimezoneはAsia/Tokyo、Keyboard LayoutはGeneric 105-key(Intl)PC/Japanese/Japanese(Dvorak) -
Interfacing Options
各種インタフェースの設定を行う。Camera、SSHサーバ、SPI、I2C、SerialあたりをEnableにする
完了したら、一旦rebootする。
ネットワーク設定 (Wifi)
純正のWifiドングルに対して、固定のIPアドレスを設定しておく。設定はdhcpcd.confファイルを修正する。(ネットワーク周りの設定方法は従来から変更されているので注意)
> sudo vi /etc/dhcpcd.conf
interface wlan0
static ip_address=192.168.1.50
static routers=192.168.1.1
static domain_name_servers=192.168.1.10
wifiの設定ファイル(wpa_supplicant.conf)に対して、SSIDやパスワードを設定する。
> sudo sh -c 'wpa_passphrase [SSID] [PASSPHRASE] >> /etc/wpa_supplicant/wpa_supplicant.conf'
> vi wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="設定したID"
#psk="設定した生パスワード" <= 削除する
psk="暗号化されたパスワード"
}
> sudo reboot
再起動後、Wifi経由でインターネット接続できるか確認しておく。
sshサーバーの設定
ポート番号の変更と、公開鍵を有効、パスワードによるログイン不許可にする。
> sudo vi /etc/ssh/sshd_config
Port 1033
AuthorizedKeysFile %h/.ssh/authorized_keys
PasswordAuthentication no
sshログイン用の公開鍵を作成する。ファイル名、鍵を使うときのパスワード設定は任意で設定する。成功すると、カレントディレクトリに秘密鍵と公開鍵(*.pub)が作成される。
> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in witch to save the key(/home/pi/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
:
この鍵をSSH認証ファイルに追記しておく
> cat id_rsa.pub >> ~/.ssh/authorized_keys
> sudo chmod 0600 ~/.ssh/authorized_keys
秘密鍵をアクセスする外部端末に対して、渡す必要がある。今回はローカルサーバーのSambaで運用している共有フォルダ(Temp)に一時的にコピーしてみる。
ちなみに、接続先のパス(以下だと/Temp)は、フルパスではない。ネットワーク越しに参照できるパスを記述すること。
> sudo mkdir /mnt/samba
> sudo mount -t cifs //192.168.1.10/Temp /mnt/samba -o username=hoge
> cp id_rsa /mnt/samba/
コピーができたら、外部端末へ秘密鍵の設定をしてsshログインできるか確認する。あとは、リモートで作業したほうが捗るはず。