headAD

ラベル Raspberrypi の投稿を表示しています。 すべての投稿を表示
ラベル Raspberrypi の投稿を表示しています。 すべての投稿を表示

2021/08/07

Raspberry Pi OS(64bit) HDMIモニタが無いと起動しない

 


 Raspberry Pi OS (64bit beta test5/27版)をRaspi3Bに、インストール直後からHDMIモニタをつながずにSSH接続し運用しています。

最近(2021/8/5)のapt updateしたところ、HDMIモニタをつながないと起動してくれなくなりました。
HDMIをつないで起動した場合、ローカルモニタでは起動状態を確認出来てSSHでもつながりますが、HDMIをつながずに電源投入するとpingすら通りません。

 アップデートされたライブラリは次の通り

Upgrade:
libkrb5-3:arm64 (1.17-3+deb10u1, 1.17-3+deb10u2),
libraspberrypi-bin:arm64 (2+git20201022~151804+e432bc3-1, 2+git20210719~113532+97bc818-1),
libgssapi-krb5-2:arm64 (1.17-3+deb10u1, 1.17-3+deb10u2),
libraspberrypi-dev:arm64 (2+git20201022~151804+e432bc3-1, 2+git20210719~113532+97bc818-1),
libraspberrypi-doc:arm64 (2+git20200813~095940+f73fca0-1, 2+git20210719~113532+97bc818-1),
linux-libc-dev:arm64 (1:1.20210527-1, 1:1.20210805-1),
libsystemd0:arm64 (241-7~deb10u7, 241-7~deb10u8),
libk5crypto3:arm64 (1.17-3+deb10u1, 1.17-3+deb10u2),
udev:arm64 (241-7~deb10u7, 241-7~deb10u8),
libudev1:arm64 (241-7~deb10u7, 241-7~deb10u8),
raspberrypi-kernel:arm64 (1:1.20210527-1, 1:1.20210805-1),
raspberrypi-bootloader:arm64 (1:1.20210527-1, 1:1.20210805-1),
libkrb5support0:arm64 (1.17-3+deb10u1, 1.17-3+deb10u2),
systemd-sysv:arm64 (241-7~deb10u7, 241-7~deb10u8),
libpam-systemd:arm64 (241-7~deb10u7, 241-7~deb10u8),
systemd:arm64 (241-7~deb10u7, 241-7~deb10u8),
libraspberrypi0:arm64 (2+git20201022~151804+e432bc3-1, 2+git20210719~113532+97bc818-1)

 

 バックアップから直近に戻してみると、HDMIモニタなしでも起動するので、今回のupdateによるものと思われます。
ググってもズバリがないので、config.txtのHDMI関係を当たってみました。

SDメモリのconfig.txtを変更して、再起動します。
結果的に、hdmi_force_hotplugを生かすことで上手く行きました。

 
hdmi_force_hotplug=1   行頭の#コメントを外す

 

 このフラグは、HDMIモニタが接続されていない時の画面がコンポジットになりVNC経由での操作時などに設定変更することが多く記載されていますが、今回の事例のようにSSH接続時にもコメントを外す必要がありそうです。


 

 

2021/01/11

Raspberry Pi をnut-Clientとして追加する

 増設したRsapberry Pi に UPSのnut-client として追加します。

停電時のバックアップ電源としてUPSを使い、Raspberry piでUPSの稼働状況をモニタリングしながらバッテリー残量が残り少なくなると、自動的にシャットダウンコマンドを発して安全に電源を落とすようにしています。
こちらの Raspberry Pi にNUTをセットアップする に記載しています。

 



今回、Pi を増設するにあたり、以前の設定内容変更と nut-Client を追加します。

[サーバー側の変更]

/etc/nut/upsd.conf の中に NUTサーバー自身のIPアドレスを LISTEN に追加記載します。(下のIPアドレスは一例)

LISTEN 127.0.0.1 3493
LISTEN 192.168.1.201 3493


