Rsync是一种快速且极其通用的文件复制工具。它可以通过任何远程shell在本地复制到/从另一个主机复制,或者从远程rsync守护进程复制到远程rsync守护进程。它提供了大量选项来控制其行为的各个方面,并允许非常灵活地指定要复制的文件集。它以其delta传输算法而闻名,它通过仅发送源文件和目标中现有文件之间的差异来减少通过网络发送的数据量。 Rsync广泛用于备份和镜像,并作为日常使用的改进复制命令。
Rsync使用dqquick checkdq算法(默认情况下)查找需要传输的文件,该算法查找已更改大小或上次修改时间的文件。当快速检查表明filecqs数据不需要更新时,直接在目标文件上对其他保留属性(由选项请求)进行任何更改
rsync的一些附加功能包括:
cwRsyncServer最新版支持复制链接,设备,所有者,组和权限
排除和排除类似于GNU tar的选项
CVS排除模式,用于忽略CVS忽略的相同文件
可以使用任何透明的远程shell,包括ssh或rsh
不需要超级用户权限
流水线化文件传输以最小化延迟成本
支持匿名或经过身份验证的rsync守护程序(适用于镜像)
软件特色
Cygwin装载台
/ etc / fstab文件用于将Win32驱动器和网络共享映射到Cygwin的内部POSIX目录树。这与典型的UNIX fstab文件类似。存储在/ etc / fstab中的挂载点是为所有用户全局设置的。有时需要具有用户特定的挂载点。 Cygwin DLL支持用户特定的fstab文件。它们存储在##directory /etc/fstab.d中,文件名是用户的Cygwin用户名,因为它存储在/ etc / passwd文件中。用户指定文件的内容与系统范围的fstab文件相同。
文件fstab包含有关各种文件系统的描述性信息。 fstab只能由程序读取,而不是写入;系统管理员有责任正确创建和维护此文件。每个文件系统都在一个单独的行中描述;每行上的字段由制表符或空格分隔。以“#”开头的行是注释。
第一个字段描述要安装的块特殊设备或远程文件系统。在Cygwin上,这是挂载点链接的本机Windows路径。作为路径分隔符,您必须使用斜杠。使用反斜杠可能会导致意外结果。允许使用UNC路径(使用斜杠,而不是反斜杠)。如果路径包含空格,则可以将其转义为' 040'。
第二个字段描述文件系统的安装点。如果挂载点的名称包含空格,则可以将其转义为“ 040”。
acl - Cygwin使用文件系统的访问控制列表(ACL)来实现真正的POSIX权限(默认)。此标志仅影响支持ACL(NTFS)的文件系统,否则将被忽略。
自动 - 忽略。
binary - 文件默认为二进制模式(默认)。
cygexec - 将挂载点下面的所有文件视为cygwin可执行文件。
exec - 将挂载点下面的所有文件视为可执行文件。
noacl - Cygwin忽略文件系统ACL并且仅伪造一个子集
基于DOS readonly属性的权限位。此行为是FAT和FAT32上的默认行为。 NFS文件系统上将忽略该标志。
nosuid - 不允许suid文件(目前未实现)。
notexec - 将安装点下面的所有文件视为不可执行文件。
nouser - Mount是一个系统范围的安装。
override - 强制覆盖不可变的挂载点(当前为“/”)。
posix = 0 - 关闭此安装点下的路径的区分大小写。
posix = 1 - 打开此安装点下路径的区分大小写(默认)。
text - 文件默认为CRLF文本模式行结尾。
user - Mount是用户安装。
虽然通常执行权限位用于评估可执行性,但是在根本不支持权限的文件系统(如FAT / FAT32)上,或者在支持它们的文件系统上忽略ACL时,这是不可能的(请参阅前面提到的acl挂载选项) 。在这些情况下,使用以下启发式方法来评估文件是否可执行:假定以某些扩展名(.exe,.com,.bat,.btm,.cmd)结尾的文件是可执行的。前两个字符以“#!”开头的文件也被认为是可执行的。 exec选项用于指示Cygwin挂载的文件是“可执行的”。如果exec选项与目录一起使用,则目录中的所有文件都是可执行的。此选项允许将其他文件标记为可执行文件,并避免打开每个文件以检查“#!”的开销。 cygexec选项与exec非常相似,但也阻止Cygwin为正常的Windows程序设置命令和环境变量,从而增加了另一个小的性能增益。与这些选项相反的是notexec选项,这意味着在该挂载点下不应将任何文件标记为可执行文件。
正确的根目录对于Cygwin的操作非常重要。在启动时评估默认根目录,因此不需要根目录的fstab条目。如果它错了,没有任何东西能按预期工作。因此,Cygwin自己评估的根目录被视为不可变的挂载点,并且无法在/ etc / fstab中重写...除非您认为自己确实知道自己在做什么。在这种情况下,请在/ etc / fstab文件的options字段中使用override标志。由于这是一件危险的事情,请自行承担风险。
/ usr / bin和/ usr / lib默认情况下也是由Cygwin DLL生成的自动挂载点,类似于计算根目录的方式。 / usr / bin指向安装Cygwin DLL的目录,/ usr / lib应该指向/ lib目录。这种选择是安全的,通常不应该改变。不需要fstab条目。
稍后调用mount时,nouser挂载点不可覆盖。除非您指定选项user,否则/ etc / fstab中给出的挂载点默认为nouser挂载点。这允许管理员设置某些路径,以便用户不会覆盖它们。相反,用户特定fstab文件中的所有挂载点都是用户挂载点。
第五和第六个字段被忽略。到目前为止,它们仅被指定用于保持类似Linux的fstab文件布局。
请注意,您不必为根目录指定fstab条目,除非您希望根目录指向完全不同的地方(希望您知道自己在做什么),或者是否要安装根目录带有特殊选项(例如,作为文本挂载)。
示例条目:
只是一个正常的挂载点:
c:/ foo / bar fat32二进制0 0
关闭区分大小写的文本模式安装的安装点:
C:/ foo / bar / baz ntfs text,posix = 0 0 0
Windows目录的挂载点,其中包含空格:
C:/ Documents 040和 040Settings / docs ext3 binary 0 0
没有ACL支持的远程目录的挂载点:
// server / share / subdir / srv / subdir smbfs binary,noacl 0 0
这只是一个评论:
#这只是一个评论
将cygdrive前缀设置为/ mnt:
无/ mnt cygdrive二进制0 0
每当Cygwin从POSIX路径生成Win32路径时,它就会使用挂载表中最长的匹配前缀。因此,如果C:安装为/ c并且也安装为/,那么Cygwin会将C:/ foo / bar转换为/ c / foo / bar。此转换通常仅在尝试派生POSIX等效当前目录时使用。否则,MS-DOS文件名的处理会绕过挂载表。
如果要查看会话中当前有效的挂载点集,可以不带参数调用Cygwin工具挂载:
例3.1。显示当前的安装点集
bash $ mount
f:/ cygwin / bin on / usr / bin类型系统(二进制,自动)
f:/ cygwin / lib on / usr / lib type system(binary,auto)
f:/ cygwin on / type system(binary,auto)
e:/ src / usr / src类型系统(二进制)
c:on / cygdrive / c类型用户(二进制,posix = 0,用户,noumount,auto)
e:on / cygdrive / e type user(binary,posix = 0,user,noumount,auto)
您还可以使用mount命令添加新的挂载点,使用umount删除它们。但是,由于它们仅在内存中记录,因此一旦您的上一个Cygwin进程结束,这些挂载点就会消失。
注意
将现有的较旧的Cygwin安装升级到Cygwin 1.7时,脚本会读取旧的系统装入点(存储在注册表的HKEY_LOCAL_MACHINE分支中),并从这些条目生成/ etc / fstab文件。请注意,从不生成/,/ usr / bin和/ usr / lib的条目。
注册表的HKEY_CURRENT_USER分支中的旧用户挂载点不用于生成/ etc / fstab。如果你想从你的旧条目创建一个特定于用户的/etc/fstab.d/${USER}文件,那么就有一个可用的脚本,bin / copy-user-registry-fstab。只需启动脚本,它将创建用户特定的fstab文件。停止所有Cygwin进程并重新启动它们,您可以像以前一样简单地使用旧的用户挂载点
本站信息来自网络,版权争议与本站无关,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 访问和下载本站内容,说明您已同意上述条款。联系:39070187@qq.com
评论