Redback路由器的启动涉及以下三个文件:redback.bin、redback.cfg、redback.cfg.bak
[local]sx-szmfc-s1200-bas1#directory Contents of /flash/ total 88 ---------- 1 root 0 23401 Jun 22 14:39 buf -rw-r--r-- 1 root 0 6730 Aug 4 11:27 redback.bin -rw-r--r-- 1 root 0 5962 Aug 4 11:27 redback.cfg -rw-r--r-- 1 root 0 5962 Aug 4 11:27 redback.cfg.bak -rw------- 1 root 0 185 May 18 16:10 snmpEngine.cfg -rw------- 1 root 0 185 May 18 16:10 snmpEngine.cfg~
|
可以看到,涉及启动的三个文件redback.bin、redback.cfg、redback.cfg.bak,其最后修改日期均相同,说明这三个文件是同时生成的,其中redback.bin是一个二进制可执行文件,它的存在可以使路由器快速加载配置,较文本形式的redback.cfg要快得多。
执行命令#save configuration之后,路由器按顺序进行如下操作:
1. 将/flash目录下的redback.cfg,保存为redback.cfg.bak文件,并替换原文件
2. 将当前内存中实时运行的配置保存为/flash/redback.cfg文件,并替换原文件
3. 对第二步保存的/flash/redback.cfg文件进行编译,生成redback.bin文件,并替换原文件
对上面的操作进行一下验证:
当前内存中正在运行的实时配置中timeout session idle 100,我们将其改为120分钟超时:
[local]sx-szmfc-s1200-bas1(config)#timeout session idle 120
|
然后保存配置:
[local]sx-szmfc-s1200-bas1(config)#end [local]sx-szmfc-s1200-bas1#save conf Save to file: redback.cfg Target file exists, overwrite? y [local]sx-szmfc-s1200-bas1#directory Contents of /flash/ total 88 ---------- 1 root 0 23401 Jun 22 14:39 buf -rw-r--r-- 1 root 0 6730 Aug 5 10:10 redback.bin -rw-r--r-- 1 root 0 5962 Aug 5 10:10 redback.cfg -rw-r--r-- 1 root 0 5962 Aug 5 10:10 redback.cfg.bak -rw------- 1 root 0 185 May 18 16:10 snmpEngine.cfg -rw------- 1 root 0 185 May 18 16:10 snmpEngine.cfg~
|
首先可以看到,三个文件的最后修改时间都是一样的,并显示为当前执行save conf命令时的时间。
然后我们查看一下redback.cfg.bak的文件内容:
[local]sx-szmfc-s1200-bas1#more redback.cfg.bak
|
其配置就是我们更改超时之前的:timeout session idle 100
再来查看一下redback.cfg的文件内容:
[local]sx-szmfc-s1200-bas1#more redback.cfg
|
其配置是我们更改超时为120分钟之后的:timeout session idle 120.
上面的验证说明了执行save conf命令后,redback路由器的行为。
下面看一下这三个文件在启动时的作用:
1. 删除redback.bin,然后重启路由器
[local]HETSH-MA-CMNET-NA01-SE800#delete redback.bin Are you sure you want to delete redback.bin ?y [local]HETSH-MA-CMNET-NA01-SE800#dir Contents of /flash/ total 20 -rw-r--r-- 1 root 0 4137 Aug 2 15:30 redback.cfg -rw-r--r-- 1 root 0 3932 Aug 2 15:30 redback.cfg.bak -rw-r--r-- 1 root 0 678 Jul 14 2007 redback.cfg_103336
|
系统正常重启后,可以看到这个过程中没有自动生成redback.bin文件,并且内存中的运行配置没有发生变化,如下所示:
login: ericsson Password: [local]HETSH-MA-CMNET-NA01-SE800>en [local]HETSH-MA-CMNET-NA01-SE800#dir Contents of /flash/ total 20 -rw-r--r-- 1 root 0 4137 Aug 2 15:30 redback.cfg -rw-r--r-- 1 root 0 3932 Aug 2 15:30 redback.cfg.bak -rw-r--r-- 1 root 0 678 Jul 14 2007 redback.cfg_103336
|
2. 第一步中我们已经删除了redback.bin文件,下面删除redback.cfg文件,然后重启:
[local]HETSH-MA-CMNET-NA01-SE800#delete redback.cfg Are you sure you want to delete redback.cfg ?y [local]HETSH-MA-CMNET-NA01-SE800#dir Contents of /flash/ total 10 -rw-r--r-- 1 root 0 3932 Aug 2 15:30 redback.cfg.bak -rw-r--r-- 1 root 0 678 Jul 14 2007 redback.cfg_103336 [local]HETSH-MA-CMNET-NA01-SE800#reload The "reload" command will reboot all cards on this system Do you really want to reload? (y/n) y
|
重启完成后,进入系统查看:
[local]Redback#dir Contents of /flash/ total 10 -rw-r--r-- 1 root 0 3932 Aug 2 15:30 redback.cfg.bak -rw-r--r-- 1 root 0 678 Jul 14 2007 redback.cfg_103336 [local]Redback#show config Building configuration... Current configuration: ! Configuration last changed by user '%RCM%' at Wed Aug 4 15:29:02 2010 ! no service multiple-contexts ! context local ! no ip domain-lookup logging console ! ! ** End Context ** logging tdm console logging active logging standby short ! !Ethernet connectivity fault management configuration ! no service console-break ! service crash-dump-dram ! no service auto-system-recovery ! End
|
发现系统当前的运行配置为出厂缺省配置,这就验证了下面的观点:
1. 系统启动时,首先查找redback.bin文件,若有则调入并正常启动
2. 若找不到redback.bin文件,则查找redback.cfg文件,若有则调入并正常启动
3. 若以上两个文件均找不到,则恢复出厂缺省配置
4. 以上说明了redback.cfg.bak文件对系统启动不起实际作用,只是单纯地作为一个配置备份手段。
5. 找不到redback.bin、以及redback.cfg文件,系统即恢复出厂缺省配置,这给了我们恢复系统密码的一个思路,ok模式下删除这两个文件即可,但要保证手中已有设备配置,或系统中有redback.cfg.bak文件,以便系统启动后恢复业务。这只是纯粹的理论推断,有待验证(ok模式下似乎并不支持文件操作)。
感谢阿哲的远程现场操作。
张蒙
2010/8/5
阅读(2373) | 评论(0) | 转发(0) |