/etc/nut/upsd.users のアカウントへ upsmon_remote を追加します。

[admin]
        password = admin123
        actions = SET
        instcmds = ALL
[upsmon_local]
        password  = local123
        upsmon master
[upsmon_remote]
password = local123 upsmon slave


/etc/nut/nut.conf のサーバーの動作 MODE を standalone から netserver へ変更します。

MODE = netserver



[増設したPi側]

次に増設したPi側にnut-Clientをインストールします。
nut-client 本体と付随するlibがインストールされます。インストール途中でエラーが出ますが設定ファイルが未設定のためです。そのまま次へ進みます。

sudo apt update
sudo apt install nut-client



/etc/nut/nut.conf の MODE を netclient にします。

MODE = netclient


/etc/nut/upsmon.conf の MONITOR を 下のように記述します。
IPアドレスはNUTサーバーのアドレス。local123はアカウントに記述したパスワード。

MONITOR cyberpower1@192.168.1.201 1 upsmon_remote local123 slave


Raspberry Pi を再起動して nut-client のステータスを確認し active ならokです。

service nut-client status
● nut-monitor.service - Network UPS Tools -
  Active: active (running)


upscコマンドでサーバーとの通信テストにてUPSデータが確認できればokです。

upsc cyberpower1@192.168.1.201

Init SSL without certificate database
battery.charge: 100
battery.charge.low: 10
battery.charge.warning: 20
battery.mfr.date: CPS
battery.runtime: 8400
battery.runtime.low: 300
battery.type: PbAcid
battery.voltage: 13.7
battery.voltage.nominal: 12
device.mfr: CPS
device.model: CPJ500
=以下省略=

2019/08/16

Node.js + Canvas でテキスト画像が文字化け




数年前から Node.js と Canvas の組み合わせで、テキストを png 画像化させていた。 
Raspberry pi2 を一年ほど前に Debian Stretch へバージョンアップした。


こんな環境で、最近になって全角文字が文字化け、いわゆる豆腐になっているのに気づきました。
Raspberry pi はリモートでつないでいて、ちゃんと日本語も使って編集もしているので、全く気づきませんでした。


update の問題かといろいろとコードを見たりして焦りましたが・・・・
いや、待てよ・・・

