$ No space left on device
That is the problem. Your root partition is full. It may be because you
never remove the older kernels. If so, I suggest you remove, with 'sudo rm
file', the older kernels in /boot, but not the one you use: be careful! All
the files in /boot that have a version number can be removed except those
having the version number that this command returns:
$ uname -r
Then, try again:
$ sudo dpkg --configure -a
Then, remove with the package manager the actual packages that provided the
kernels you removed with 'sudo rm' (you can search the installed packages
whose name start with "linux-"). If the command above worked, you can use
the "Synaptic Package Manager" to do so.
Finally, you can use the "Disk Usage Analyzer", in the "System Settings", to
discover what takes most of the space in your root partition (it may not only
be the older kernels).