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