Shotwell与Dropbox

我将Shotwell的所有照片导入Dropbox中的一个文件夹,以便所有照片都可供其他设备使用。 但是,大多数导入是在Linux笔记本电脑上完成的,而在Linux桌面(单独的机器)上可以使用照片,数据库似乎不同,因此我很难找到照片。 有人可以提出补救措施吗?

补充问题 – 如果我在照片上添加标签,比如说桌面,这些也适用于笔记本电脑吗?

我建议两件事:

  • 首先 – 使用符号链接将shotwell路由到其照片存储的dropbox文件夹的图片目录。
  • 第二 – 确保你没有在两台机器上同时打开shotwell – 虽然dropbox有冲突解决方案,但对于shotwell内部db文件,它可能只允许你选择一个或另一个版本。

此方法应该意味着标签也将被共享。

一个简单的单行zsh命令可以将您从Shotwell的所有图片链接到您的Dropbox帐户。 试试这个:

cd Dropbox / Photos / zsh; zsh> foreach f in find ~/Pictures/**2013** -name '*.JPG' ; 做 echo $ f; ln -fs $ f。 ; 完成; zsh> foreach f in find ~/Pictures/**2012** -name '*.JPG' ; 做 echo $ f; ln -fs $ f。 ; 完成;

软链接从Shotwell创建到Dropbox / Photos文件夹。 然后将这些文件同步到您的Dropbox帐户并在多台计算机上可用,而不会影响您的Shotwell库。 然后你也可以从其他Linux计算机上做同样的事情。

只要链接到Dropbox的图像名称在多台计算机之间是唯一的,就应该没有问题,所有照片都会进入Dropbox。

默认情况下,Shotwell仅将所有元数据存储在其数据库中。 “首选项”中有一个选项可以将元数据写入文件 (它位于“元数据首选项”部分的第一个选项卡上)。 这样您就可以同时获得标签。

编辑:扩展Danny的答案,如果你想同步一切 ,你也可以直接同步Shotwell的数据库。 但是,只有当您的照片存储在要同步数据库的所有计算机上的相同位置时,此function才有效。

编辑:最新版本的Ubuntu(例如13.10)将Shotwell数据存储在~/.local/share/shotwell/dat

如果您在多台计算机上同时运行Dropbox和Shotwell,理论上会导致数据库损坏或数据丢失(因此存在编辑冲突的风险)。

数据库存储在〜/ .shotwell / data / photo.db中 – 符号链接或将其移动到Dropbox(然后将其符号链接) – 我假设您使用〜/ Dropbox目录。

在您的笔记本电脑上运行此操作(数据库是最新的):

 mv ~/.shotwell/data/photo.db ~/Dropbox/photo.db ln -s ~/Dropbox/photo.db ~/.shotwell/data/photo.db 

现在在桌面上,备份或删除本地数据库:

 mv ~/.shotwell/data/photo.db ~/.shotwell/data/photo.db.original 

(或删除: rm ~/.shotwell/data/photo.db

再次,将同步数据库从Dropbox符号链接到原始位置:

 ln -s ~/Dropbox/photo.db ~/.shotwell/data/photo.db