ASA 8.x:排除故障ASA闪存错误,%Error opening disk0:/.private/startup-config (Read-only file system) Error exec

本文档详细介绍了在思科ASA防火墙中遇到闪存错误和文件系统损坏时的诊断步骤及解决方案。包括运行fsck工具、格式化闪存、手动更换闪存卡等方法,并提供了常见错误消息及其处理建议。此外,还讨论了闪存的热交换、第三方闪存兼容性以及误删除后的恢复步骤。

https://www.cisco.com/c/zh_cn/support/docs/security/asa-5500-x-series-next-generation-firewalls/113266-asa-flash-error-ts.html

相关信息
简介

本文描述生成由于思科ASA闪存损坏的不同的可能的错误并且指向可能的解决方案。
先决条件
要求

本文档没有任何特定的要求。
使用的组件

本文档中的信息基于以下软件和硬件版本:

Cisco ASA 5500系列与软件版本8.0及以后

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
规则

有关文档规则的详细信息,请参阅 Cisco 技术提示规则。
背景信息

思科ASA维护其在内部闪存内存的文件系统并且存储在闪存的所有文件。这是内存卡插入到在ASA的一slot。此的产能取决于ASA硬件型号。在思科ASA数据表或宣传单页的表8参考技术规范部分欲知更多信息。此内存指闪存或disk0。

当另外的闪存是需要的时,您可能使用外部闪存单词。除了ASA 5505型号,其他ASA在5500系列模拟有在设备的尾端的一外部微型闪存卡slot,可以由用户容易地访问,不用需要打开设备。此闪存卡也用于保存配置文件并且指disk1。

如果闪存文件系统由设备适当地访问并且适当地工作,设备指示此与在闪存LED的一固体绿在设备的前面板。

此文件系统内容可以验证与任何这些命令:

dir —显示当前目录的内容。

注意: 默认当前目录是flash: /。

show flash:—显示内部闪存内存的内容。

显示disk0 —显示内部闪存内存的内容。

显示disk1 —显示外部闪存的内容。

缓和思科ASA闪存损坏问题

当有与闪存文件系统的访问的时问题,您能完成解释故障排除程序的这些步骤。
运行“fsck”工具

期限fsck是文件系统检查的一缩略语。此工具自动地通常运行在设备的启动并且为在文件系统内的所有反常现象验证在任何异常事件的情况下。它解决在作为恢复文件的文件系统和保存内的问题。您能执行有fsck flash:的fsck工具命令。

fsck工具修复一个损坏的文件系统。一成功的fsck操作导致此输出:

CiscoASA# fsck flash:

Checking the boot sector and partition table...

Checking FAT, Files and Directories...

Reclaiming unused space...

Updating FAT...

Destroying old disk cache...

Initializing disk0: cache, please wait......Done.

fsck of flash: complete

在所有文件系统损坏问题的情况下, fsck工具生成恢复文件即fsck00??.rec。如果能查看在闪存的一定数量的这些恢复文件,这些可能结果由于ASA也许太经常重新通电的一自动化的测试进程。一般来说,这些文件不包含任何重要数据,并且可以用delete命令安全删除。示例显示:

CiscoASA#删除fsck0012.rec

注意: 自动FSCK工具运行在启动,因此您能看到这些恢复文件,即使您没有手工输入fsck命令。

有这些恢复文件在闪存能被看到新近地被定购的思科ASA设备的某些实例。show flash片断:显示:

96     -rwx 32768       00:00:00 Jan 01 1980 FSCK0000.REC
97     -rwx 32768       00:00:00 Jan 01 1980 FSCK0001.REC
99     -rwx 32768       00:00:00 Jan 01 1980 FSCK0002.REC
100    -rwx 32768       00:00:00 Jan 01 1980 FSCK0003.REC

这归结于制造测试,并且此行为在Cisco Bug ID CSCtf63643 (仅限注册用户)被归档。当他们创建与文件描述初始化到零由FSCK工具时,这些FSCK文件定日期了作为1980年由于。这些文件可以删除,并且,在设备重新启动,这些文件再后没出现。如果这些文件再出现,您建议参加格式行动。
格式化闪存

如果闪存文件系统坚持无答复在尝试fsck工具以后,您能格式化闪存清除所有现有文件和镜像。闪存系统可以格式化与格式flash:命令。

注意: 在这些操作的检查,在您执行格式工具前:

复制运行的配置对tftp-server与tftp命令复制的运行或

复制启动配置对tftp-server与tftp命令的copy start。

使用从输出的一个备份show version命令;您需要使用激活密钥。

有进行工作和一样格式的另一相似的命令。它显示此处:

CiscoASA# erase flash:

此命令覆盖所有文件并且清除文件系统,包含隐藏的系统文件,然后重新安装文件系统。在Cisco ASA 5500系列安全工具上, erase命令毁坏在磁盘的所有用户数据有0xFF模式的。相反,仅format命令重置文件系统控制结构。当使用时清除选项,删除所有相关的信息对许可授权的。您需要拿来激活密钥为了保留在思科ASA的许可证。参考的思科许可授权的网页(仅限注册用户)欲知更多信息和为了请求激活密钥。

注意: 您需要有有效思科用户凭证为了访问此网页。
手工替换闪存卡

如果上一个步骤都不工作,则您能设法手工去除不正确的闪存卡和用另一张工作的闪存卡替换它。参考一个详细的逐步程序的这些文档为了执行此任务:

删除和安装系统CompactFlash

删除和安装用户CompactFlash

注意: 在您设法手工替换卡前,您建议与为做进一步的故障排除Cisco TAC联系。设备应该是在有效思科合同下为了打开TAC服务请求。
错误消息

在此部分,与闪存文件系统损坏涉及的广泛已知错误消息列表显示。
文件分配表也许是损坏的。推荐运行“fsck disk0:"

当show flash命令被执行时,此错误发生。它不显示在输出,然而此错误消息的任何文件。这是命令的输出示例: :

ASA#show disk0:
-#- --length-- -----date/time------ path

23273472 bytes available (39673856 bytes used)
File Allocation Table might be corrupted. Recommend running "fsck disk0:"

此行为是登陆的Cisco Bug ID CSCsl12010 (仅限注册用户)。当空闲存储器低(近0), show flash不指示任何文件并且推荐参加FSCK行动。在这种情况下,请等待一些时间,以便某个内存变得可用由运行应用程序。再运行show flash命令并且检查某个内存是否是可用的。如果上一个情况战胜,请运行FSCK工具。通常,当您设法保存在设备时的配置此错误能也发生。

别的烦扰, Cisco Bug ID CSCsg16431 (仅限注册用户),被归档寻址此行为一旦FWSM。在您运行格式工具后,此错误在FWSM的升级以后结果,并且可以是解决的。
%Error Opening disk0:/ (没有这样设备)

当此命令发出时,此错误发生了:

ASA# dir all-filesystems
%Error opening disk0:/ (No such device)
%Error opening system:/ (No such device)
%Error opening cache:/ (No such device)

无效DOS媒体或没有媒体插槽错误

当此命令发出时,此错误发生了:

ASA# fsck disk0:
Initializing disk0: cache, please wait...Failed (Invalid DOS media or no media in slot
error).

Internal error, inode table initialization for disk0: failed with error Invalid DOS media
or no media in slot
%Error checking disk0: (Invalid DOS media or no media in slot)
WARNING: Restoring security context mode failed.

失败初始化Inode表

当此命令发出时,此错误发生了:

ASA# show flash:
Initializing disk0: cache, please wait...Failed (Invalid DOS media or no media in slot
error).

%Error show flash: (Failed to initialize the Inode table)

ASA 8.3在安装存储器升级和复制文件以后重新启动

在启动过程之后的ASA重新启动在软件版本以后完成和升级到8.3。此行为被观察并且被归档作为Cisco Bug ID CSCtg94369 (仅限注册用户)。为了纠正此,请在2 GB以后删除原始现有内存存储器升级对8.3版本。
ERROR:找到的闪存数据档案损坏

当您启动思科ASA设备时,此错误消息能出现:

ERROR: flash datafile corrupt   found magic # 0x55aa55aa expected 0x1234567a

错误,当发出的wr mem命令

当您设法保存配置用wr mem命令,此错误出现:

%Error Opening disk0:/.private/startup-config (只读文件系统)

执行命令的错误

为了解决此,请执行一文件系统检查,以便错误可以删除。此指令序列被提交供您的参考。

CiscoASA# wr mem
Building configuration...
Cryptochecksum: 2e24ca48 2496fe80 51a4ecbb 81a2dba5

%Error opening disk0:/.private/startup-config (Read-only file system)
Error executing command
[FAILED]
CiscoASA# fsck disk0

fsck of disk0: complete
CiscoASA#
pehac-a0-df01# fsck flash

fsck of flash: complete
CiscoASA# wr mem
Building configuration...
Cryptochecksum: 2e24ca48 2496fe80 51a4ecbb 81a2dba5

22851 bytes copied in 3.400 secs (7617 bytes/sec)
[OK]

失败的部门读取错误

当write mem命令被执行时,此错误出现。

%Error opening disk0:/.private/startup-config (Failed Sector Read) 
Error executing command [FAILED]

格式化闪存驱动器为了解决此问题。
有用的FAQ
能否热交换闪存驱动器?例如,当思科ASA启动和运行时,更换闪存驱动器是否是可能的?

总是推荐您关闭思科ASA,当您插入闪存驱动器时。这禁用所有运行进程并且允许ASA认可从启动程序的闪存。
能否使用在思科ASA的第三方闪存驱动器?

在您使用所有第三方闪存设备前,您需要验证与思科的兼容性和验证,如果由思科审批。思科推荐得到从思科授权的卖主的闪存驱动器,以便可以支持。参考的第三方组件-思科策略欲知更多信息。
执行什么,如果I偶然地erase flash错误地?

您需要完成这些步骤。

保存running-configuration对startup-configuration。

格式化闪存驱动器。

通过TFTP传输恢复所有镜像文件。

