Page 3 of 5 FirstFirst 12345 LastLast
Results 31 to 45 of 171

Thread: Загрузка прошивки с USB

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Quote Originally Posted by ser9ey View Post
    В FAQе есть статейка как заставить железку бутиться с USB диска, но, судя по-всему, это актуально для версии d на 4м ядре.
    В rtn-овской версии не работает,
    Попробовал настроить через post скрипты, так flashfs не сохраняет
    Подскажите, что делаю не так и где происходит автомонтирование USB диска (грешу на hotplug)?
    Насколько мне известно, есть вообще 2 варианта бута с USB.
    Первое - Бут ядра из flashfs и монтирование файловой системы с USB-диска. Второе - нормальный бут с последующим "Сказать что корень теперь на USB".

    Вообще хотелось бы тему развернуть, а то уже подумываю менять WL500W на обычный компьютер.
    Sorry for my bad English.
    Покупайте Отечественных Слонов!!!

  2. #2
    Quote Originally Posted by ryzhov_al View Post
    Всё, что есть - тут.
    Все ж таки решил менять WL500W на обычный комп, по совместительству HTPC и NAS. Осталось кулеры тихие найти...
    Sorry for my bad English.
    Покупайте Отечественных Слонов!!!

  3. #3

    Exclamation Загрузка с внешнего винта

    Здравствуйте.
    Имеется роутер dir-320
    на него ставится только прошивка с ядром 2.4, так как флешка 4мб, а прошивка с ядром 2.6 - 5.5мб.

    В FAQ прочитал, что можно настроить загрузку роутера с раздела внешнего винта.

    И у меня к Вам вопрос:

    Можно ли с прошивкой роутера с ядром 2.4 сделать загрузку с внешнего винта с ядром 2.6

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

    может у кого-то есть прошивка Олега с ядром 2.6 на dir-320?

    Или может подскажете как быть?

    пробовал использовать последнюю прошивку openwrt - но работа по вайфаю - на скачку 0.3-3 мб, на отдачу - 16мб, на Олеговской прошивке - на скачку - 21мб, на отдачу 23мб.
    По скорости работы прошивка Олега - просто супер.

    Либо еще один вариант - ставить максимально обрезанную прошивку с ядром 2.6 с поддержкой usb и сразу настраивать загрузку с винта(флешки) и потом уже доставлять на винт(флешку) все необходимые программы и скрипты.
    Только нет такой максимально обрезанной прошивки с поддержкой usb.
    Last edited by sergldom; 30-07-2011 at 17:36.

  4. #4
    А на первую страницу заглянуть, как по Вашему UVC камеры работают, через сериал?
    Last edited by Vl@dK; 01-08-2011 at 17:05.

  5. #5
    Quote Originally Posted by Vl@dK View Post
    А на первую страницу заглянуть, как по Вашему UVC камеры работают, через сериал?
    Можно использовать usb хаб, вам это не приходило в голову?

    2 sergldom: Все это возможно, только это вам придется делать самому. Инфа об этом на форуме есть.

    PS Загрузку с внешнего носителя не починили.
    ASUS RT-N15U

  6. #6
    Не очень понял при чем здесь ЮСБ хаб, у меня стоит прошивка из первого поста и весь софт на внешнем носителе.
    УМВР
    ЧЯДНТ?

  7. #7
    Join Date
    Jan 2011
    Location
    Нижний Новгород
    Posts
    543

    Lightbulb ?

    Quote Originally Posted by AndreyUA View Post
    Если бы нашелся герой и поправил загрузку с внешнего носителя, то это был бы какой-никакой выход.
    Quote Originally Posted by AndreyUA View Post
    Загрузку с внешнего носителя не починили.
    Можно немного подробностей? Что нужно подправить?
    DIR-320 & RTN-r3297 from USB>r3478>r3539>r3722>r3815>r3877>r4051>r4990>r5163

  8. #8
    Quote Originally Posted by ConstAntz View Post
    Можно немного подробностей? Что нужно подправить?
    Править нужно здесь
    http://code.google.com/p/wl500g/sour...ers/linuxrc.sh

    а именно где-то здесь
    mount -t devfs none dev

    В 2.6 используется udev, поэтому и не работает
    Почитайте еще здесь http://wl500g.info/showthread.php?t=24125
    ASUS RT-N15U

  9. #9
    Quote Originally Posted by AndreyUA View Post
    Править нужно здесь
    http://code.google.com/p/wl500g/sour...ers/linuxrc.sh

    а именно где-то здесь
    mount -t devfs none dev
    а именно - по образу и подобию
    http://code.google.com/p/wl500g/sour...-n/rc/rc.c#696

  10. #10
    Join Date
    Jan 2011
    Location
    Нижний Новгород
    Posts
    543
    Quote Originally Posted by AndreyUA View Post
    Править нужно здесь
    http://code.google.com/p/wl500g/sour...ers/linuxrc.sh

    а именно где-то здесь
    mount -t devfs none dev

    В 2.6 используется udev, поэтому и не работает
    Quote Originally Posted by theMIROn View Post
    а именно - по образу и подобию
    http://code.google.com/p/wl500g/sour...-n/rc/rc.c#696
    Code:
    696 #ifdef LINUX26
    697 mount("sysfs", "/sys", "sysfs", MS_MGC_VAL, NULL);
    698 mount("devfs", "/dev", "tmpfs", MS_MGC_VAL | MS_NOATIME, NULL);
    Зачем нужна условная компиляция в /branches/rt-n/rc/rc.c#696. Защита от "дурака"? И где здесь udev?

    UPD: согласно документации на ядре 2.4.х при загрузке системы используется скрипт /linuxrc, а вот на 2.6.х - этот скрипт используется только если он в initrd. Отсюда - как его не исправляй, толку - ноль.
    Last edited by ConstAntz; 02-09-2011 at 21:46.
    DIR-320 & RTN-r3297 from USB>r3478>r3539>r3722>r3815>r3877>r4051>r4990>r5163

  11. #11
    Join Date
    Jan 2011
    Location
    Нижний Новгород
    Posts
    543

    Talking .

    Quote Originally Posted by ConstAntz View Post
    Зачем нужна условная компиляция в /branches/rt-n/rc/rc.c#696. Защита от "дурака"?
    Так бы сразу и сказали, что svn/trunk- это базовая часть сразу для двух веток svn/branches/d/ и svn/branches/rt-n/. А то когда читаешь код, находящийся в gateway/ - начинают возникать глупошные вопросы
    DIR-320 & RTN-r3297 from USB>r3478>r3539>r3722>r3815>r3877>r4051>r4990>r5163

  12. #12
    Join Date
    Jan 2011
    Location
    Нижний Новгород
    Posts
    543

    Вроде получилось

    Не для "Чайников"!!!
    Мак адрес роутера будет утерян - придется потом восстанавливать.
    Желающие попробовать есть?

    Собирал сам и пока сижу на ней

    Предварительные шаги:

    Ввиду того, что в mini.trx вырезано максимум, следует заранее подготовить файловую систему на флешке, распаковав fs.tar.gz в корень.
    Первого раздела в ext3 размером 64МБ должно хватить даже для желающих распаковать modules.tar.gz туда же.
    Code:
    df -h /
    Filesystem                Size      Used Available Use% Mounted on
    /dev/root               101.7M     21.0M     75.5M  22% /
    Code:
    fdisk -l
    Disk /dev/sda: 8032 MB, 8032092160 bytes
    248 heads, 62 sectors/track, 1020 cylinders
    Units = cylinders of 15376 * 512 = 7872512 bytes
    
       Device Boot      Start         End      Blocks  Id System
    /dev/sda1               1          14      107601  83 Linux
    Ну а дальше - проще некуда. По tftp залить mini.trx

    Продолжают чтение те, кому апгрейд удался:
    - на веб интерфейсе лучше пока ничего не трогать, а зайти через telnet
    - подлючаем флешку и ищем свой раздел (tail /tmp/syslog.log, mount и fdisk -l помогут) у меня /dev/sda1
    - изменяем параметры загрузки (вариант №1 - безопасный - в случае сбоя, есть вероятность возврата к mini)
    nvram set kernel_args="root=/dev/mtdblock2 noinitrd init=/linuxrc console=ttyS0,115200"
    nvram set boot_dev="/dev/sda1"
    nvram commit
    reboot
    - изменяем параметры загрузки (вариант №2 - экстримальный - возврат к mini, в случае сбоя, невозможен)
    nvram set kernel_args="ro root=/dev/sda1 rootdelay=5 rootfstype=ext3 noinitrd init=/sbin/init console=ttyS0,115200"
    nvram unset boot_dev
    nvram commit
    reboot


    MD5
    1084fbb173f852e806c9f5f13d4d3aaa rtn-r3297-fs.tar.gz
    29a1cf965439b1d80f3d80b7b9ce6295 rtn-r3297-modules-R1.tar.gz
    6509ff7559b48ee988d0d1ce80fdc31a DIR320-1.9.2.7-rtn-r3297M-mini.trx

    модификацировано в ядре:

    Code:
    device drivers/ata-atapi-mfm-rll support m->n
    device drivers/scsi device support/scsi device support m->y
    device drivers/scsi device support/scsi disk support m->y
    device drivers/scsi device support/scsi cdrom support n->m
    device drivers/scsi device support/scsi generic support m->y
    device drivers/scsi device support/verbose scsi n->y
    device drivers/usb support/support for host-side usb m->y
    device drivers/usb support/usb announce m->y
    device drivers/usb support/ehci-hcd support m->y
    device drivers/usb support/usb mass storage support m->y
    filesystem/miscellaneous filesystem/comressed rom file system (cramfs) n->y
    filesystem/native language support:
    cp850 y->m
    cp852 y->m
    cp855 y->m
    cp860 y->m
    cp865 y->m
    cp866 y->m
    cp869 y->m
    cp1250 y->m
    cp8859-5 n->m
    про r3815
    последняя версия r4051
    Attached Files Attached Files
    Last edited by ConstAntz; 01-04-2012 at 07:52. Reason: обновление ссылок во вложениях
    DIR-320 & RTN-r3297 from USB>r3478>r3539>r3722>r3815>r3877>r4051>r4990>r5163

  13. #13
    Join Date
    May 2011
    Location
    Фрязино
    Posts
    39

    Thumbs up

    Ура! Ещё не пробовал, но надежда что dir320 ещё поживет появилась
    А как ты смастерил mini.trx? Я к тому,как делать из оригинальной rtn прошивки нарезку на 2 куска самому?

  14. #14
    Join Date
    Jan 2011
    Location
    Нижний Новгород
    Posts
    543
    Quote Originally Posted by mowgli View Post
    А как ты смастерил mini.trx? Я к тому,как делать из оригинальной rtn прошивки нарезку на 2 куска самому?
    В теории, нужно разобрать trx на cramfs и vmlinuz. Затем покрамсать cramfs и собрать обратно в trx.
    На практике, мне было гораздо интересней собрать прошивку из исходников.
    DIR-320 & RTN-r3297 from USB>r3478>r3539>r3722>r3815>r3877>r4051>r4990>r5163

  15. #15
    Join Date
    Mar 2009
    Location
    Moscow
    Posts
    968

    Lightbulb linuxrc

    linuxrc в ветке -rtn похоже до сих пор нерабочий.
    http://wl500g.info/showpost.php?p=241887&postcount=92

    Пару ошибок в нем я исправил (не хватало пробела перед ] и не работало ожидание появления диска):
    Code:
    Index: linuxrc.sh
    ===================================================================
    --- linuxrc.sh	(revision 3660)
    +++ linuxrc.sh	(working copy)
    @@ -61,7 +61,7 @@
     if [ ! -b "$boot_dev" ]; then
     	insmod usbcore
     	usb21=$(nvram get usb20_disable_x)
    -	[ -z "$usb21"] && usb21="0"
    +	[ -z "$usb21" ] && usb21="0"
     	[ "$usb21" -ne 1 ] && insmod ehci-hcd
     	[ "$usb21" -ne 2 ] && (insmod ohci-hcd; insmod uhci-hcd)
     	sleep 2s
    @@ -74,7 +74,7 @@
     
     # wait for disc appear, max 15 sec
     i=0
    -while [ -z "$(ls /sys/class/scsi_disk/)" -a -z "$(ls /sys/bus/ide/devices/ 2>/dev/null)" ]; do
    +while [ ! -b "$boot_dev" ]; do
     	sleep 1s
     	i=$((i + 1))
     	if [ $i -gt 15 ]; then
    @@ -82,33 +82,35 @@
     	fi
     done
     
    -# trying to mount new rootfs
    -for fstyp in ext3 ext2; do
    -	mount -t $fstyp -o ro "$boot_dev" /mnt
    -	if [ $? -eq 0 ]; then
    -		break
    +if [ -b "$boot_dev" ]; then
    +	# trying to mount new rootfs
    +	for fstyp in ext3 ext2; do
    +		mount -t $fstyp -o ro "$boot_dev" /mnt
    +		if [ $? -eq 0 ]; then
    +			break
    +		fi
    +	done
    +	
    +	# enable hotplug
    +	echo /sbin/hotplug > /proc/sys/kernel/hotplug
    +	
    +	# switch root
    +	if [ -d /mnt/mnt ]; then
    +		cd /mnt
    +		pivot_root . mnt
    +		umount /mnt/dev
    +		umount /mnt/sys
    +		umount /mnt/proc
    +		exec chroot . sbin/init <dev/null >dev/null 2>&1
     	fi
    -done
    -
    -# enable hotplug
    -echo /sbin/hotplug > /proc/sys/kernel/hotplug
    -
    -# switch root
    -if [ -d /mnt/mnt ]; then
    -	cd /mnt
    -	pivot_root . mnt
    -	umount /mnt/dev
    -	umount /mnt/sys
    -	umount /mnt/proc
    -	exec chroot . sbin/init <dev/null >dev/null 2>&1
    +	
    +	# if something fails...
    +	cd /
    +	
    +	# unmount everything
    +	umount /mnt
     fi
     
    -# if something fails...
    -cd /
    -
    -# unmount everything
    -umount /mnt
    -
     # remove modules
     rmmod usb-storage && rmmod sd_mod && rmmod scsi_mod
     rmmod uhci-hcd
    Остались две проблемы - обе с /dev.
    При загрузке с подключенной флешкой - linuxrc по-прежнему ругается на строчке exec chroot . sbin/init ... :can't open dev/null: no such file и уходит в перезагрузку.
    При загрузке с отключенной флешкой - linuxrc ругается на строчке umount /dev - umount: can't umount /dev: Device or resource busy. При этом успешно загружается и работает прошивка из встроенной памяти, но по выводу команды mount /dev оказывается смонтированным дважды. Это как-то неправильно, наверное.
    D-Link DIR-320 A1/A2, DIR-620 C1, Netgear WNR3500L v1 v2

Page 3 of 5 FirstFirst 12345 LastLast

Similar Threads

  1. Подключение USB модема 3G/CDMA к роутеру Asus
    By buka2 in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 796
    Last Post: 22-10-2014, 19:29
  2. Проблема: USB 1.1 устройства через USB 2.0 хаб
    By Rambalac in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 30
    Last Post: 15-09-2009, 12:00
  3. Replies: 0
    Last Post: 29-02-2008, 19:21
  4. Problem mit Printer und HD am Usb Hub...
    By Sidd in forum German Discussion - Deutsch (DE)
    Replies: 4
    Last Post: 29-03-2006, 17:53
  5. Please help... USB HDD doesn't work
    By jirina42 in forum WL-500g Q&A
    Replies: 6
    Last Post: 05-01-2006, 19:04

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •