Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#446 closed баг (готово)

Ошибка при обновлении.

Reported by: AlexLir Owned by: alx
Priority: средний Milestone: 1 очередь
Component: sw Keywords:
Cc:

Description (last modified by AlexLir)

При обновлении платы SW-01 c ревизии r1562 на ревизию r1933 и пакета для VE-01 с ревизии 1.0-r38.9 на ревизию 1.0-r63.9, в результат обновления выдается ошибки и обновления не происходит. Прилагаю вывод результата обновления.

Not selecting sw 1.0 as installing it would break existing dependencies.
Upgrading sw from 1.0-r1562.9 to 1.0-r1933.9 on root.
Downloading https://repo.adc-line.ru/sw-01/ipk/armv5te/sw_1.0-r1933.9_armv5te.ipk.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Upgrading ve-01 from 1.0-r38.9 to 1.0-r63.9 on root.
Downloading https://repo.adc-line.ru/sw-01/ipk/all/ve-01_1.0-r63.9_all.ipk.
Not selecting ve-01-csp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for sw:
 * 	ve-01-msp (= 1.0-r4.9) * 
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for ve-01:
 * 	ve-01-csp (= 1.0-r4.9) * 	ve-01-msp (= 1.0-r4.9) * 	ve-01-rootfs (= 1.0-r60.9) * 

Attachments (2)

all (18.7 KB ) - added by AlexLir 4 years ago.
status (22.5 KB ) - added by AlexLir 4 years ago.

Download all attachments as: .zip

Change History (20)

in reply to:  description comment:1 by alx, 4 years ago

Alex, так как ты человек не посторонний, позволю себе немного позанудствовать. :)

Полное и точное описание проблемы - залог скорейшего нахождения ее причины. Поэтому учись, пожалуйста, точно и ясно излагать наблюдаемые факты.

Лирическое отступление. Однажды я отправил заявку на ремонт сломавшегося домофона. В ответ получил письмо, в котором меня очень благодарили за ясное и подробное описание неисправности. А я всего лишь написал что-то типа: "не запирается магнитный замок, не светятся индикаторы наружной и внутренней панелей, предположительно вышел из строя источник питания". По их словам, обычно клиенты описывают неисправность так: "Нифурычит". :)

Replying to AlexLir:

При обновлении платы SW-01 c ревизии r1562 на ревизию r1933

Ты обновлял не плату (ты же не паял ее паяльником, и не лакировал на ней потертости!), а программное обеспечение. И у платы нет ревизии (есть только версия на нижней стороне печати). Ревизии, которые ты называешь, есть у программных пакетов, из которых и состоит ПО платы (таких пакетов около полусотни). Вот их (пакеты) ты, очевидно, и обновлял. Когда ты пишешь, что обновлял с r1562 на r1933, стоило бы указать пакет, который ты обновлял (чьи это ревизии). У каждого пакета есть название (см. например таблицу в веб-интерфейсе, где показываются доступные обновления).

и пакета для VE-01 с ревизии 1.0-r38.9 на ревизию 1.0-r63.9,

О каком именно пакете идет речь? Для платы VE-01 есть, как минимум, 5 разных пакетов - ve-01, ve-01-csp, ve-01-msp, ve-01-sounds, ve-01-rootfs...

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

Спасибо, что сразу приложил вывод - это хорошо и правильно! Из него видно, что именно пытались обновить:

  • пакет sw с r1562 на r1933;
  • пакет ve-01 с r38 на r63;

Судя по приведенному выводу, обновление не удалось из-за отсутствия пакета ve-01-msp_1.0-r4.9. Это странно, потому что такой пакет есть в репозитории, и он проиндексирован в файле Packages:

Package: ve-01-msp
Version: 1.0-r4.9
Section: base
Architecture: all
Maintainer: Alex Mogilnikov <alx@kolez.com>
MD5Sum: 1d382c56dc5c3c936153a4a01580b24e
Size: 1968022
Filename: ve-01-msp_1.0-r4.9_all.ipk
Source: file://ve01-msp-v4.elf
Description: Firmware for VE-01
OE: ve-01-msp
HomePage: unknown
Priority: optional

На первый взгляд не вижу причины, по которой он мог не найтись...

Полностью ли приведен вывод результата обновления? Его последняя строчка наводит на мысль о том, что там должно было быть еще что-то дальше...

Вот что я предлагаю сделать для дальнейшего анализа проблемы:

  1. Скопировать из платы SW-01 файл /var/lib/opkg/all и приложить к тикету;
  2. Скопировать из платы SW-01 файл /usr/lib/opkg/status и приложить к тикету;
  3. В консоли SW-01 выполнить команду opkg upgrade ve-01, ее вывод скопировать сюда полностью.

Надеюсь, что этого будет достаточно.

comment:2 by AlexLir, 4 years ago

Description: modified (diff)

Прошу прощения, последняя строчка вывода потерялась. Добавил ее в исходный текст тикета. Инструкцию для анализа проблемы сейчас выполню...

