📄 287.html
字号:
<TABLE cellSpacing=0 cellPadding=3 width="95%"
align=center border=0>
<TBODY>
<TR>
<TD>
<TABLE cellSpacing=0 cellPadding=3 width="100%"
border=0>
<TBODY>
<TR>
<TD vAlign=top>
<p><FONT class=normalfont><B><font color=blue>MIRROR</font></B></FONT><BR><FONT class=smallfont color=#ff9900>2004-04-23 15:18 pm</FONT><BR><FONT class=normalfont>作者:作者<br>来自:Linux知识宝库<br>联系方式:无名<br><br>镜像远端节点上的档案
名称 <br>
mirror - 映射在远端节点上的档案 <br>
<br>
语法概述 <br>
mirror [旗标] -g节点:路径名称 <br>
mirror [旗标] [配置档案] <br>
<br>
描述 <br>
Mirror 是以 Perl 所写成的一套在执行它的机器与一台远端主机 <br>
之间使用 ftp 协定复制整个目录架构及其内容的软体。它藉由在 <br>
传输之前比较档案时间(time-stamps) 以及大小来避免拷贝不必要 <br>
的档案。除此之外,它还可以选择性地压缩(compress, gzip)以及 <br>
分割(split)档案。 <br>
<br>
它是写给档案维护人员使用的但也可以让任何想要经由 ftp 传输 <br>
大量档案的人使用。 <br>
<br>
无论如何叫用它, mirror 总是执行相同的几个基本步骤。它连线 <br>
到远端节点,在内部建立本地目标目录(target direction)的目录 <br>
列表,为远端目录建立一份目录列表,比较它们,建立任何必须的 <br>
子目录,传输适当的档案(设定它们的档案时间以符合远端节点上 <br>
的档案时间),建立任何符号链结,然後移除任何已不必要的物件 <br>
(objects) 最後并结束连线。 <br>
<br>
Mirror 可以处理符号链结但并非原本的链结。它不会复制拥有者 <br>
(owner)或是群组(group)的资讯。如果你需要这些选项其中的任何 <br>
一个,使用 rdist(1) 来取代它。 <br>
<br>
Mirror 系以上面所列语法概述其中的一种方法呼叫执行。 <br>
<br>
第一种方式是用来将一个远端目录撷取回现行目录。如果你要映射 <br>
的是一个目录,最好是以斜线('/') 来结束路径名称这样一来远端 <br>
递回列表(包含往下子目录的列表)会比较小或者是使用 -r 旗标 <br>
来禁止递回(参阅下面所述的 -g 旗标)。这个方式将不会使用到 <br>
mirror.defaults 档案。 <br>
<br>
在上面所列语法概述的第二种方式里,至少需要有一份最少数目的 <br>
参数而且 mirror 是由从配置档案(或标准输入)里读取的设定所 <br>
控制。如果可以在 mirror 执行档所在目录或是 PERLLIB 路径里 <br>
找到一个名为 mirror.defaults 档案,那麽它会首先被载入。这 <br>
用来为所有的配置档提供一般化的预设值。 <br>
<br>
Mirror 本来是为映射远端 Un*x 系统的档案而写,但是它已逐渐 <br>
成长(like topsy)。 <br>
<br>
选项 <br>
-d 启动侦错。如果下达这个参数超过一次,则侦错层级将会 <br>
递增。目前有用的最大层级是四。 <br>
<br>
-ppackage <br>
只映射所给定的档案包裹(package)。 此选项可下达多次 <br>
在这种情形下所有给定的档案包裹都将会映射。没有这个 <br>
选项的话,将映射所有的档案包裹。档案包裹 (package) <br>
是一个符合相对於 package 变数的正规表示式(regexp) <br>
<br>
-R 类似 -p 但是跳过所有的档案包裹直到它找到给定的档案 <br>
包裹为止。这对於从 mirror 执行失败而离开的地方重新 <br>
开始执行会有用。 <br>
<br>
-n 除了比较本地以及远端的目录之外不做任何事,不会执行 <br>
任何档案传输。将侦错层级设为二,所以你可以看到对於 <br>
将要执行之动作的追踪。 <br>
<br>
-F 使用暂存的 dbm 档案以储放关於档案的资讯。如果你要 <br>
映射一个非常大的目录这会有用。参阅 use_files 这个 <br>
变数。 <br>
<br>
-g节点:路径 <br>
<br>
取得给定节点上的所有档案。如果路径符合 .*/.+ 那麽 <br>
它是目录的名称而後面的部份则是所要取得之档案名称的 <br>
样板(pattern)。 如果路径符合 .*/ 则它是目录的名称 <br>
而且其所有的内容都将会被撷取。另一方面路径还是用在 <br>
'/' 的样板。如果你使用 host:/fred 的话,那麽将作出 <br>
一份远端主机上之 / 的完整目录列表。如果所有你想要 <br>
的是目录 /fred 的内容,则指定 host:/fred/ 才是。 <br>
<br>
-r 等於 -krecursive=false <br>
<br>
-v 印出 mirror 版本资讯细节并结束。 <br>
<br>
-T 强制将任何本地档案的时间重置成与远端档案相同。一般 <br>
仅用於以已存在档案内容之处初始一个映射区域的时候。 <br>
<br>
-U[档案名称] <br>
把所有上传的档案记录到所给的档案名称。记得 mirror <br>
切换到 local_dir 以执行其作业,所以它应该得是完整 <br>
(full)的路径名称。如果没有给任何参数,其预设值为 <br>
`pwd`/upload_log.day.month.year. <br>
<br>
-kkey=value <br>
盖过任何预设关键字的值(key/value) 。 <br>
<br>
-m 等於 -kmode_copy=true <br>
<br>
-t 等於 -ktext_mode=true <br>
<br>
-f 等於 -kforce=true <br>
<br>
-ssite 等於 -ksite=site <br>
<br>
-uuser 等於 -kremote_user=user 接著会提示你要求密码,并且 <br>
还会关闭本地回应(echo)以兹配合。这个密码是用来设定 <br>
remote_password 用的。 <br>
<br>
-L 只是产生一份输入的美观列表版本。 <br>
<br>
-G 从远端机器取得档案。本地以及远端目录必须在命令列上 <br>
给定。(这个选项已经不再支援。) <br>
<br>
-P 把档案放上远端机器。本地以及远端目录必须在命令列上 <br>
给定。(这个选项已经不再支援。) <br>
<br>
-C档案 指定配置档案。配合 -P 以及 -G 选项之配置档案之需。 <br>
(这个选项已经不再支援。) <br>
<br>
<br>
配置档 <br>
<br>
配置档会被剖析成一系列的叙述。空白行及以杂凑(hash)符号起始 <br>
的行会被忽略。每个叙述的形式都是 <br>
关键字=值 <br>
或是 <br>
关键字+值 <br>
<br>
你可以在关键字以及等号/加号的前面加上空白字元。所有紧跟在 <br>
等号/加号之後的每样事物都是一个值,这包含任何开头或结尾的 <br>
空白字元。等号的版本会将关键字设定为该值,而加号的版本会将 <br>
该值连结到预设值的结尾上。 <br>
<br>
一个叙述可以在除最後一行以外使用 ampersand('&') 字元作结束 <br>
以连续超过多行。尾随在 ampersand 之後的行,都会以移除所有 <br>
开头空白字元的方式附加到目前所在行的後面。 <br>
<br>
这里是一份关键字的列表而且它们预设的值放在 square brackets <br>
里面列出。以星号标出的选项目前还没有实作出来。 <br>
<br>
虽然有很多关键字可以设定,内建的预设值将可处理大部分的情况 <br>
。一般只需要设定 package, site, remote_dir 以及 local_dir <br>
即可。 <br>
<br>
package 对所要映射的档案包裹而言应该得要是个唯一的 <br>
名称。[''] <br>
<br>
comment 用在报告里。[''] <br>
<br>
skip 设定这个项目会使得该档案包裹被跳过。此值会 <br>
被报告为跳过的原因。(这比 commenting the <br>
entry out 来得容易。)[''] <br>
<br>
site 远端节点的节点名称或是 IP 位址。[''] <br>
<br>
remote_dir 所要映射的远端目录。参阅 recursed_hard。 <br>
[''] <br>
<br>
local_dir 本地目录。[''] <br>
<br>
remote_user 用在远端节点的使用者名称。[anonymous] <br>
<br>
remote_password 用在远端节点的密码。[user@localhostname] <br>
<br>
get_patt 所要撷取之远端路径名称的正规表示式。[.] <br>
<br>
exclude_patt 所要忽略之远端目录名称的正规表示式。[''] <br>
<br>
update_local 把 get_patt 设为 local_dir/*。这在如果你只 <br>
想要映射远端档案服务处中所选定的子目录时会 <br>
有用。[false] <br>
<br>
local_ignore 所要忽略之本地路径名称的正规表示式。对用来 <br>
跳过受限(restricted)的本地目录有用。[''] <br>
<br>
do_deletes 如果目的(destination) 档案不存在於来源树中 <br>
(source tree)中则删除之。[false] <br>
<br>
delete_patt 检查所要删除之本地路径名称的正规表示式。不 <br>
符合的名称不会被检查。所有以此样板所选出的 <br>
档案都会被检查是否符合 delete_excl 选项。 <br>
[.] <br>
<br>
delete_get_patt 把 delete_patt 设为 get_patt。[false] <br>
<br>
delete_excl 永不删除之本地路径名称的正规表示式。[''] <br>
<br>
save_deletes 把本地档案储存到 save_dir 里取代将其删除。 <br>
[false] <br>
<br>
save_dir 当本地档案不存在於远端节点的时候会被转移到 <br>
此处。[Old] <br>
<br>
max_delete_files <br>
如果有超过此数的档案会被删除,则不进行删除 <br>
动作,只发出警告。若此值系以百分比字元作为 <br>
结束的话则此值为取消删除前之档案的百分比。 <br>
[10%] <br>
<br>
max_delete_dirs <br>
如果有超过此数的目录会被删除,则不进行删除 <br>
动作,只发出警告。若此值系以百分比字元作为 <br>
结束的话则此值为取消删除前之档案的百分比。 <br>
[10%] <br>
<br>
max_days 如果 >0 的话,忽略比此日数更久以前的档案。 <br>
任何被忽略的档案将不会被传输或删除。[0] <br>
<br>
split_max 如果 >0 而且档案的大小比此值大,该档案会被 <br>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -