如何使用 box.com 在机器之间同步我的主目录?

如何使用 box.com 在机器之间同步我的主目录?

Box.com 不支持 Linux,尽管有一个功能要求并得到了热烈的支持。

对功能请求的评论提供了通过安装 WebDav 文件夹将 Box 与 Linux 结合使用的多种方法。

以下是一些使用 WebDav 或其他方式的示例解决方案:

  1. http://maketecheasier.com/auto-mount-box-net-to-linux-desktop/2012/03/27
  2. http://dev.modmancer.com/index.php/2011/12/17/access-box-com-box-net-from-your-ubuntu/
  3. boxlinux:https://github.com/sebastiansam55/boxlinux
  4. 导管https://live.gnome.org/Conduit

这些解决方案中是否有任何一个是相当稳定并且没有错误的?

当然还有其他很棒的服务(UbuntuOne、Dropbox 等),但我的机构已经注册了 Box(因此我拥有所需的空间)。

答案1

Box Sync Linux 客户端官方没有开发计划,因为这不是重点。虽然这种方法可以评估替代方案。

首先,您需要安装 davfs2 包。您可以通过在终端中发出以下命令来执行此操作:(或者您也可以使用您最喜欢的包管理器来安装 WebDAV)

sudo apt-get install davfs2 
sudo adduser username davfs2

现在您应该创建一个专用的 box.com 文件夹。

mkdir /home/username/box.com
echo "https://dav.box.com/dav /home/username/box.com davfs rw,user,noauto 0 0" | sudo tee -a /etc/fstab
sudo chmod u+s /usr/sbin/mount.davfs

现在您必须切换到常规系统用户。这可以通过发出以下命令来完成:

su username

接下来你应该在你的 davfs2 配置文件中禁用文件锁,插入你的邮箱电子邮件和密码,将权限更改为包含你的凭证的 secrets 文件,最后挂载你的账户:

echo "use_locks 0" > ~/.davfs2/davfs2.conf   

如果此命令给出“没有此文件或文件夹”错误,只需使用以下命令创建文件夹和文件

mkdir ~/.davfs2/
touch  ~/.davfs2/davfs2.conf

然后继续执行这些命令。

read -p "box.com email: " boxuser
read -sp "box.com password: " boxpass
echo "https://dav.box.com/dav $boxuser $boxpass" > ~/.davfs2/secrets 
chmod 600 ~/.davfs2/secrets
mount /home/username/box.com

最初,可能需要一些时间来将您箱中的所有文件与新创建的文件夹同步,但之后您应该能够创建、删除和覆盖所有文件。

答案2

我们将 Box 与 Storage Made Easy 的 Linux App 结合使用,它为我们提供映射驱动器和 Box 同步功能。它对我们来说运行良好,Storage Made Easy 位于 Box 的合作伙伴页面上。

该应用程序是免费的,可以很好地与 Ubuntu 配合使用(我使用的是 12.04),您只需注册一个免费帐户即可使用它。您可以在以下位置下载:

http://storagemadeeasy.com/index.php?p=&type=&showlogin=&message=

答案3

按照上述答案中的方法操作时,我遇到了几个问题。然后我找到了这个链接:
http://www.liberiangeek.net/2012/03/automatically-mount-box-cloud-storage-in-ubuntu-12-04-11-10/
它对我所面临的许多空白墙提供了答案。

代码中方法的摘录:

sudo apt-get install davfs2  

运行以下命令重新配置 davfs2,以便普通用户可以挂载存储

sudo dpkg-reconfigure davfs2  

运行以下命令将 davfs2 文件夹复制到你的主目录

sudo cp -r /etc/davfs2/ /home/`<username>`/.davfs2    

然后运行以下命令来更改权限,以便您成为所有者

sudo chown -R `<username>` /home/`<username>`/.davfs2/  
gedit ~/.davfs2/secrets  

文件打开后,在末尾添加下面显示的行并保存。

https://www.box.com/dav <box_username> <box_password>

sudo gedit /etc/fstab   

然后在末尾添加下面显示的行并保存文件。

https://www.box.com/dav/ /home/<username>/box davfs _netdev,rw,user 0 0`
sudo adduser `<username>` davfs2  
mkdir ~/box  

请记住将所有用户名和密码替换为您的盒子账户用户名,以及您的盒子账户密码。

答案4

我发现的最佳解决方案是 webdav-sync:http://www.re.be/webdav_sync/index.xhtml 这是一个 Java 程序,提供与 Box(和其他 WebDAV 文件夹)的双向离线同步。

我遇到的唯一问题是它可能会阻塞包含非英文字符的文件/目录。

类似的命令java -Dbe.re.http.no-expect100 -jar ~/.local/bin/webdav_sync1_1_9.jar -r -u https://username:password@URL -d ~/Box-sync/ -bi -i 30应该可以解决问题。

相关内容