No Space left on device

Hello Everyone,

I have a custom application on my Beagle Bone Black and it works perfectly in-house, but When we ship the product to the customer, It works for a few months and is not working.

This time we got our product back, I tried to connect the Beagle Bone Black through Putty and did some inspection of memory. Please find the below details for diagnostics

Filesystem      Size  Used Avail Use% Mounted on
udev            215M     0  215M   0% /dev
tmpfs            49M  5.3M   44M  11% /run
/dev/mmcblk1p1  3.5G  3.3G     0 100% /
tmpfs           242M     0  242M   0% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           242M     0  242M   0% /sys/fs/cgroup
tmpfs            49M     0   49M   0% /run/user/1000

on clicking tab for serial terminal it says: “-bash: cannot create temp file for here-document: No space left on device” .

Please Can someone guide me on this and give some suggestion or troubleshooting help?

Looking forward to hearing from you.
Thanks and Regards,
Sai Santha

Hi @santhaks1 by default the eMMC is only 4GB in size, your currently maxed out…

Important questions, are you using everything in the image? X11/etc, Cloud9, etc… As we don’t know what your application is, this is only something you can answer. We ship multiple variations, from LXQT, IOT, Console, etc each (from big to small in size usage.)

Regards,

On the assumption that it is logging that has filled the device then I would suggest:

  • get your application to create new log file every day rather than just filling one file with a couple of gigabytes
  • run a cron job daily to delete any log file over say one month old
    Iain

Hi @RobertCNelson,

Thank you for the response.
Could you please guide or give me direction to remove cloud9, apache and X11, etc… from the Beagle Bone Black. Since I am not using those tools. I should remove them from Beagle Bone Black.

Looking forward to hearing from you.

Thanks and Regards,
Sai Santha

You can use “apt” to remove applications:

sudo apt remove c9-core-installer --purge

But, if your not using any of that, why are you using a default image? We have Console and IOT image that are much smaller then the default lxqt image…

Regards,

Hi @RobertCNelson ,

Thank you for quick response.

I am using it for Scheduling the incoming serial data to a specific printer using PPD files installed on Beagle Bone Black and connect through USB to a specific printer.

I hope this helps.

Thanks and Regards,
Sai Santha

Without knowing your exact image installed. Start with:

sudo apt remove lxqt-common mesa-utils-extra xinput xserver-xorg-video-fbdev --purge
sudo apt autoremove --purge

Regards,

Hi @RobertCNelson ,

I have a question to ask.
Where are these tools located in the directory?
I just want to know, What are the tools present in the image and remove them accordingly.

Could you please give some guidance on this?
Please let me know, Looking forward to hearing from you.

Thanks and Regards,
Sai Aditya

Which ‘tool’? Everything is under “/”…

We’ve released “many” images over the years. Based on the details you’ve given us, we have no idea what image you are using, thus we can only help in a generic way…

If you run and report the output of this command we can help more…

sudo /opt/scripts/tools/version.sh

Regards,

Hi @RobertCNelson ,

Please find the attached details below.

debian@beaglebone:~$ sudo /opt/scripts/tools/version.sh
git:/opt/scripts/:[1aa73453b2c980b75e31e83dab7dd8b6696f10c7]
eeprom:[A335BNLTEIA02110SBB04954]
model:[TI_AM335x_BeagleBone_Black]
dogtag:[BeagleBoard.org Debian Image 2018-10-07]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2018.09-00002-g0b54a51eee]:[l                                                                                                                                                             ocation: dd MBR]
kernel:[4.14.71-ti-r80]
nodejs:[v6.14.4]
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_pru=/lib/firmware/AM335X-PRU-RPROC-4-14-TI-                                                                                                                                                             00A0.dtbo]
uboot_overlay_options:[enable_uboot_cape_universal=1]
pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
pkg:[bb-cape-overlays]:[4.4.20180928.0-0rcnee0~stretch+20180928]
pkg:[bb-wl18xx-firmware]:[1.20180517-0rcnee0~stretch+20180517]
pkg:[kmod]:[23-2rcnee1~stretch+20171005]
pkg:[librobotcontrol]:[1.0.3-git20181005.0-0rcnee0~stretch+20181005]
pkg:[firmware-ti-connectivity]:[20170823-1rcnee1~stretch+20180328]
groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev us                                                                                                                                                             ers systemd-journal i2c bluetooth netdev cloud9ide gpio pwm eqep admin spi tisdk                                                                                                                                                              weston-launch xenomai]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/m                                                                                                                                                             mcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 quiet]
dmesg | grep pinctrl-single
[    1.135110] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
dmesg | grep gpio-of-helper
[    1.146987] gpio-of-helper ocp:cape-universal: ready
END

Regards,
Sai Santha

Hi @santhaks1 , that corresponds with:

You’ll get quite a bit back by:

sudo apt-get update
sudo apt-get remove c9-core-installer firmware-am57xx-opencl-monitor \
ipumm-dra7xx-installer mjpg-streamer ti-opencl vpdma-dra7xx-installer \
xserver-xorg-video-armada-etnaviv --purge
sudo apt-get remove libopencv-dev lightdm lxqt-about lxqt-admin \
lxqt-common lxqt-config lxqt-panel lxqt-qtplugin lxqt-session lxqt-sudo \
lxqt-runner mesa-utils-extra pcmanfm-qt python-opencv qterminal \
tightvncserver xinput xserver-xorg-video-fbdev \
xserver-xorg-video-omap --purge
sudo apt-get remove bluetooth apache2 can-utils v4l-utils --purge
sudo apt-get autoremove --purge

Regards,

1 Like

Hi @RobertCNelson ,

Thank you for the updated response.

I have one last question.
Do I have to maintain less than 3.5 used memory in /dev/mmcblk1p1 all the time to run any application.

Please let me know your thoughts. Looking forward to hearing from you.

Thanks and Regards,
Sai Santha

/dev/mmcblk1p1  3.5G  3.3G     0 100% /

In your case, the 4GB eMMC’s main partition shows up as 3.5GB usable (linux kernel, userspace, applications, etc), with 3.3GB allowed for users (currently at 100% utilization), where as “ROOT” is saved 0.2GB for emergency cases such as this…

You should remove un-used applications to get the space back… By running those command above you should be able to cut down space usage by a 1GB.

Regards,

Hi @RobertCNelson,

Thank you for your explanation and for helping me in understanding the /de/mmcblklp ( Linux Kernel, User Space, and Application).

I ran the commands as you have suggested and reduced the memory to 1GB and now 2.5GB

Thanks and Regards,
Sai Santha