Ubuntu 12.04.
После обновления я получаю красный значок предупреждения в системном трее, предупреждающий об ошибке: количество ошибок> 0
При открытии диспетчера обновлений я вижу, что сломанный пакет - linux-headers-3.2.0-33-generic-pae (new install)
В частности, у меня есть Ubuntu на AspireOne с 8 ГБ встроенной памяти.
Я попытался apt-get clean
, как предложено в другом вопросе на этом сайте, и попытался переустановить пакет в Synaptic.
Я пытался перезагрузиться, но безрезультатно.
Я также пробовал apt-get install --fix-broken
и получаю следующее:
sudo apt-get install --fix-broken
[sudo] password for elina:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
linux-headers-3.2.0-33-generic-pae
The following NEW packages will be installed:
linux-headers-3.2.0-33-generic-pae
0 upgraded, 1 newly installed, 0 to remove and 38 not upgraded.
1 not fully installed or removed.
Need to get 0 B/977 kB of archives.
After this operation 11,3 MB of additional disk space will be used.
Do you want to continue [Y/n]; y
(Reading database ... 437051 files and directories currently installed.)
Unpacking linux-headers-3.2.0-33-generic-pae (from .../linux-headers-3.2.0-33-generic-pae_3.2.0-33.52_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/linux-headers-3.2.0-33-generic-pae_3.2.0-33.52_i386.deb (--unpack):
unable to create `/usr/src/linux-headers-3.2.0-33-generic-pae/include/config/usb/gspca/sonixb.h.dpkg-new' (while processing `./usr/src/linux-headers-3.2.0-33-generic-pae/include/config/usb/gspca/sonixb.h'): No space left on device
No apport report written because the error message indicates a disk full error
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/linux-headers-3.2.0-33-generic-pae_3.2.0-33.52_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Я испробовал все предложения, которые смог найти:
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove
sudo apt-get update
sudo apt-get upgrade
sudo apt-get -f install
sudo apt-get install --fix-broken
Затем я увидел это на Ошибка было упоминание о свободном пространстве. Итак, я сделал df -h, и результат был:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 7,0G 5,5G 1,1G 84% /
udev 235M 4,0K 235M 1% /dev
tmpfs 97M 816K 96M 1% /run
none 5,0M 0 5,0M 0% /run/lock
none 242M 352K 242M 1% /run/shm
Я вижу, что в моей корневой папке у меня свободно 1.1Gb. Разбитый пакет
linux-headers-3.2.0-33-generic-pae_3.2.0-33.52_i386.deb
занимает всего 11,3 Мб на моем жестком диске.
1118 Я тааак потерян. Я действительно надеюсь, что что-то здесь мне не хватает. Я не хочу переформатировать это ведро. Это действительно не стоит времени. Любая помощь для исправления этого будет горячей.
Я на самом деле нашел решение своих проблем. Казалось, что использование корня для запуска наутилуса заставило весь inodes подходить к 100%. Должен был очистить тех, которые в мусоре корня. Таким образом, я сделал следующее:
df -i
Это дало мне следующее:
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 460560 456125 4435 100% /
udev 60125 491 59634 1% /dev
tmpfs 61943 403 61540 1% /run
none 61943 3 61940 1% /run/lock
none 61943 8 61935 1% /run/shm
ой! inodes используемые 100%? это означает партии и много крошечных файлов, хранивших где-нибудь. Где?
Я использовал команду:
sudo du -h /* | grep '[0-9]M'
Это дало огромный список файлов, которые казались хорошо кроме того, что корневой мусор был полон файлов в:
/root/.local/share/Trash/files/
Таким образом, я работал:
sudo rm -r /root/.local/share/Trash/files/
и:
sudo touch /forcefsck
и затем перезапуская, чтобы позволить последней команде сделать свою вещь.
После этого, выполнение:
df -i
and df -Th
произведенный следующее:
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 460560 196674 263886 43% /
udev 60125 487 59638 1% /dev
tmpfs 61943 393 61550 1% /run
none 61943 3 61940 1% /run/lock
none 61943 8 61935 1% /run/shm
$ df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 7,0G 4,7G 2,0G 71% /
udev devtmpfs 235M 4,0K 235M 1% /dev
tmpfs tmpfs 97M 816K 96M 1% /run
none tmpfs 5,0M 0 5,0M 0% /run/lock
none tmpfs 242M 356K 242M 1% /run/shm
iNodes вернулись к нормальному, и я на самом деле видел небольшое увеличение дискового пространства (от 1,1 до 2,0 Гбит), Который сделал систему очень быстро также, таким образом, был эффект положительной стороны к устранению проблемы, так как мой компьютер теперь, кажется, молния быстро!
Я хочу отметить, что, если Вы страдаете от той же проблемы, любая папка в Вашей системе могла бы содержать те крошечные файлы, которые заполняют Ваш inodes. Тщательно исследуя список, который создается с помощью:
sudo du -h /* | grep '[0-9]M'
поможет Вам найти, какой папке нужно исправление.
У меня была такая же ошибка при установке wine с менеджером обновлений, и единственное, что помогло, это удалить все мои пакеты с помощью rm / var / lib / apt / lists * -vf
sudo rm /var/lib/apt/lists/* -vf
мои пакеты, затем я запустил Центр программного обеспечения. Он сказал, что у него сломаны пакеты, поэтому я решил починить их. Здесь скачаны необходимые пакеты. После этого все прошло хорошо.
Все эти ответы не помогли мне. Но я нашел эту страницу, и, используя идеи, я мог быстро снизить счетчик инодов со 100% до 50%: http://www.pkdavies.co.uk/142-dpkg-no-space- left-on-device.html
Идея состоит в том, чтобы в основном находить папки, поедающие иноды.
В терминале перейдите к корневому каталогу, чтобы запустить:
# cd /
Затем найдите папки, поедающие большинство инодов:
# for i in `ls -1A`; do echo "`find $i | sort -u | wc -l` $i"; done | sort -rn | head -20
Это даст вам список папок. Выполните описанные выше шаги еще раз, чтобы перейти в папку с наибольшим количеством инодов и снова запустить команду поиска.
Я нашел много неиспользуемых и неустановленных ядер, которые все еще занимали место и inode в папках исходных кодов ядра, например, в /usr/src/linux-headers-*
.
ВНИМАНИЕ, НЕ УДАЛЯЙТЕ ИСТОЧНИКИ УСТАНОВЛЕННОГО ЯДРА - ПРОВЕРЬТЕ uname -rv
, КОТОРЫЙ ЕСТЬ
Поэтому, после того как я нашел папки, я удалил устаревшие каталоги по одному, например, с
root@gamma:/usr/src# sudo rm -rf linux-headers-3.2.0-30
После этого я мог успешно выполнить это для восстановления моей системы:
# apt-get -f install
Надеюсь, это поможет.
Недавно я обнаружил ту же проблему, но виновником была сама Ubuntu. Благодаря тому, что он "не" обрабатывает "вращение".
Предыдущие версии пакета linux-headers-generic, а также пакетов linux-images так и не были удалены. Если это были последние два или три, не проблема, но было почти 20 версий ядра и заголовков ядра. пакет linux-headers содержит огромное количество файлов, которые съедают все ваши i-узлы. Удалив все заголовки ядра, кроме последнего, (предыдущие linux-headers-generic-3.2.0-?), Я сократил число используемых i-узлов со 100% до 45%.
Сначала я не знал, в чем причина проблемы, но после прочтения вашего случая я проверил количество i-узлов и был заполнен на 100%, на практике это примерно 200 свободных инодов из почти 700 000.
Простое удаление предыдущих пакетов linux-headers делает свое дело. Synaptic делает это проще с помощью функции поиска GUI + и функции заказа.
Я пишу это также как помощь людям, которые недавно столкнулись с этой проблемой.