Posted on November 18, 2015 10:25 pm
 |  Asked by Scott Scott
 |  10896 views
0
1
Print Friendly, PDF & Email

I’m trying to update a Arista 7148 with EOS-4.13.11M.swi.

While copying the image, I saw this:

./EOS-4.13.11M.swi: No space left on device
[admin@maulab-arista7148-2 ~]$ df -lh
Filesystem Size Used Avail Use% Mounted on
rootfs 148M 148M 0 100% /
none 148M 148M 0 100% /
tmpfs 148M 456K 148M 1% /.deltas
tmpfs 148M 456K 148M 1% /tmp
tmpfs 148M 456K 148M 1% /var/run
tmpfs 99M 0 99M 0% /var/core
tmpfs 99M 12M 87M 12% /var/log
tmpfs 1.0M 52K 972K 6% /dev
/dev/sda1 870M 604M 267M 70% /mnt/flash

Where do I find the EOS-4.13.11M.swi image in /? I’d like to delete it.

0
Posted by Alexandru
Answered on November 20, 2015 9:54 am

You could use the ”find” utility to locate any files. This should give you the full path and you can use that to delete it.

In your case you could do something like this:

bash sudo find / | grep EOS-4.13.11M.swi 

This should output the location of the file and then you can run

bash rm PATH_TO_FILE 

to delete it.

Hope this helps.

Example of command and output:

sr222…04:32:53#bash sudo find / | grep testfile.file
/mnt/flash/testfile.file
sr222…04:33:07#bash sudo rm /mnt/flash/testfile.file

(Alexandru at November 20, 2015 12:34 pm)
0
Posted by Scott Scott
Answered on November 21, 2015 3:29 pm

That would work, if / was not full.

switch#bash sudo find / | grep EOS-4.13.11M.swi
aufs au_xino_do_write:370:find[28366]: I/O Error, write failed (-28)
aufs au_xino_write:406:find[28366]: I/O Error, write failed (-5)
’sudo find / | grep EOS-4.13.11M.swi’ returned error code:1
switch#df -lh

Filesystem Size Used Avail Use% Mounted on
rootfs 148M 148M 0 100% /
none 148M 148M 0 100% /
tmpfs 148M 456K 148M 1% /.deltas
tmpfs 148M 456K 148M 1% /tmp
tmpfs 148M 456K 148M 1% /var/run
tmpfs 99M 0 99M 0% /var/core
tmpfs 99M 14M 85M 15% /var/log
tmpfs 1.0M 52K 972K 6% /dev
/dev/sda1 870M 424M 447M 49% /mnt/flash

0
Posted by Alexis Dacquay
Answered on November 30, 2015 8:51 pm

Hi Scott,

 

How did you copy the file to the switch ? That would indicate you where it’s now located.

For example, if you did a copy on the switch itself from a remote location to the switch, then it’s probably on the flash:

- in EOS CLI it would be flash:

- in bash it would be: /mnt/flash/

 

To delete the file you therefore need to do either:

- in EOS CLI: ”delete flash:EOS-4.13.11M.swi”  or ”bash sudo rm /mnt/flash/EOS-4.13.11M.swi”

- in bash CLI: ”rm /mnt/flash/EOS-4.13.11M.swi”

 

Regards,

Alexis

0
Posted by Jeremy Georges
Answered on November 30, 2015 11:11 pm

Scott,

The root filesystem is full for some reason…and in the Unix world, that can wreck havoc. As your console messages show, its an overlay filesystem (AUFS). Once its full, it will be challenging to use utilities that may try to write to the file system (even if its just a named pipe, temp file, lock file, spawning procs, etc.etc).

Since RootFS is in RAM on Arista devices, it will clear when you do a reboot. The only nonvolatile memory is the internal flash /dev/sda1.

Can you do a reboot and then try loading the new version? That will immediately address the issue.

Also, note that with the later releases of 4.13, some enhancements were added to address some corner cases with AuFS  to minimize some ’out of space’ issues.

-Jeremy

-1
Posted by Vikram
Answered on December 1, 2015 4:10 am

Hi Scott,

Could you please advise what code are you currently running on this device? If possible could you please paste the output of "show version". Thanks

0
Posted by Scott Scott
Answered on December 1, 2015 6:40 am

I cannot reboot the switch without scheduling downtime.

The new version will probably not load because I could not copy the image to the / filesystem.

Arista DCS-7148SX-F
Hardware version: 04.00
Serial number: JFL08260191
System MAC address: 001c.7302.474e

Software image version: 4.7.7
Architecture: i386
Internal build version: 4.7.7-470791.EOS477release
Internal build ID: 91635ce6-88e9-4d07-abe0-3412ea936473

0
Posted by Alexis Dacquay
Answered on December 1, 2015 3:10 pm

Scott,

Is your ”show version” output from the live switch or a historical capture ? If recent, could you run ”dir” ? If you cannot run any command and are like blind, then one trick to make space could be to delete all the .swi files (in bash: sudo rm /mnt/flash/*.swi) on flash before uploading the new image. The risk is that if your upload fails, then you wouldn’t have any secondary image on the disk.

If you know exactly which file is currently loaded (output from ”show boot-config”), then you could make a regexp to exclude your running image:

 

Arista#show boot-config
Software image: flash:/EOS.swi    <--- file you might want to preserve
Arista#bash ls -la /mnt/flash/*.swi
-rwxrwx--- 1 root eosadmin 364711681 Jan 22 2015 /mnt/flash/EOS-4.14.6M.swi
-rwxrwx--- 1 root eosadmin 385352877 Apr 22 2015 /mnt/flash/EOS-4.15.0.swi
-rwxrwx--- 1 root eosadmin 365114672 Jan 23 2015 /mnt/flash/EOS-mwang.swi
-rwxrwx--- 1 root eosadmin 414952861 Nov 25 09:59 /mnt/flash/EOS.swi   <--- file to preserve
Arista#bash ls -la /mnt/flash/*.swi | grep -v EOS.swi
-rwxrwx--- 1 root eosadmin 364711681 Jan 22 2015 /mnt/flash/EOS-4.14.6M.swi
-rwxrwx--- 1 root eosadmin 385352877 Apr 22 2015 /mnt/flash/EOS-4.15.0.swi
-rwxrwx--- 1 root eosadmin 365114672 Jan 23 2015 /mnt/flash/EOS-mwang.swi
then delete the files, except (-v option) the file you want to keep (EOS.swi in this example)
Arista#bash ls /mnt/flash/*.swi | grep -v EOS.swi | xargs -d 'n' rm -f

Verification
Arista#bash ls /mnt/flash/*.swi
/mnt/flash/EOS.swi    <--- only remaining file, the one desired to stay.

I understand that you might not be able to execute everything or anything above if the commands such as ”ls” cannot execute because of the full rootfs.

 

The rootfs being full is an serious situation, it could have impact on the control-plane and therefore on ability for the dataplane to learn/get programmed forwarding decisions, in particular MLAG. Please raise your change request ASAP either for an EOS upgrade (long term solution), or at least a reload (short-term solution). There could be script to clear some of the filled space (temporarily), but it would be service impacting, although possibly shorter than an upgrade. The recommendation is the upgrade

 

Regards,

 

0
Posted by Vikram
Answered on December 1, 2015 5:24 pm

Hi Scott,

Thank you for posting the output of ”show version” however it does look a bit incomplete. Apologize for not being explicit before but we are specifically looking for the last few lines of the output of ”show version” that indicates the amount of memory on the device. If possible could you please repost the complete output. Thanks for all your help and patience.

0
Answered on November 21, 2018 5:50 pm

Hello guys,

In my case, I clear the tech-support archives localized in /mnt/flash/schedule/tech-support and changed time and max log files with command: schedule tech-support interval 90 max-log-files 80 command show tech-support

router01#bash

Arista Networks EOS shell

[router01 ~]$ cd /mnt/flash/schedule/tech-support
[router01 schedule]$ls
router01_tech-support_2018-11-21.1315.log.gz
router01_tech-support_2018-11-21.1445.log.gz
[router01 schedule]$ rm -f router01_tech-support*
[router01 schedule]$ls
[router01 schedule]$ exit
logout

router01#conf t
router01#schedule tech-support interval 90 max-log-files 80 command show tech-support

Best regards,
Everton Amaral

Post your Answer

You must be logged in to post an answer.