by AlexLir, 4 years ago

Attachment: all added

by AlexLir, 4 years ago

Attachment: status added

comment:3 by AlexLir, 4 years ago

Файлы приложил, вот вывод команды:

/usr/lib/opkg$ opkg upgrade ve-01
Upgrading ve-01 from 1.0-r38.9 to 1.0-r63.9 on root.
Downloading https://repo.adc-line.ru/sw-01/ipk/all/ve-01_1.0-r63.9_all.ipk.
Not selecting ve-01-csp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for ve-01:
 * 	ve-01-csp (= 1.0-r4.9) * 	ve-01-msp (= 1.0-r4.9) * 	ve-01-rootfs (= 1.0-r60.9) *

comment:4 by alx, 4 years ago

Как видно по приложенному файлу status, имеются проблемы с установленными пакетами.

Установленный пакет ve-01_1.0-r38 требует пакеты ve-01-csp_1.0-r4 и ve-01-rootf_1.0-r35. Причем зависимости строгие: требуются пакеты только таких ревизий, и никаких других. При этом установлен пакет ve-01-csp ревизии r3 и пакет ve-01-rootf ревизии r30. То есть зависимости пакета ve-01_1.0-r38 не удовлетворены.

Для исправления ситуации, так как пакета ve-01-rootf_1.0-r35 в репозитории давно нет, я предлагаю удалить проблемные пакеты и затем установить новые.

  1. Выполняем команду opkg remove --force-depends ve-01 ve-01-csp ve-01-rootfs - указанные пакеты должны удалиться.
  2. Выполняем команду opkg install ve-01 ve-01-csp ve-01-rootfs - должны установиться актуальные ревизии пакетов.
Last edited 4 years ago by alx (previous) (diff)

comment:5 by alx, 4 years ago

Я тут посмотрел исходники opkg и, насколько я понял, состояние пакета "not-installed" означает ровно то, что написано - пакет не установлен. Следовательно, записи о пакетах te-01_1.0-r5, ve-01_1.0-r28 и ve-01-rootf_1.0-r25 в файле status можно просто игнорировать. Таким образом, с пакетом te-01 никаких проблем нет - установлен пакет актуальной ревизии. И у нас проблемы только с пакетами ve-01-rootf и ve-01-csp, которые имеют не ту ревизию, которую требует установленный ve-01.

Предлагаю te-01 оставить в покое, и следовать плану из предыдущего комментария (я его скорректировал в соответствии со вновь открывшимися обстоятельствами).

comment:6 by AlexLir, 4 years ago

Выполнил указанные действия...

sw01 login: root
root@sw01:~# opkg remove --fjffs2: notice: (34) check_node_data: wrong data CRC in data node at 0x0ad16e98: read 0x3a926
adb, calculated 0x1b566b11.
orce-depends ve-01 ve-01jffs2: notice: (34) check_node_data: wrong data CRC in data node at 0x0ad86f48: read 0xee7df98f,
 calculated 0x7a201812.
-csp ve-01-rootfs
Removing package ve-01 from root...
ve-01-csp was autoinstalled and is now orphaned, removing.
Removing package ve-01-csp from root...
ve-01-msp was autoinstalled and is now orphaned, removing.
Removing package ve-01-msp from root...
ve-01-rootfs was autoinstalled and is now orphaned, removing.
Removing package ve-01-rootfs from root...
ve-01-sounds was autoinstalled and is now orphaned, removing.
Removing package ve-01-sounds from root...
Collected errors:
 * opkg_remove_cmd: Package ve-01-csp is not installed.
 * opkg_remove_cmd: Package ve-01-rootfs is not installed.
root@sw01:~# jffs2: notice: (34) check_node_data: wrong data CRC in data node at 0x047811ec: read 0xdd77d362, calculated
 0xbc379c8f.
root@sw01:~# opkg install ve-01 ve-01-csp ve-01-rootfs
Installing ve-01 (1.0-r63.9) on root.
Downloading https://repo.adc-line.ru/sw-01/ipk/all/ve-01_1.0-r63.9_all.ipk.
Not selecting ve-01-csp 1.0 as installing it would break existing dependencies.
Unknown package 've-01-csp'.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Unknown package 've-01-rootfs'.
Collected errors:
 * opkg_download: Failed to download https://repo.adc-line.ru/sw-01/ipk/all/ve-01_1.0-r63.9_all.ipk, wget returned 8.
 * opkg_install_pkg: Failed to download ve-01. Perhaps you need to run 'opkg update'?
 * opkg_install_cmd: Cannot install package ve-01.
 * opkg_install_cmd: Cannot install package ve-01-csp.
 * opkg_install_cmd: Cannot install package ve-01-rootfs.
