Raspberry pi zero webアプリ環境

デスクトップ版はラズパイ0ではまともに動かないからリソース無駄遣いなので、デスクトップの無い軽量版を再インストール。追加ではミニマム機能と思われるApacheとPHPをインストール。Pythonは2.7系がデフォルトでインストール済み。

軽量版(440MBぐらい)のイメージを焼き込み。以下再インストールで対応したこと。

 

・sshアクセスできない(再インストール後の最初の接続要求で)

対応方法:以前のキーを削除します。

$ ssh-keygen -R raspberrypi.local

 

・Apache2 

ドキュメントディレクトリ:/var/www/html

起動と停止:sudo service apache2 restart/stop/start

configtestでのエラー(AH00558)対処

$ sudo apache2ctl configtest

AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1. Set the ‘ServerName’ directive globally to suppress this message

これはfqdnの記述がないことが問題なので追加する

$ hostname

raspberrypi

で名前を求めて、

$ sudo vi /etc/apache2/conf-available/fqdn.conf

を作成して、

ServerName raspberrypi

を追加して以下で設定を有効化してapacheを再起動すれば良い

$ sudo a2enconf fqdn

 

<参考:apache2の設定ファイル構造>

$ ls -l /etc/apache2

total 80

-rw-r–r– 1 root root  7224 Jun 10 11:13 apache2.conf

drwxr-xr-x 2 root root  4096 Sep 13 06:23 conf-available

drwxr-xr-x 2 root root  4096 Sep 13 06:18 conf-enabled

-rw-r–r– 1 root root  1782 Aug  8  2020 envvars

-rw-r–r– 1 root root 31063 Aug  8  2020 magic

drwxr-xr-x 2 root root 12288 Sep 13 06:07 mods-available

drwxr-xr-x 2 root root  4096 Sep 13 06:07 mods-enabled

-rw-r–r– 1 root root   320 Aug  8  2020 ports.conf

drwxr-xr-x 2 root root  4096 Sep 13 05:58 sites-available

drwxr-xr-x 2 root root  4096 Sep 13 05:58 sites-enabled

 

・OSのパッケージアンインストール

$ sudo apt-get autoremove <パッケージ名>

 

・sdカード使用状況

$ df

Filesystem     1K-blocks    Used Available Use% Mounted on

/dev/root        1507280 1315944     96720  94% /

devtmpfs          187228       0    187228   0% /dev

tmpfs             220204       0    220204   0% /dev/shm

tmpfs             220204    5860    214344   3% /run

tmpfs               5120       0      5120   0% /run/lock

tmpfs             220204       0    220204   0% /sys/fs/cgroup

/dev/mmcblk0p1    258095   49814    208282  20% /boot

tmpfs              44040       0     44040   0% /run/user/1000

全体でも2GB程度しか使用していないからデスクトップ使わないと軽量。

 

・Macとのファイル共有(netatalkを使う)

$ sudo apt install netatalk

/etc/netatalk/afp.conf」 を編集して共有するフォルダを指定(当然ユーザ権限は意識して)

;[Homes]

;basedir regex = /xxxx

とコメントアウトされている部分を有効化して指定する

例えば、

 [Homes]

 basedir regex = /home

のようにして。

Macファインダー接続から、

afp://raspberrypi.local

で接続されて、IDとパスワード要求(sshユーザーログオンと同じ)されるので入力・保存すれば次回以降は簡単。ファイル転送はドラッグアンドドロップするだけです。

 

admin

Raspberry pi zeroにosインストールとremote desktop設定

遊休状態のraspberry pi zeroにosインストール。何しろメモリが512MBしかないからそれほどキビキビは動かないだろうけどIoT的な使い方ではデスクトップ不要だから問題ないでしょう。セットアップから物理的なモニターとかキーボードは接続したくない(持ってない)から全てリモートで使えるようにします。

sdカードへの書き込みツールはraspberry pi imagerを使って、おすすめのトップのデスクトップありのイメージを選択して8GBカードへ書き込み。

ただしこのままの状態だとsshが使えないから、

・sshの空ファイルとwi-fi接続情報confファイルを作ってsdカードのboot(トップ)ディレクトリに入れると良いとあったので対応。

https://qiita.com/rhene/items/828858afae699c5ac0ab

(追記:2021/9/26)

raspberry pi imagerの初期設定でもsshとwi-fiの設定機能があります。control + shift + xで以下のメニューが現れるので設定できます。

 

 

・さらにvncをインストール(upgradeは時間かかりました、多分30分以上か)

https://darmus.net/raspberry-pi-mac-vnc/

 

接続は、

vnc://192.168.x.xx:5901のような感じでデスクトップ画面をリモートで開くことができます。動きはトロトロで一応動くというレベル。

やりたいことはIoT的な使い方なので、デスクトップはあればマシぐらいの感覚でしたが、これでは要らないね。

 

admin

railsサーバーが起動しない

以下のコマンド入力で、

$ rails server -b 0.0.0.0 -p 80

 

