Help us understand the problem. What is going on with this article?

Raspberry Pi ヘッドレスインストール~SSHとPHPインストールまで

Raspberry Pi ヘッドレスインストール~SSHとPHPインストールまで

この記事で説明すること

Raspberry Pi3 または Zeroに対応した、ディスプレイなしでのRasbianをインストールと、
その後のSSHの有効化とPHPのインストールを説明します。

最低限必要なもの

■マイクロSDカード
8GB以上のマイクロSDカード(理想的にはTOSHIBA製、できれば16GB以上の方が後々余裕がある)
Raspberry Piで使用するマイクロSDカードには相性問題があるので、過去に使えたという報告があるものはこちらで一覧できます。

■給電用のマイクロUSB充電器

Noobsをダウンロードする

今回は操作が簡単なビギナー向けOSインストーラーのNoobsをインストールします。
まず以下よりダウンロードしてください。

NOOBS

今回は左側のDownload ZIPをクリックしてダウンロードします。
その後ダウンロードして展開したら、その内容物をマイクロSDカードへとコピペします。
WS000001.JPG

単純にコピペすればOKです。

VNCの設定をする

今回はディスプレイなしでインストールしますので、その準備作業をします。
あらかじめWifiアクセスポイントで利用するSSIDとパスワードを控えておいてください。

VNCの有効化

WS000002.JPG

SDカードのルートディレクトリに、recovery.cmdlineというファイルがあると思います。
それをエディタなどで開き、中身を以下のように変更します。

変更前

runinstaller quiet ramdisk_size=32768 root=/dev/ram0 init=/init vt.cur_default=1 elevator=deadline

変更後

runinstaller vncinstall ramdisk_size=32768 root=/dev/ram0 init=/init vt.cur_default=1 elevator=deadline

WS000003.JPG

以上にようにすればOKです。

wpa_supplicant.confを作る

以下のサイトでSSIDとパスフレーズをハッシュ化します。
wpa_supplicant.conf作成

パスフレーズの入力は不安でしょうが、すべてブラウザ側で処理されるのでパスフレーズが漏れることはありません。
一度「名前をつけて保存」して、ダウンロードしてからローカルで実行しても大丈夫です。

WS000004.JPG

SSIDとパスフレーズを入力して、一度「追加」を押してから、「wpa_supplicant.conf作成」を押してダウンロードします。

ダウンロードしたら、そのファイルをSDカードのルートディレクトリにコピーします。

SSHを有効にする

SDカードのディレクトリから、os¥Raspbian_Full¥partition_setup.shをエディタで開きます。
ファイルの終端のほど近くの場所に以下のように付け加えてください。

echo "ssh" >/tmp/1/ssh

umount /tmp/1
umount /tmp/2

保存して、閉じてください。

VNCをダウンロード

今回はVNC Viewerを使用しました。
https://www.realvnc.com/en/connect/download/viewer/

Windowsでも使えますし、Macならそのアイコンをクリックしてもらえればダウンロードに進むことができます。

ダウンロードしたらインストールしますが、インストール自体はシンプルに進めていけばいいだけです。

Raspberry Piを起動しVNCを実行する

まずSDカードをセットしてください。その後にマイクロUSBケーブルを接続します。
これでRaspberry Piは起動しました。

IPアドレスを知る

VNCでアクセスするため、まずIPアドレスを調べます。
Macは(自分は未確認ですが)ターミナルからssh pi@raspberrypi.localと打てばSSHで繋がるようです。パスワードを求められたらraspberryと入力してください。
ip addrと入力し、二つあるinetのうち下側のinetの右隣のIPアドレス(192.168.xx.xx)がRaspberry PiのIPアドレスです。

Windowsの場合はコマンドプロンプトからarp -aと入力すると、DHCPの払い出し状況を確認できます。
その中からb8-27-ebで始まる物理アドレスがあると思うので、それを使用します。

 192.168.1.214         b8-27-eb-xx-xx-xx     動的

IPアドレスが分かったら、PC側からVNC Viewrを開き、アドレスバーにIPアドレスとポート番号5900をあわせて記述すればアクセスできます。
例えば自分の場合は192.168.1.214:5900とアドレスバーに入力してアクセスできました。

WS000006.JPG

画面のようにアクセスできれば、あとは指示に従ってインストールすればOKです。
下の方にある言語のプルダウンから日本語に設定し、
Rasbianのチェックボックスにチェックを入れてから、左上のインストールをクリックしてください。
これでRasbianのインストールが始まります。

その後は?

VNC自体はNoobsに適用されたものなので、OSであるRasbianの設定ではありません。
Rasbianがインストールされた後はRasbian側に改めてVNCの設定をする必要があります。

ただすでにSSHは有効化されているので、PuttyやTeraTermなどでIPを指定しSSHアクセスすることができます。
なお初期設定のアカウント名はpi、パスワードはraspberryです。

パスワードはpasswdコマンドで変更できるので、必ず変更しておいてください

passwd
Changing password for pi.

SSHの設定

もしもヘッドレスインストールを実施した場合はすでにSSHが有効化されていますが、
SSHをあらためて設定する場合はメニューバー左端のラズベリーアイコンをクリックします。
プルダウンメニューから [設定]-[Raspberry Piの設定]をクリックします。

WS000007.JPG

WS000008.JPG

SSHとVNCを有効化すればOKです。

PHPのインストール

aptでPHP7.2をインストールします。

https://packages.sury.org/php/ のリポジトリ追加

以下のコマンドを実行してください。

sudo apt-get -y install apt-transport-https lsb-release ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'

続いてaptの更新をします。

sudo apt update
sudo apt upgrade

PHP7とその関連物をインストールします。

sudo apt install php7.2 php7.2-common php7.2-cli php7.2-fpm php7.2-mbstring php7.2-sqlite3 php7.2-sqlite php7.2-json php7.2-xml php7.2-curl

最後に、ちゃんとインストールされたか確認します。

php -v

PHPのバージョン情報が出てくれば正常にインストールされています。

終わりに

やや散漫とした説明ですが、ヘッドレスインストールの方法とPHPのインストールまで備忘録的まとめました。
お役に立てれば光栄です。

参考

ヘッドレスインストールの参考にさせていただきました。
Raspberry Pi Zero Wにヘッドレスインストールする

Raspberry Piの無線LANをmicroSDで簡単に設定するためのツールを作った

Raspberry Pi ヘッドレス・インストールについて
RaspberryPi Raspbian ヘッドレスインストール

PHPのインストールについて参考にさせてもらいました。
Raspberry Pi 3BにPHP7.2とnode.jsとcloud9をインストール

ラズパイに PHP 7.2をラズパイ公式リポジトリからサクッと apt-getでインストールする方法

IMdev
主にIoT関連、Web系のエンジニア。JavaScript、Vueなど。 最近はTypeScriptに興味があります。 Mind Sphere/IoT/Raspberry Pi/PHP/Python/IoT
ferix
R&Dを中心に主に受託開発でソフトウェアを開発するエンジニア集団
https://www.ferix.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした