Opened 3 months ago

Closed 2 months ago

Last modified 2 months 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 3 months ago.
status (22.5 KB) - added by AlexLir 3 months ago.

Download all attachments as: .zip

Change History (20)

comment:1 in reply to: ↑ description Changed 3 months ago by alx

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 Changed 3 months ago by AlexLir

  • Description modified (diff)

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

Changed 3 months ago by AlexLir

Changed 3 months ago by AlexLir

comment:3 Changed 3 months ago by AlexLir

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

/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 Changed 3 months ago by alx

Как видно по приложенному файлу 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 3 months ago by alx (previous) (diff)

comment:5 Changed 3 months ago by alx

Я тут посмотрел исходники 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 Changed 3 months ago by AlexLir

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

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 3 months ago by AlexLir (previous) (diff)

comment:7 Changed 3 months ago by alx

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

comment:8 Changed 3 months ago by AlexLir

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 Changed 3 months ago by alx

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

comment:10 Changed 3 months ago by alx

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

comment:11 Changed 3 months ago by alx

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

comment:12 follow-up: Changed 3 months ago by AlexLir

Выполнил команду 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

comment:13 in reply to: ↑ 12 Changed 3 months ago by alx

Replying to AlexLir:

TFTP from server 192.168.0.75;

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

setenv serverip 192.168.0.13

comment:14 Changed 3 months ago by alx

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

comment:15 follow-up: Changed 3 months ago by AlexLir

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

comment:16 in reply to: ↑ 15 Changed 3 months ago by alx

Replying to AlexLir:

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

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

comment:17 Changed 2 months ago by alx

  • Resolution set to готово
  • Status changed from new to closed

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

comment:18 Changed 2 months ago by san

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

Note: See TracTickets for help on using tickets.