最近公司在用nextcloud管理文件,我写了一个python脚本,领导想看中间生成的图片,让我把图片同步到nextcloud上。上网搜了一些方法,最终用rclone实现,以下是实现过程。

服务器版本号:Ubuntu 22.04

目的

将nextcloud中的某个文件夹(例如:/my-folder)挂载到Linux本地的目录(例如:/home/four/image-compare/images)

步骤一:安装 rclone

Ubuntu / Debian:

sudo apt update
sudo apt install rclone -y

步骤二:配置 Nextcloud 远程连接

执行命令:

rclone config

根据提示操作:

1.
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q>
输入n创建新的远程 2.
name> nextcloud
输入远程的名字,这个名称是自定义的,用来后续调用,比如 rclone mount nextcloud:/my-folder /home/four/image-compare/images 3.
Storage> webdav
可以看到很多存储类型,输入对应数字或名称(例如:选择 webdav) 4.
url> https://192.168.18.22:8001/remote.php/dav/files/**
输入Nextcloud WebDAV 的URL
【查询方式见下方 tips1】 5.
Choose a number from below, or type in your own value
1 / Nextcloud
\ "nextcloud"
2 / Owncloud
\ "owncloud"
3 / Sharepoint
\ "sharepoint"
4 / Other site/service or software
\ "other"
vendor> 1
选择webDAV服务类型 6.
User name
Enter a string value. Press Enter for the default ("").
user> (Your User account)
输入账户号 7.
Password.
y) Yes type in my own password
g) Generate random password
n) No leave this optional password blank (default)
y/g/n> y
Enter the password:
password:
Confirm the password:
password:
输入密码 8.
Bearer token instead of user/pass (eg a Macaroon)
Enter a string value. Press Enter for the default ("").
bearer_token>
是否要使用Bearer Token令牌,直接回车(回车选择的是用标准用户名+密码方式登录) 9.
Edit advanced config? (y/n)
y) Yes
n) No (default)
y/n> n
询问是否需要高级配置:n(否) 10.
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
确认配置无误 11.
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q
退出配置

tips1:查询Nextcloud WebDAV 的URL

登录nextcloud网页,点击文件设置,寻找WebDav URL

之后你可以验证是否连接成功:

rclone ls nextcloud:

如果能列出文件,说明连接成功。

步骤三:创建挂载目录

sudo mkdir -p /home/four/image-compare/images

步骤四:挂载 Nextcloud 到本地目录

执行挂载命令:

rclone mount nextcloud:/your-folder /home/four/image-compare/images \
--vfs-cache-mode writes \
--daemon \
--no-check-certificate
  • nextcloud:/your-folder 是你 Nextcloud 中希望挂载的目录,可以是根目录 nextcloud:/ 或子目录 nextcloud:/data/backups
  • /home/four/image-compare/images 是挂载到本地的路径
  • --vfs-cache-mode writes 是为了支持写入缓存(必须加)
  • --daemon 让 rclone mount 在后台运行
  • no-check-certificate 跳过验证

步骤五:验证是否挂载成功

1.查看挂载目录内容:

ls /home/four/image-compare/images

2.在挂载目录创建文件测试同步:

touch /home/four/image-compare/images/testfile.txt

然后去 Nextcloud 网页端确认是否出现了 testfile.txt。然后登录 Nextcloud 网页界面,检查文件是否上传成功。

如果成功,则挂载完成,可以实现同步

