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

Redmine checklists Pluginで日本語が使えない

Ubuntu 20.04のRedmineに入れたchecklistsプラグイン 3.1.20で日本語を入れてみたところInternal Server Errorが出てしまった。production.logを確認したところ以下の様なエラーが出ていた。

ActiveRecord::StatementInvalid (Mysql2::Error: Incorrect string value: '\xE2\x91\xA0202...' for column 'subject' at row 1: INSERT INTO `checklists` (`subject`, `issue_id`, `created_at`, `updated_at`) VALUES ('ほげほげ', 306, '2022-01-14 22:26:46', '2022-01-14 22:26:46')):

調べてみると以下の情報がヒットした。

https://qiita.com/tomaaaaaaaa/items/08ce75b95df3d310817a

確かにcharacter_set_databaseがlatin1になっていた。。。これは、database.yml にcharset: utf8が入ってなかったためのようです。(encoding: utf8は入っていたので、Redmine自体は日本語が使えており気づきませんでした。)

作ってしまった今から設定を変えても作ってしまったDBには影響しないので、変換してやる必要があります。以下の情報をもとに、どのテーブルがlatin1でできてしまっているか調べてみると、checklist系のテーブルだけでした。

https://www.karakaram.com/changing-the-character-set-to-utf8mb4-after-creating-mysql-table/

SELECT TABLE_NAME,TABLE_COLLATION FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=’DB名’;

| checklist_template_categories | latin1_swedish_ci|
| checklist_templates           | latin1_swedish_ci|
| checklists                    | latin1_swedish_ci|

この3つのテーブルをutf8に変換します。

ALTER TABLE checklist_template_categories
    CONVERT TO CHARACTER SET utf8
    COLLATE utf8_general_ci;

ALTER TABLE checklist_templates
    CONVERT TO CHARACTER SET utf8
    COLLATE utf8_general_ci;

ALTER TABLE checklists
    CONVERT TO CHARACTER SET utf8
    COLLATE utf8_general_ci;

とりあえず、直りました 🙂

今後のために、以下を入れておきました。

/etc/redmine/default/database.yml
charset: utf8
encoding: utf8

/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
character-set-server=utf8

あと気になったのが、chrome 97.0.4692.71ではなぜか、作ったチェックリストを削除できませんでした。(ゴミ箱アイコンをクリックしても何も反応しない)試しに、Edge 97.0.1072.62 で同じことをしたらできたので、JavaScriptの動きの問題のようです。。。うーん。

SwitchBot iOS アプリが無応答になる

原因は不明だが、SwitchBotアプリ(iOS版)でエアコンなどを操作しようとしたら読み込み中のまま戻って来なくなる現象が出ていた。色々試した結果、湿温度計のファームをv2.5からv2.6に上げたら直った。ただ、色々やってるので本当にこれが原因かは不明。

p.s. 2022/1/2

うーん、今度は2021/12/29 20:14以降のデータが表示できなくなった。。。なんだろう。

HUB miniを電源再投入したら直りました。。。

https://support.switch-bot.com/hc/ja/articles/360060471254-SwitchBot%E3%83%8F%E3%83%96%E3%83%9F%E3%83%8B-%E3%83%8F%E3%83%96%E3%83%97%E3%83%A9%E3%82%B9%E3%81%8C%E3%82%AA%E3%83%95%E3%83%A9%E3%82%A4%E3%83%B3%E3%81%AE%E3%81%BE%E3%81%BE%E3%81%A7%E5%BE%A9%E6%97%A7%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84%E7%97%87%E7%8A%B6%E3%81%AE%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95

ubuntu 19.10 to 20.04 TLS

Windows に嫌気が差したときに時々使っているubuntu desktop環境を放っておいたらうっかりサポート期限が切れて通常のリポジトリから消えてしまった。。。そのままではメンテナンスバージョンへのアップデートもできないのでなんとか、19.10が残ってるサイト内かとミラーサイトを探したのですが、どこにもない(同期されてしまっている模様)

そんな中、ありがたい記事発見。なるほど、old-releasesというサイトが用意されてるのね。これもありがたい。

