我(目前)有三个移动 USB 大容量存储设备(闪存驱动器、手机、电子阅读器)。我希望始终随身携带所有文件的最新版本(例如简历、护照、研究论文、源代码等)
我的文件经常更改,因此每天手动复制它们是不可行的。理想情况下,我想插入我的闪存驱动器(例如),让我的电脑自动识别它、安装它、同步它并卸载它。
以下功能“那就太好了”:
- 图形用户界面
- 同步开始/停止时通过 Xorg/KDE/Gnome 发出通知。
- 而且,为什么不呢:双向同步。但这不是优先事项。
我发现了一些与此相关的问题:
但他们都没有完全回答我的问题。我想如果有足够的时间,我可以自己使用udev
、等将一些东西组合在一起。rsync
但我不想重新发明轮子。而且时间是我现在不需要浪费的。理想情况下,我想使用现有的解决方案,但我找不到。
那么,设置此类内容的最快方法是什么?
答案1
您可以使用 udev/rsync 路线,但需要编写一些脚本。查看inotify 工具无论如何,这些对于向应用程序发送文件系统更改通知非常有用。
我知道三种用于同步本地文件系统的 GUI(快速设置)工具。
答案2
除了 @dartonw 的良好答案之外,如果您喜欢使用 bash 脚本进行 simlpe 双向同步,您还可以使用同步这边走
#!/bin/sh
exitcode=1
#do check if usb flash is mounted
if test -e '/your_path_to_usb_mountpoint';then
exitcode=0
#from folder to usb if the files are newers
rsync -avun --inplace /your_folder_wich_you_want_to_syncronize/ /your_path_to_usb_mountpoint ;
#from usb to folder if the files are newers
rsync -avun --inplace /your_path_to_usb_mountpoint/ /your_folder_wich_you_want_to_syncronize/
fi
#if the flash is not mounted exit with exitcode=1
exit $exitcode