使用rclone将linux服务器上的文件夹同步到nextcloud的更多相关文章

  1. 如何使用sftp下载Linux服务器上的文件到本地

    下载Linux服务器上的文件到本地 Linux服务器上的操作 sftp xxxxx@jumper.xxxx.com 使用put命令进行文件上传,put app.log 本地操作 sftp xxxxx@ ...

  2. 打开FTP服务器上的文件夹时发生错误,请检查是否有权限访问该文件夹

    打开FTP服务器上的文件夹时发生错误,请检查是否有权限访问 在win98,winme,win2000,win2003下都能正常上传文件夹,但在winxp+sp2下同样的文件夹就可能出现问题 1. 打开 ...

  3. FTP服务器上删除文件夹失败

    很多人都知道:要删除FTP服务器上的文件夹时,必须确保文件夹下面没有其他文件,否则会删除失败! 可是,有些服务器考虑到安全等因素,通常会隐藏以点开始的文件名,例如“.test.txt”.于是,有的坏人 ...

  4. “打开ftp服务器上的文件夹时发生错误,请检查是否有权限访问该文件夹"

    阿里云虚拟主机上传网站程序 问题场景:网页制作完成后,程序需上传至虚拟主机 注意事项: 1.Windows系统的主机请将全部网页文件直接上传到FTP根目录,即 / . 2. 如果网页文件较多,上传较慢 ...

  5. FTP文件夹错误:【打开FTP服务器上的文件夹时发生错误。请检查是否有权限访问该文件夹】

    资源管理器访问FTP服务器报错,提示FTP文件夹错误:[打开FTP服务器上的文件夹时发生错误.请检查是否有权限访问该文件夹]. 详细信息: 200 Switching to ASCII mode. 2 ...

  6. 使用PhpStrom等IDE编辑 远程linux服务器上的文件 实时更新

    习惯了在linux上 vim进行PHP的开发,突然忘了IDE的感觉,所以想到了.通过PhpStrom等IDE直接编辑 samba共享到 mac或者windows本地的磁盘进行编辑. 为了忘却的纪念,有 ...

  7. Sublime Text编辑远程Linux服务器上的文件

    sublime有个叫sftp的插件,可以通过它直接打开远程机器上的文件进行编辑,并在保存后直接同步到远程linux服务器上. 用Package Control安装插件 按下Ctrl+Shift+P调出 ...

  8. Pycharm连接远程服务器并保持文件夹同步

    pycharm版本2021 服务器版本 Ubuntu 18 1.连接远程服务器 xxx这部省略了,因为之前就已经连接上了hh,后面用到再补充. 2.保持文件夹同步 1.首先在本地(windows环境创 ...

  9. 通过sftp操作Linux服务器上的文件(java)

    本文为实现对linux服务器文件的操作.windows服务器不支持. 引入jar包:jsch-0.1.42.jar package com.csvreader.sftp; import java.io ...

  10. python 读取Linux服务器上的文件

    使用Python语句,读取Linux远端服务器上的文件打印到控制台的代码实现: 下载包:paramiko import paramiko #服务器信息,主机名(IP地址).端口号.用户名及密码 hos ...

随机推荐

  1. robotframework之添加browser库

    browser库的官网地址需要FQ,在网上找到了不需要FQ的版本 robotframework-browser · PyPI 1.下载node.js 下载地址:https://nodejs.org/e ...

  2. sonarqube+gitlab+jenkins+maven集成搭建(四)

    安装Gitlab 关闭firewalld防火墙和selinux防火墙,如图1-2:[root@localhost ~]# systemctl stop firewalld[root@localhost ...

  3. Python提交 post方法之‘Content-Type‘: multipart/form-datay

    最近写s2_061 Python脚本得时候遇到了POST 提交 'Content-Type': multipart/form-data 这个问题,然后查阅资料开始解决. 一.首先说一下POST 提交数 ...

  4. ctf.show刷题记录_web(1-10)

    ctf平台(ctfshow) `https://ctf.show/ 1.签到 解题:base64解码 ctfshow{0da357d0-359b-47e1-80dc-5c02212725e5} 2.w ...

  5. Linux Mint 部署 Docker 指南

    前言 之前都是在服务器上部署 WordPress ,最近把小电脑刷成了 Linux Mint 系统之后,就在想本地部署 WordPress 然后使用 Cloudflare 隧道内网穿透出去当博客. 不 ...

  6. 2025最好的Next.js面试

    2025最好的Next.js面试题(一) 最近在面试,就写一些关于问到的面试题,同时也过一下知识点. 基础概念 什么是Next.js?它与React的关系是什么? Next.js是一个基于React的 ...

  7. 面试题:JAVA中final关键字的作用

    final关键字的功能概述   在Java中,关键字 final 的意思是终态,可以用于声明变量.方法和类,分别表示基本类型变量值不可变,引用类型变量引用地址不可变但值可变,方法不可被覆盖,类不可被继 ...

  8. 远程登录Mysql,命令行登录Mysql的方法

    1.本地登录MySQL命令:mysql -u root -p   //root是用户名,输入这条命令按回车键后系统会提示你输入密码2.指定端口号登录MySQL数据库将以上命令:mysql -u roo ...

  9. Python操作LDAP,对用户进行认证(验证用户名以及密码)

    Python操作LDAP,对用户进行认证 1.环境 Python版本: 3.7.1 操作系统:windows 7 x64 第三方包:python-ldap 2.LDAP LDAP,它是基于X.500标 ...

  10. 题解:CF1119D Frets On Fire

    大水题. 首先,若区间内只有一根弦,不会对答案有贡献. 我们思考如何对答案产生贡献.我们知道,对于每一个 \(s_i\),都会产生一段 \(s_i+r-l\) 的连续序列,在对 \(s\) 数组排序后 ...