As I Please

MTのいんすとーるの練習と、その他びぼうろく・・・

erc (emacs e-lisp irc client) が繋がらなくなった。

nadokaを使って ircに常駐していて、clientとして emacs 標準の ercを使っていたが、freebsd-14に上げたら繋がらなくなった。nadokaはちゃんと動いているのだが、ercが接続するときに ERC:closed という状況になっておかしい。

問題は、freebsd-14ではなくて、emacs-29 の標準の ercのバージョンが上がったことによるみたい。
emacs-29の ercのバージョンは 5.5 のようで、これには、server id を使う設定が増えていてこれが過去との互換性がなかったよう。
emacs-28 を /usr/local2 にインスートールしてしてみたところ、こちらのバージョンは 5.4で、これだとこれまでの設定(init.el) がそのまま使えて繋がる。
erc-server-alist あたりをちゃんと設定すればいいみたいだけど、、、面倒だからこのまま /usr/local2 を残すか。

ruby インストール(その他起動時)に openssl 関連のエラーが出る。

freebsd9に、ruby22 しか入っていなかったので、いきなり最新の3.3を入れようとした。
git cloneで srcを持ってきて、buildの mdに書いてあるように行ったが何かうまく逝かないことが多い。

httpsでファイルを持ってこようとしているところで、issure error が出ているのでなんだろう?と
思って探したが、
https://blog.takuros.net/entry/2014/05/17/172257
だったようで、rubyがデフォルトで見ている CAファイルが存在しなかった!
ここにあるように、

ruby -ropenssl -e "p OpenSSL::X509::DEFAULT_CERT_FILE"
を実行したら、"/usr/local/ssl/cert.pem"と返してきたが、こんなところにこんなファイルは存在していない。
それらしいのは、/usr/local/share/certs/ca-root-nss.crt のようなので、こちらをコピーまたはシンボリックリンクで対処した。

MovableType update 8.0.2 へ

  • 投稿日:
  • by

mysql8 に無事上がったので、次は MT8へ。
単に mt/以下を全て置き換え、mt-check.cgi で確認、mt-config.cgiもそのままで。
サイトすべて再構築してみたが特に問題無さそう。
あっさり普通に動いてくれたっぽい。

movabletype mysql5 から mysql8 へ

  • 投稿日:
  • by
  • Category:

そろそろ mysql5系列も終わりで、mysql8のほうがパフォーマンスが良いというので移行しようとしたが、単純にデータのバックアップ、restoreだと文字化けしてうまくいかない。webを探してみてもこれと行ってうまく行った例が無いような。table単位でこちょこちょ文字コードを直すとかやるなどあるが、それでもうまくいかない。
MT4のころから使ってきたのでmysqlも4,5とメジャー、マイナーバージョンアップしてきたが、最初はたしか 設定はutf8とはいえ、DB側とのやりとりはlatin1でほぼバイナリデータとして使ってきていたっぽい。
latin1のデータを良く見ると、中身はutf8データっぽいので、latin1 で mysqldump して mysql8にそのまま入れてがダメ、utf8で dumpして latin1,utf8でrestore してもダメ。

1年くらいこの問題を寝かしていたが、さすがにそろそろちゃんと解決しておかないとな、と思って試行錯誤。

結局、mysql5 からdumpしたデータに、

/*!40101 SET NAMES latin1 */;
というのが入っている(入っているが、ファイルの中身は utf8っぽい)ので、これを除去(grep -v)して、
これを mysql8 に流し込んだところ、どうもうまくいった。
phpmyadmin で見ても、mysql5では文字化け(だが、MTの管理画面、再構築後のコンテンツは文字化けしない)だったが、今度はちゃんと文字化けせずに表示される。かつ、管理画面も再構築後のコンテンツも特に問題ない。

長年ひっかかっていた文字化け問題、とりあえずこれで解決か。
次は、MT7から MT8にアップデートするか。

clamav-1.2.1 on FreeBSD 12

ports でのインストールがいろいろエラーが出るなぁと思っていたが、問題は cmakeが最新じゃなかったことっぽい。
今は 3.28.1 (たぶん前は 3.14くらい)

