Вы бежали sudo apt-get update
, и проблема все еще возникает. Таким образом, вы, вероятно, просто имеете более новую версию linux-image-server
и linux-headers-server
чем любой linux-server
пакет, доступный из ваших сконфигурированных источников программного обеспечения .
Это может произойти в течение очень короткого времени, даже если вы используете центральный сервер (или дольше, если возникла проблема с его обновлением). Насколько я понимаю, это может произойти в течение более длительных периодов времени, если вы используете зеркало. Это не означает, что вам не следует использовать зеркало - центральный сервер ( http://archive.ubuntu.com
) обычно работает очень медленно, а национальные, региональные или другие зеркала работают намного быстрее.
Поиск пакета показывает , что версия 3.2.0.37.45 обоих linux-image-server
и linux-server
существуют для Ubuntu 12.04. Так что это, вероятно, связано с вашим зеркалом.
Вот несколько альтернатив:
Игнорируй это
Если вы можете использовать менеджер пакетов для других целей, например, для установки других пакетов, вы можете просто проигнорировать это. Когда ваше зеркало будет обновлено, вы, вероятно, просто получите пакет.
Это не проблема, если у вас нет последней версии linux-server
, так как это метапакет , который не предоставляет никакого реального программного обеспечения. Он существует только для того, чтобы он мог перечислить три пакета как зависимости , гарантируя, что они остаются установленными:
У вас уже есть последние версии linux-headers-server
и linux-image-server
. Я предполагаю, что это 64-битная система, поэтому сообщения о linux-generic-pae
ней не отображались. Кажется, все в порядке.
Тем не мение:
- Если проблема не позволяет обновлению и установке других пакетов работать (вместо того, чтобы показывать эти сообщения всякий раз, когда вы это делаете, но не мешаете им), вам следует применить другое решение.
- Вы также можете сделать это, если вам просто не нравится постоянно видеть эти сообщения и вы хотите от них избавиться.
- Немного странно, что вы не получаете этот пакет, даже если вы используете зеркало, которое немного отстает от основного сервера загрузки, потому что этот пакет также предоставляется
http://security.ubuntu.com
. Этот сервер всегда должен быть включен в /etc/apt/sources.list
. Поэтому я рекомендую проверить, чтобы убедиться, что это включено. Вы можете создать резервную копию sources.list
перед редактированием ( sudo cp /etc/apt/sources.list /etc/apt/sources.list.old
). Эта проблема также может быть следствием кэширования веб-прокси (если вы его используете) с устаревшими данными. (Решения ниже будут работать вокруг этого тоже.)
Перейти на другой сервер загрузки
Я предполагаю, что вы работаете в системе Ubuntu Server и, возможно, у вас не установлен графический интерфейс. Итак, смотрите:
После изменения зеркала запустите:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
Если хотите, вы можете изменить свой сервер после linux-server
обновления.
Загрузите и установите .deb
файл пакета вручную
Вы можете вручную загрузить и установить .deb
файл для последней версии linux-server
метапакета в Ubuntu 12.04.
cd
куда вы хотите скачать пакет.
Если это 64-битная система, запустите:
wget https://launchpad.net/ubuntu/+archive/primary/+files/linux-server_3.2.0.23.25_amd64.deb
Если это 32-битная система, запустите ее:
wget https://launchpad.net/ubuntu/+archive/primary/+files/linux-server_3.2.0.23.25_i386.deb
(Я получил обе эти ссылки на странице Launchpad для linux-meta
исходного пакета в Ubuntu .)
Теперь (как для 64-разрядных, так и для 32-разрядных) выполните эту команду, чтобы установить пакет:
sudo dpkg -i linux-server_3.2.0.23.25_*.deb
(Или просто начните вводить имя пакета и используйте Tabдля его завершения.)
Удалить пакет
Поскольку это программное обеспечение, предоставляющее метапакет, у вас уже есть, вы можете удалить пакет. Тогда вы больше не получите ошибку. Вы можете установить его позже, если хотите (вы можете периодически запускать, apt-get update && apt-cache policy linux-server
чтобы увидеть, доступна ли новая версия).
Есть два шага, если вы хотите удалить его. Первое, чтобы удалить linux-server
. во-вторых, убедитесь, что пакеты не будут автоматически удалены позже.
Зависимости не будут удалены сразу . Так что не имеет значения, какой из этих шагов вы делаете в первую очередь.
1. Удалить linux-server
.
Чтобы удалить linux-server
, просто запустите:
sudo apt-get remove linux-server
2. Отметьте его зависимости как установленные вручную
Чтобы сообщить APT (менеджеру пакетов) о пакетах, которые вы намереваетесь установить, даже если ничего не остается, что объявляет их зависимостью, пометьте их как установленные вручную.
Для этого выполните эту команду, если это 64-битная система:
sudo apt-mark manual linux-image-server linux-headers-server
Если это 32-битная система, запустите это:
sudo apt-mark manual linux-image-server linux-headers-server linux-generic-pae
(Вы должны иметь, apt-mark
но если вы этого не сделаете, и вы не можете установить программное обеспечение, вы можете использовать apt-get install
вместо - apt-mark manual
указание пакета для установки вручную, чтобы он был помечен как установленный вручную, даже если он уже был установлен.)
Источник: пометьте пакет deb как использованный, чтобы он не предлагался для автоматического удаления
(В частности, ответ Лекенштейна ).
linux-server_3.2.0.37.45
) действительно устранила проблему.sudo apt-get remove linux-server && sudo apt-get install linux-server
Если у вас была полная / загрузочная и автоматическая установка обновлений безопасности, вы можете оказаться в той же лодке, что и я.
Я не мог заставить apt-get делать что-либо, так что традиционный совет full / boot не работал. Я вручную удалил старые данные ядра. Не удаляйте текущее работающее ядро, проверьте с помощью 'uname -a'. Я удалил с помощью 'sudo rm / boot / -3.2.0- {23,24,25,26} - .
Затем мне пришлось запустить 'sudo apt-get remove linux-server' и 'sudo apt-get install linux-server', чтобы исправить беспорядок из-за 1/2 установленной проблемы с ядром. После всего этого я мог наконец-то «sudo apt-get upgrade» и снова начать работать.
В качестве примера я добавил «sudo update-grub» и «sudo apt-get autoremove», чтобы убедиться, что меню загрузки было точным, а другие пакеты были очищены.
источник
В ситуации с Ubuntu 12.04 необходимо было вручную установить linux-headers-server и linux-server (как предложено выше - я бы там прокомментировал, но пока не имел этой привилегии), а затем apt-get remove linux-headers-virtual, который больше не существует как 64-битный пакет для 12.04.
sudo wget https://launchpad.net/ubuntu/+archive/primary/+files/linux-headers-server_3.2.0.64.76_amd64.deb
источник