NextCloudPi

このページはX年以上前に更新されたものです。 内容が陳腐化している恐れがあります。ご注意ください。

RasPiではなくDebian 10 (buster)のVMで動作中

NextCloud 14にアップデートしてからncp-scan-autoがエラーを吐く

In AbstractMySQLDriver.php line 115: 

[Doctrine\DBAL\Exception\DriverException] 
An exception occurred while executing 'SELECT `uid`, `displayname` FROM `oc_users` `u` LEFT JOIN `oc_preferences` `p` ON (`userid` = `uid`) AND (`appid` = 'settings') AND (`configkey` = 'email') WHERE (`uid` COLLATE utf8mb4_general_ci LIKE ?) OR (`displayname` COLLATE utf8mb4_general_ci LIKE ?) OR `configvalue` COLLATE utf8mb4_general_ci LIKE ?) ORDER BY `uid_lower` ASC' with params ["%%", "%%", "%%"]: SQLSTATE[42000]: Syntax error or access violation: 1253 COLLATION 'utf8mb4_general_ci' is not valid for CHARACTER SET 'utf8' 
MariaDB [nextcloud]> SHOW VARIABLES LIKE 'character_%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8mb4                    |
| character_set_connection | utf8mb4                    |
| character_set_database   | utf8mb4                    |
| character_set_filesystem | binary                     |
| character_set_results    | utf8mb4                    |
| character_set_server     | utf8mb4                    |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

MariaDB [nextcloud]> show create table oc_users;
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table    | Create Table                                                                                                                                                                                                                                                                                                                                                                            |
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| oc_users | CREATE TABLE `oc_users` (
  `uid` varchar(64) COLLATE utf8_bin NOT NULL DEFAULT '',
  `displayname` varchar(64) COLLATE utf8_bin DEFAULT NULL,
  `password` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',
  `uid_lower` varchar(64) COLLATE utf8_bin DEFAULT '',
  PRIMARY KEY (`uid`),
  KEY `user_uid_lower` (`uid_lower`)                                                                                                                                                                        ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin |
+----------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
MariaDB [nextcloud]> show create table oc_users;
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table    | Create Table                                                                                                                                                                                                                                                                                                                                                                                                                    |
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| oc_users | CREATE TABLE `oc_users` (
  `uid` varchar(64) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
  `displayname` varchar(64) COLLATE utf8mb4_bin DEFAULT NULL,
  `password` varchar(255) COLLATE utf8mb4_bin NOT NULL DEFAULT '',
  `uid_lower` varchar(64) COLLATE utf8mb4_bin DEFAULT '',
  PRIMARY KEY (`uid`),
  KEY `user_uid_lower` (`uid_lower`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=COMPRESSED |
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
  • 治ったっぽい

NextCloud 14.0.1.1→15.0.6へアップデート

ncp-update-nextcloudすると以下で失敗する

An unhandled exception has been thrown:
TypeError: substr() expects parameter 1 to be string, boolean given in /var/www/nextcloud/lib/private/AppFramework/Http/Request.php:835
Stack trace:
#0 /var/www/nextcloud/lib/private/AppFramework/Http/Request.php(835): substr(false, 18)
#1 /var/www/nextcloud/lib/private/AppFramework/Http/Request.php(750): OC\AppFramework\Http\Request->getScriptName()
#2 /var/www/nextcloud/lib/private/Log/File.php(102): OC\AppFramework\Http\Request->getRequestUri()
#3 /var/www/nextcloud/lib/private/Log.php(329): OC\Log\File->write('updater', '\\OC\\Updater::ma...', 1)
#4 /var/www/nextcloud/lib/private/Log.php(218): OC\Log->writeLog('updater', '\\OC\\Updater::ma...', 1)
#5 /var/www/nextcloud/lib/private/Log.php(180): OC\Log->log(1, '\\OC\\Updater::ma...', Array)
#6 /var/www/nextcloud/lib/private/Updater.php(544): OC\Log->info('\\OC\\Updater::ma...', Array)
(以下略)

https://github.com/nextcloud/server/blob/b9d5e72be968c59fbdaff8ad2be5b472a4d02226/lib/private/AppFramework/Http/Request.php#L835

config/config.phpoverwritewebrootを一旦''にしてからアップデート

Cannot load Zend OPcache - it was already loaded

アップロードでタイムアウトする

  • 18.0.3 / 18.0.4

/var/log/apache2/error.log

[Fri Apr 24 00:11:02.227179 2020] [proxy_fcgi:error] [pid 15311:tid 140496903075584] (70008)Partial results are valid but processing is incomplete: [client XXX.XXX.XXX.XXX:XXXXX] AH01075: Error dispatching request to : (reading input brigade)

リバースプロキシ→VPN→Nextcloudな構成
リバースプロキシより先が遅いような?

swapをオフ

  • ファイル/var/swapが存在する
    % sudo swapon -s
    Filename                                Type            Size    Used    Priority
    /dev/sda5                               partition       2094076 0       -2
    /var/swap                               file            2097148 0       -3
  • dphys-swapfileがそのへんやってるみたい
    % sudo dphys-swapfile swapoff
    % sudo systemctl disable dphys-swapfile.service

Musicアプリ

Androidから聴く

  • AmpacheとSubsonicのAPIに対応しているみたい
  • 参考:
  • NextCloud 18.0.4 + Music 0.14.0 + Android 10で試したアプリ
    • Ampache API
      • Power Ampache 1.09.49
        • アーティストを選んだ次の階層が何も出ない
        • アルバムからの選択・再生はOK
        • ローカルにキャッシュされない?設定は特にない
        • 通知画面にメディアコントロールが出ない
    • Subsonic API
      • UltraSonic 2.7.0
        • サーバ設定時のTest ConnectionでConnection failureになる
      • Audinaut 0.5.1
        • First level artistsをオンにしておく(当方のライブラリはアーティスト/アルバムの2階層フォルダ構成)
        • アーティストでフィルタせずにアルバムの一覧表示はできない?
        • キャッシュ先・サイズの設定変更可能
      • DSub 5.0.3
        • キャッシュ先・サイズの設定変更可能
        • よさげ
      • Subsonic 4.8
        • キャッシュ先が変更できない
    • 普通にAirsonicサーバを立てたほうが幸せになれそうな気がしてきた

スキャン

  • ncc music:scan --all
    • ジャンルのスキャンは別途要求されるような