ホーム » 2026 (ページ 2)

年別アーカイブ: 2026

システム

最近の投稿

アーカイブ

カテゴリー

UPS交換(Linux 7.0による警告対策)

UPSが大量の警告

Ubuntu 26.04 の導入により Linux の Kernel も linux-image-7.0.0-14-generic になったが、移行後の Load Average が高い。

原因を調べると(後述)、apcupsd で kernel が以下の警告を毎秒くらいの頻度で出ている。APC ES 750 を使っているけど、4byte の返答があるはずなのに2byteしか返ってこないという内容らしい。このため、syslog のファイル出力でシステム負荷が 0.4 ほどに上がっている。

4月 24 23:05:29 ... kernel: hid-generic ...
   :Event data for report 22 was too short (4 vs 2)

以前の Kernel なら、同様のエラーはでていたのかもしれないが、syslog に警告を記録していなかったから、問題にはならなかった。Kernel が 7.0 になり、この辺の対応がきちんとするようになったのが原因のようだ。

しかたがないので、syslog でこのメッセージを記録しないように設定したけど、それでも 負荷が 0.2 ほどになる。

以前の Kernel なら、0.1 程度だったので、 なんとなくヤな感じ。

負荷の原因の見つけ方

今回、UPS の原因を見つけるにあたり、Gemini を活用しまくり。top の出力を Gemini にかけて、pidstat, vmstat などの結果を確認して…の繰り返し。

$ top
$ htop               # あまり重い処理がみつからない
$ sudo pidstat 2 5   # 2秒おきの集計を5回表示
$ sudo vmstat 1 5    # 負荷の原因が、計算かディスク待ちか
$ sudo iotop -o      # どのプロセスが入出力しているか
                     # ここで、systemd-jounald が原因というのが判明
$ sudo journalctl -f # Syslog を確認
                     # ここで、UPS のログが見つかる

UPSのエラー対策

UPS のエラー警告だけど、UPS の状況を確認すると、apcaccess コマンドの結果が、「ONLINE:つながってるけど NOBATT:バッテリーがつながっていない」との出力がでている。充電電圧も出力されていてバッテリーは動いているはずなのに…。Gemini に聞いても「UPS のよくある故障だし、Syslog を無視するようにして問題なく、他の機能が正しく動いているなら無視していい」とのアドバイス。

$ apcaccess
:
STARTTIME: 2026-04-24 17:54:04 +0900
MODEL    : APC ES 750G
STATUS   : ONLINE NOBATT

Syslog をフィルタリングしてディスクI/Oが改善しているとはいえ、以前より負荷が高い状態は気持ち悪いので、USPを交換した際の予備(バッテリー交換済み APC ES 550)があったので、元に戻した。

交換したら、UPS の警告は出なくなり、Syslog フィルタリング処理も不要になって、負荷も 0.1 程度に落ち着いたので、これで良し!!

Copilot Keyboard 正式版キー割り当てもOK

Microsoft Copilot Keyboard が正式リリースとな。ベータ版が出た最初に試したときは、macOS のキー操作に慣れていると、無変換、変換キーを IME/off/on に割り当てるのができないとタイピングに影響が大きく、イライラして早々に削除したけど、正式版は問題ないみたい。

Ubuntu 26.04 LTS リリース

Ubuntu 26.04 LTS が4/23にリリースされた(る?)。

ひとまずお試しと思うが、4/23 21:00 (JST) では、do-release-upgrade を実行しても、何も起こらない。

do-release-upgrade –devel-release

ということで、数時間フライング。ただし、影響を気にして WSL 環境に入れる。Windows App 的には、Ubuntu 24.04 なんだけど、Ubuntu 25.10 に更新済み。んで、今回の更新で Ubuntu 26.04 LTS となる。

$ sudo apt upgrade -U
$ sudo do-release-upgrade --devel-release
$ cat /etc/os-release
PRETTY_NAME="Ubuntu 26.04 LTS"
NAME="Ubuntu"
VERSION_ID="26.04"
VERSION="26.04 (Resolute Raccoon)"
:

メインサーバの更新は一苦労

WSL 環境は、無事に 26.04 に更新できたので、メインの自宅サーバを更新。

ただ、こっちは面倒だった。サーバは、複数のネットワークインタフェースを Policy-routing させているけど、パッケージ更新中に netplan の関係で、インターネットにつながる設定を消してしまったのか、途中でネットワークが切れ、do-release-upgrade の最中に reboot せざるおえなくなった。

なんとか、復帰させたのはいいけど、最後は apache2 + wordpress のトラブル。

WordPress を起動したけど、データベース接続エラーが出てしまう。確認をすすめると、mariadb が後方互換で datadir = /var/lib/mysql で動いていたけど、datadir = /var/lib/mariadb がデフォルトの設定にされていた。いろいろ試していたけど、/var/lib/mysql の中身をごっそり /var/lib/mariadb にコピーしなおして無事復旧。

do-release-upgrade の最中に reboot したから、mariadb の正しい移行に失敗したんだろうな。

くろねこ

{CAPTION}

{CAPTION}

{CAPTION}

dmarc=fail p=none の受け取り拒否

自宅メールサーバでは、Postfix + Postgrey + amavisd + OpenDMARC + Spamassassin で運用しているが、
From 偽装は OpenDMARC で reject などができるようになった。

