ホーム » コンピュータ (ページ 29)
「コンピュータ」カテゴリーアーカイブ
pychromecastで画像表示
homebridge から、処理結果を chromecast で表示できないかと、pychromecast を試す。
pychromecast の 定番サンプルで、自宅サーバの画像ファイルの URL を与えて、表示を試すが真っ黒画面の表示で動かない。
webサーバのアクセス履歴を見ても、chromecast からのアクセス履歴が無いので、指定した URL にアクセスしていない。
chromecastは、ローカルのDNSを使わない
自宅では、サーバのプライベートアドレスを返す、自宅内 DNS が動いていて、自宅外ではグローバルアドレスを引けるようにしている。自宅ドメインのURLのファイルを表示できないことから、たぶん chromecast は、DHCP の指定する DNS サーバ情報を使っていないのだろう。DNSポイズニングを懸念するなら、あたりまえだろうな。
ということで、URL を、プライベートアドレスを生書きしたものを与えたら、普通に動いた。
(追記) プライベートアドレスのURLだと、https も表示できない。IPアドレス表記のURLだとホスト名が判らないから、https ではオレオレ認証扱いされるのか、これまた表示できない。プライベートアドレスなコンテンツの場合は、アドレス表記に直してかつ、プロトコルを http に変更が必要だな。
#!/usr/bin/python3
import time
import pychromecast
# デバイス名
chromecast_name = "リビングルーム"
# 指定した名前のchromecastを探す
chromecasts, browser = \
pychromecast.get_listed_chromecasts( friendly_names = [ chromecast_name ] )
chromecast = next( filter( lambda cc: cc.device.friendly_name == chromecast_name ,
chromecasts ) , None )
if not chromecast :
sys.exit( 1 )
chromecast.wait()
mc = chromecast.media_controller
mc.play_media( 'http://192.168.xx.xx/wp/wp-content/uploads/2020/10/IMG_4165.jpg' , 'image/jpeg' )
mc.block_until_active()
mc.play()
# 接続を切る
pychromecast.discovery.stop_discovery( browser )
google home で温度グラフ表示
pychromecast がうまく使えるようになったので、homebridge + Google Home にて温度グラフを表示するようにしてみた。「OK Google, 温度グラフをつける」(‘をつける’というのは、スイッチ扱いで登録してあるから)
proxyサーバヒット率1%
以前より、自宅内のCache Proxyサーバって、ヒット率低いのはわかっていたけど、一応動かしていたSquid。これまた気まぐれに cache のヒット率確認したら、1%。意味ないね。
自分しか使ってないだろうと、これまた気まぐれにばっさりと、aptitude purge squid したら、子供と奥さんが「ネット切れた」と駆け込んできた。proxy自動設定のproxy.pacとかも置いといたので、想定外に使ってたのね。
ということで、家族に「proxy はずしてね」と伝え、proxy.pac を、return “DIRECT”; に修正しておく。
homebridgeのlogrotate
raspberry-pi で動かしている homebridge の LOG もそれなりに成長するので、logrotate で切り詰める。
設定したけど、うまく出力してくれていないので、postrotate 機能で、homebridge を再起動するようにする必要あり。
/var/lib/homebridge/homebridge.log
{
weekly
rotate 10
compress
delaycompress
missingok
notifempty
create 644 homebridge homebridge
postrotate
/bin/systemctl restart homebridge
endscript
}
fib(100)の末尾10桁
情報セキュリティコンテストで実施される Capture the flag の問題を自作して公開しているんだけど、
- フィボナッチ数 fib(100) の末尾10桁を FLAG{xxxxxxxxxx} 形式で答えよ。
ただし、fib(1)=1,fib(2)=1 とする。
を「FLAG{430496245229}」って誤答してくる人が多い。
どこを、どう間違えるとこの「12桁」になるのか、誰か教えて….。
google home が動かなかったな…
そういえば、先日の朝とか、いつもの Google home mini に「照明つけて」とか言っても、ネットワークにつながっていないとかいって動かなかったけど、google のトラブルが原因か。
我が家では、家電制御は、Google Home mini → homebridge-gsh → homebridge だから、我が家のネットワークの問題(mydns.jpの接続トラブルで逆引き失敗することがある)で、homebridge-gsh が動かないと思っていたけど、google さんがトラブっていりゃうごかないよね。
まあ、homebridge は Home アプリで操作が普通で、”Hey Siri!” で操作できるし、記事みたいに何もできなることはないし。
サーバをspeepさせない
職場で実験用にセットアップしたサーバが、ほっておくと sleep で繋がらなくなる。
下記の設定で、sleep, suspend,hibernate 機能を停止する必要あり。
$ sudo systemctl mask sleep.target suspend.target hibernate.target
UPSがself-testでブザーとまらず
3年物のAPCのUPS APC ES 550(BE550G-JP)が、朝の5:00にブザーが鳴って止まらず。
電圧異常かと思って、電源ボタンを押したら停止。でも、サーバはシャットダウン操作してないで落ちてる。
LOGを確認すると、apcupsd の self-test 機能が動いて、バッテリーの交換時期なので、ブザーを鳴らしたみたい。マニュアルを見ると「停止条件は『電源オフ』」実は、ひと月前にも同じようにブザーが鳴って、今回は2回目。self-test の期間は、2週間に設定されているみたいなので、このままだと、また叩き起こされそう。
電源異常じゃないのならバッテリー交換とも思うけど調べると交換バッテリー7000円。前のUPSは、保持時間が多少落ちようとも無視して本来2~3年の寿命の物を5年以上使ってた。今回も劣化を無視してもう少し使いたい。
apctestでbattery dateを修正
UPS監視ソフトの apcupsd の付属ソフトに、apctest でセルフテストを直にさせようと思ったけど、上手く動かない。でも、battery の日付を書き換えるコマンドがある。寿命をだますということで、試しにバッテリー交換してないけど日付を書き換えてみた。これで、だませるかな。
(2020/12/28:追記) バッテリーが消耗していれば、battery-date を修正しても、朝の4:45に再びブザーが鳴り響き、効果なかった。(T_T;
ついでに、夜中にバッテリー警告で起こされるのもつらいので、警告音を DISABLE にできるみたい。munin で、バッテリー状況は観察してるし、自宅サーバだし「落ちてもたかがしれている状態」なので、問題ないだろう。とはいいながら、エラーが改めてでなくなるのを確認するまでは、ENABLE にしておくか。
$ sudo systemctl stop apcupsd.service $ sudo apctest (略) Please select the function you want to perform. 1) Test kill UPS power 2) Perform self-test 3) Read last self-test result 4) View/Change battery date : Select function number: 4 Current battery date: 09/12/2016 Enter new battery date (MM/DD/YYYY), blank to quit: 09/12/2020 : 6) View/Change alarm behavior : Select function number: 6 Current alarm setting: DISABLED Press... E to Enable alarms D to Disable alarms Q to Quit with no changes Your choice: Select function: q
apcupsd.conf の修正
(2020/12/28) 何らかの selft-test と思って、バッテリー日付の修正を試したが効果が無いので、改めて、正統な selft-test 機能を止める方法。
(( /etc/apcupsd/apcupsd.conf )) # Self test interval in hours 336=2 weeks, 168=1 week, ON=at power on # SELFTEST 336 168 ON OFF (default = 336) SELFTEST OFF
Windows10 VPN L2TP/IPSecの設定
HKEY_LOCAL_MACHINE
▲SYSTEM
▲CurrentControlSet
▲Services
▲PolicyAgent
DWORD32bitで、AssumeUDPEncapsulationContextOnSendRule = 2 の設定を追加






