前回、外付けHDDのデータが吹き飛んだことを書いたが、それで Nextcloudを初期化して、データを取り込み直すことにした。バージョンは Nextcloud Hub 8 (29.0.8) 。
NextCloud Severの初期化のやりかたについては Resetting Nextcloud | Wild Tech ‘Garden’を参考にした。
-
データベースPostgreSQLにログインする
$ docker exec -i -t postgresql-server /bin/bash 8c2dfbab8532:/# su postgres -c "psql" -
Nextcloudのデータベースを削除する
postgres=# \l List of databases Name | Owner | Encoding | Locale Provider | Collate | Ctype | ICU Locale | ICU Rules | Access privileges -------------+-----------+----------+-----------------+-------------+-------------+------------+-----------+----------------------- joplin | joplin | UTF8 | libc | ja_JP.UTF-8 | ja_JP.UTF-8 | | | miniflux | miniflux | UTF8 | libc | en_US.utf8 | en_US.utf8 | | | nextclouddb | nextcloud | UTF8 | libc | ja_JP.UTF-8 | ja_JP.UTF-8 | | | postgres | postgres | UTF8 | libc | en_US.utf8 | en_US.utf8 | | | template0 | postgres | UTF8 | libc | en_US.utf8 | en_US.utf8 | | | =c/postgres + | | | | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | libc | en_US.utf8 | en_US.utf8 | | | =c/postgres + | | | | | | | | postgres=CTc/postgres (6 rows) postgres=# DROP DATABASE nextclouddb; DROP DATABASE -
Nextcloudのデータベース1を再作成する
postgres=# CREATE DATABASE nextclouddb TEMPLATE template0 ENCODING 'UNICODE'; CREATE DATABASE postgres=# ALTER DATABASE nextclouddb OWNER TO nextcloud; ALTER DATABASE postgres=# GRANT ALL PRIVILEGES ON DATABASE nextclouddb TO nextcloud; GRANT postgres=# \q -
Nextcloudの設定ファイルをバックアップし、再設定する項目を削除する
$ sudo cp /var/www/nextcloud/config/config.php /var/www/nextcloud/config/config.php_20241228 $ sudoedit /var/www/nextcloud/config/config.phpinstanceid、passwordsalt、secret、dbtableprefix、installedを 削除 する$CONFIG = array ( ・・・中略・・・ - 'instanceid' => 'ほげほげ', - 'passwordsalt' => 'ほげほげ', - 'secret' => 'ほげほげ', - 'dbtableprefix' => 'oc_', - 'installed' => true, -
設定ディレクトリ内に
CAN_INSTALLファイルを作成する$ sudo touch /var/www/nextcloud/config/CAN_INSTALL arimasou16@ubuntu:~$ sudo ls -l /var/www/nextcloud/config/CAN_INSTALL 合計 1268 -rw-r--r-- 1 root root 0 12月 28 05:54 CAN_INSTALL $ sudo chown www-data:www-data /var/www/nextcloud/config/CAN_INSTALL作成しないと
Nextcloudを再インストールしようとしているようです。 しかし、CAN_INSTALLファイルがconfigディレクトリにありません。 続行するには、configフォルダーにCAN_INSTALLファイルを作成してください。と表示された以下のようなエラー画面とこんにちわする。
-
データディレクトリの権限を
www-dataでも読み書きできるようにしておく -
nginxサービスを再起動する
ローカルにデータがある場合は、デスクトップアプリを起動して、ログインして、既にある既存のディレクトリを選択する。
すると
- ローカルデータを保持
- ローカルフォルダーを消去して、クリーン同期を開始します
の選択肢が出るのでローカルデータを保持を選択すれば、めでたく初期化されたNextcloudにデータが同期される。以上。
-
ユーザは再作成する必要がなかった。作ろうとしたら
ERROR: role "nextcloud" already existsとなった。 ↩︎