root@sw01:~# opkg update
Downloading https://repo.adc-line.ru/sw-01/ipk/all/Packages.gz.
Inflating https://repo.adc-line.ru/sw-01/ipk/all/Packages.gz.
Updated list of available packages in /var/lib/opkg/all.
Downloading https://repo.adc-line.ru/sw-01/ipk/all/Packages.sig.
Signature check passed.
Downloading https://repo.adc-line.ru/sw-01/ipk/armv5te/Packages.gz.
Inflating https://repo.adc-line.ru/sw-01/ipk/armv5te/Packages.gz.
Updated list of available packages in /var/lib/opkg/armv5te.
Downloading https://repo.adc-line.ru/sw-01/ipk/armv5te/Packages.sig.
Signature check passed.
Downloading https://repo.adc-line.ru/sw-01/ipk/at91sam9g20ek/Packages.gz.
Inflating https://repo.adc-line.ru/sw-01/ipk/at91sam9g20ek/Packages.gz.
Updated list of available packages in /var/lib/opkg/at91sam9g20ek.
Downloading https://repo.adc-line.ru/sw-01/ipk/at91sam9g20ek/Packages.sig.
Signature check passed.
root@sw01:~# opkg install ve-01 ve-01-csp ve-01-rootfs
Installing ve-01 (1.0-r64.9) on root.
Downloading https://repo.adc-line.ru/sw-01/ipk/all/ve-01_1.0-r64.9_all.ipk.
Not selecting ve-01-csp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-msp 1.0 as installing it would break existing dependencies.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Not selecting ve-01-csp 1.0 as installing it would break existing dependencies.
Unknown package 've-01-csp'.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Not selecting ve-01-rootfs 1.0 as installing it would break existing dependencies.
Unknown package 've-01-rootfs'.
Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for ve-01:
 *      ve-01-csp (= 1.0-r4.9) *        ve-01-msp (= 1.0-r4.9) *        ve-01-rootfs (= 1.0-r61.9) *
 * opkg_install_cmd: Cannot install package ve-01.
 * opkg_install_cmd: Cannot install package ve-01-csp.
 * opkg_install_cmd: Cannot install package ve-01-rootfs.

Last edited 4 years ago by AlexLir (previous) (diff)

comment:7 by alx, 4 years ago

Очень странно... А если просто opkg install ve-01-csp?

comment:8 by AlexLir, 4 years ago

sw01 login: root
root@sw01:~# opkg install ve-01-csp
Not selecting ve-01-csp 1.0 as installing it would break existing dependencies.
Unknown package 've-01-csp'.
Collected errors:
 * opkg_install_cmd: Cannot install package ve-01-csp.
root@sw01:~#

comment:9 by alx, 4 years ago

Предлагаю не тратить больше на это время, стереть всю ПЗУ и прошить заново.

comment:10 by alx, 4 years ago

А если подумать, лучше не стирать все ПЗУ, а зайти в u-boot и выполнить команду run loadrootfs.

comment:11 by alx, 4 years ago

Решена ли проблема?

comment:12 by AlexLir, 4 years ago

Выполнил команду run loadrootfs.

U-Boot> run loadrootfs
macb0: link up, 100Mbps full-duplex (lpa: 0xc1e1)
Using macb0 device
TFTP from server 192.168.0.75; our IP address is 192.168.0.254
Filename 'SW-01/rootfs'.
Load address: 0x22000000
Loading: T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T
 T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T
 T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T

in reply to:  12 comment:13 by alx, 4 years ago

Replying to AlexLir:

TFTP from server 192.168.0.75;

У нас адрес сервера не такой. Адрес нашего сервера 192.168.0.13.

setenv serverip 192.168.0.13

comment:14 by alx, 4 years ago

Решена ли проблема?

comment:15 by AlexLir, 4 years ago

Ввел адрес сервера командой: setenv serverip 192.168.0.13, выполнил команду run loadrootfs. Прошла загрузка, а проблема не решилась. После я не стал тратить время и стер всю ПЗУ и прошил заново, далее через WEB-морду обновил на актуальную ревизию.

in reply to:  15 comment:16 by alx, 4 years ago

Replying to AlexLir:

Ввел адрес сервера командой: setenv serverip 192.168.0.13, выполнил команду run loadrootfs. Прошла загрузка, а проблема не решилась. После я не стал тратить время и стер всю ПЗУ и прошил заново, далее через WEB-морду обновил на актуальную ревизию.

Верно ли я понял, что после стирания всей ПЗУ и новой прошивки проблема решилась? Это странно, так как прошивка чистой ПЗУ выполняется ровно той же командой run loadrootfs, которая решить проблему не смогла... Не мог бы ты уточнить, в чем проявлялась проблема после выполнения run loadrootfs?

comment:17 by alx, 4 years ago

Resolution: готово
Status: newclosed

Расцениваю молчание как свидетельство того, что проблема решена.

comment:18 by san, 4 years ago

Саша говорил мне устно что после стирания ПЗУ проблема решилась.
Возможно у этой платы была какая-то проблема с ПЗУ которая решилась стиранием...
А сейчас Саша в отпуске, поэтому и молчит)

Note: See TracTickets for help on using tickets.