V-antena and Tanimoto's page

谷本の備忘録・雑記帳・work

>

カテゴリー: PC-OS-IT

CATEGORY ARCHIVE

AX210NGW m.2 dual band wifiネットワークカードをIPFireで使うための応急処置

環境

PC    miniPC(CPU N100)
IPfire   IPFire core186
カード Intel AX210NGW カード

問題点

WLANAPページにて、「WLAN CARD」はRunnningになるが、Access PointがStoppedから変わらない。

エラーになっている箇所

/hostapd  /etc/hostapd.conf コマンドを投入してみると、ACS が失敗している。

channel の設定が、 Automatic Channel Searchになっており、しかもその設定から変わらない。 
/etc/hostapd.conf 内のchannel部分をchannel番号を指定して /hostapd  /etc/hostapd.conf  コマンドを実行してみたところ、 Access Pointが Running に変化した。 ここが課題箇所

応急処置

方針  hostapd.conf のコピーを造り、そこでchannelを固定設定し、初期化後に実行させる

応急処置内容 

  1. cp /etc/hostapd.conf /etc/hostapd2.conf
  2. interface=blue0 を hostapd2.conf の先頭に追加
  3. channel= 1 (1-11の間の数値) を hostapd2.conf に設定
  4. /etc/sysconfig/rc.local に、nohup /usr/bin/hostapd /etc/hostapd2.conf &  を追記

これで再起動で対応できる

  ※この方法では、初期化時にAP化に一度失敗しても初期化後にAP化する方法に注意

注意点

アクセスポイントとして使えるのは2.4GHz帯だけというのに注意。従ってAX201NGWを使うことは過剰性能であり、もっと安価なものか別のカードを使用するのがよさそう。

apt updateで「クリアサインされたファイルが有効ではなく、'NOSPLIT' を得ました」出力し失敗

トラブル

apt updateコマンドで、エラーとなり「クリアサインされたファイルが有効ではなく、'NOSPLIT' を得ました (認証にネットワークが必要?)」との情報が出力された。

原因調査

ネットで調べたところ、deb用のソースが消えていたり期限切れの可能性がある事が分かった。
そこで、sudo apt-key list を実行したところ期限切れと表示されるものがあった。

仮処置

/etc/apt/sources.list 又は /etc/apt/source.list.d 内の期限切れのsourceの部分をコメント化した。 一応っこれで、apt updateは実行できる様になった。

正式な対処は、OSを含めアップデイトする事である(が、各アプリケーションの中身の更新が大変)

wake on lanの実現方法の一つ

背景

wake on lan(以降wol)を、機種変前のスマホを使って実現しようとしていたが外出中にスマホがスリープ?してしまい、外出先からwolが出来ない。そこでスマホを使わずraspberry pi(以降raspi)を使う別の方法を考えた。

前提条件 

  • raspiにsylpheedがインストール済み
  • sylpheedから周期的にポーリング受信可能なメールアドレスあり(私の場合自宅サーバー上)
  • raspiにwakeonlanがインストール済み

sylpheedでの設定

sylpheedでメッセージ受信したらコマンド実行 に一般設定で設定する
例:

/home/pi/tools/wolmail.sh

他に、2分ごとにメールをチェックする様にした。自宅サーバーでなければ、5分ごととかもう少し間隔を長めにした方が良いかもしれない。 起動までに時間がかかるが。

メール受信時に実行するシェル

wolmail.shを以下の様にした。試行錯誤で書いたものなので効率の良くないコードではあるが。

#!/bin/bash

ls -trl /home/pi/Mail/inbox | tail -1  >/home/pi/logs/wolsh.log

cat /home/pi/logs/wolsh.log | awk  '{printf("/home/pi/Mail/inbox/%s\n",$9)}' >/home/pi/logs/woltemp
prefile=/home/pi/logs/woltemp

while read filename
do
 cat $filename |awk -f /home/pi/tools/wolmail.awk

done < ${prefile}

wolsh.log、woltempは作業用のファイル

Pathは、念のためフルパスで記述。 sylpheedの受信メールはMail/inboxにあった。最新のものを使用。9番目のフィールドが該当メールのファイル名(数字)であった。

wakeonmailするためのawkスクリプト

awkスクリプトを、wolmail.awkとして下記の様に作成した。

BEGIN{
}
{
if (NF >=2 ) {
  if ($1 == "wolkeyword")  {
   for (i=2;i<=NF;i++) {
      if ($i=="aaaaa") system("/home/pi/tools/wol-aaaaa.sh")
      if ($i=="bbbbb") system("/home/pi/tools/wol-bbbbb.sh")
      if ($i=="ccccc") system("/home/pi/tools/wol-ccccc.sh")
  }

  }
 }
}
END{
  print "wol sent end" > "/home/pi/logs/wol_mail_status"
}

wol-xxxxx.shは、wakeonlanコマンドのためのシェル

また、上記は3台に対応

wol用のメール

subjectもしくは本文内に、wolkeyword xxxxx の様に記述してメールする事で良い

無線lanカードのドライバーを入れていたらwake on lanが使えなくなったので再設定

再度調べて、今回は次のサイトを参考にして対処した。
https://blog.janjan.net/2022/08/10/ubuntu-wake-on-lan-settings

現状確認

sudo ethtool enp5s0 | grep -i wake

Wake-on: d になっていた。
Wake-on: g でないとダメとの事。

設定用ファイル作成

nano mytools/wakeonlan.sh で、下記内容のファイル作成

#!/bin/sh
/sbin/ethtool -s enp5s0 wol g

その後、実行属性を与える

sudo chmod +x mytools/wakeonlan.sh

サービスを登録

登録用ファイル作成

sudo nano /etc/systemd/system/wakeonlan.service


[Unit]
Description=Enable Wake-On-LAN

[Service]
Type=simple
ExecStart=/home/myhomename/mytools/wakeonlan.sh
Restart=always

[Install]
WantedBy=multi-user.target

namename はあなたのlogin名

サービスの登録

sudo systemctl enable wakeonlan.service
sudo systemctl start wakeonlan.service

再起動しておしまい

おまけ web経由で切断

電源onだけでは、RDPか何かを許可しない限り電源を切れない。そこでcockpitをインストール

 sudo apt install cockpit
 sudo systemctl enable cockpit.socket
  
 sudo ufw allow 9090/tcp

これで、webに9090ポートでアクセスするとcockpitが起動しweb経由でいろいろ出来る

ubuntuで、「認証が必要です。システムポリシーによりwi-fiスキャンが阻止されます」が繰り返される。それへの対処

参考にしたサイト

対処

以下の内容を /etc/polkit-1/localauthority/ 配下の pklaファイルとして作成記述

[Allow Colord all Users]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device;org.freedesktop.color-manage>
ResultAny=no
ResultInactive=no
ResultActive=yes

[Allow Package Management all Users]
Identity=unix-user:*
Action=org.debian.apt.*;io.snapcraft.*;org.freedesktop.packagekit.*;com.ubuntu.>
ResultAny=yes
ResultInactive=yes
ResultActive=yes


[Allow WiFi Scan all Users]
Identity=unix-user:*
Action=org.freedesktop.NetworkManager.wifi.scan
ResultAny=yes
ResultInactive=yes
ResultActive=yes

私の場合は、まとめて以下で作ってしまった。

sudo nano /etc/polkit-1/localauthority/50-local.d/45-allow-colord.pkla

反映

sudo systemctl restart NetworkManager

V-antena and Tanimoto's page

あなたはIPv4でアクセスしています