С 1.9.2.7-d-r2624
Не успел переехать на новую прошивку как в логе начали сыпаться проблемы ) Перестал определяться жёсткий диск размером в 1Тб. В логе падают сообщения
Единственное, что помоглоCode:Jan 1 04:00:03 syslogd started: BusyBox v1.19.2 Jan 1 04:00:03 kernel: klogd started: BusyBox v1.19.2 (2011-10-22 20:06:56 MSK) Jan 1 04:00:03 kernel: Linux version 2.6.22.19 (root@localhost) (gcc version 4.4.6 (GCC) ) #2 Sat Oct 22 20:28:56 MSK 2011 Jan 1 04:00:03 kernel: CPU revision is: 00029029 Jan 1 04:00:03 kernel: Setting the PFC to its default value Jan 1 04:00:03 kernel: Determined physical RAM map: Jan 1 04:00:03 kernel: memory: 02000000 @ 00000000 (usable) Jan 1 04:00:04 dropbear[202]: Running in background Jan 1 04:00:04 dnsmasq[209]: started, version 2.59 cachesize 512 Jan 1 04:00:04 dnsmasq[209]: compile time options: IPv6 GNU-getopt no-RTC no-DBus no-i18n DHCP no-scripts no-TFTP no-conntrack no-IDN Jan 1 04:00:04 dnsmasq-dhcp[209]: DHCP, IP range 192.168.1.101 -- 192.168.1.254, lease time 1d Jan 1 04:00:04 dnsmasq[209]: read /etc/hosts - 4 addresses Jan 1 04:00:05 kernel: usbcore: registered new interface driver usbfs Jan 1 04:00:05 kernel: usbcore: registered new interface driver hub Jan 1 04:00:05 kernel: usbcore: registered new device driver usb Jan 1 04:00:05 kernel: ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver Jan 1 04:00:05 kernel: ehci_hcd 0000:00:03.1: EHCI Host Controller Jan 1 04:00:05 kernel: ehci_hcd 0000:00:03.1: new USB bus registered, assigned bus number 1 Jan 1 04:00:05 kernel: ehci_hcd 0000:00:03.1: irq 6, io mem 0x18003800 Jan 1 04:00:05 kernel: ehci_hcd 0000:00:03.1: USB 0.0 started, EHCI 1.00 Jan 1 04:00:05 kernel: usb usb1: configuration #1 chosen from 1 choice Jan 1 04:00:05 kernel: hub 1-0:1.0: USB hub found Jan 1 04:00:05 kernel: hub 1-0:1.0: 2 ports detected Jan 1 04:00:05 kernel: usbcore: registered new interface driver usblp Jan 1 04:00:06 kernel: usb 1-1: new high speed USB device using ehci_hcd and address 2 Jan 1 04:00:06 kernel: Linux video capture interface: v2.00 Jan 1 04:00:06 kernel: usb 1-1: configuration #1 chosen from 1 choice Jan 1 04:00:06 kernel: hub 1-1:1.0: USB hub found Jan 1 04:00:06 kernel: hub 1-1:1.0: 2 ports detected Jan 1 04:00:06 kernel: usb 1-1.2: new high speed USB device using ehci_hcd and address 3 Jan 1 04:00:06 kernel: usb 1-1.2: configuration #1 chosen from 1 choice Jan 1 04:00:06 kernel: usbcore: registered new interface driver uvcvideo Jan 1 04:00:06 kernel: USB Video Class driver (v0.1.0) Jan 1 04:00:07 kernel: SCSI subsystem initialized Jan 1 04:00:07 kernel: Initializing USB Mass Storage driver... Jan 1 04:00:07 kernel: scsi0 : SCSI emulation for USB Mass Storage devices Jan 1 04:00:07 kernel: usbcore: registered new interface driver usb-storage Jan 1 04:00:07 kernel: USB Mass Storage support registered. Jan 1 04:00:07 kernel: NTFS driver 2.1.28 [Flags: R/O MODULE]. Jan 1 04:00:09 dnsmasq[209]: read /etc/hosts - 4 addresses Jan 1 04:00:09 dhcp client: deconfig: lease is lost Jan 1 04:00:09 kernel: scsi 0:0:0:0: Direct-Access WD Ext HDD 1021 2002 PQ: 0 ANSI: 4 Jan 1 04:00:09 kernel: sd 0:0:0:0: [sda] 1953519616 512-byte hardware sectors (1000202 MB) Jan 1 04:00:09 kernel: sd 0:0:0:0: [sda] Test WP failed, assume Write Enabled Jan 1 04:00:09 kernel: sd 0:0:0:0: [sda] Assuming drive cache: write through Jan 1 04:00:09 kernel: sd 0:0:0:0: [sda] Test WP failed, assume Write Enabled Jan 1 04:00:09 kernel: sd 0:0:0:0: [sda] Assuming drive cache: write through Jan 1 04:00:09 dnsmasq[209]: read /etc/hosts - 4 addresses Jan 1 04:00:09 dnsmasq[209]: using nameserver 10.39.224.1#53 Jan 1 04:00:09 dnsmasq[209]: using nameserver 10.39.224.2#53 Jan 1 04:00:10 udpxy[364]: udpxy 1.0-Chipmunk (build 20) standard is starting Jan 1 04:00:10 kernel: sda:<6>vlan1: dev_set_allmulti(master, 1) Jan 1 04:00:10 kernel: emf:Invalid interface identifier Jan 1 04:00:10 dhcp client: bound IP : 10.39.229.219 from 10.39.229.193 Jan 1 04:00:11 dropbear[376]: Failed listening on '22': Error listening: Address already in use Jan 1 04:00:11 dropbear[376]: Premature exit: No listening ports available.
poost-boot
Но ошибки продолжают валится и swap автоматом не монтируется из fstabCode:#!/bin/sh chmod 777 /tmp # Handmade /usr/sbin/pwrled off sleep 20 /usr/sbin/pwrled on mkdir -p /tmp/mnt/disca_3 mkdir -p /tmp/harddisk /usr/local/sbin/pre-mount mount -a /usr/local/sbin/post-mount
Last edited by Omega; 19-02-2012 at 16:17. Reason: fixed
Было: WL500gP (fw 1.9.2.7-10-USB-1.71) + Toshiba TravelStar 250Gb 2.5" inside router.
(ADOS + rTorrent WebUI+rtorrent + samba + rrdtool + XMail + QuiXplorer + ClamAV)
> Мои инструкции < Для новичков и ленивых > Wiki переехало сюда < "Ночные" сборки >
возникла проблема при выводе кириллицы кросс-компиленной энтузиастским тулчейном ncursesw 5.9:
mytest слинковано -rpath,/opt/lib-oleg:/opt/lib
линк пошел на /opt/lib, т.к. свою ncursesw и libc.so.0 (от энтузиастов) из /opt/lib-oleg я удалил
результатCode:ldd mytest libncursesw.so.5 => /opt/lib/libncursesw.so.5 (0x2aac0000) libgcc_s.so.1 => /opt/lib-oleg/libgcc_s.so.1 (0x2ab25000) libc.so.0 => /opt/lib/libc.so.0 (0x2ab47000) libgcc_s.so.1 => /opt/lib/libgcc_s.so.1 (0x2abfc000) libc.so.0 => /lib/libc.so.0 (0x2ac1b000) ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
Вставляю в /opt/lib-oleg свою ncursesw и libc.so.0Code:Русский UTF-8 текст Тест русского языка
Линк идет на /opt/lib-oleg, что закономерноCode:ldd mytest libncursesw.so.5 => /opt/lib-oleg/libncursesw.so.5 (0x2aac0000) libgcc_s.so.1 => /opt/lib-oleg/libgcc_s.so.1 (0x2ab29000) libc.so.0 => /opt/lib-oleg/libc.so.0 (0x2ab4b000) libc.so.0 => /lib/libc.so.0 (0x2abc4000) ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
Результат:
ключи для сборки ставил такие же как в optware.Code:Р▒~C▒~A▒~Aкий UTF-8 ▒~Bек▒~A▒~B Те▒~A▒~B ▒~@▒~C▒~A▒~Aкого ▒~Oз▒~Kка
код mytest:
собран энтузиастским тулчейном тоже.Code:#define _XOPEN_SOURCE_EXTENDED #include <ncurses.h> #include <unistd.h> #include <signal.h> #include <locale.h> void sig(int n) { } int main() { setlocale(LC_ALL, ""); signal(SIGINT, sig); initscr(); char text[]="Русский UTF-8 текст\n"; printw("%s",text); printw("Тест русского языка"); refresh(); pause(); endwin(); return 0; }
Что с #define _XOPEN_SOURCE_EXTENDED, что без этого - результат одинаков...
Куда копать? Мой косяк при сборке ncursesw? Косяк тулчейна?
Никакие танцы с бубном не помогают...
RT-N16 + Entware repo
Подтверждаю, хотя не могу точно утверждать о причине кривого вывода кириллицы в rtorrent, использующей ncurses:
В optware'вском ncurses всё в порядке. По xmlrpc отдача кириллических имён торрентов и имён файлов не страдает. Всё хорошо в обоих случаях.Code:*** rTorrent 0.8.9/0.12.9 - RTRouter:9357 *** [View: main] sr-trine2.iso done 1304.9 MB Rate: 0.0 / 0.0 KB Uploaded: 75.2 MB 2011 Leonard Cohen - The Complete Studio Albums Collection (flac) done 2711.4 MB Rate: 0.0 / 0.0 KB Uploaded: 20607.5 MB * У-~Aави-~G * [OPEN] 4.0 / 1241.9 MB Rate: 0.0 / 0.0 KB Uploaded: 7.8 MB * Hashing: Checking hash [ 5%] Nightwish - Imaginaerum [2011] [OPEN] 0.0 / 1000.7 MB Rate: 0.0 / 0.0 KB Uploaded: 468.5 MB (14:39:50) Using 'epoll' based polling. (14:39:50) Using 'epoll' based polling. (14:39:50) XMLRPC initialized with 897 functions. (14:39:50) The SCGI socket is bound to a specific network device yet may still p ose a security risk, consider using 'scgi_local'. (14:39:50) Ignoring ~/.rtorrent.rc. (14:39:51) Starting DHT server on port 12345. [Throttle 1500/1500 KB] [Rate 0.4/ 0.3 KB] [Port: 12345] [U 0/310] [D 0/310]
Да. По xmlrpc с кириллицей все в порядке (касаемо rtorrent). Собственно с rtorrent эта проблема ncursesw и всплыла.
RT-N16 + Entware repo
У нас uClibc собрана без UCLIBC_HAS_LOCALE
RT-N16 + Entware repo
RT-N16 + Entware repo
А посмотреть в комментарий "make menuconfig" или напрямую в Config.in из uClibc слабо?
Обещают ~300Kb
даПравильно ли я понимаю, что для включения UCLIBC_HAS_LOCALE надо в /uClibc/config/0.9.32/common поставить UCLIBC_HAS_LOCALE=y
Прошивке по барабану. ncursesw должно, но лично не проверял., потом пересобрать тулчейн и прошивку. И будет работать?
Ну не настолько я еще знаю, где, чего смотреть...
Пересобрать попробую - о результате отпишусь.
UPD. с UCLIBC_HAS_LOCALE заработало!
UPD 2. Не удается отвязать от прошивки... Как это можно сделать, чтобы прошивку с с UCLIBC_HAS_LOCALE не собирать?
Копирование файлов в /opt/lib-oleg с /lib ничего не дает...Code:ldd mytest libncursesw.so.5 => /opt/lib-oleg/libncursesw.so.5 (0x2aac0000) libgcc_s.so.1 => /opt/lib-oleg/libgcc_s.so.1 (0x2ab29000) libc.so.0 => /opt/lib-oleg/libc.so.0 (0x2ab4b000) libc.so.0 => /lib/libc.so.0 (0x2abfc000) ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
Last edited by voidshah; 14-12-2011 at 20:56. Reason: пересобрал тулчейн с UCLIBC_HAS_LOCALE
RT-N16 + Entware repo
И не даст, потому что библиотеки из /lib будут искать зависимых только в /lib, куда бы ты их не копировал. Для того, чтобы они нашли друг друга в /opt/lib-oleg необходимо:
- или пересобрать прошивочные библиотеки с ключом линковщика -Wl,-rpath,/opt/lib-oleg,
- или сделать грязный хак без пересборки, объявив переменную среды export LD_LIBRARY_PATH="/opt/lib-oleg".
Last edited by ryzhov_al; 15-12-2011 at 07:06. Reason: sed ’s/lib/lib-oleg/g’