在使用Nextcloud进行云存储时,我们可能需要将本地硬盘挂载到Nextcloud中,以便进行文件的上传和下载。
在进行硬盘挂载前,我们需要先对要挂载的目录进行权限设置,以便让Nextcloud能够正常读写。我们可以使用chmod 777命令进行权限设置,如果需要对文件夹移动等操作,则需要给整个/data目录赋予777权限,具体命令如下:
chmod 777 /var/lib/docker/volumes/3aadde39c9179f7a2a3d97a56aa025143ec64df355546e47aa0ae5ee76c58fa7/_data/data/mydisk
找出要挂载的磁盘的设备号。在终端中运行以下命令来列出您的磁盘设备:
lsblk
例如,我们这里得到的硬盘挂载地址信息为:/dev/sdb2。
然后我们需要编辑/etc/fstab文件,在其中添加硬盘挂载的配置信息,使其每次开机时,自动挂载硬盘。具体命令如下:
vim /etc/fstab
/dev/sdb2??? /var/lib/docker/volumes/3aadde39c9179f7a2a3d97a56aa025143ec64df355546e47aa0ae5ee76c58fa7/_data/data/mydisk??? ext4 defaults??? 0??? 0
保存并退出文件。然后运行以下命令,使配置文件生效:
sudo mount -a
如果,我们需要使用mount命令将当前目录绑定到挂载目录中,具体命令如下(非必要操作,可跳过次命令):
sudo mount --bind . /var/lib/docker/volumes/3aadde39c9179f7a2a3d97a56aa025143ec64df355546e47aa0ae5ee76c58fa7/_data/data/mydisk
这样,我们就完成了硬盘的挂载工作。接下来,我们需要在Nextcloud中添加外部存储设备。我们需要登录Nextcloud账户,并进入管理设置页面
http://127.0.0.1:8000/settings/admin/externalstorages
进入Nextcloud容器的Shell环境,查看docker下nextcloud的文件相对路劲地址
docker exec -u 0 -it nextcloud /bin/bash
cd data/mydisk
pwd
得到相对路劲地址,然后,我们需要点击“Add storage”按钮,选择“Local”选项,并在“Configuration”中填写挂载目录的路径,最后点击“Save”按钮保存配置信息。
/var/www/html/data/mydisk
完成后需要退出当前容器,然后重新进入
docker exec -u 0 -it nextcloud /bin/bash
接下来,我们需要刷新Nextcloud数据文件缓存,以便使新添加的存储设备生效。具体命令如下:
su www-data -s /bin/bash -c 'php occ files:scan --all'