格式化闪存影响在思科ASA的运行连接?

不只要您不重置方框,不影响它,因为相关的信息对那些连接位于RAM。
能否使用外部闪存作为内部闪存?

可以。您需要完成这些步骤。

复制disk0文件对tftp。

从tftp复制他们到disk1。

相应地设置引导程序路径。

也有另一个选项。您能也复制文件直接地从内存到外部内存用copy disk0 disk1命令。

相关信息

Cisco ASA 支持页
技术支持和文档 - Cisco Systems
这个错误表明 `debugfs` 在尝试读取 `/opt/sys/bin/startup/2-a-disk-recovery` 时,**未找到该文件或路径**。可能的原因包括路径错误、文件系统未正确加载,或文件系统本身存在问题。以下是详细分析和解决方案: --- ### **可能原因** 1. **路径错误** - 目标路径 `/opt/sys/bin/startup/2-a-disk-recovery` 可能不存在,或路径层级有误(如目录名拼写错误)。 - 文件系统中的路径分隔符可能为 `/` 或 `\`(但 `debugfs` 通常使用 `/`)。 2. **文件系统未正确加载** - 镜像文件可能未以读写模式打开,或文件系统未被 `debugfs` 正确识别。 - 文件系统可能损坏,导致目录结构无法解析。 3. **文件系统类型限制** - 如果镜像文件系统是 `ISO9660`、`FAT` 等不支持 `debugfs` 的类型,会报类似错误。 4. **符号链接或硬链接问题** - 如果路径中包含损坏的符号链接,`ext2_lookup` 可能无法解析。 --- ### **解决方案** #### 1. **检查路径是否存在** - **列出目标目录内容**: ```bash debugfs: ls /opt/sys/bin/startup ``` - 如果目录不存在,需先创建: ```bash debugfs: mkdir /opt/sys/bin/startup ``` - **检查路径层级**: - 确认 `/opt/sys/bin/startup` 是目录而非文件: ```bash debugfs: stat /opt/sys/bin/startup ``` #### 2. **重新以读写模式打开镜像** - 确保使用 `-w` 参数: ```bash sudo debugfs -w /path/to/image.img ``` - 如果仍失败,可能是文件系统内部标记为只读(需修复)。 #### 3. **验证文件系统类型** - 检查镜像的文件系统类型: ```bash file -s /path/to/image.img ``` - 如果文件系统是 `ext2/3/4`,`debugfs` 适用;如果是 `NTFS/FAT`,需改用 `ntfsfix` 或 `dosfsck`。 #### 4. **修复文件系统错误** - 运行 `fsck` 检查并修复: ```bash sudo fsck.ext4 -f /path/to/image.img # 假设是 ext4 ``` - 修复后重新挂载或用 `debugfs` 打开。 #### 5. **手动导航到文件** - 如果路径复杂,逐步导航: ```bash debugfs: cd /opt debugfs: cd sys debugfs: cd bin debugfs: cd startup debugfs: ls ``` - 确认当前目录下是否存在目标文件。 #### 6. **检查符号链接** - 如果路径包含符号链接,验证其有效性: ```bash debugfs: stat /opt/sys/bin/startup ``` - 如果输出中包含 `symbolic link`,检查链接目标是否存在。 --- ### **其他调试方法** 1. **使用 `debugfs` 的 `dump` 命令** - 尝试导出文件(即使 `cat` 失败): ```bash debugfs: dump /opt/sys/bin/startup/2-a-disk-recovery /tmp/dumped_file ``` - 如果导出成功,说明文件存在但 `cat` 无法解析。 2. **查看文件系统日志** - 如果是 `ext4` 文件系统,检查日志: ```bash sudo dumpe2fs /path/to/image.img | grep -i error ``` 3. **尝试绝对路径和相对路径** - 某些情况下,`debugfs` 对路径的解析可能因上下文不同而变化。 --- ### **注意事项** - **权限问题**:即使镜像文件权限为 `-rw-rw-r--`,文件系统内部的目录权限可能限制访问。检查目录权限: ```bash debugfs: stat /opt/sys/bin ``` - **文件名大小写**:Linux 文件系统区分大小写,确认文件名拼写(如 `2-a-disk-recovery` vs `2-A-DISK-RECOVERY`)。 - **文件系统挂载点**:如果镜像已挂载,直接通过挂载点访问可能更可靠: ```bash sudo mount -o loop /path/to/image.img /mnt ls -l /mnt/opt/sys/bin/startup/ ``` --- ### **示例完整流程** ```bash # 1. 以读写模式打开镜像 sudo debugfs -w /path/to/image.img # 2. 检查路径是否存在 debugfs: ls /opt/sys/bin/startup # 3. 如果目录不存在,创建它 debugfs: mkdir /opt/sys/bin/startup # 4. 重新尝试写入文件 debugfs: write /home/udeer/.../2-a-disk-recovery /opt/sys/bin/startup/2-a-disk-recovery # 5. 验证文件是否写入成功 debugfs: cat /opt/sys/bin/startup/2-a-disk-recovery ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值