さくっと /etc/apt/sources.list のdeb http://jp.archive.ubuntu.com/ubuntu/ をhttp://old-release.ubuntu.com/ubuntu/ に変えて sudo apt update、sudo apt upgrade、 sudo do-release-upgrade で20.04 TLSに上げられました。

ちなみに http://security.ubuntu.com/ubuntuは何に変えたらいいのかよくわからんのでコメントアウトしておいたが、問題なくアップデートできた。(残しておくとエラー出る)

GCP f1-micro to e2-micro

先日、gcpから「[Action Required] To continue receiving your Free Tier discount, upgrade your F1-Micro VM to an E2-Micro VM by September 1, 2021」というタイトルのメールが届いた。

gcp ではアメリカの一部のリージョンでf1-microをずっと無料で利用できるのですが、そのインスタンスがe2-microに変更されるようです。

f1-microは0.2vCPU、0.6GBメモリだったのですが、e2-microは0.25vCPU、1.0GBメモリに増強されるようです。まぁ、使ってみた感じは正直差を感じられませんでしたが(笑)メモリが増えた分、swapは少し減りましたかね。

まぁ、元々f1-microではパワー不足なのでg1-small検討してねと出てるので、仕方ないんですけどね(笑)

p.s.

現時点(2021/8/4)で、free Tierがe2-microになったことは書いてないですね。

https://cloud.google.com/free/docs/gcp-free-tier?hl=ja

それと、e2-microのFree Tierの課金がちょっとおかしいみたいです。何故か微妙に課金されていておかしいなぁと思っていたら、以下のメッセージが出てました。

3 Aug 202115:31 PDTSummary: Mutliregional Price for E2 Free Tier core is set incorrectlyDescription: Customers in us-west1 and central1 creating E2-micro VMs are being incorrectly charged. Our engineering team have a mitigation underway.Mitigation progress is expected by Tuesday, 2021-08-03 17:30 US/Pacific.We will provide more information by Tuesday, 2021-08-03 17:30 US/Pacific.Diagnosis: Customers might see that they’re being incorrectly charged for a general purpose e2-micro VMs.Workaround: None at this time.
Status Dashboard情報
課金されないはずのe2料金が課金されてる

QNAP HBS 3 to S3バックアップ注意点

TS-230にリプレースしたので、バックアップジョブを作り直したのだが、残念ながらTS-269Proのバックアップジョブで作ったバックアップリポジトリをそのまま使うことはできなかった。

TS-230で新たに、バックアップジョブを作るときに、既存のS3内に同名フォルダがあるとジョブを作成できない。

バックアップ先のS3設定は後から変えられない。ストレージクラスを変えようと思ったらバックアップジョブ作り直し。そうするとバックアップデータも引き継げないので注意。

間違えてInteligent-Tieringを選んでしまって、そのせいで1か月以内にファイルを消したら(ライフサイクルで1日後にGlacier Deep Archiveに移動してるので)結構な額を取られた。。。

https://aws.amazon.com/jp/s3/pricing/

S3 Intelligent Tiering、S3 標準 – IA、S3 1 ゾーン – IA のストレージには、最低 30 日間のストレージ料金が課金されます。30 日が経過する前にオブジェクトが削除された場合、その 30 日の残りのストレージ料金が日割りで請求されます。30 日が経過する前にオブジェクトが削除されたり、上書きされたり、別のストレージクラスに移行されたりした場合、通常のストレージ利用料金に加えて、その 30 日の残りのリクエスト料金が日割りで請求されます。

気を付けましょう。。。

QNAP TS-269Pro to TS-230移行

QNAP TS-269Proも購入して7年経過してるのでそろそろ壊れてもおかしくないということで、リプレース。

QNAP to QNAPのリプレースの場合、Intel系からIntel系への移行ならHDDを差し換えるだけで移行できる。ただ、その場合はHDDの中はそのままなので、後から追加されたスナップショット機能とかは使えない。

TS-269Proを買った時は自宅にESXiサーバがあってそのバックエンドストレージとしても使っていたので、ちょっといいやつを選んでいたが、今は単なるデータ置き場なので、TS-230(ARM系)に変更することにした。TS-269Proが55,000円だったのに対し、TS-230は19,900円。

