ホストOSの任意のディレクトリを、VirtualBoxの共有フォルダにして、UbuntuServerにマウントし、NextCloud のデータ置き場に設定する一例の手順を備忘録としてまとめました。
コマンドを5つ実行するだけのかんたんなお仕事です。
下準備:フォルダ共有できるようにする
この記事に従ってVirtualBoxのGuest AdditionsをUbuntu Serverにインストールしておきます。
これがないと以下の手順をこなしても何も起こらない!!(一敗)
VirtualBoxに共有フォルダをセット

- ホストOSの任意のディレクトリを、VirtualBoxで共有フォルダとします
- 読み込み専用OFF
- 永続化ON
- 自動マウントON
- マウントポイントは「/mnt/nextcloud」
- その後仮想環境を起動
なお、virtualboxの共有フォルダ機能は、Windowsの「共有フォルダ」とは無関係なので、別にSMB共有設定とかをホストOS側でする必要はありません。
仮想環境での作業 -5つコマンドを実行するだけ-
元々のデータをコピー
データディレクトリを移動する前に、元々のデータ置き場のデータを丸ごとコピーします。
$sudo cp -r -d /var/snap/nextcloud/common/nextcloud/data /mnt/nextcloud
赤字部分は、前述のマウントポイントに各自置き換えてください。
アクセス権限設定
nextcloudが新たなデータディレクトリにアクセスできるように権限を付与します。
$sudo chmod 0770 /mnt -R
$sudo chown root:root /mnt -R
ストレージをつなげる
外部ストレージをつなげる(これは不要かも)コマンドを打ちます。
$sudo snap connect nextcloud:removable-media
datadirectoryを変更
いよいよnextcloudのデータ置き場を変更します。
$sudo nano /var/snap/nextcloud/current/nextcloud/config/config.php
これでconfig.phpを編集します。具体的には、「datadirectory」の右辺を変更します。

元々の初期設定「/var/snap/nextcloud/common/nextcloud/data 」を
「/mnt/nextcloud/data」に変更します。
赤字部分は、前述のマウントポイントに各自置き換えてください。
書き換え終わったらctrl Sで保存 ctrl xで編集画面から退出します。
あとは再起動したら完了です。
$sudo reboot
できたかを簡単に確認してみる
これでストレージ容量が相応の大きさに変わっているはずです。

新しくデータフォルダを置いたドライブ全体の残り容量と大体一致していれば成功ですね!

ホストOSからでも保存されたデータを直接のぞける!!

このように同じ具合でファイルが並んでいることが判りますね。
なお、ホストOSでファイルを読み書きできるのに、ホストOSから(NextCloudを通さず)直接ファイルを追加しても容量が減るだけで、NextCloud上からはファイルの存在自体を認識できません。
困ったもんです。。。
まあデータのインデックスとかなんかそういった理由がありそうですねぇ
併せてごらん下さい