LINUX.ORG.RU

Прервать загрузку линукса камеры

 


1

3

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

Подключился к ней по уарту. В консоли видна загрузка линукса, до перезагрузки, и прервать которую не получается , на клавишу ‘q’ не реагирует, единственно удается зайти в у-бот. Но там комманд для чтения с флешки ( фатреад) нету. есть команды загрузкы по тфтп , но у камеры внешний интерфейс только вай фай ,который соответсвенно не доступен в у-боте. Так что у-бот наверно для спасения мало подходит.. В общем , есть возможность каким то способом остановить загрузку линя и через линуксовую консоль восстановиться?

Перемещено hobbit из general



Последнее исправление: Mitya37 (всего исправлений: 2)
 
Starting logging: /etc/init.d/S01logging: line 24: start-stop-daemon: not found
/etc/init.d/S01logging: line 24: start-stop-daemon: not found
OK
Starting mdev...
Initializing random number generator... read-only file system detected...done
Starting network...
/etc/init.d/S40network: line 22: /sbin/ifup: not found
GOKE 7102S BOARD START:
mkdir: can't create directory '/var/run': File exists
Press 'q' in 1 seconds to exit: sh: you need to specify whom to kill
[    7.960000] gpio_dev init suc
[    8.100000] exFAT: Version 1.2.9
set gpio[0_4] directrion output to 1.
 
Mitya37
() автор топика

Через uboot можно попробовать изменить command line. Напиши printenv, там возможно будет переменная вроде bootargs, потом через editenv bootargs её можно попробовать поменять. Там можно попытаться поэкспериментировать, например попробовать указать init=/bin/sh, в этом случае линукс вместо стандартного init-а откроет тебе консоль. Там уже можно попробовать загрузить прошивку.

vbr ★★★★
()
Ответ на: комментарий от vbr
[PROCESS_SEPARATORS] printenv
arm_freq=0x00112032
baudrate=115200
bootargs=console=ttySGK0,115200 mem=35M rootfstype=squashfs root=/dev/mtdblock2 mtdparts=gk_flash:320K(uboot),1664K(kernel),1088K(rootfs),384K(home),-(mtd) init=linuxrc
bootcmd=sf probe;sf read 0xc1000000 0x50000 0x1A0000;bootm 0xc1000000
bootdelay=1
bootfile=zImage
bsbsize=2M
consoledev=ttySGK0
ethact=goke
ethaddr=3C:97:0E:22:E1:20
gatewayip=11.1.5.1
hostname="gk7102c"
ipaddr=11.1.5.20
loadaddr=0xC1000000
mem=35M
netdev=eth0
netmask=255.255.255.0
nfsserver=11.1.5.19
phytype=0
rootfstype=ubi.mtd=3 rootfstype=ubifs root=ubi0:rootfs
rootpath=/opt/work
serverip=11.1.5.19
sfboot=setenv bootargs console=${consoledev},${baudrate} noinitrd mem=${mem} rw ${rootfstype} init=linuxrc ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${netdev} mac=${ethaddr} phytype=${phytype};sf probe 0 0;sf read ${loadaddr} ${sfkernel} ${filesize}; bootm
sfkernel=0x50000
stderr=serial
stdin=serial
stdout=serial
tftpboot=setenv bootargs root=/dev/nfs nfsroot=${nfsserver}:${rootpath},proto=tcp,nfsvers=3,nolock ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${netdev} mac=${ethaddr} phytype=${phytype} console=${consoledev},${baudrate} mem=${mem};tftpboot ${bootfile};bootm

Environment size: 1278/65532 bytes
[/cut]
Mitya37
() автор топика
Ответ на: комментарий от vbr

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

Mitya37
() автор топика

флешка че то не монтируется, на команду

, 
mount -t vfat /dev/mmcblk0p1  /media
пишет , что файла или каталога не существует.

посмотрел ls dev там тоже ничего.. хотя флешка стоит, 64 мб, фат