Intel系からARM系に変更するときは基本的に設定しなおし、データはコピーして移行する必要がある。

と言っても、QNAPなので、大して設定するところもないので、ユーザ作って、グループ作って、共有作ってHBS3(Hybrid Backup Sync 3)でフォルダー間同期ジョブを作って同期するだけ。簡単です 🙂

ついでに、消費電力を考え、今回は HDDを2.5インチに変更した。HDDはTOSHIBA MQ04ABB400R (4TB)を選択。Amazon で整備済み品を買ってみた。(問題があってリペアした製品?)1か月使ってみたが特に問題なし。

家庭使いでは十分な性能な感じ。ただ、ちょっと気になるのがHDDの交換の仕方。Hot Swapには対応してるのだけど、構造がイケてなくて、持ち上げて底のネジを外してトップカバーを外さないとHDDを交換できない。これ。。。事故る気がする(笑)

TS-230はGooglePhotos有料化対応 で書いたQuMagieにも対応しているので試してみた。実はこれがやってみたくて今リプレースしたという噂も(笑)

が、ちょっと、GooglePhotosやAmazon Photosの様な使い勝手の良さはない感じ。

動作感: もっさり。まったり。インデックス化や人物判別などはQNAPのJOBとして実施するのですが、これがすごい掛かるのと、モバイルアプリの作りが良くないのか操作の時の応答性が良くない。

人物判定精度:かなりアバウト。GooglePhotosに比べると同じ人物を別人と判断することが多い。WEB UIから同一人物だよ。別人だよ。と教えてあげることは可能。

GooglePhotos有料化対応

GooglePhotosが6/1より有料化するので、身辺整理を(笑)

まず、GooglePhotosがどうなるのかを確認。

  • 今までは「高画質」での写真、動画保存は無制限の無料でった
  • 2021/6/1以降にアップする写真や動画は形式にかかわらずGoogleドライブの利用量としてカウントされる
  • Googleドライブの無料使用量は通常15GB
  • 2021/6/1より前にGoogle Photosに上げた写真、動画に関しては課金されることはない

ってことですね。2021/6/1以前に上げた写真や動画と、それ以降の写真や動画の容量をどうやって管理するのか気になりますが、こういった要件になります。

https://japan.cnet.com/article/35162321/

という訳で、まずはゴミ掃除。とにかくGoogleドライブ内のゴミを消してみよう。

私は何かのキャンペーンで17GBが無料。でも既に15.2GB使用中!

「保存容量」をクリックすすと何がどのくらい容量を使っているか出るのですが、なんだこのisoファイルは(笑) 速攻消します。

Googleフォトってフォルダーがある?
フォルダを開くと

確かに、一時期Googleドライブで同期してた時期があったような。今は使ってなくて、消しても良いということなので、速攻削除!

消して、ゴミ箱を空にしても保存容量はすぐには反映されない模様。(1時間ほど経ってから見たら更新されてました)

さて、ようやく本題。どんだけGoogleドライブを整理してオもGooglePhotosを使う限り15GBは超えてしまうので、選択肢を考えねば。私の場合この3つかな。

  1. そのままGoolgePhotosを使い続ける(一番楽)
    • 「保存容量を購入」で100GBで240円/月(2021/5/2現在)でそのまま使える。年間2,880円
  2. Amazon Photosに移行する
    • Primeメンバーは、無制限のフル解像度のフォトストレージと、5GBのビデオストレージを利用可能(私はAmazon Primeからは既に出られない状況なので実質タダ)
    • 人物検索や、日時、場所などの検索ができるので、GooglePhotosに近い使用感で使える
    • 動画はどっか別に保存する必要がある(NASに保存しようかな)
  3. NASに保存する
    • 私はQNAPユーザなので元々使ってるQFILEで写真はすべてQNAPにも保存しており、QNAPからAmazon S3 Glacierにバックアップを取ってるので保管という意味では既にコンプリート
    • 検索って意味では難がある

という訳で調べてみたところQuMagieってのがなんかかっこいい!

