我根据这些说明使用 davfs 安装了 Box.com 云存储。我在 /home/me/Cloud/Box 下安装了我的 Box.com 帐户
我可以通过 Dolphin 和终端访问挂载的文件系统。它有点慢,但我可以列出 (ls) 并在没有错误的情况下浏览整个目录结构。
接下来,我尝试按如下方式运行 rsync:
rsync -auvz --max-size=250M --exclude '.*' /home/me/Music/ /home/me/Cloud/Box/Music
Run Code Online (Sandbox Code Playgroud)
我也试过:
rsync -auv /home/me/Music/A /home/me/Cloud/Box/Music
Run Code Online (Sandbox Code Playgroud)
以及 rsync 命令的其他变体。该命令是通过 davfs 挂载将我的音乐从我的本地文件系统 (/home/me/Music/) 复制到 Box 云 (/home/me/Cloud/Box/Music)。
我总是收到很多这种形式的错误:
rsync: mkstemp <filename> failed: Invalid argument (22)
Run Code Online (Sandbox Code Playgroud)
一个具体的例子是:
rsync: mkstemp "/home/me/Cloud/Box/Music/VariousArtists/.01_Track_1.mp3.YVmFI9" failed: Invalid argument (22)
Run Code Online (Sandbox Code Playgroud)
这一切都发生在 Kubuntu 12.04 LTS 64 位服务器级硬件上,具有快速/可靠的电缆调制解调器连接(12 Mb/s 上传速度)。
我正在尝试在我的机器上自动安装 WebDAV。
我已经安装davfs2,然后复制/etc/davfs2到~/.davfs2. 我将 WebDAV URL 添加到/etc/fstab:
[URL of the WebDAV] [Local folder] davfs rw,user,auto 0 0
Run Code Online (Sandbox Code Playgroud)
我还加入了对用户名和密码~/.davfs2/secrets,并取消注释secrets ~/.davfs2/secrets在~/.davfs2/davfs2.conf启用自动登录。
现在我可以通过运行手动安装它mount www.myserver.com(它不要求我输入用户名/密码)。我知道运行mount -a会做与启动时一样的事情,但是当我sudo mount -a以我的用户身份运行时(只是mount -a说我需要是 root),我确实被要求输入用户名/密码。
然后我的注释去掉,secrets ~/.davfs2/secrets在/etc/davfs2/davfs2.conf启用自动验证(见本和本)。现在运行sudo mount -aAND 只mount在/sbin/mount.davfs:/etc/davfs2/davfs2.conf:36: unknown option. 第 36secrets ~/.davfs2/secrets行是行。
为什么它说未知选项?我如何解决它?
我已使用davfs2(webdav) 成功将 Box.com 安装到本地位置。现在,我尝试对 Webdav 文件夹中创建和同步的文件触发操作。
不幸的是,这不起作用。inotify当文件同步到本地 Webdav 文件夹时,我没有看到任何事件。不过,它确实会拾取任何本地文件事务,因此我非常有信心它inotify可以正常工作。
还有人使用 Webdav ( davfs2) 和 吗inotify?
我能够安装davfs2,我什至可以使用它装载 SharePoint 文档库,但是当我尝试在装载上执行任何操作时,我收到错误消息。
我可以挂载文档库:
root@host:/# mount -t davfs "http://sharepoint/Shared Documents" /mnt/sp
Please enter the username to authenticate with server
http://sp/Site Stuff or hit enter for none.
Username: username
Please enter the password to authenticate user nacho with server
http://sp/Site Stuff or hit enter for none.
Password:
Run Code Online (Sandbox Code Playgroud)
我可以 CD 到它,我可以看到它从那里安装:
root@host:/# cd /mnt/sp
root@host:/mnt/sp# ls
Forms lost+found home.html
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试创建文件或执行任何操作时,出现错误:
root@host:/mnt/sp# touch a
touch: setting times of ‘a’: No such file or directory
root@host:/mnt/sp# date > hi.txt
bash: hi.txt: Invalid …Run Code Online (Sandbox Code Playgroud) 我已经通过以下方式使用davfs2挂载了一个webdav目录:
sudo mount -t davfs -o uid=bruni,gid=users https://server/folder /home/bruni/mountpoint/
Run Code Online (Sandbox Code Playgroud)
如何在不卸载目录的情况下通过命令行强制同步?
客户端运行KUbuntu 19.10,服务器是egroupware服务器,但这很可能无关紧要。
mount.davfs -V
davfs2 1.5.5 <http://savannah.nongnu.org/projects/davfs2>
Run Code Online (Sandbox Code Playgroud)
为了澄清我所说的同步是什么意思,我的意思是umount.davfs在卸载之前执行的操作以验证所有更改是否已上传到服务器:
/sbin/umount.davfs: waiting while mount.davfs (pid xxxxx) synchronizes the cache .. OK
Run Code Online (Sandbox Code Playgroud) davfs2 允许以$.davfs2/secrets纯文本形式存储用户的密码,以便允许用户在不提示输入密码的情况下安装 webdav。
是否可以存储预加密的密码?这个想法是用户自己在交互式脚本中输入密码(知道加密算法)将其转换为加密形式并将其保存在$.davfs2/secrets.
通过这种方式,即使是 root 也无法访问(暴力破解)用户密码。
我在运行 piCore-6.1 的 rPi 上安装了 davfs2。我在 /etc/fstab 中添加了一行包含所需安装点的行:
\n\nhttps://url.../ /path.../ davfs _netdev,rw,user,uid=1000,gid=1000 0 0\nRun Code Online (Sandbox Code Playgroud)\n\n我还创建了一个 /etc/davfs2/secrets (并在其上调用 chmod 600)
\n\nhttps://url.../ user password\nRun Code Online (Sandbox Code Playgroud)\n\n当我打电话时,mount -a系统会要求我输入用户名和密码,据我了解,davfs2 应该检查机密文件并使用指定的用户和密码。
TL;DR 我的 davfs2 不想使用我创建的机密文件...
\n我正在尝试从 Linux 控制台访问我的“Onedrive for Business”存储,特别是无头 Ubuntu 16.04 服务器。唯一官方支持的方法是 Windows 同步应用程序。
我想使用 Onedrive 作为远程文件系统来扩展本地存储,而不是使用同步客户端在本地复制所有文件。
“Onedrive for Business”实际上是 Sharepoint 的一个变体,它不接受 webdavs 上的用户名和密码 - 必须已经存在一个用于 webdavs 客户端的身份验证 cookie。
通过调整以下说明,我已成功将远程存储安装为 Windows 10 中的 webdavs 文件夹: https: //www.imss.caltech.edu/content/mounting-onedrive-business-mapped-drive但它仅在登录后才有效我们的 Onedrive 网站与 Internet Explorer 一起创建 Windows 资源管理器使用的 cookie。
在 Linux 上,我可以通过在 Konqueror Web 浏览器中登录 Onedrive 网站,然后使用该 cookie 连接到 Konqueror 文件浏览器中的 webdavs 来复制此行为。这总比没有好,但我确实需要控制台访问权限。不幸的是,KioFuse 似乎早已被废弃。
除了 Konqueror 之外,还有什么方法可以让 Linux 控制台访问远程文件系统?我查看了 davfs2、gvfs 和 cadaver,但找不到任何使用现有 cookie 进行身份验证的文档。