Bug 6784

Summary: Не работает установка Wine School на p5
Product: Wine School Reporter: Евгений Синельников <sin>
Component: ОбщееAssignee: Евгений Синельников <sin>
Status: CLOSED FIXED QA Contact:
Severity: minor    
Priority: P4 CC: baraka, lav
Version: 1.0   
Target Milestone: ---   
Hardware: PC   
OS: All   
URL: http://forum.altlinux.org/index.php/topic,9104.msg129104.html#msg129104
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 6715    

Description Евгений Синельников 2011-01-17 13:39:54 MSK
При установке Wine School на 5.0.2
http://forum.altlinux.org/index.php/topic,9104.msg129104.html#msg129104

Я повторил эту проблему в хешере.
$ cat ~/etc/branch.i586.p5.list 
rpm file:/var/ftp/pub/ALTLinux/p5 i586 classic
rpm file:/var/ftp/pub/ALTLinux/p5 noarch classic

rpm file:/var/ftp/pub/Etersoft/LINUX@Etersoft/5.1/branch i586 addon nonfree
rpm file:/var/ftp/pub/Etersoft/LINUX@Etersoft/5.1/branch noarch addon nonfree

rpm http://download.etersoft.ru/pub/download/ WINE@Etersoft-School/ALTLinux/p5/i586 main

Ошибка выглядит так:
$ hsh-install $HASHER wine-etersoft
Чтение списков пакетов...
Построение дерева зависимостей...
Следующие дополнительные пакеты будут установлены:
  ca-certificates curl fontconfig fonts-ttf-dejavu libICE libSM libX11
  libX11-locales libXau libXdmcp libXext libXmu libXpm libXt libalsa
  libaudiofile libcares libcrypto7 libcurl libesd libexpat libfreetype libidn
  libieee1284 libkeyutils libkrb5 liblcms libldap2.4 libmpg123 libsasl2 libssl7
  libusb libxcb lynx lynx-data wget xdg-utils xlsfonts xprop xset xz
Следующие НОВЫЕ пакеты будут установлены:
  ca-certificates curl fontconfig fonts-ttf-dejavu libICE libSM libX11
  libX11-locales libXau libXdmcp libXext libXmu libXpm libXt libalsa
  libaudiofile libcares libcrypto7 libcurl libesd libexpat libfreetype libidn
  libieee1284 libkeyutils libkrb5 liblcms libldap2.4 libmpg123 libsasl2 libssl7
  libusb libxcb lynx lynx-data wget wine-etersoft xdg-utils xlsfonts xprop xset
  xz
0 будет обновлено, 42 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 22,5MB/30,7MB архивов.
После распаковки потребуется дополнительно 154MB дискового пространства.
Получено: 1 http://download.etersoft.ru WINE@Etersoft-School/ALTLinux/p5/i586/main wine-etersoft 1.7.0-alt0.M50.1 [22,5MB]
Невозможно получить http://download.etersoft.ru/pub/download/WINE@Etersoft-School/ALTLinux/p5/i586/RPMS.main/wine-etersoft-1.7.0-alt0.M50.1.i586.rpm  Несовпадение контрольной суммы MD5
Получено 22,5MB за 0s (35,8MB/s).
E: Получить некоторые архивы невозможно. Попробуйте ввести команду apt-get update или добавить параметр --fix-missing.
hsh-install: failed to calculate package file list.
hsh-install: Failed to generate package file list.



Локально с файлом проблем нет:
[sin@builder ~]$ rpm -K /var/ftp/pub/download/WINE@Etersoft-School/ALTLinux/p5/i586/RPMS.main/wine-etersoft-1.7.0-alt0.M50.1.i586.rpm
/var/ftp/pub/download/WINE@Etersoft-School/ALTLinux/p5/i586/RPMS.main/wine-etersoft-1.7.0-alt0.M50.1.i586.rpm: md5 gpg OК

Но у apt'а возникает ошибка при скачивании.
Comment 1 Евгений Синельников 2011-01-17 16:06:03 MSK
Похоже, что проблема в web-сервере

Поскольку вот такая замена в source.list'е решает проблему:
#rpm http://download.etersoft.ru/pub/download/
WINE@Etersoft-School/ALTLinux/p5/i586 main                                      
rpm file:/var/ftp/pub/download/ WINE@Etersoft-School/ALTLinux/p5/i586 main 

То есть проблема именно в доступе к файлу по http.
Comment 2 Евгений Синельников 2011-01-17 16:23:58 MSK
Проблема локализованана в хешере.

При попытке выкачать файл с помощью wget получаем:
$ wget -c http://download.etersoft.ru/pub/download/WINE@Etersoft-School/ALTLinux/p5/i586/RPMS.main/wine-etersoft-1.7.0-alt1.M50.2.i586.rpm
--2011-01-17 13:21:47--  http://download.etersoft.ru/pub/download/WINE@Etersoft-School/ALTLinux/p5/i586/RPMS.main/wine-etersoft-1.7.0-alt1.M50.2.i586.rpm
Resolving download.etersoft.ru... 212.176.200.18
Connecting to download.etersoft.ru|212.176.200.18|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 22492735 (21M) [application/x-redhat-package-manager]
wine-etersoft-1.7.0-alt1.M50.2.i586.rpm: Permission denied

