入力機器がないときに気合でGUI環境をセットアップする方法

# 概要

ラズパイ本体と電源しかない人や、ディスプレイやマウス、キーボードを接続するのが面倒な人向けに気合でGUIが使えるようにセットアップする方法です

## 最低限必要なもの

- ラズパイ本体
- ラズパイの電源
- SDカード
- SDカードリーダー
- 有線LANをさせるPC(アダプタでも可)
- LANケーブル

の6点があればなんとかなります

# やり方

## Step1 OS書き込み

OSをSDカードに書き込みを行う

RaspberryPiImagerを[ダウンロード](https://www.raspberrypi.com/software/)をし起動、OSとSDカードを選択

選択したら右下の歯車ボタンから設定を開く

![Untitled.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/a78736c1-bd43-8cec-c04a-56bdee96af89.png)
そしたら詳細な設定という画面が出で来るので、ホスト名、SSHを有効化、ユーザー名とパスワードを設定するの項目を設定していく

ホスト名は好きなもので構わないが今回はraspberrypiとして設定する
SSHはパスワード認証を使う
ユーザ名とパスワードは好きなものを設定する

![Untitled 1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/2760697f-1c0e-8521-8947-a6545575f5f9.png)
できたら、保存をして書き込む

## Step2 PCと接続

SDカードをラズパイに差し込んだら、PCとLANケーブルでつなぐ

電源を入れ、起動するまで待ったうえ、windowsのターミナルを立ち上げる

そしたらコマンドでSSHというツールを使ってラズベリーパイに接続を行う

```bash
ssh [設定したユーザー名]@[設定したホスト名]
```

するとパスワード入力を求められるので先ほど入力したパスワードを入力(パスワード入力前にフィンガープリントが表示された場合は `yes`と入力)
![Untitled 2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/d447b9f5-98de-c6ac-f167-1ad43d6d3e90.png)

こんな画面が表示されたらラズベリーパイに接続できている

## Step3 VNCサーバーセットアップ

ここはRDPツールであればなんでもいいのだが、今回は標準搭載されているVNCを利用する

先ほど接続したターミナルから

```bash
sudo raspi-config
```

を実行する

するとこのような画面になると思うので矢印キーとエンターで3番のInterface Optionを選択

![Untitled 3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/de1d7a67-63b6-4e16-07f1-d0d8f2aea4f9.png)

3番のVNCを選択
![Untitled 4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/67fe446f-78f5-dcae-1870-7074ad66b0a3.png)

Yesで有効化
![Untitled 5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/13077a9e-2808-d1a8-4d76-986e05b6c326.png)

この画面が出たら成功
![Untitled 6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/e9743328-4484-324a-fab7-50fd09a5ef22.png)


OKを押したうえでESCキーで戻る

これでラズベリーパイ側のセットアップは完了

## Step4 VNCクライアントのセットアップ

VNCクライアントをPCにダウンロードしインストールする

クライアントは複数の種類があるがどれを使っても問題ないのだが

今回は公式のクライアントを利用する

https://www.realvnc.com/en/connect/download/viewer/

インストールはすべてデフォルト設定のままで問題ない

起動するとアカウント作成を求められるが作らなくても利用はできるので今回はskipする

`File>New connection`で接続プロファイルを作成する
![Untitled 7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/52d2799b-2d60-3730-ca1e-cd55d65bd879.png)

VNC Serverには書き込み時のホスト名

Nameは自分が分かるものを設定する
![Untitled 8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/c23a1051-9ab6-0014-bd1d-d81a0a4d8390.png)

OKを押してできたプロファイルをダブルクリック

最初に接続する場合は同意を求められるので、Continueで接続
![Untitled 9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/35045a82-c48d-4e21-e082-215b21d50a5a.png)


UsernameとPasswordを求められるので書き込み時に設定したものを入力
![Untitled 10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/a9c80261-5392-1bc3-888a-58cee6752fa1.png)


接続出来たら成功
![Untitled 11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/c3009112-c741-854d-74e8-d7fc0ce9e759.png)


## Step4.1 VNC接続がラグかったり、見切れている人へ

先ほど接続したsshを利用して設定を変更していく

標準搭載されているエディタを使って設定ファイルを編集する

エディタは何でもいいのだがここではvimを使い編集する

**エディタは何でもいいです**(宗教戦争回避)

```bash
sudo vi /boot/config.txt
```

ファイルを開き下のような画面になったら
![Untitled 12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/1395ff55-02c4-576d-3554-129ad62f8804.png)


```shell
:set nocompatible
```

を入力することで矢印キーで移動できるようになる

そしたら`max_framebuffers=2`をコメントアウト(コマンドは以下)

```
/max_framebuffers   (max_framebuffersを検索)
i                   (インサートモードに変更)
#max_framebuffers=2 (コメントアウト)
[ESC]               (エスケープキーを押してノーマルモードに変更)
:wq                 (上書きして終了)
```

できたら

```bash
sudo shutdown -r now
```

で再起動

これでサクサク快適に動くようになる


## Step5 設定言語の変更

SSHで接続しため、すべての設定がデフォルトのままとなっているので日本語に直していく

VNCからGUIで操作する

左上のロゴから`Preference>RaspberryPiConfiguration`
![Untitled 13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/b0f54360-53d8-fdcc-7881-81f254f65568.png)


Localisationからすべての設定を変更していく
![Untitled 14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/500dcd91-4f25-d4ce-7145-a78c025c298f.png)


### Locale
Language: JP
Character Set: UTF-8
![Untitled 15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/a9c7cf07-9dc3-82ac-3b79-983e2f07f097.png)


### Timezone

Area: Asia
Location: Tokyo
![Untitled 16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/b3dcc67a-c4bf-a9b7-09f9-5a020357f102.png)


### KeyBoard

使っているものを選択してほしい

(筆者はこれ)
![Untitled 17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/bf7043c0-a7a3-89db-5c38-3d3a3334feba.png)


### WirelessLAN

Country: JP
![Untitled 18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/06d6a672-4a7c-0f83-ac3f-119853de73da.png)

これですべての設定ができたので再起動する

## Step 6 インターネットにつなぐ

有線LANはPCと接続しているので無線でつなぐ

右上の矢印のマークからつなぐことができる
![Untitleaaaaad.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/a779ebe2-94ed-91b3-91eb-73faf765da9f.png)

これですべてのセットアップが完了した

# 入力機器がある場合のセットアップ

ラズベリーパイをキーボードとマウスで操作できる場合は非常に簡単にセットアップできる

`ロゴマーク>設定>Raspberry PIの設定>インターフェース>VNC` を有効化する
![Untitled 20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/3effa83b-9834-ab4a-19fe-5ce1abc43c85.png)

そうすると右上にマークが出るのでクリックするとIPアドレスが表示されるのでこれをVNCに入力する
![Untitled 21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1760850/055d6f14-56d9-fec1-d3a7-cff870d11ed7.png)


これで終了

セットアップ時にホスト名を入力していればそれでも接続できるはず(未検証)

# おわりに
**だいたい気合で何とかなる**