写真のバックアップ先を変えて焼き肉代を捻出した話と、rcloneの謎のエラーDuplicate object found in source - ignoring
この度、撮りためた写真のバックアップ先をGoogle OneからOffice 365 Business EssentialのOneDriveに乗り換えました。
Google One: 2TB \13,000/年
OneDrive: 1TB \7,128/年
現状の写真データのサイズは300GB強なのでこれで約\6,000の節約です。
焼肉食べに行こう。
早速愛用のrcloneの接続先をOneDriveに変更してバックアップ。
謎のエラーが出てコピーできないファイルが出ました。
rclone sync /media/fileserver OneDrive:/バックアップ/
2020/01/17 23:00:22 NOTICE: /写真/2016/20160310/20160310_102127_50753e729751ef106e3f66312ecb8fd1.mp4: Duplicate object found in source - ignoring 2020/01/17 23:00:22 NOTICE: /写真/2016/20160310/20160310_102403_e82903f2712db3d1d0d6cf3686ace851.mp4: Duplicate object found in source - ignoring
色々試行錯誤した後に言われたとおりにコピー元を見てみると、拡張子の大文字/小文字違いで同じファイルがありました。
md5sum /media/fileserver/写真/2016/20160310/*
50753e729751ef106e3f66312ecb8fd1 /media/fileserver/写真/2016/20160310/20160310_102127_50753e729751ef106e3f66312ecb8fd1.MP4 50753e729751ef106e3f66312ecb8fd1 /media/fileserver/写真/2016/20160310/20160310_102127_50753e729751ef106e3f66312ecb8fd1.mp4 e82903f2712db3d1d0d6cf3686ace851 /media/fileserver/写真/2016/20160310/20160310_102403_e82903f2712db3d1d0d6cf3686ace851.MP4 e82903f2712db3d1d0d6cf3686ace851 /media/fileserver/写真/2016/20160310/20160310_102403_e82903f2712db3d1d0d6cf3686ace851.mp4
削除。
Ubuntu19.10にResourceSpace 9.1をインストールしようとしてハマった話
大量の写真をタグ付けして管理できるResourceSpaceってWebアプリがすごくよさそうだったので、lxdでUbuntu19.10を立ち上げてインストールすることにしました。
https://www.resourcespace.com/
しかしながら公式サイトに載ってる手順ではインストールが出来ず、試行錯誤の末なんとかインストールにこぎつけました。しんどかった。
この苦労、数か月後には絶対忘れてる自身があるので備忘録がてら差分を書いておこうと思います。
基本的には
公式サイトのインストール手順の「Ubuntu 18.04 and above(Ubuntu 18.04以降)」の要領で進めます。
恐らく18.04から何らか事情が変わったんだろうなぁ。
https://www.resourcespace.com/knowledge-base/systemadmin/install_ubuntu
ImageMagickのインストール
これがないと、ResourceSpaceのインストールは成功するものの、画像一覧にサムネイルが出ません。意味ないね。
apt-get install imagemagick
Apache2のドキュメントルートの変更
インストール手順では/var/www/resourcespaceにResourceSpaceを展開することになっていますが、Apache2のドキュメントルートは/var/www/htmlなので、このままではブラウザでアクセスすることができません。
/etc/apache2/sites-enabled/000-default.confのDocumentRootを/var/wwwに書き換える必要がありました。
MySQLに一般ユーザを作る
インストール手順はMySQLにrootユーザでアクセスすることを想定しているようですが、なんかうまくいきませんでした。
専用のユーザー"resourcespace"を作ることでなんとかなりました。
MySQLに接続する
mysql -u root
ユーザーを作成する
CREATE USER resourcespace@localhost IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY 'resourcespace';
MYSQL_NATIVE_PASSWORDを指定するのがキモです。
Ubuntu 19.10でインストールされるMySQL8ではデフォルトのパスワード認証方式が従来のMYSQL_NATIVE_PASSWORDからCACHEING_SHA2_PASSWORDに変更されています。
しかしながらResourceSpace側のMySQLにアクセスするPHPライブラリはそれをサポートしていないので、従来のMYSQL_NATIVE_PASSWORDを使って認証を行うようにMySQLに指示する必要があります。
権限を付与する
生まれたてのユーザーに自分の立場を分からせてやります。
GRANT ALL PRIVILEGES ON resourcespace.* TO 'resourcespace'@'localhost';
セットアップ画面のMySQLのユーザー名とパスワードに"resourcespace"と入力する
これで、ResourceSpaceがインストールできるはずです。
写真管理Webアプリ Lycheeのプラグインを書こうとした話
盆休みに溜まりに溜まったデジカメ画像を整理するソリューションを探したところ、Lycheeって言う良い感じのWebアプリを見つけました。
- 画像を複数選択してタグを打てる。
- 画像の他に動画も管理できる。
- サーバが低スペックでもサクサク動く。(Celeron J1900 1コア + メモリ1GB)
非常にいい感じ。
後は、既にアップロードしている画像を再アップロードしたときに重複を検知して除外してくれればなぁ・・・。
おっと。プラグイン機能があるじゃないですか。じゃあ書くか。
と、1日頑張ったのですが、色々調べてみると重複画像排除オプションが既に実装されていました。。。
そんなこんなでプラグイン作成のモチベーションが急激に下がった今日この頃なのですが、せっかくなので得られた知見を書き残しておこうと思います。
Lychee本体のクラスを使うには
"\Lychee\Modules\使いたいクラス"をuseします。
use \Lychee\Modules\Log; use \Lychee\Modules\Database;
ログを出力するには
Logクラスの各種メソッドが使えます。
Log::error(Database::get(), __METHOD__, __LINE__, 'エラー');
ログはLycheeの[Show Logs]から確認できます。
ちなみにログデータはファイルではなく、DBのlychee_logテーブルに格納されています。