Вы бежали 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) действительно устранила проблему.