Mitya37
() автор топика
Ответ на: комментарий от Mitya37

Наверно стоило не удалять все остальные bootargs, а только заменить последний (init=linuxrc на init=/bin/sh)

Может и проблему с dev это как-то решит. Если нет - надо с помощью mknod создать нужное устройство, где-то узнав его major:minor номера).

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax
 1.400000] platform add gk musb...
[    1.400000] i2c /dev entries driver
[    1.410000] gk_wdt_v1_00: GK Watchdog Timer, (c) 2014 Goke Microelectronics
[    1.410000] [gk_wdt_init]: init
[    1.420000] [gk_wdt_probe]: probe
[    1.420000] [gk_wdt_probe]: probe mapped wdt_base=f3006000
[    1.430000] watchdog inactive, reset disabled, irq disabled
[    1.440000] mmcblk0: mmc0:e624 SR064 59.5 MiB
[    1.450000]  mmcblk0: p1
[    1.450000] IPv4 over IPv4 tunneling driver
[    1.460000] gre: GRE over IPv4 demultiplexor driver
[    1.460000] ip_gre: GRE over IPv4 tunneling driver
[    1.470000] TCP: cubic registered
[    1.470000] Initializing XFRM netlink socket
[    1.480000] NET: Registered protocol family 10
[    1.490000] IPv6 over IPv4 tunneling driver
[    1.500000] NET: Registered protocol family 17
[    1.500000] NET: Registered protocol family 15
[    1.510000] Registering the dns_resolver key type
[    1.520000] VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 4
Mitya37
() автор топика
Ответ на: комментарий от firkax

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

еще раз проверил, /sys есть , но в ней тоже пусто

Mitya37
() автор топика
Ответ на: комментарий от Mitya37

если б знать как это сделать

так надо начинать с простых вещей

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

  • что за камера, модель, ссылка чтоб не гуглить

  • что за прошивка была, почему не устраивала

  • что за прошивку залил, как и зачем

kindof
()
Ответ на: комментарий от kindof

K1A-WA1 на процессоре GOKE 7102 прошивка была родная + хак, который позволял по ртсп коннектится, тк сама уже даже просто не подключалась к платным облачным серверам. с хаком стало ртсп, фтп, работать, но я решил попробовать расширить функционал, залив туда эльф, дернуть который так и не получилось , в общем после этого перестала по фтп соединятся. ну и решил залить мод прошивки другой камеры,для такого же проца, посмотреть как пойдет с ним , после чего получилось то что получилось. прошивки туда ставились по флешке.

Mitya37
() автор топика
Ответ на: комментарий от Mitya37

K1A-WA1 на процессоре GOKE 7102 прошивка была родная + хак, который позволял по ртсп коннектится, тк сама уже даже просто не подключалась к платным облачным серверам. с хаком стало ртсп, фтп, работать, но я решил попробовать расширить функционал, залив туда эльф, дернуть который так и не получилось , в общем после этого перестала по фтп соединятся. ну и решил залить мод прошивки другой камеры,для такого же проца, посмотреть как пойдет с ним , после чего получилось то что получилось. прошивки туда ставились по флешке.

Видишь, стало уже проще. Помимо WiFi там есть и SD и даже USB. Вот через них и шей

kindof
()
Ответ на: комментарий от Mitya37

по юсб это как? комп никак не определяет камеру, только питание дает. про сд я выше писал. если только вай фай, но его как то надо подключить к тд?

а компу тут нечего делать пока, разве что UART потыкать

прошивки туда ставились по флешке.

а как и что ты шил «по флешке»?

SoC-и обычно после ресета смотрят откуда бы загрузиться, прежде чем лезть на ROM, еще до лоадера. Типа SD->USB->etc

kindof
()
Ответ на: комментарий от Mitya37

когда там все нормально работало, можно через флешку прошивки ставить, просто кладешь на флешку прошивку(хак,мод) и вставляешь в камеру. счас уже нельзя.

ну SPF туда не зашитым запаивали )

kindof
()