でも、私の古いQNAP(TS-269Pro)は対象外みたい。。。

https://www.qnap.com/ja-jp/software/qumagie

私のQNAPでも使えるPhoto Stationって機能もあるんだけど、共有をメインに考えてるソフトで検索って意味だとやっぱりQuMagieかな。まぁ、QNAPを買い替える時はちょっと考えるとして。

まぁ、やっぱり、普段使いはAmazon Photosを使いつつ、写真、動画全体のバックアップはQNAPにQFILEでバックアップ。がいいかな。

ドライブを圧縮オプションの罠

貧乏根性でバックアップディスクの設定を「このドライブを圧縮してディスク領域を空ける」を選んでみたのですが。。。

まず、データが入った状態でやるとスゲー時間が掛かります。そして、圧縮はファイル単位で行われ圧縮している間一時的に2倍の容量を食います。。。

つまり、1ファイルでディスクサイズの半分以上の領域を食ってるようなファイルは圧縮できないという訳ですね。。。なんか、ファイルコピー中にまだ半分容量が開いてるはずなのにいっぱいだと言われて気づきました。。。

2012サーバ移行で追加された記憶域領域の重複排除とかはブロック単位でやってくれているので大丈夫なんですけどねぇ。

まぁ、諦めてそのままコピーします。はい。

iTunesバックアップパスワード解析

iTunesのバックアップに掛けたパスワードがどうしても解らなくなってしまい。。。調べた結果こんな記事を発見

https://qiita.com/wakaoys/items/7734b4e2c969420abfb8

普通のPCでやってたらとんでもない時間が掛かってしまい使い物にならないわけですが、AWS使ってP3でぶん回せば行けるのでは!?

https://www.akimbocore.com/article/hashcracking-with-aws/

こんな記事も見つけました。

私はubuntu 20.04で試しましたが問題なく動きました。

なお、NVIDIA-Linux-x86_64-440.33.01.runのインストールはNVIDIAデバイスがないと失敗します。私はコスト面を考えてそれ以前の準備はt2.microで実施しました。作ったAMIをp3.16xlargeで起動してクラックを実施します。また、コストが安い、us-east-1(バージニア北部リージョン)のスポットインスタンスで起動しています。ちなみに、Pインスタンスはデフォルトでは4vCPUまでしか起動できない制限が掛かっているのでAll P instances制限緩和申請する必要があります。さらにスポットインスタンスとして起動しようとするとMax spot instance count exceededと言われて起動できないのでEC2 スポットインスタンスp3.16xlarge:1で申請しました。サポートレベルがBasicのせいか、スポットインスタンスの制限緩和申請に3営業日程かかりました。スポットインスタンス制限緩和は平日9:00-18:00対応だそうです。。。

hashcatは最新は6.1.1の様なので、以下から最新のバイナリを入手しました。

https://hashcat.net/hashcat/

手元のi3-6300TのマシンのWSLで2428 H/sくらいでした。p3.16xlargeでは2891.1kH/sだそうです。まぁ、おおよそ1000倍と言ったところでしょうか。7桁で13時間くらいと出てました。

幸いヨワヨワパスワードだったので、1時間ちょいで解けてしまいました (^o^;)/ 怖

かかった費用

p3.16xlarge Linux/UNIX Spot Instance-hour in US East (N. Virginia) in VPC Zone #7 1.641 Hours $12.06

時間単価 7.35USDくらいですかね。オンデマンドだと24.48USD/時間なので、スポットだと7割引。素晴らしいです。

AWSへ移行したSMTPサーバで見落としがちな罠

オンプレにあったメールサーバ(冗長構成)をAWSに移行したときに危なかった話。

オンプレのロードバランサでは一般的にソースNATはしないと思いますが、AWSのELB(CLB)はソースNATしてしまいます。例えば、PostfixなどでMynetworksにローカルIPが許可されてると、思いっきりサードパーティリレーされてしまうので気を付けましょう 🙂

そしてちゃんとサードパーティリレーチェックしましょう。有志によるこんなサイトもあるので、ご活用ください。

http://check.jippg.org/