Stretch Light は日本語フォントが入ってなかった。(^^;

そこで、google のオープンソースの noto-fonts を入れてみました。
noto とは no more Tofu でフォントが割り当てられてないと□の表示となるので、よく豆腐と呼ばれ、すべての言語から□をなくすプロジェクトです。詳しくはWikiを見てください。

ということで、日本語部分cjk をインストール。
sudo apt-get install fonts-noto-cjk


特に、何をするでもなく、これで終わり。
時々は、直接モニタをつないでみるべきなんですね。


.end

2019/05/29

Raspbian Stretch - Certbot 証明書の自動更新


https://certbot.eff.org/


さて、前回までに certbot をインストールしましたが、それと同時に自動更新の仕組みもセットされています。

Let's Encrypt 証明書を入手するために、certbot-auto を使うなど初期の頃は cron.d にセッティングしたり、面倒なんで3ヶ月置きに renew していましたが、これも必要ありません。
(2016年後半にはかなり進化したようですが、Raspbianには降りて来てなかったのかなぁ)

Raspbian(Debian) Stretch へ certbot をインストールすると systemd 配下へ certbot.timerが組み込まれ、これにより定期的に renew が行われます。

/lib/systemd/system/certbot.timer
[Unit]
Description=Run certbot twice daily

[Timer]
OnCalendar=*-*-* 00,12:00:00
RandomizedDelaySec=43200
Persistent=true

[Install]
WantedBy=timers.target

/lib/systemd/system/certbot.service
[Service]
Type=oneshot
ExecStart=/usr/bin/certbot -q renew
PrivateTmp=true

毎日2回、0時と12時を基準に、43200秒(12時間)以内のランダムな時刻に certbot renew を実行するようです。
一日2回は多いのかと思いましたが、certbot の推奨です。

renew は証明書の期限30日前になると更新されるようです。

ログを見ると、朝・晩と renew でチェックされていますが、今後どのタイミングで更新されるか楽しみです。



*****
(2019-07-20追記)
証明書期限のちょうど30日前で、証明書の更新が行われました。正しく実行できているようです。


.end

2019/05/20

Raspbian Stretch - Certbot 更新ができない(2)

(2019-5-28に記事の追加と修正を行いました)

https://certbot.eff.org/


本家 certbot ページにこんなことが書いてありましたと、前回の記事の最後に書きました・・・
システムが Debian Stretch なら、certbot をバックポートリポリトジを有効にしてインストールしなさい。
そう、証明書更新は certbot-auto を以前からずっと使っていて、前回までなにも問題なかったのに・・・。
certbot-auto ではダメらしいです。

Debian8(Jessie) の時点で Let's Encrypt から証明書を入手するのに certbot-auto を使ってきた名残で Debian9(stretch) になっても、certbot-auto をそのまま引きずっていたんですね。
では、certbot をインストールしてみます。

>バックポートリポリトジを有効にする

Raspberry Pi では少し面倒です。key が必要となるので順にコマンドを与えます。
手入力だと間違えやすいので、一行ごとにコマンドラインへコピペしてください。

sudo apt install dirmngr
gpg --keyserver pgpkeys.mit.edu --recv-key  8B48AD6246925553
gpg -a --export 8B48AD6246925553 | sudo apt-key add -
gpg --keyserver pgpkeys.mit.edu --recv-key  7638D0442B90D010
gpg -a --export 7638D0442B90D010 | sudo apt-key add -



次に /etc/apt/sources.list ファイルへ、次の一行をエディターで追加します。
deb http://deb.debian.org/debian stretch-backports main contrib non-free

この後、 sudo apt update を行ってください。
これで、バックポートリポリドジが有効となりました。


>certbot をインストールする

この後は、certbot インストールの手順を行えばokです。
ここでは、Apacheのプラグインを使用するオプションを付加します。
sudo apt-get install certbot python-certbot-apache -t stretch-backports

certonly で Apacheサーバー設定はせず証明書のみを取得します。
sudo certbot --apache certonly

--dry-run オプションを付けて、更新テストを行います。
sudo certbot renew --dry-run

成功すれば、次のようなメッセージとなります。

** DRY RUN: simulating 'certbot renew' close to cert expiry
**          (The test certificates below have not been saved.)

Congratulations, all renewals succeeded. The following certs have been renewed:
   /etc/letsencrypt/live/***.***.***/fullchain.pem (success)
** DRY RUN: simulating 'certbot renew' close to cert expiry
**          (The test certificates above have not been saved.)



次回は、自動更新の箇所に触れてみます。

.end

2019/05/19

Raspbian Stretch - Certbot 更新ができない

https://letsencrypt.org/




 ラズベリーパイによる Web サーバーを運用中で、https 対応のサーバー証明書は Let's Encrypt から取得しています。

Let's Encrypt の証明書は3ヶ月の有効期限しかなく、期限前に更新する必要があるので点検も兼ねて更新しようとすると、エラーを吐いて更新が完了しなくなっていました。

前回(2019/3)の更新も含めてこれまて何の問題も発生していません。このままでは来月には期限来てしまうので、早めの対処をすることにしました。


https://certbot.eff.org/



条件は次の通り
・Raspbian Stretch (RaspberryPi  Debian9 )
・Apatch2.4 Webサーバー
・Let'S Encrypt の certbot-auto で証明書更新

これを見て、「はは~ん」と思った方は経験済みなんですね。対策はご想像の通りですが順を追って説明します。



エラーの発生状況
いつものように dry-run オプション付きで確認
./certbot-auto renew --dry-run

そうすると
Creating virtual environment...
Installing Python packages...
Had a problem while installing Python packages. <-- Pythonで問題が

pip prints the following errors:
========================================
Collecting ConfigArgParse==0.14.0 (from -r /…..
   Downloading https://files.pythonhosted.org/….
Collecting asn1crypto==0.24.0 (from -r /….
   Downloading https://files.pythonhosted.org/…

これが、ずっと続く…

Python パッケージのバージョンが満たされておらず pip がエラーとして表示しているようです。
ググると、こんな裏技がありました。
/etc/pip.conf
このファイルを削除すれば ok だよ~。
いやいや、削除はダメでしょ。リネームしましょ。今回限りということで。
実際にやってみると、上手くいきました。

ハイ、これで終了。じゃなかった。

他にググると、本家 Let's Encrypt にこんなことが書いてありました。
システムが Debian Stretch なら、certbot をバックポートリポリトジを有効にしてインストールしなさい。
そう、証明書更新は certbot-auto を以前からずっと使っていて、前回までなにも問題なかったのに・・・。



certbot-auto ではなくて certbot をインストールすべきです。  
では、次回これを行ってみます。


.end

2018/06/24

Raspberry Pi2 Node.jsからMongoDBへアクセスできなくなった

51AmnWwg0PL._SL160_openlogo-100


Raspberry Pi2 のOSを Debian jessie から stretch へアップデートしたところ、 jessie の環境で Node, MongoDB が動いていたが、アップデートしてから Node からMongo へアクセスするとエラーを吐いてきました。


MongoDB のバージョンが古い。 2.6以上が必要と!!!!

たしかに、こちらの環境は、Nodeのバージョンは 5.6、 MongoDBは 2.4.10

Mongoの方は、Raspberry pi で公式に入手できるのはこのバージョンしかない(古すぎるけど)

最初は、MongoDB のバージョンを上げることを考え、ネット上を徘徊したがメジャーバージョンアップだとデータの持ち方も変わるなど、リスクが伴いそうな気がします。

Node, MogoDB それぞれ単独では動作するので、Node の MongoDB ドライバーに問題がありそうだということが解ってきました。

ここまで、半日かかった~~。

そこで、Nodeのドライバーを管理している npm のパッケージインストール状況を確認してみると。
(これより以下を一部加筆修正しました。2019-06-22)


$npm list
mongoose@5.1.6   <-- ここ


mogoose のバージョンが stretch のアップデートに引っ張られて 5.1.6 が入っているのが原因のようです。

MongoDB Server Version Compatibility では

  • MongoDB Server 2.4.x: mongoose ^3.8 or 4.x
  • MongoDB Server 2.6.x: mongoose ^3.8.8 or 4.x
  • MongoDB Server 3.0.x: mongoose ^3.8.22, 4.x, or 5.x
  • MongoDB2.4 では、mongoose は 4.x でした。



    ここまでくれば、ドライバーバージョンを下げてやればいい。

    package.json ファイルの mongoose を元に戻し、頭に^キャロットを付けメジャーバージョンが一致するものに固定します。

    "dependencies": {
      "mongoose": "^4.4.17",

    再度、 $npm install として npm を更新してみると。
    $npm install
    mongoose@4.13.41

    これで、Node がエラーを吐かなくなりました。

    本来は、MongoDB のバージョンを 3 に上げたいが、色々と制約がありそうなので、今後の課題とします。


    .end

    2018/04/04

    Raspberry Pi UPSをWebでモニタリングする

    前回の記事で、Raspberry Pi(ラズパイ)へUPSをモニタするNUTをインストールしました。
    今回は、Webモニタリングの設定をして、ローカル(UPSへ接続しているラズパイ)以外のPCからモニタ出来るようにします。
    ただし、このラズパイは既に apache2.4 Webサーバーとして機能している前提で、ここではNUTに関する設定箇所を示します。

    [nut cgi のインストール]
    sudo apt-get update
    sudo apt-get install nut-cgi

    /etc/nut/hosts.conf へ MONITOR を記述します。
    cyberups は ups.conf に設定した名前、"Local UPS"は UPS を指す適当な名前です。

    MONITOR cyberups@localhost "Local UPS"

    cgi 関連ファイルのパーミッションを設定します。

    sudo chmod 644 /etc/nut/hosts.conf
    sudo chmod 644 /etc/nut/*.html
    sudo chmod 644 /usr/share/nut/www/*.*
    sudo chmod 755 /usr/lib/cgi-bin/nut/*.cgi



    /nut へのアクセスを限定的にしたければ、 /usr/share/nut/www/ に下の内容を記述した .htaccess ファイルを一緒に入れます。
    order deny,allow
    deny from all

    allow from 192.168.1.0/24

    apache のドキュメントルートを記述している hoge-ssl.conf に /nut として alias を設定します。
    /etc/apache2/sites-available/hoge-ssl.conf

    Alias /nut /usr/share/nut/www
    <Directory /usr/share/nut/www/>
         SSLOptions +StdEnvVars
         Options FollowSymLinks
         AllowOverride all
         Require all granted
    </Directory>

    同様に cgi ルートも 本来の cgi-bin と区別するために /cgi-nut として alias を設定します。
    これは、モニタ出来るipをローカル内(192.168.1.*)に制限するため、以下を書き加えます。
    /etc/apache2/conf-available/hoge-cgi-bin.conf

    ~
    ScriptAlias /cgi-nut/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
         AllowOverride None
         Options +ExecCGI
         Require ip 192.168.1
    </Directory>
    ~


    こちらの "###I_HAVE---" の行頭のコメントを外します。
    /etc/nut/upsset.conf

    ###
    I_HAVE_SECURED_MY_CGI_DIRECTORY
    ###

     

    こちらの該当する箇所も /cgi-nut へ変更
     /usr/share/nut/www/header.html

    26 <a href=/cgi-nut/nut/upsstats.cgi target= ~
    30 <a href=/cgi-nut/nut/upsset.cgi target= ~


    apache の設定ファイルを再読み込みします。

    sudo apachectl reload


    https://[あなたのドメインもしくはipアドレス]/nut とすることでアクセスできるようになります。
    web-1
    web-11a
    web-12a
    ここで、気づきましたが、Battery Voltage が9.1Vを示していますが、本体バッテリーは12Vタイプで正常ですから、なにかしらUPSからのデータ取得に問題があるのかもしれません。
    UPS本体の動作は正常なので、原因が判るまではこのままにしておきます。


    raspi の Debian os を jessie から stretch へアップデートしたところ、一緒にnut 関連もバージョンが上がり 2.7.4 になりました。
    (※ jessieからstretchへアップデートすると /usr/share/nut/www/header.html が書き換わるので再書き換えする)

    Battery Voltage も13.7Vと正常表示となりました。 (2018-06-23 画像と文章update)


    以下を追加しました。(2021-1-11)

    raspberry piを増設した場合の設定記事

    end

    2018/03/22

    Raspberry PiへNUTインストールの補足

    前回、NUTのインストールと設定を記事にしましたが、少し補足しておきます。


    CyberPower製UPSの国内向け CPJ500 を購入したわけですが、接続するとコンパチブルの CP1500AVR と認識され usbhid-ups と標準のドライバーがセットアップされました。


    Debian jessie のためか NUTインストールバージョンは2.7.2(2014/4 リリース)でした。
    Debianの最新版stretchなら2.7.4(2016/5 リリース)がインストールされたかもしれません。(この時点で試していません)


    この古いバージョンが不具合に影響しているかもしれません。今後確かめてみることにしますが、現状でも対策は可能です。


    **********
    当初、設定例を元に標準状態でセットアップ後、半日ほど様子見ると upsc コマンドによるupsデータが見えなくなっています。
    /ver/log/sys.log を見ると、 data stale がいっぱい溢れていました。

    Poll UPS [cyberups@localhost] failed - Data stale


    CyberPower 製UPSとの組み合わせで同様な事例が散見され、私の場合は’data stale’でしたが、他に ‘Driver not connected’ などがログで見られるようです。
    これらの対策として、試行錯誤の例が幾つかありましたが、次の3点を織り込むことで正常に稼働しています。

    この対策は、前回の設定の中に記載しているので、改めて設定する必要はありません。



    /etc/nut/ups.conf
            pollinterval = 15
    /etc/nut/upsd.conf
            MAXAGE = 25
    /etc/nut/upsmon.conf 
            DEADTIME = 25

    これでもダメなら、syslog を監視して ‘data stale’ があったら、 service を再起動するスクリプトも用意しましたが、今は必要ないようです。

    次回は、WebでUPSをモニタ出来るようにします。

    end

    2018/03/17

    Raspberry Pi にNUTをセットアップする

    前回、UPSを取付けて停電時の電源バックアップを行う記事を書きました。

    今回は、UPSのモニターを行うNUT(Network UPS Tools)をセットアップする記事です。
    Web上で電源の状態を確認できるほか、UPSのバッテリーが不足(電源喪失)した時にはシャットダウンコマンドを発行します。


    cpj500-raspi

    [環境]
     Raspberry Pi 2B(ラズパイ)、OSはRaspbian jessieです。以下設定の内容はjessie版での記述で、他のディストリビューションやバージョンでは設定が異なる場合があるので注意してください。

    ラズパイは、Webサーバーとして稼働中でルーターと接続している以外のモニタ類は接続していません。通常は別のPCからリモートでモニタリングしているのでUPSもNUTインストールしてモニタリングしようというわけです。


    [ドライバーセットアップ]
     UPSとラズパイをUSBケーブルで接続し、lsusbコマンドで確認します。
    CP1500AVR UPSとして認識されています。

    Bus 001 Device 004: ID 0764:0501 Cyber Power System, Inc. CP1500 AVR UPS

    次に、NUTをインストールし、その後で一連のファイルを設定します。
    sudo apt-get update
    sudo apt-get install nut nut-client nut-server

    ここでは、NUTのドライバーテータベースから CP1500PFCLCD が標準で設定されるので続けます。
    /etc/nut/ups.conf の最終行に追加します。cyberups の名前は好きに変えてください。
    desc はups機器の説明を書きます。 (2018-3-24修正)

    [cyberups]
            driver = usbhid-ups
            port = auto
            desc = "CyberPower CPJ500"
            pollinterval = 15

    次に、ドライバサービスをスタートします。その後、ステータスを確認し active や Startup 出来ているかを見ます。
    sudo systemctl start nut-driver
    sudo systemctl status nut-driver
    ● nut-driver.service - Network UPS Tools - power device driver controller
        Loaded: loaded (/lib/systemd/system/nut-driver.service; static)
        Active: active (running) since 木 2018-03-15 07:40:59 JST; 14h ago

     ・・・省略・・・
      3月 15 07:40:57 raspi1 upsdrvctl[9641]: Using subdriver: CyberPower HID 0.3
      3月 15 07:40:57 raspi1 upsdrvctl[9641]: Network UPS Tools - Generic HID driver 0.38 (2.7.2)
      3月 15 07:40:57 raspi1 upsdrvctl[9641]: USB communication driver 0.32
      3月 15 07:40:59 raspi1 usbhid-ups[9643]: Startup successful
      3月 15 07:40:59 raspi1 upsdrvctl[9641]: Network UPS Tools - UPS driver controller 2.7.2
      3月 15 07:40:59 raspi1 systemd[1]: Started Network UPS Tools - power device driver controller.

    [サーバーセットアップ]

    まず、 /etc/nut/upsd.conf の中で localhost の LISTEN が # でコメントアウトされているので、# を取り除きます。ポートの3493のそのままです。
    LISTEN 127.0.0.1 3493

    同じファイルの中で MAXAGE を変更します。
    MAXAGE = 25


    次に、アカウントを設定します。 /etc/nut/upsd.users の最下行に下の内容を追記します。
    ここでは、adminとmasterのユーザーを設定しています。

    [admin]
            password = admin123
            actions = SET
            instcmds = ALL
    [upsmon_local]
            password  = local123
            upsmon master


    次に、サーバーの動作モードを設定します。UPSでバックアップされるPCは1台なので standalone を /etc/nut/nut.conf にセットします。
    MODE=standalone

    サーバーサービスをスタートし、そしてステータスを確認します。
    sudo systemctl start nut-server
    sudo systemctl status nut-server

    では localhost から接続できるかテストしてみましょう。 cyberups とはドライバーセットアップで設定した名前です。
    sudo upsc cyberups@localhost
    Init SSL without certificate database
    battery.charge: 100
    battery.charge.low: 10
    battery.charge.warning: 20
    battery.mfr.date: CPS
    battery.runtime: 10200
    battery.runtime.low: 300
    battery.type: PbAcid
    battery.voltage: 9.1
    battery.voltage.nominal: 12
    device.mfr: CPS
    device.model: CPJ500
    device.type: ups
    driver.name: usbhid-ups
    ・・・省略・・・
    UPSからの情報がちゃんと取れていて、device.model: CPJ500 と製品が認識されています。

    [クライアントセットアップ]
    システムをモニタする mastert ユーザーを /etc/nut/upsmon.conf へ追加します。
    MONITOR cyberups@localhost 1 upsmon_local local123 master
    同じファイルの中で DEADTIME を変更します。
    DEADTIME = 25

    idやパスワードを記録しているので、他から見られないようにパーミッションを設定します。
    sudo chown root:nut /etc/nut/*
    sudo chmod 640 /etc/nut/*

    クライアントをスタートして、ステータスを確認します。
    sudo systemctl start nut-monitor
    sudo systemctl status nut-monitor

    もう一度、localhost から情報が取れるかテストします。
    sudo upsc cyberups@localhost


    以上で、NUTシステムが構成されました。
    このままでもいいのですが、次はWebでモニタリングする設定をしてみます。
    長くなったので次の記事にします。

    次の記事は予定変更して、この記事の補足を書きました。



    (参考にした記事)
    Network UPS Tools
    Raspberry Pi UPS monitor (with Nginx web monitoring)
    UPS Server on Raspberry Pi
    NUT & CyberPower UPS





    end.

    2018/03/04

    UPSを設置してみました

     我が家では、Raspberry PiのWebサーバーとNTT光ブロードバンドルーターが常時稼働していますが、時々家庭内の電力事情で停電することがあって、RaspberryPiは電源断には無防備なので、データが壊れる可能性もあります。

    そこで、ルーターとRasPiをUPS(無停電電源装置)で電源バックアップすることにして、常時稼働の信頼性をUPさせます。

    用意したのは、CyberPower CPJ500(国内向けCRシリーズ)で、300W正弦波出力タイプです。容量の割にはお値ごろで液晶表示、USB接続で電源管理ができます。

    001
    RasPiとルーターをバックアップするには容量が大きすぎで、1時間以上は十分持ったので、100W程度でもよいでしょう。

    設置は簡単で、UPSの後部に6個のコンセントがあるので、ここから電源を取ります。

    あと、UPSとRasPiを付属のUSBケーブルで接続して、RasPiにはNetwork UPS Tools(NUT)をセッティングし、リモートでUPSの電源監視ができるようにします。

    次回はRaspberry PiにNUTの設定するを掲載しました。
    .
    [商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]
    サイバーパワー・ジャパン Backup CR 500 CPJ500
    価格:13523円(税込、送料無料) (2018/3/4時点)