在Solaris操作系统中,通过rsh命令与磁带机配合实现远程备份,是一项经典而实用的技术方案。尽管当前SSH等更先进的备份工具已广泛应用,但在部分遗留系统环境中,这套流程仍能高效稳定运行。整体配置并不复杂,主要分为三个步骤:建立主机间信任关系、验证远程命令执行、编写备份Shell脚本。
第一步:建立信任通道
要远程执行命令,必须先让主机与客户机之间建立互信认证,否则无法访问。具体涉及两个配置:
首先,编辑/etc/hosts文件。
将远程主机的IP地址与主机名对应写入,保证名称解析正确。例如:
#
# Internet host table
#
192.168.1.1 机器名
接着,创建或编辑/.rhosts文件。
若文件不存在,使用touch /.rhosts命令创建。然后在文件中添加一行,格式为“主机名 用户名”。示例如下:
机器名 root
这一操作本质上是为主机向远程客户机授予免密访问权限。
第二步:远程调用验证
信任建立后,建议先手动验证远程命令是否可正常执行,而不要直接编写脚本。例如执行以下命令测试:
rsh 机器名 mt -f /dev/rmt/0 status
该命令用于检查远程主机磁带机状态。若返回正常信息,表明链路通畅。若磁带机加载异常,可尝试先刷新设备映射:
devfsadm -c tape
此问题在老旧硬件上偶尔出现,提前处理可节省故障排查时间。
第三步:编写备份脚本
验证通过后,可将备份流程封装为Shell脚本。以下是一个典型示例,逻辑清晰:先倒带,然后依次对各分区执行ufsdump备份。注意每次备份前需保留几秒延时,以确保磁带机准备就绪:
echo
sleep 5
rsh 机器名 mt -f /dev/rmt/0 rew
echo "***root backup start***"
ufsdump 0uf 机器名:/dev/rmt/0n /dev/rdsk/c0t0d0s0
echo "***var backup start***"
ufsdump 0uf 机器名:/dev/rmt/0n /dev/rdsk/c0t0d0s3
echo "***opt backup start***"
ufsdump 0uf 机器名:/dev/rmt/0n /dev/rdsk/c0t0d0s4
……
实际部署时,请根据环境替换分区与设备路径。脚本运行后,将逐分区打印备份进度,结合磁带机指示灯,使整个过程清晰可见。这种方法虽显传统,但在特定场景下仍具很高实用性。