こうやって使えのメッセージ

——————–

Usage:

  rails new APP_PATH [options]

Options:

〜〜以下省略〜〜

 

(原因)

railsコマンドはrailsプロジェクト内でしか使えないから。再起動などで例えばルートディレクトリなどに移動している場合などです。cdをrailsプロジェクトに移動して実行しましょう。

 

admin

LCDクリーナー

画面クリーナーには今までメガネクリーナー使ってましたが、使い勝手はイマイチ。アルコールなどの溶剤使ったクリーナーはLCDのコーティング膜を破壊するので、ノンアルコール性のものが必要ですが、ネットの評価でこれを買ってみた。

拭き残りも乾燥しても痕が残らず、なかなか良いと思う。

 

admin

authenticator

最近認証も二段階認証が増えてきていて、二段階認証にもいくつかアプリがあって、気づいたら増えてました。始まりはGoogleらしいですね。銀行ではガジェットとして提供するところもありますが、アプリの方が手間はかからないでしょう。アプリ自身の脆弱性はどうなのというのはありますが。

 

admin

MacBookのキーボードカバー

バタフライ方式の場合には埃に弱く、経験的にもバタフライ方式のAirは保証期間内にキーボード不調で無償修理してそのあとはキーボードカバー使ってます。

そのような経験から16インチmacは最初からキーボードカバー使ってましたが、キーボードカバーの汚れがディスプレイに転写されるので、時々LCD側をクリーニングしないといけない。最近appleは物理的な寸法に余裕無いのでキーボードカバー推奨しないというニュースもあったので、シザー方式キーボードの16インチmacはカバーなしで使ってみることにしました。Airはそのままカバー使い続けますが。

写真で見るとおり、一年ちょっと経過するとキーボードカバーもヘタってきています。あとキーボードの隙間から空気を吸い込んで冷却という機能もあるようなので、熱くなるようなプロセスを使う割合が多い場合にはカバーレスが良さそうです。そういう意味ではAirでは無縁のように思います。

 

admin

Macのスケジュール再起動

 

「ディスプレィがオフの時にコンピュータを自動でスリープさせない」にチェックを入れてなくても、概ね再起動しています。

 

[復元日時2021/08/30 7:12:33]

Last login: Mon Aug 30 07:12:21 on console

Restored session: 2021年 8月30日 月曜日 05時10分02秒 JST

理屈は不明ですが、これで困ることはない。

 

admin

 

マイクラEEを導入してみた

今年の6月から学校に限らず非営利団体でも使うことが可能になったので、以下のurl参考にしてアカウント取得してみた。

https://www.watch.impress.co.jp/kodomo_it/news/1330691.html

マイクラのアカウント取得前にはMicrosoft365 アカウント取得も必要ですが、これもなんとかクリアでめでたく使えるようになった。追加アカウントなどの管理は管理者の仕事になります。

追加アカウントを管理すると言うことは、個人情報を扱うことになるから組織のプライバシーポリシー制定しないといけない。

マイクラ複数ある版の学習側に振ったバージョンですが特徴は、

① コードビルダー(コード開発のビュー)が簡単に呼び出せる

② マルチプレイがサーバーを建てなくてもできる

③ マルチプレイの対象は同一ドメインに限定なので安全

④ 見守りのできる「クラスルームモード」がある

といったあたりでしょうか。

 

admin

Rails serverをLAN内で公開する

-bオプション無しで起動すると、

Listing on http://127.0.0.1:3000のみ有効でLAN内の他のデバイスからのアクセスは受け付けないので、-bオプションでワイルドカード指定するとLAN内からアクセスできます。

% rails server -b 0.0.0.0

=> Booting Puma

=> Rails 6.1.4.1 application starting in development 

=> Run `bin/rails server –help` for more startup options

Puma starting in single mode…

* Puma version: 5.4.0 (ruby 2.6.8-p205) (“Super Flight”)

*  Min threads: 5

*  Max threads: 5

*  Environment: development

*          PID: 31204

* Listening on http://0.0.0.0:3000

ポート番号は、config/puma.rb内のポート番号指定を変更するか、

サーバー起動時にポート番号を指定します。

rails server -b 0.0.0.0 -p 80

のように。デフォルトは Listening on http://0.0.0.0:3000で定義されているようにport 3000です。

 

admin

RailsインストールしてもRailsが見つからないと言われる

% sudo gem install rails

にも関わらず、railsがインストールできてるはずがインストールできてないと言われる。検索すると同じような悩みはあるようで、”ターミナルを再起動せよ”と。

確かに再起動したら見えるようになった、シェル設定ファイルの問題なんだろう。おそらくmac限定の事象です。以下はターミナル再起動後のrailsの場所ですが、再起動前はこの値が違っていました。

gemはrubyのパッケージ管理用のコマンドですね。

railsを起動後のブラウザからアクセス時の初期画面は以下の通り。

railsを何に使うかというと、Dojo開催時にローカルwebサーバー立てて資料の共有用です。

 

admin