しかしながら、spammer は dmarc=fail 判定されても相手にメールが届くようにするため、ポリシー p=none のドメイン名探し、そのドメイン名を From にして、しつこく何度も送ってくる。

特定ドメインの dmarc=fail, p=none は受け取り拒否

しかたがないので、Postfix の OpenDMARC判定後に Postfix の header_checks の機能で p=none で送られてきたドメインは REJECT するようにしてみた。

((( /etc/postfix/main.cf )))
header_checks = regexp:/etc/postfix/header_checks

((( /etc/postfix/header_checks )))
/^Authentication-Results:.*dmarc=fail.*p=none.*header\.from=monex\.com/ \
        REJECT DMARC authentication failed for specific domain.

spammerは怪しいドメインを次々みつけてくる

header_checks で運用してたけど、spammer は次々と怪しいドメイン(p=noneのドメイン)を見つけてきて、すり抜けてくるメールを送ってくる。このままじゃ、header_checks ファイルを日々更新することになりそう。

しかたがないので、dmarc=fail, p=none は SpamAssassin で Spam スコアを上げて、迷惑メールに確実に落とすことを目標にしたほうが良さそう。

((( /etc/spamassassin/local.cf の末尾に追記 )))
# DMARC失敗 (p=none) を検知するルール
header   LOCAL_DMARC_FAIL_NONE  Authentication-Results =~ /dmarc=fail \(p=none/
describe LOCAL_DMARC_FAIL_NONE  DMARC validation failed with p=none
score    LOCAL_DMARC_FAIL_NONE  3.5

# (参考) DMARC失敗 (p=quarantine) の場合もスコアを上げたい場合
header   LOCAL_DMARC_FAIL_QUAR  Authentication-Results =~ /dmarc=fail \(p=quarantine/
describe LOCAL_DMARC_FAIL_QUAR  DMARC validation failed with p=quarantine
score    LOCAL_DMARC_FAIL_QUAR  5.0

猫寺と越前たけふ駅ウォーキング

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

{CAPTION}

Gemini for Home アップグレード

Gemini for Home の早期アップグレードが届いたことだし適用してみる。

完成度としては今ひとつという噂もあるけど。

2026-04-13追記

「OK google, テレビを消す!」と命令すると「テレビとチューナーどちらを消しますか?」と、チューナーがテレビの属性となっているので、余計な質問が増えた。連動設定してあるから、どっちを消してもちゃんと消えるけどさ。

何となく捨てられない

職場の棟の改修が予定されているので、不要な本の処分を始める。すでに古い技術で役に立たない技術書だけど、校費で買ったものは図書館に返還するために分類し、雑誌や私費で買ったものは次々と廃棄候補。
だけど、学生の時に読み込んでいた雑誌が、なんとなく懐かしすぎて捨てるのはやめておこうか…

DMARCレポートの修正

DMARCレポートを出力

最近、dmarc のメールが届かないと思ってたら、中で使っている munpack がインストールされていない。インストールしようにも apt で見つからない。Ubuntu/debian のパッケージから消えたようだ。Gemini に代替品を聞いたら ripmime を紹介される。

((( ripmime をインストール )))
$ sudo apt install ripmime

((( 修正 )))
  # 標準入力のメールから添付ファイルを抽出
- system( "/usr/bin/munpack -q -C $tmpdir > /dev/null 2>&1" ) ;
+ system( "/usr/bin/ripmime -q -i - -d $tmpdir > /dev/null 2>&1" ) ;

ついでに、DMARC のポリシーを p=quarantine から p=reject に変更しておいた。

spam が google などのクラウドばっかり

自宅サーバへの spam は、spamassasin などでかなり除去できるようにしてあるけど、それでも相変わらず届いている。送り元の IP アドレスを調べて 完全拒否などもしているけど、それでも届くのか。

送り元の確認

あらためて、送り元を確認したら、google クラウドサーバとか amazon クラウド。IPアドレスでは消せないなぁ。

$ cd ~/Maildir/.Junk/cur
$ grep "Received: from" * \
  | grep -v 127. \
  | awk -F [][] '{print $2}' \  [,]を区切り文字として真ん中を取り出す
  | sort | uniq -c | sort -r
      6 202.238.198.26
      1 54.169.135.62
      1 52.76.242.183
      1 35.236.54.228
      1 35.236.40.141
      1 35.226.131.57
      1 34.96.185.118
      1 34.176.225.88
      1 34.163.22.216
      1 34.155.225.82
         :

OpenDMARC fail で消せばいい

メール確認してたら、OpenDMARC が fail 返しているじゃん。こんなの Reject されてると思ってたけど、

“Authentication-Results: OpenDMARC; dmarc=fail (p=reject dis=none) header.from=monex.co.jp”

opendmarc.conf を確認したら、デフォルトのままで reject してなかった。ということで reject するように設定変更。

((( /etc/opendmarc.conf )))
# 認証に失敗したメールを拒否するように変更
RejectFailures true

$ sudo systemctl restart opendmarc

職場からのメールは、fukui-nct.ac.jp 発信のメールが、fukui.kosen-ac.jp で届くので、dmarc=fail で失敗判定なんだけど (p=none) なので、普通に届く。

んで、自宅ドメインは…. p=quarantine 「隔離」設定になってるな。そろそろ reject「拒否」にしてもいいかも。

Google 検索

My Google   Yahoo

Microsoft

ファンサイト

メタ情報