Last edited by dlukanidin; 13-04-2012 at 12:42.
ASUS RT-AC66U <Merlin 384.15>
ASUS RT-N66U <Merlin>
ASUS RT-N16 <Merlin>
☀ Макет нового WEB интерфейса ☀ Для iPhone/iPad ☀
На хоботе MercuryV и ryzhov_al поделились, как получить нормальный шелл по Ctrl-O (куда можно вводить команды, вместо обычного на роутерах только просмотра). Здесь почему-то этого совета нет, переношу.
Нужно всего лишь установить баш.
opkg install bash
В /opt/etc/profile добавляем строку
alias mc="SHELL=/opt/bin/bash mc"
насчет "обычного" - это перебор. тайного знания тут никакого нет, кому надо было - давно subshell сделал, посмотрев документацию по MC.
см. FAQ MC пункт 6.6
[root@WL-002215980B24 bin]$ mc
-sh: mc: not found
[root@WL-002215980B24 bin]$ ls -la /opt/bin/mc
-rwxr-xr-x 1 root root 1029072 Jun 10 09:06 /opt/bin/mc
[root@WL-002215980B24 bin]$ du -h /opt/bin
1.4M /opt/bin
[root@WL-002215980B24 bin]$ mount
rootfs on / type rootfs (rw)
/dev/root on / type squashfs (ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devfs on /dev type tmpfs (rw,noatime)
devpts on /dev/pts type devpts (rw)
tmpfs on /tmp type tmpfs (rw,noatime)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/discs/discb/part1 on /opt type ext3 (rw,errors=continue,data=ordered)
Добрый день.
Есть роутер wl500gP (v1) с прошивкой 1.9.2.7-rtn-r3121. Установлен mc из репозитария.
Уже не раз у меня возникала проблема в том, что mc не хочет запоминать настройки. Напрягает собственно то, что при запуске слетает настройка кнопок и приходится каждый раз обучать его курсорным клавишам. Папку ~/.mc создать не могу по причине read-only фс. В профиле (usr/local/root/.profile) прописано
Пару лет назад решал эту же проблему, но как обычно, "настроил и забыл". Где ж mc должна настройки хранить, чтобы к ним был доступ?Code:export TERMINFO=/opt/share/terminfo export TERM=xterm export TEMP=0 alias mc="mc -c"
Роутер AC66U, поставил MC из entware, поимел проблему с кодирокой в просмотрщике и редакторе, не понимает UTF-8. В панели имена файлов в UTF-8 отображает нормально, а в редакторе текст в UTF-8 только "кракозябрами". Помогите, плиз разобраться.
Last edited by Im2; 30-12-2014 at 05:12.
ASUS RT-N16 (1.9.2.7-rtn-r5450)
Есть роутер RT-N16.
Он долго работал, я на нем ничего не трогал. На днях решил обновить прошивку, а заодно и все установленные на флешке пакеты.
Обновлял пакеты через
opkg update
opkg upgrade
Оказалось, что последняя взятая из репозитория версия mc (mc_4.8.13-1.2a_entware.ipk) работает не совсем корректно. В панелях русские буквы отображаются нормально, а вот в редакторе и вьювере вместо русских букв кракозябры. Кодировка консоли установлена в UTF-8.
Взятая из архива репозитория предыдущая версия (mc_4.8.13-1.2_entware.ipk) работает аналогично некорректно. И лишь еще более ранняя версия (mc_4.8.10-1_entware.ipk) заработала так как нужно.
Посмотрел для всех трех версий опции сборки через mc --configure-options
Скорей всего данное поведение связано с тем, что две последние версии собраны с опцией --disable-charset.
Кто столкнется с подобной проблемой кодировки, она вылечивается откатом на mc_4.8.10-1_entware.ipk из архива.
Для тех, кто не помнит где находится архив репозитория, вот ссылка:
http://entware.wl500g.info/binaries/entware/archive/
Last edited by koch; 27-01-2015 at 16:18.
Настройки mc хранятся в поддиректориях домашней директории пользователя root, а точнее в директориях:
/usr/local/root/.cache
/usr/local/root/.config
/usr/local/root/.local
Содержимое директории /usr/local/root восстанавливается каждый раз при включении из энергонезависимой флэш памяти роутера. У вас получается, что вы делаете настройки, не сохраняете их и после перезагрузки содержимое директории восстанавливается в первоначальное состояние. После того как сделаете настройки наберите три команды:
/sbin/flashfs save
/sbin/flashfs commit
/sbin/flashfs enable
и после следующих перезагрузок содержимое директории будет восстанавливаться до состояния которое было перед набором данных команд, но все сделанные после этого момента изменения будут теряться пока снова не наберете эту магическую тройку команд.
Можно сделать хитрее: создать на флэшке в любом месте три любых директории, а в домашней директории хранить симлинки на них с именами .cache .config и .local , тогда вообще все изменения при работе mc будут сохраняться автоматически и не теряться при перезагрузке.
Last edited by koch; 27-01-2015 at 16:44.
mc 4.8.13-1.2b Готово. Проверьте, пожалуйста.Оказалось, что последняя взятая из репозитория версия mc (mc_4.8.13-1.2a_entware.ipk) работает не совсем корректно.
В панелях русские буквы отображаются нормально, а вот в редакторе и вьювере вместо русских букв кракозябры.
Кодировка консоли установлена в UTF-8.
Взятая из архива репозитория предыдущая версия (mc_4.8.13-1.2_entware.ipk) работает аналогично некорректно.
И лишь еще более ранняя версия (mc_4.8.10-1_entware.ipk) заработала так как нужно.
Посмотрел для всех трех версий опции сборки через mc --configure-options
Скорей всего данное поведение связано с тем, что две последние версии собраны с опцией --disable-charset.
Кто столкнется с подобной проблемой кодировки, она вылечивается откатом на mc_4.8.10-1_entware.ipk из архива.
Для тех, кто не помнит где находится архив репозитория, вот ссылка:
http://entware.wl500g.info/binaries/entware/archive/
Last edited by Omega; 24-02-2015 at 19:59. Reason: fixed
C этим разобрался. Но как быть в моем случае (прошивка Tomato Shibby + Entware)? В этой прошивке в домашнем каталоге пользователя root уже для чего-то имеются имеются каталоги /tmp/root/.cache, /tmp/root/.config и /tmp/root/.local
Возможно, они каким-то образом (как?) были созданы при установке mc. Таким образом, содержимое этих каталогов всегда восстанавливается одно и то же при перезагрузке.Code:root@alfa:/tmp/home/root# mc -F Root directory: /root [System data] Config directory: /opt/etc/mc/ Data directory: /opt/share/mc/ File extension handlers: /opt/lib/mc/ext.d/ VFS plugins and scripts: /opt/lib/mc/ extfs.d: /opt/lib/mc/extfs.d/ fish: /opt/lib/mc/fish/ [User data] Config directory: /root/.config/mc/ Data directory: /root/.local/share/mc/ skins: /root/.local/share/mc/skins/ extfs.d: /root/.local/share/mc/extfs.d/ fish: /root/.local/share/mc/fish/ mcedit macros: /root/.local/share/mc/mc.macros mcedit external macros: /root/.local/share/mc/mcedit/macros.d/macro.* Cache directory: /root/.cache/mc/
Т.е. я не могу в скрипте Init прописать создание предложенных симлинков на какие-нибудь аналогичные папки в /opt на USB-флэшке. Подозреваю, что нужно просто из флэша роутера удалить эти каталоги, т.е. требуются аналоги команд flash save flash commit flash enable(d) + файл со списком сохраняемых во флэше файлов и каталогов. К сожалению, как это правильно делается в Tomato я не в курсе. Вероятно командой nvram? Может, подскажете?Code:root@alfa:/tmp/home/root# ls -Al -rw------- 1 root root 50 Sep 4 00:06 .ash_history -rw------- 1 root root 3 Sep 4 00:03 .bash_history drwx------ 3 root root 60 Sep 4 00:03 .cache drwx------ 3 root root 60 Sep 4 00:03 .config drwx------ 3 root root 60 Sep 4 00:03 .local -rw-r--r-- 1 root root 17 Jan 1 1970 .profile drwx------ 2 root root 60 Jan 1 1970 .ssh
Кстати, аналогичная ситуация и с другими программами, хранящими свои настройки в домашнем каталоге root, например, htop
WL500gP1 (d-r2174) --> RT-N16 (rtn-r2888) --> RT-N16 FreshTomato