regza をデザリングで接続できない

実家に光ファイバー引いてもらってネット接続していたが、使わないと言って契約をPSTNに戻していたので、正月帰ってもネットはデザリングでiphone経由でつなぐしかなく。
で、テレビでyoutube見ようとして regzaをwifiに繋ごうとしたら、APとしては出てくるのに繋がらない。
問題は、https://note.com/hiroro571/n/n650b23e5f1e7APの名前が半角英数を使えば良いということだった。
これにたどり着くまで2時間。。。

openvpn 2.6 から 古いserverへの接続

client側を最新のものにしたら 2.6まで上がったが、サーバー側が2.xで上げずにいたら、接続できなくなっていた。
エラーを見て、configに

data-ciphers AES-256-GCM:AES-128-GCM:AES-128-CBC:AES-256-CBC
を追加。
これまでは、'cipher AES-256-CBC' だったが、これはもうdeprecatedのようで、今は'data-ciphers'を使うらしい。

denyhosts から fail2ban に乗り換え

sshd へのアクセスが多すぎるので denyhosts を入れていたが、最近は sendmail に AUTH LOGIN, AUTH DIGEST-MD5,AUTH CRAM-MD5 でのちょっかいも多いので、両方一度に面倒をみてくれそうな fail2ban に入れ替えることに。

freebsd系なので、libwrap 込みでcompile されているバイナリが多いのでそちらに。
linux系は ipfw あたりのルールの追加などを動的に行うのがデフォルトのようだが、ちょっとそれも怖いかな。

ports で入れようとしたら、いろいんなバージョンの freebsdだと、0.22,1.0,1.1 といろんなバージョンが入って微妙に挙動が違いそうなので、もうこれは諦めて git で最新版を入れることにする。
pythonも3系の新しめ(3.8以降)が入っていれば良さそうなので、ありがたい。

opendkim in FreeBSD-9

Googleが メールについてDMARC対応を求めるという話があるようで、数は少ないとはいえ @gmail.com 宛のメールの配信が出来なくなるのは困るので、spf,dkimを入れることを考える。
と言っても、すでにspfは対応しているので、次は dkimということに。
まず opendkim のインストール。 ports はもうろくに使えないので、sourceから持ってきてインストールする。

sourceは opendkim のダウンロードサイトから。https://sourceforge.net/projects/opendkim/files/
または、githubのhttps://github.com/trusteddomainproject/OpenDKIMから。
最新のものが、2.10.3 、最終更新が 2015-05-12 ということでちょっと古すぎるので嫌な予感が。

単純に ./confugire では、やはりダメ。openssl まわりの headerファイルや libが不整合と言ってくる。
先日、openssl は 1.1.1を入れたのでこれらは想定していたが、patchがやはりあって、そのまんま
opendkim-2.10.3-openssl-1.1.1.patchがひっかかる。これを当てればいい、と思ったが、良く見ると同じディレクトリにopendkim-2.10.3-openssl-1.1.1.patch.r2がある。どうもこっちのほうが新しいので、こちらを patch -p1 で当てる。

これでも ./configure 一発とは行かず、
'./configure --disable-shared --with-openssl=/usr/local/openssl111'
で、やっと通った。
で、make と思ったら、これがまた、

WARNING: 'aclocal-1.13' is missing on your system.
のようなエラーが出た。aclocalは 1.15が入っているのに、なぜかこんなエラーが?
ここは googleに聞いてもすぐには出てこなかったが、いまどきなので claude.ai に聞いてみたら、aclocal をインストールして(これはやってるので飛ばして)、その先で、
その後、opendkimのソースディレクトリで以下を実行して設定ファイルを再生成してください:

aclocal
autoconf
automake --add-missing

これで設定ファイルが更新され、makefileが再生成されるはずです。

とのこと。何と、これで Makefileが再生成されて、その後は一発で make が通った。
最近は install 系の話は chatgpi よりも claude.ai の方が良い答えを返してくれると実感している。