Cannot write to `wine-etersoft-1.7.0-alt1.M50.2.i586.rpm' (Permission denied).
Comment 3 Евгений Синельников 2011-01-17 16:37:21 MSK
Ещё раз... Пишу как повторить проблему.

$ echo $HASHER
/tmp/.private/sin/hasher.wine

$ mkaptbox --apt-config=/home/sin/etc/apt.conf.i586.p5 $HASHER && hsh-mkchroot $HASHER && hsh-initroot $HASHER

$ cat /home/sin/etc/apt.conf.i586.p5
Dir::Etc::main "/dev/null";
Dir::Etc::parts "/var/empty";
Dir::Etc::SourceParts "/var/empty";

RPM::Ignore { "vim-plugin-vimruby"; };

Dir::Etc::SourceList    "/home/sin/etc/branch.i586.p5.list";

$ cat /home/sin/etc/branch.i586.p5.list
rpm file:/var/ftp/pub/ALTLinux/p5 i586 classic
rpm file:/var/ftp/pub/ALTLinux/p5 noarch classic

rpm file:/var/ftp/pub/Etersoft/LINUX@Etersoft/5.1/branch i586 addon nonfree
rpm file:/var/ftp/pub/Etersoft/LINUX@Etersoft/5.1/branch noarch addon nonfree

rpm http://download.etersoft.ru/pub/download/ WINE@Etersoft-School/ALTLinux/p5/i586 main
#rpm file:/var/ftp/pub/download/ WINE@Etersoft-School/ALTLinux/p5/i586 main
#rpm ftp://download.etersoft.ru/pub/download/ WINE@Etersoft-School/ALTLinux/p5/i586 main

Попытка установки:
$ hsh-install $HASHER wine-etersoft
Чтение списков пакетов...
Построение дерева зависимостей...
Следующие дополнительные пакеты будут установлены:
  curl fontconfig fonts-ttf-dejavu libICE libSM libX11 libX11-locales libXau
  libXdmcp libXext libXmu libXpm libXt libalsa libaudiofile libcares libcurl
  libesd libexpat libfreetype libidn libieee1284 liblcms libldap2.4 libmpg123
  libsasl2 libusb libxcb lynx lynx-data xdg-utils xlsfonts xprop xset xz
Следующие НОВЫЕ пакеты будут установлены:
  curl fontconfig fonts-ttf-dejavu libICE libSM libX11 libX11-locales libXau
  libXdmcp libXext libXmu libXpm libXt libalsa libaudiofile libcares libcurl
  libesd libexpat libfreetype libidn libieee1284 liblcms libldap2.4 libmpg123
  libsasl2 libusb libxcb lynx lynx-data wine-etersoft xdg-utils xlsfonts xprop
  xset xz
0 будет обновлено, 36 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 22,5MB/28,9MB архивов.
После распаковки потребуется дополнительно 148MB дискового пространства.
Получено: 1 http://download.etersoft.ru WINE@Etersoft-School/ALTLinux/p5/i586/main wine-etersoft 1.7.0-alt1.M50.2 [22,5MB]
Невозможно получить http://download.etersoft.ru/pub/download/WINE@Etersoft-School/ALTLinux/p5/i586/RPMS.main/wine-etersoft-1.7.0-alt1.M50.2.i586.rpm  Несовпадение размера
Получено 22,5MB за 0s (47,8MB/s).
E: Получить некоторые архивы невозможно. Попробуйте ввести команду apt-get update или добавить параметр --fix-missing.
hsh-install: failed to calculate package file list.
hsh-install: Failed to generate package file list.

Переинициализация каталога $HASHER:
$ hsh-rmchroot $HASHER && rm -rf $HASHER && mkdir $HASHER
Comment 4 Евгений Синельников 2011-01-17 16:41:13 MSK
(В ответ на comment #2)
> Проблема локализованана в хешере.
> 
> При попытке выкачать файл с помощью wget получаем:
> $ wget -c
[...]
> Cannot write to `wine-etersoft-1.7.0-alt1.M50.2.i586.rpm' (Permission denied).

Так. Этот вариант отменяется - проблема прав доступа. wget для нашего файла в хешере p5 работает.

Похоже, что это личная проблема apt'а
Comment 5 Евгений Синельников 2011-01-17 16:56:41 MSK
Я перегенерировал базы из скрипта build_base.sh в каталоге
/var/ftp/pub/download/WINE@Etersoft-School/ALTLinux

и всё рабработало... Но без подписей...

Я полагаю, что проблема не совпадения MD5 в том, что базы не перебиваются...

Либо, ВНИМАНИЕ! А не подписываются ли пакеты после того как перегенерированы и подписаны базы? Так нельзя. Сначала пакеты, а потом базы.

И, если пакеты подписываются, а базы уже сгенерированы, то базы нужно перегенерировать и переподписать. Иначе у пакетов, действительно, MD5-суммы совпадать не будут.
Comment 6 Евгений Синельников 2011-01-17 17:55:02 MSK
Сразу я не обратил внимания, что в скрипте подписываются пакеты:
for i in p5 ; do
    genbasedir --topdir=$(pwd)/$i i586 main || break
    rpm --addsign $i/i586/RPMS.main/*.rpm
done

Вот она и проблема в чистом виде. Конечно же md5-сумма пакетов после подписывания меняется...

for i in p5 ; do
    rpm --addsign $i/i586/RPMS.main/*.rpm &&
    genbasedir --topdir=$(pwd)/$i i586 main
done

Осталось ещё уточнить каким ключами подписываются пакеты, но это отдельный вопрос..
Comment 7 Денис Баранов 2011-01-17 18:58:29 MSK
После подписывания пакетов с новым скриптом пакеты корректно установились через apt-get
Comment 8 Евгений Синельников 2011-02-07 10:37:06 MSK
Подписи для репозиториев разрешены здесь:
http://bugs.etersoft.ru/show_bug.cgi?id=6729