I have a 2801 router with advanced ip services installed on it (12.4-15T). After rebooting and getting ready to configure I noticed an NVRAM error message:
NV_BLOCK_INITFAIL: Unable to initialize the geometry of NVRAM
The recommended action is to reduce the configurations in the NVRAM
As I do not have any, I tried to copy over the running-config which appears to be fine, but it fails with the following:
startup-config file open failed (Unknown error 0).
Even trying to "show file info nvram" it is returning %Error opening flash:nvram (file not found).
Is this error fixable, do I need to open a TAC?
I also found a BUG - CSCsj27963. The IOS you are running is affected.
Symptoms:A router running Cisco IOS may show the following error when doing
a "write memory":
%SYS-4-NV_BLOCK_INITFAIL: Unable to initialize the geometry of nvram
Conditions:This happens when the size of config is greater than the size of
Trigger:This will happen while attempting to store the config of size larger
than size of the nvram. error messages observed during write memory.
Impact:The entire config will be lost without warning and nvram is corrupted
too after a reload.
If this error message is seen during write memory,
1. Enable 'service compress-config' to compress the configuration before 'write memory'.
This compressed config will take less nvram space, due to which nvram geometry will be
a.) erase the nvram by write erase
b.) unconfigure some configs to fit the configs into nvram.
c.) Issue write memory
Repeat steps a, b, c until this error message vanish.
3. On platforms that support it, "boot config ..." can be used to save the
configuration to another file system other than nvram.
4. If the router has already been reloaded "write erase" should reinitialise
nvram and allow "write memory".
Further Problem Description :
This will have impact only when we create 'startup-config' file (through write
mem or through copy command)
of size that occupies almost all the nvram, leaving only 0 to 1023 free bytes.
In this condition, if we reload the router, the startup-config won't be
recognized, and won't be applied into running-config.
This will have impact only when platforms store that much huge startup-config
file. This issue is a very corner case.
Require CCO ID.
Follow the workaround given.