samba4.8でファイル共有

いつものことながら詰まりまくったのでまとめておく。

smb4.confについては、毎度の通り調べて書くわけですが、その際に忘れてはいけないのが、以下。セクションはマウントポイントの名前で大丈夫。

security = user
ntlm auth = yes

次はマウント。最低限必要なのは以下。文字コード等は適当に合わせる。

mount_smbfs -I smb.example.com //user@smb.example.com/mnt /mnt

smb.example.com はIPアドレスでもかまわない。

/mnt はマウントポイント。

/サーバー /クライアント

とする。

そして自動マウント。/etc/fstab に書く。noauto である理由はよくわからないのだけど、ネットワーク越しのマウントだから、完全自動ではなく接続が安定しているときにマウントすべし、ということであろう。もし気になるのであれば調べてください。

//user@smb.example.com/mnt /mnt smbfs rw,-I smb.example.com,-N,noauto

仕上げに、 snmb.conf に自動ログインの記述をする。ファイルの末尾に、

[SMB.EXAMPLE.COM:USER]
user=user
password=yourpassword

などと書く。パスワードはできれば暗号化して、ファイルのパーミッションを600などにするのが望ましい。

マウントは以下のようにコマンドを打てばOK。

mount /mnt

以上!

MySQLが立ち上がらなくて

RaspberryPi3(この、今ご覧になっているサイトのサーバー)のMySQL80-serverが立ち上がらなくなった。
原因は、急に電源を落としたこと。

/var/db/mysql/****.err の中に見つかったエラーメッセージは、こんな感じ。

2018-04-12T13:21:02.033081Z 0 [ERROR] I/O error reading the header from the bina
ry log, errno=175, io cache code=0
2018-04-12T13:21:02.033284Z 0 [ERROR] I/O error reading the header from the bina
ry log
2018-04-12T13:21:02.033352Z 0 [ERROR] Can't init tc log
2018-04-12T13:21:02.033446Z 0 [ERROR] Aborting

ログファイルがおかしいようである。というわけで調べてみた。
見つかったのは以下のブログ。
http://raafat.tawasol.net/mysql-crashes-io-error/

要約すると「怪しいログファイルを削除せよ」

そう言われてもわたしにはよくわからなかったので、

find /var/db/mysql/mysql-bin\* | xargs tar zcvf /tmp/mysql-bin.tgz

などとして退避し、さらにそれらのログをすべて削除したのち、

server mysql-server start

無事起動しました!