三、异地备份
我们知道,通常可用FTP命令在两台主机间传输数据,但一般是通过交互方式实现的,即需要手工输入目标主机的IP地址、用户名、口令等。显然,这不符合自动备份的要求。所幸的是,我们可以通过编写一个.netrc的文件来达到目标。这一文件必须命名为.netrc,且必须存放在启动FTP命令的机器上的用户注册目录中,该文件的权限应禁止组内或其它用户进行读访问。这样,当用户使用FTP命令的时候,系统将会在该用户的注册目录中寻找.netrc文件,如果能够寻找到,将会首先执行该文件,否则,会交互式地提示用户输入用户名、口令等。
在使用FTP命令之前,应先在另一台作备份用的UNIX机器上建一目录,以容纳备份文件,本文建的目录是/pub 。需要指出的是,为了加快备份速度,两台主机之间的传输速率应尽可能的高,最好位于同一局域网上。
.netrc文件内容如下:
machine host2
# host2为作备份用的主机名
login oracle
#oracle为备份主机上的一个用户
assword oracle
#oracle用户的口令为oracle
macdef init
#定义一个名为init的宏,它将在自动注册进程的最后被执行
in
#文件的传输方式设为二进制
lcd /backup
# 进入本地工作目录/backup
cd /pub
# 进入备份主机目录/pub
mput ?场 ?
# 将/backup目录下的所有文件传输至备份主机
ye
#退出FTP会话进程
.netrc文件编写完成后,使用下述命令:
chmod 600 .netrc
这样,.netrc文件就只能被该用户所访问。