ホーム » コンピュータ (ページ 6)

コンピュータ」カテゴリーアーカイブ

システム

最近の投稿

アーカイブ

カテゴリー

debian trixie/testing

最近、aptitude safe-upgrade かけてもパッケージの更新が少ないなぁ…と思ってたけど、bookworm は 6 月に stable になってたのね。

気づかず半年間、寝かせていたからか testing/trixie で大量の更新がかかったけど、競合ですぐに更新されないパッケージもあったけど、半年の間に testing といえども安定していたのか、トラブル無しで更新が終わった。

debian trixie/testing

以前、apt/souces.list.d を stable と testing で記述してたけど、更新のタイミングを見逃すと、急に大量の更新がかかってびっくりしたので、bullseye とか bookworm とかで記述するようにしていた。

/etc/apt/preferences が邪魔をしているかと思って消して更新かかったけど、大した量じゃなかったし。

linux 6.1 to 6.5

testing を追いかけていなかったから、linux-image も 6.1.0-13 から 6.5.0-2 にジャンプアップ。

postfixの設定見直し

自宅サーバに届く迷惑メールの設定はそれなりにやってるつもりだけど、相変わらず届く。

迷惑メールの送信側も、DKIM や SPF といった迷惑メールに誤認されない対策をして送ってきている。そこで改めて postfix の設定を見直す。

RBLサイトの整理, 正引き・逆引きチェック

迷惑メール送信者のデータベース(RBL)の設定をしていたけど、all.rbl.jp, zen.spamhaus.org はサービスを停止しているようで、nslookup all.rbl.jp とかも失敗するし設定を削除。

Dynamic DNS サイトのような迷惑メールサイトからのメールを拒否するために、reject_unknown_reverse_client_hostname を設定していたけど、DKIM, SPF まで設定した迷惑メールサーバも多いので、設定をさらに厳しく reject_unknown_client_hostname に変更。

この設定を変更すると、逆引きと正引きが一致しない Dynamic DNS サイト(まさに自サイト tsaitoh.net はこの状態)からのメールを拒否することになる。しかし、迷惑メールの制限を強化したいし、身の回りの 逆引きと正引きが一致しない所からのメールは、smtpd_client_regexp で受信許可するようにしよう。

  ((( /etc/postfix/main.cf )))
  smtpd_client_restrictions = permit_mynetworks,
                  check_client_access regexp:/etc/postfix/smtpd_client_regexp
-                 reject_rbl_client all.rbl.jp,           # サービス停止
-                 reject_rbl_client zen.spamhaus.org,     # サービス停止
                  reject_rbl_client bl.spamcop.net,
-                 reject_unknown_reverse_client_hostname, # 逆引きだけをチェック
+                 reject_unknown_client_hostname,         # IP->name->IPのチェックあり
                permit

 

nodejs の更新方法の”更新”と hb-service

自宅で動かしている HomeBridge 、定期的に node-js の更新のために、”hb-service update-node” を実行しているけど、途中に警告メッセージがでるようになった。どうも https://deb.nodesource.com/setup_X での更新は非推奨で https://deb.nodesource.com/node_XX.x での更新に変更となったらしい。単純に警告で表示された URL にアクセスし、新しいインストール方法に従って、下記を実行する。

$ sudo apt-get update
$ sudo apt-get install -y ca-certificates curl gnupg
$ sudo mkdir -p /etc/apt/keyrings
$ sudo curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key \
  | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
$ NODE_MAJOR=18
$ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" \
  | sudo tee /etc/apt/sources.list.d/nodesource.list
$ sudo apt-get update
$ sudo apt-get install nodejs -y

HomePod 17 更新終わらない…

iOS17 や watchOS 10 などが公開され、同じく HomePod 17 も公開された。ホームアプリから更新を開始させたが、以下の画面のまま一晩たったけど、相変わらずの画面。
{CAPTION}しかたがないので、こちらに記載されている手順で、HomePod をリセット(Power Resetで起動後、10秒ほどおいて白表示から、HomePod 上部を10秒以上タッチ(赤表示になるまで)して再起動を行い、初期化後の登録作業を行う。ひとまず無事にHomePod 17 に直ってる。

iOS17更新

iOS 17 が 9/19(朝)に公開されたけど、実は気が短いので一時的にベータアップデートにて先に更新をかけていた。
9/19の正式更新が公開されて改めて更新を確認したけど、更新はされなかった。
でも iPhone12 では最新の機能で操作性が激変というほどではない。NameDrop ぐらいかな(使う相手がいないけど)。watchOS 10 の更新も行ったけど、これまた最新機種じゃないと驚くような機能というほどではないな。
{CAPTION}

あ〜のスマホ機種変

娘のスマホがガラス割れで4年目なので機種変。古い端末は、ZenFone Max Pro(M2) だったけど、今回は mineo で買える端末からということで、Xperia 10 v となった。
mineo から端末が届いて、早速ヤマダ電機で、保護フィルムとスマホケースを購入。売れ筋なのか簡単に見つかった。データ移行も、micro USB-Type-C ケーブルでスムーズに完了。まだまだ細かい移行作業はあるけど、自分でできるだろう。
{CAPTION}

自作スクリプトのエラー対策 try-catch

自宅で動かしているスクリプト、自前だから手抜きもあって、サーバトラブル時には他の機器が巻き込まれてエラーが増えることも多い。自室の homebridge などを動かしている Raspberry-Pi が暑さもあってか、再起動させたら一時的に気絶。復旧は問題なかったけど、気絶中に他の外気温測定のRaspberry-Pi がブローカーとなっている Raspberry-Pi が落ちているため、MQTT のデータ送信に失敗のエラーを出してる。

ちゃんと、connect で出るエラーを try-except で例外処理を追加した。

try :
  client = mqtt.Client( ... )
  client.connect( BROKER )

  client.publish( ... )
except ValueError as err :
  print( err )
except OSError as err :
  print( err )

以前から、トラブル時にウザいのが、Perl で書かれた RSS 情報をまとめるスクリプト。Perl での try-catch もどきということで eval{} if ( $@ ) … でエラー対策してるつもりなんだけどトラブル時のエラーがうまく動いていないような。今回あらためて、Perl try-catch で検索したら、Perl 5.34 で try-catch が実験的にサポートされているらしいので使ってみた。

use feature qw( try ) ;
no warnings "experimental::try" ;
:
try {
  $feed->merge( $rss ) ;
} catch( $e ) {
  print "catch $e" ;
}
# eval { $feed->merge( $rss ) ; } ;
# if ( $@ ) {
#    warn "..." ;
# }

暑さ指数 WGPT 28℃

自宅2階の廊下の Raspberry-Pi で BME280 で温湿度測らせてるけど、暑さ指数 WGPTも計算させてみた。
こちらの記事で、IchigoJam で WBGT を測っている記事にて室内のWBGTを温湿度から計算式を流用。
結果は、朝の8:00だけどすでに28℃「厳重警戒(激しい運動は中止)」だとな。

WBGT 28で作業奉仕…(>_<)

今朝は7:00から町内の清掃奉仕だったけど、(起きれないと思うけど) 6:00 開始の方がよくね?(寝坊を理由にさぼっちゃうと思うけど)

スクリプト言語の比較

Raspberry Pi で、自宅内の温湿度管理とか色々やっていて、shell や perl や python などのスクリプトを使っているけど、ただでさえ遅い Raspberry-Pi だし、少しでも軽く動いてほしくて、lua なども使っている。

でも、shell だと、bash で書いているけど、高機能な分だけ遅いし、少しでも軽くなればと、インストールされているスクリプト言語のサイズを改めて比較をしてみた。

$ ls -al <いろいろ>
-rwxr-xr-x 1 root root   14000  1月  2  2021 /usr/bin/lua50
-rwxr-xr-x 1 root root   91904 12月 10  2020 /bin/dash
-rwxr-xr-x 1 root root   92292 12月 22  2018 /bin/sed 
-rwxr-xr-x 1 root root  120704  2月 17  2020 /usr/bin/mawk
-rwxr-xr-x 1 root root  133048  8月  1  2016 /usr/bin/lua5.1
-rwxr-xr-x 1 root root  974312  3月 28  2022 /bin/bash
-rwxr-xr-x 2 root root 3201036  9月 25  2021 /usr/bin/perl5.32.1
-rwxr-xr-x 1 root root 4703672  3月 12  2021 /usr/bin/python3.9

個人的には、軽いスクリプトというと、sed < awk < lua < bash < perl < python というイメージで使い分けをしていた。

しかし、これを見ると、bash と dash で10倍の差、軽くなればと使っていた lua だけど、lua5.1 と lua50 でも 10 倍の差がある。perl だと bash の 3倍、python だと bash の5倍。バイナリのサイズが単純に処理速度に反映される訳ではないけど、これを見る限り、自分で書いている手抜きスクリプトであれば、dash や lua50 で動かした方がよさそうだな。

また、下手に Perl を使うぐらいなら、bash の中で sed や awk を交えながらスクリプトを書くことも多いけど、下手に bash の中で sed や awk をガシガシ使ったら、あんまり早くなさそうだな。

これからは、lua50 < dash < sed , awk < bash < perl < python かな。

RPi-MZ80Cのボード入替え

Raspberry-Pi による ミニチュア MZ80C のボードを入れ替えして、表示部分も入替え。
{CAPTION}
以前より導入していたBME280の温度・湿度・気圧に加え、不快指数とYahoo天気の天気情報を表示するようにしてみた。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト