apt-get: на устройстве не осталось места (12.04)

Я прочитал все темы, которые только смог найти, даже те, в которых говорится, что на этот вопрос был дан ответ в другом месте, но ни одна из них не затрагивает конкретную проблему, с которой я столкнулся. Диспетчер обновлений запустил и выдал ошибки, относящиеся к неудовлетворенной зависимости, и предложил использовать apt-get install -f , что приводит к ошибке с этим сообщением:

Unpacking linux-headers-3.5.0-36 (from .../linux-headers-3.5.0-36_3.5.0-36.57~precise1_all.deb) ...
dpkg: error processing /var/cache/apt/archives/linux-headers-3.5.0-36_3.5.0-36.57~precise1_all.deb (--unpack):
 unable to create `/usr/src/linux-headers-3.5.0-36/arch/arm/mach-iop32x/include/mach/glantank.h.dpkg-new' (while processing `./usr/src/linux-headers-3.5.0-36/arch/arm/mach-iop32x/include/mach/glantank.h'): No space left on device

Я подозреваю, что последние 5 слов На устройстве не осталось свободного места, это важно, но df и du оба показывают достаточное пространство. Вот мне и интересно, какому устройству нужно больше места?

Ouput из df -h

Filesystem 
Size Used Avail Use% 
Mounted on /dev/sda1 5.5G 4.4G 786M 86% 
/ udev 996M 4.0K 996M 1% 
/dev tmpfs 402M 880K 401M 1% 
/run none 5.0M 0 5.0M 0% /run/lock none 1004M 156K 1004M 1% 
/run/shm /dev/sdb1 30G 1.4G 27G 5% 
/home /dev/sdc1 299G 31G 268G 11% /media/HD-PCTU2 
42
задан 22 March 2015 в 19:51

4 ответа

Я только что столкнулся с этой же проблемой. В другом месте я сталкивался с упоминанием инодов и бегал в своем терминале, чтобы проверить использование инода:

  df -i 

Это показало использование инода на 99%. Таким образом, хотя на моем диске оставалось достаточно места, я не смог создать больше файлов из-за ограничения числа инодов. Некоторая очистка диска стала решением моей проблемы.

0
ответ дан 22 March 2015 в 19:51

Я использовал sudo apt-get autoremove, и он удалил кучу старых пакетов заголовков ядра. Хорошо идти после этого.

0
ответ дан 22 March 2015 в 19:51

Я думаю, что ваш загрузочный раздел полон старых образов ядра, не оставляя места для нового apt-get, который пытается установить. Вы можете ввести

dpkg -l linux-headers-\* linux-image-\* | grep ^ii

в окне терминала. Когда я это делаю, я получаю

ii  linux-headers-3.8.0-18                    3.8.0-18.28                            all          Header files related to Linux kernel version 3.8.0
ii  linux-headers-3.8.0-18-generic            3.8.0-18.28                            amd64        Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii  linux-headers-3.8.0-19                    3.8.0-19.30                            all          Header files related to Linux kernel version 3.8.0
ii  linux-headers-3.8.0-19-generic            3.8.0-19.30                            amd64        Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii  linux-headers-3.8.0-21                    3.8.0-21.32                            all          Header files related to Linux kernel version 3.8.0
ii  linux-headers-3.8.0-21-generic            3.8.0-21.32                            amd64        Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii  linux-headers-3.8.0-22                    3.8.0-22.33                            all          Header files related to Linux kernel version 3.8.0
ii  linux-headers-3.8.0-22-generic            3.8.0-22.33                            amd64        Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii  linux-headers-3.8.0-23                    3.8.0-23.34                            all          Header files related to Linux kernel version 3.8.0
ii  linux-headers-3.8.0-23-generic            3.8.0-23.34                            amd64        Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii  linux-headers-3.8.0-25                    3.8.0-25.37                            all          Header files related to Linux kernel version 3.8.0
ii  linux-headers-3.8.0-25-generic            3.8.0-25.37                            amd64        Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii  linux-headers-generic                     3.8.0.25.43                            amd64        Generic Linux kernel headers

Так как у меня их довольно много, я могу удалить некоторые из самых старых с помощью

sudo apt-get remove linux-headers-3.8.0-18

Если apt-get завершится неудачно, поскольку пропустит какой-то пакет зависимости (которые вы не можете установить из-за отсутствия свободных инодов), вы можете вместо этого прибегнуть к dpkg:

sudo dpkg --remove linux-headers-3.8.0-18

Сделайте это пару раз своему старому linux-headers-*, и вы должно быть место.

0
ответ дан 22 March 2015 в 19:51

Насколько мне известно, предел inode в файловых системах Linux ext * составляет около 4 миллиардов, но не меньше, что составляет огромное количество файлов. Итак, ваша проблема в том, что что-то генерирует много файлов. Я могу предложить вам сначала проверить это: http://blog.scoutapp.com/articles/2014/10/08/understanding-disk-inodes Итак, вы найдете, что заполняет иноды вашей FS , Я могу также предложить очистить кэш apt:

sudo apt-get clean

и

sudo apt-get autoclean
0
ответ дан 22 March 2015 в 19:51

Другие вопросы по тегам:

Похожие вопросы: