Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > Проблема с apt-get в Ubuntu


Автор: Aliance 18.9.2008, 21:07
Доброго всем времени суток!

Давно не запускал Ubuntu на лэп-топе, когда же недавно сделал это, естественно оказалось что есть куча обновлений к её компонентам и даже к ней самой (система предлагает скачать новую версию, 7.04 кажется). Но сделать это не выходит никакими путями. Соединение с интернетом установлено, в браузерах проверил - работает. В терминале пингуется все. Но при нажатии на кнопку обновить или запуске команды apt-get install *** (под rootом естественно) пишет что-то типо такого:
Failed to fetch http://ru.archive.ubuntu.com/***

Что сделать?

Автор: Fin 18.9.2008, 21:45
Aliance, Ну первый вопрос, какая текушая версия Ubuntu установлена на компе?
Почитай тут https://help.ubuntu.com/community/UpgradeNotes Как правильно апгрейдится с версии на другую версию.

Автор: Imple 19.9.2008, 06:19
Дайте нам ваш /etc/apt/sources.list

Автор: Aliance 19.9.2008, 14:18
Версия Ubuntu: Ubuntu 6.10 Edgy Eft

Вот мой /etc/apt/sources.list:
Цитата

# deb cdrom:[Ubuntu 6.10 _Edgy Eft_ - Release i386 (20061025)]/ edgy main restricted
deb-src http://archive.ubuntu.com/ubuntu/ edgy main restricted #Added by software-properties

deb http://archive.ubuntu.com/ubuntu/ edgy main restricted
deb-src http://archive.ubuntu.com/ubuntu/ edgy restricted main universe #Added by software-properties

## Major bug fix updates produced after the final release of the
## distribution.
deb http://archive.ubuntu.com/ubuntu/ edgy-updates main restricted
deb-src http://archive.ubuntu.com/ubuntu/ edgy-updates main restricted #Added by software-properties

## Uncomment the following two lines to add software from the 'universe'
## repository.
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://archive.ubuntu.com/ubuntu/ edgy universe

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://archive.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse #Added by software-properties

deb http://security.ubuntu.com/ubuntu edgy-security main restricted
deb-src http://security.ubuntu.com/ubuntu edgy-security main restricted #Added by software-properties
# deb http://security.ubuntu.com/ubuntu edgy-security universe
# deb-src http://security.ubuntu.com/ubuntu edgy-security universe
deb http://www.getautomatix.com/apt edgy main

#AUTOMATIX REPOS START

deb http://archive.canonical.com/ubuntu dapper-commercial main

deb http://archive.ubuntu.com/ubuntu/ edgy-updates universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ edgy-updates universe multiverse #Added by software-properties

deb http://archive.ubuntu.com/ubuntu/ edgy-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ edgy-security main restricted universe multiverse #Added by software-properties

deb http://archive.ubuntu.com/ubuntu/ edgy multiverse
deb-src http://archive.ubuntu.com/ubuntu/ edgy multiverse #Added by software-properties
#AUTOMATIX REPOS END

Автор: Aliance 19.9.2008, 15:50
В общем-то я изменил его до такого:
Цитата

# deb cdrom:[Ubuntu 6.10 _Edgy Eft_ - Release i386 (20061025)]/ edgy main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy main restricted #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu/ edgy main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy restricted main universe #Added by software-properties

## Major bug fix updates produced after the final release of the
## distribution.
deb http://old-releases.ubuntu.com/ubuntu/ edgy-updates main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-updates main restricted #Added by software-properties

## Uncomment the following two lines to add software from the 'universe'
## repository.
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://old-releases.ubuntu.com/ubuntu/ edgy universe

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://old-releases.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu edgy-security main restricted
deb-src http://old-releases.ubuntu.com/ubuntu edgy-security main restricted #Added by software-properties
# deb http://old-releases.ubuntu.com/ubuntu edgy-security universe
# deb-src http://old-releases.ubuntu.com/ubuntu edgy-security universe
# deb http://www.getautomatix.com/apt edgy main

#AUTOMATIX REPOS START

deb http://archive.canonical.com/ubuntu dapper-commercial main

deb http://old-releases.ubuntu.com/ubuntu/ edgy-updates universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-updates universe multiverse #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu/ edgy-security main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-security main restricted universe multiverse #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu/ edgy multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy multiverse #Added by software-properties
#AUTOMATIX REPOS END


Тем самым я избавился от этих ошибок, и загрузил все обновления, кроме одного - mysql-server-5.0 (с версии 5.0.24a-9 до 5.0.24a-9ubuntu2.4)
Когда загружаю его пишет такое:
Цитата

E: /var/cache/apt/archives/mysql-server-5.0_5.0.24a-9ubuntu2.4_i386.deb: подпроцесс новый скрипт, выполняемый pre-removal возвратил код ошибки 1

Как это решить?

Автор: Fin 19.9.2008, 16:39
Убить в кеше пакет и попробовать его загрузить с инета заново. У меня такое было пару раз, помогало.

Автор: Aliance 19.9.2008, 17:41
Как именно? Так?
Код

rm /var/cache/apt/archives/mysql-server-5.0_5.0.24a-9ubuntu2.4_i386.deb


А загрузить как? Через apt-get? А что именно написать в терминале?

Автор: Fin 19.9.2008, 20:08
При удалении тебе понадобятся права root, поэтому через sudo
Код

sudo apt-get update
sudo apt-get upgrade

Тогда у тебя полностью система обновится до новых версий текушей ветки.

Автор: Aliance 20.9.2008, 21:30
При выполнении команды:
Код

sudo apt-get update

все прошло удачно, но при выполнении второй:
Код

sudo apt-get upgrade

система вернула следующее:
Цитата

Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Пакеты, которые будут обновлены:
  mysql-server-5.0
обновлено 1, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 0B/24,9MB архивов.
После распаковки объем занятого дискового пространства возрастёт на 20,5kB.
Хотите продолжить [Д/н]? д
Предварительная настройка пакетов ...
(Чтение базы данных... на данный момент установлено 131378 файлов и каталогов.)
Подготовка к замене пакета mysql-server-5.0 5.0.24a-9 (используется файл .../mysql-server-5.0_5.0.24a-9ubuntu2.4_i386.deb)...
 * Stopping MySQL database server mysqld                                                                               [fail] 
invoke-rc.d: initscript mysql, action "stop" failed.
dpkg: предупреждение -- старый скрипт, выполняемый pre-removal возвратил код ошибки 1
dpkg: попытка использовать скрипт из нового пакета...
 * Stopping MySQL database server mysqld                                                                               [fail] 
invoke-rc.d: initscript mysql, action "stop" failed.
dpkg: не удалось обработать параметр /var/cache/apt/archives/mysql-server-5.0_5.0.24a-9ubuntu2.4_i386.deb (--unpack):
 подпроцесс новый скрипт, выполняемый pre-removal возвратил код ошибки 1
 * Stopping MySQL database server mysqld                                                                               [fail] 
invoke-rc.d: initscript mysql, action "stop" failed.
 * Starting MySQL database server mysqld                                                                               [ ok ] 
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
При обработке следующих пакетов произошли ошибки:
 /var/cache/apt/archives/mysql-server-5.0_5.0.24a-9ubuntu2.4_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)


Может просто снести сервер БД и заного потом его поставить? Это вариант? Если да - то как правильно реализовать?

Автор: Fin 21.9.2008, 01:06
У тебя падает остановка MySQL сервера. 
Попробуй остановить его вручную
Код

 sudo /etc/init.d/mysql stop


Если получится, то установить новый пакет
Код

dpkg -i /var/cache/apt/archives/mysql-server-5.0_5.0.24a-9ubuntu2.4_i386.deb


Автор: Aliance 21.9.2008, 13:39
Не получается остановить:
Цитата

# etc/init.d/mysql stop
 * Stopping MySQL database server mysqld                                                                               [fail]


Кстати, в ответ на команду статус вот что возвращается:
Цитата

# etc/init.d/mysql status
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
 *


Может быть БД чем-то занята, поэтому нельзя ее остановить?

Автор: Vaulter 21.9.2008, 14:36
Тут я бы проверил пользователей mysql.
Остановил бы его сам. 
Попробовал бы обновится.
Если бы опять НЕ, 
Код

$ sudo apt-get purge mysql-server-5.0

уж тогда уж! что???  smile 

Автор: Fin 21.9.2008, 18:04
Есть утилита sysv-rc-conf, тут http://ubuntuforums.org/showthread.php?t=89491 есть описание, как ей пользоваться. Установи и запусти ее. Убери полностью с запуска MySQL Демона. Перезапусти систему. И тогда можно будет устанавливать новый пакет.

Автор: Aliance 21.9.2008, 21:27
Удалить не получается тоже :(

Вот что пишет терминал:
Цитата

$ sudo apt-get --purge remove mysql-server-5.0
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Следующие пакеты были установлены автоматически но более не требуются:
  libnet-daemon-perl libdbi-perl libdbd-mysql-perl mysql-server-5.0 mysql-client-5.0 libplrpc-perl
Используйте команду 'apt-get autoremove' для их удаления.
Пакеты, которые будут УДАЛЕНЫ:
  mysql-server-5.0*
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 0Б архивов.
После распаковки объем занятого дискового пространства уменьшится на 67,4MB.
Хотите продолжить [Д/н]? Д
(Чтение базы данных... на данный момент установлено 131377 файлов и каталогов.)
Удаляется пакет mysql-server-5.0...
 * Stopping MySQL database server mysqld                                                                               [fail] 
invoke-rc.d: initscript mysql, action "stop" failed.
dpkg: не удалось обработать параметр mysql-server-5.0 (--purge):
 подпроцесс pre-removal script возвратил код ошибки 1
 * Stopping MySQL database server mysqld                                                                               [fail] 
invoke-rc.d: initscript mysql, action "stop" failed.
 * Starting MySQL database server mysqld                                                                               [ ok ] 
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
При обработке следующих пакетов произошли ошибки:
 mysql-server-5.0
E: Sub-process /usr/bin/dpkg returned an error code (1)

Автор: Aliance 21.9.2008, 21:52
Цитата(Vaulter @  21.9.2008,  15:36 Найти цитируемый пост)
Тут я бы проверил пользователей mysql.

То есть?
У меня в таблице mysql.user 3 пользователя: localhost@root, имяКомпьютера@root, localhost@имяПользователя (последний с паролем).
Может тут что не так?

Автор: Fin 21.9.2008, 22:03
Aliance, Ты пробовал вышеназванной утилитой убрать с загрузки демона MySQL?

Автор: nickless 25.9.2008, 17:22
А что мешает удалить демон с диска, убить его нафик с помощью kill -9 и переустановить?

Автор: Fin 25.9.2008, 22:10
nickless, Демона MySQL не так легко убить, по крайней мере я у себя его влоб не смог убить. kill -9 mysqld не поможет. У меня запушены еше 2 процесса mysql. Один из них logger -p daemon.err -t mysqld_safe -i -t mysqld. Я так думаю, если демон падает, логер его повторно поднимает. Надо сначало убить логера, а затем уже mysql.

Автор: nickless 25.9.2008, 22:47
Цитата(Fin @  25.9.2008,  21:10 Найти цитируемый пост)
kill -9 mysqld

С PID должно работать, по крайней мере у меня спокойно убивается smile 

Цитата(Fin @  25.9.2008,  21:10 Найти цитируемый пост)
Я так думаю, если демон падает, логер его повторно поднимает

Даже если так, после rm -f /usr/sbin/mysql* подымать ему будет нечего smile 

Автор: Aliance 27.9.2008, 01:15
утилита не помогла, либо я не правильно ей воспользовался.
Сперва поставил галочку на s, перезапустил и ничего.
Потом везде у трех процессов мускула поставил галочки - тоже ничего.
Тогда удалил файл из кеша - его заного закачало и по-прежнему та же ошибка(((

kill -9 mysqld пробывал. kill PID для ogger -p daemon.err -t mysqld_safe -i -t mysqld тоже.
Что посоветуете?

Добавлено через 3 минуты и 7 секунд
Да, кстати, вот это тоже не работает:
Код

error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'
 * Root password is blank.  To change it use:
 * /etc/init.d/mysql reset-password
...
$ etc/init.d/mysql reset-password
New MySQL root password: 
Verify: 
Setting new MySQL root password
ERROR 1045 (28000): Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)

Автор: Fin 27.9.2008, 01:28
Aliance, В утилите нужно не ставить галочки, а все убрать со всех уровней загрузки. Галочка говорит, что на этом уровне загрузки идет запуск.
Способ, который у меня сработал с kill
Сначало 
Код

$ ps -aux |grep -i mysql

Получаем
Цитата

root      2846  0.0  0.0  10112  1516 ?        S    Sep26   0:00 /bin/sh /usr/bin/mysqld_safe
mysql     2883  0.0  0.7 145964 22148 ?        Sl   Sep26   0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --port=3306 --socket=/var/run/mysqld/mysqld.sock
root      2884  0.0  0.0   2640   536 ?        S    Sep26   0:00 logger -p daemon.err -t mysqld_safe -i -t mysqld

Видим, что нас интересуют PID 2884, 2883, 2846
теперь командами
Код

sudo kill -9 2884
sudo kill -9 2846
sudo kill -9 2883

Убиваем процессы демона

Автор: Aliance 30.9.2008, 22:12
в общем-то как я понял проблема решилась. Хотя не очень понял как. Вроде как просто запустил и ничего не сделал и пакета уже нет. На всякий случай отключил демона и сделал apt-get --purge remove

Автор: Aliance 30.9.2008, 23:07
при нажатии на кнопку обновить 
Failed to fetch http://archive.ubuntu.com/ubuntu/dists/edgy/... 404 Not Found [IP: ...]

Я так понимаю нужно изменить файл sources.list, но как?

Автор: Fin 30.9.2008, 23:16
Есть два пути.
1) редактируеш файл /etc/apt/sources.list из под root
2) в Synaptic меню Settings -> Repositories.

Узнать URL репозиториев можно на официальном сайте убунты.

Автор: Aliance 30.9.2008, 23:40
Это я понимаю. На сайте я прочел, что для 6.10 репозитории удалили из архива и перенесли в old-releases, соответственно меняю
http://archive.ubuntu.com/ubuntu/ на http://old-releases.ubuntu.com/ubuntu/. Но ничего не выходит.
Цитата

Be sure that you have all updates applied to Ubuntu 6.10 before you upgrade NOTE: edgy was removed from archives, so you need to change your apt sources.lists to point to http://old-releases.ubuntu.com/
(с) https://help.ubuntu.com/community/FeistyUpgrades


Вот мой файл:
Цитата

# deb cdrom:[Ubuntu 6.10 _Edgy Eft_ - Release i386 (20061025)]/ edgy main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy main restricted #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu/ edgy main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy restricted main universe #Added by software-properties

## Major bug fix updates produced after the final release of the
## distribution.
deb http://old-releases.ubuntu.com/ubuntu/ edgy-updates main restricted
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-updates main restricted #Added by software-properties

## Uncomment the following two lines to add software from the 'universe'
## repository.
## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## universe WILL NOT receive any review or updates from the Ubuntu security
## team.
deb http://old-releases.ubuntu.com/ubuntu/ edgy universe

## Uncomment the following two lines to add software from the 'backports'
## repository.
## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://old-releases.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-backports main restricted universe multiverse #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu edgy-security main restricted
deb-src http://old-releases.ubuntu.com/ubuntu edgy-security main restricted #Added by software-properties
# deb http://old-releases.ubuntu.com/ubuntu edgy-security universe
# deb-src http://old-releases.ubuntu.com/ubuntu edgy-security universe
# deb http://www.getautomatix.com/apt edgy main

#AUTOMATIX REPOS START

deb http://archive.canonical.com/ubuntu dapper-commercial main

deb http://old-releases.ubuntu.com/ubuntu/ edgy-updates universe multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-updates universe multiverse #Added by software-properties

#deb http://old-releases.ubuntu.com/ubuntu/ edgy-security main restricted universe multiverse
#deb-src http://old-releases.ubuntu.com/ubuntu/ edgy-security main restricted universe multiverse #Added by software-properties

deb http://old-releases.ubuntu.com/ubuntu/ edgy multiverse
deb-src http://old-releases.ubuntu.com/ubuntu/ edgy multiverse #Added by software-properties
#AUTOMATIX REPOS END

Автор: Fin 30.9.2008, 23:52
Сначало обнови дерево пакетов
apt-get update
А затем уже доустанавливай или апгредь пакеты.

Автор: Aliance 30.9.2008, 23:54
Так пакеты все обновлены, осталось только обновить дистрибутив.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)