Jump to content

Search the Community

Showing results for tags 'entware'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Keenetic Community
    • Keenetic Development
    • Keenetic Community Support
    • KeeneticOS Testing
    • Mobile App
  • Open Package Support
    • Opkg Help
    • Opkg Cookbook
    • Opkg Cookbook RUS

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Location


Web-site


Interests


Occupation


AOL Account


ICQ Account


WLM


YAHOO


Facebook Account


Twitter Account


Skype Account


Youtube Account


Google+ Account


Keenetic

Found 167 results

  1. Что это такое и для чего, можно прочитать, напр., на офф сайте owncloud или wiki. Если кратко, то - персональное (личное) облачное хранилище (облако). Размер облака ограничен "жадностью" владельца и/или объёмом диска (флешки не рассматриваются ввиду малого объёма)... Желательно наличие swap`a (файла подкачки). (nginx+php+mysql) Обновить список пакетов opkg update (опционально) установить nano - можно вставлять текст из буфера; mc - понятно; tar - "старший брат" для распаковки opkg install nano mc tar Установить следующие пакеты opkg install nginx php7-fastcgi php7-mod-ctype php7-mod-curl php7-mod-dom \ php7-mod-exif php7-mod-fileinfo php7-mod-gd php7-mod-gettext php7-mod-hash \ php7-mod-iconv php7-mod-json php7-mod-mbstring php7-mod-mcrypt php7-mod-mysql \ php7-mod-pdo php7-mod-pdo-mysql php7-mod-session php7-mod-simplexml \ php7-mod-sockets php7-mod-xml php7-mod-xmlreader php7-mod-xmlwriter php7-mod-zip \ mariadb-server mariadb-client-extra Создать скрипт запуска S79php-fcgi и сделать его исполняемым #!/bin/sh export PHP_FCGI_CHILDREN='' ENABLED=yes PROCS=php-fcgi ARGS="-b /opt/var/run/php-fcgi.sock &" PREARGS="" DESC=$PROCS PATH=/opt/bin:/opt/sbin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin . /opt/etc/init.d/rc.func chmod +x /opt/etc/init.d/S79php-fcgi Отредактировать файлы: php.ini, fastcgi_params и nginx.conf Скачать архив owncloud и распаковать в корень сервера (напр., так) mkdir /opt/share/www cd /opt/share/www wget http://download.owncloud.org/community/owncloud-8.1.8.tar.bz2 Connecting to download.owncloud.org (188.40.68.177:80) owncloud-8.1.8.tar.b 100% |**********(вырезано)*********| 24032k 0:00:00 ETA tar -jxf owncloud-8.1.8.tar.bz2 Создать базу данных mysql_install_db --datadir=/opt/var --basedir=/opt --force Запустить mariadb-server /opt/etc/init.d/S70mariadbd start Задать пароль доступа mysqladmin -u root password 'Passw0rd' Войти и создать БД для ownCloud mysql -u root -p create database oc; \q Перезапустить mariadb-server /opt/etc/init.d/S70mariadbd restart Запустить php и nginx /opt/etc/init.d/S79php-fcgi start /opt/etc/init.d/S80nginx start Перейти по адресу http://192.168.1.1:88/owncloud и произвести первичную настройку где user - имя админа облака, pass - его пароль; /opt/share/www/owncloud/data - каиалог для данных; root - имя прользователя для БД; Passw0rd - его пароль; oc - имя БД (использовались в качестве примера - указывайте свои). Если все прошло удачно, то можно увидеть если не получилось, проверяйте где допустили ошибку. Варианты применения: слушать музыку смотреть мувики работать с документами открыть доступ соседке, а ночью просматривать ее селфи поделиться с друзьями/знакомыми, прикрутить сертификат и "выпустить" в интернеты, использовать с другим сервером и БД например и т.д. и т.п. "Самопальный" сертификат для подключения по https Обновить и установить пакеты opkg update opkg install openssl-util Создаём корневой ключ server.key (алгоритм шифрования aes256, длиной 4096 bit). Cистема дважды попросит ввести парольную фразу, придумываем её, вводим и запоминаем. openssl genrsa -aes256 -out server.key 4096 Создаём корневой сертификат: openssl req -new -key server.key -out server.csr -days 3560 Копируем ключ cp server.key server.key.org Удаляем пароль из ключа openssl rsa -in server.key.org -out server.key Генерируем сертификат openssl x509 -req -days 3650 -in server.csr -sha384 -signkey server.key -out server.crt Правим nginx.conf ... ssl_certificate /opt/etc/nginx/server.crt; ssl_certificate_key /opt/etc/nginx/server.key; server { listen 443 ssl; ... После внесения изменений в конфиг, nginx надо перезапустить, а в адресной строке для подключения к owncloud надо набрать https://ip.ad..re.ss:88/owncloud hdd Если нужно чтоб папка data находилась на другом диске то, носителю должна быть задана метка, он должен быть подключен и смонтирован. Проверяем командой mount, в примере ниже это флешка sdb1 с меткой data смонтированая в /tmp/mnt/ ~ # mount rootfs on / type rootfs (rw) /dev/root on / type squashfs (ro,relatime) tmpfs on /dev type tmpfs (rw,nosuid,noexec,relatime) none on /dev/pts type devpts (rw,nosuid,noexec,relatime,mode=600) proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) tmpfs on /tmp type tmpfs (rw,nosuid,nodev,relatime) sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime) /dev/mtdblock/7 on /storage type jffs2 (rw,nosuid,relatime) none on /proc/bus/usb type usbfs (rw,nosuid,noexec,relatime) /dev/sda1 on /tmp/mnt/omni2 type ext2 (rw,relatime) /dev/sdb1 on /tmp/mnt/data type ext2 (rw,nosuid,noexec,noatime) /dev/sda1 on /opt type ext2 (rw,relatime) nfsd on /proc/fs/nfsd type nfsd (rw,relatime) Создаем на нужном носителе папку data mkdir /tmp/mnt/data/data При выборе места хранения данных указываем нужный путь, в примере это /tmp/mnt/data/data Для переноса папки data на другой диск проверяем монтирование и копируем ее (папку) в нужное место, из примера выше, так mv /opt/share/www/owncloud/data /tmp/mnt/data/ нужно открыть и отредактировать файл /opt/share/www/owncloud/config/config.php в файле найти строку 'datadirectory' => '/opt/share/www/owncloud/data', и изменить в ней путь до нового места хранения (из примера выше, заменить на 'datadirectory' => '/tmp/mnt/data/data')
  2. Данная тема создана по следам инструкций по использованию предыдущих версий первой ветки замечательного приложения dnscrypt-proxy, которое автор вернул к плотной разработке, правда, сменив язык на Go. Для начала рекомендую ознакомиться со статьями о первой версии приложения: Установка Замена основного DNS резолвера прошивки резолвером dnscrypt-proxy2 Настройка клиентов на использование dnscrypt-proxy2 в качестве DNS сервера Хранение файлов DNSCrypt и некоторые советы по конфигурации Блокировка рекламы Добавляем возможность разрешать домены в зоне *.lib Перехват всех DNS запросов на роутере. "Приземление" DNS трафика Диагностика проблем с запуском\работой. Опять же все ограничения, которые касались использования первой версии dnscrypt-proxy справедливы и для второй, ссылки на инструкции я приложил выше. Это моя первая инструкция в этом разделе, так что сильно не пинать, а конструктивная критика крайне приветствуется. Если есть, что нужно подправить\доработать - пишите, вместе сделаем использование данного пакета проще и эффективнее. Изменения шапки. В итоге: Защитили весь свой DNS трафик от перехвата со стороны провайдера и Гугла Заблокировали рекламу на всех устройствах домашней сети (это наиболее актуально для всяких Смарт ТВ и других девайсов не нет возможности блокировать рекламу на самом устройстве) Получили разрешение имен *.lib и других, чем немного упростили себе жизнь в все более блокируемом интернете
  3. Нашёл одну интересную статью в которой предлогается просматривать информацию SMART (температуру жёсткого диска, его модель, версию прошивки и др.) подключенного по USB жёсткого диска. Вся информация отображается в браузере и сохраняется в базу данных для последующего просмотра статистики за несколько дней. Для обновления информации используется планировщик задач cron. Для снятия показаний SMART используется программа smartmontools, для учёта статистики и построения графиков - rrdtool. Всё это работает с помощью веб-сервера на базе lighttpd на основе скрипта smarthtml_0.8.2. Скрипт получает данные из вывода smartctl, сравнивает их с сохранёнными значениями предыдущей проверки и создаёт html-страницу (/opt/share/www/smart.html) с таблицей атрибутов, отображая в ней последние изменения параметров. Также пишет в лог при изменении критически важных атрибутов и может отсылать сообщение по e-mail (sendmail). Перед началом использования, естественно, необходимо установить smartmontools и rrdtool с помощью комманды: opkg install smartmontools rrdtool Сам скрипт нужно положить, к примеру, в /opt/usr/bin/smarthtml.sh (после этого не забыв: chmod +x /opt/usr/bin/smarthtml.sh). Затем добавить в cron для регулярного запуска. Cron устанавливается с помощью комманды: opkg install cron После установки cron нужно отредактировать фаил crontab, который находится по адресу /opt/etc/crontab. В предлогаемой конфигурации файла crontab время обновления информации SMART равно 3 часам. 42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly # Read the information to the hard drive SMART # 10 */3 * * * /opt/usr/bin/smarthtml.sh Далее нужно узнать как определяется в системе жёсткий диск, для этого нужно ввести комманду: smartctl --scan. В терминале можно посмотреть информацию смарт с помощью комманды: smartctl -a /dev/sdb. Чтоб узнать температуру жёсткого диска нужно ввести комманду: smartctl -d sat /dev/sdb -l scttemp |grep Temperature. Для просмотра более подробной информации о винчестере можно набрать комманду: smartctl --xall /dev/sdb. ~ # smartctl --scan /dev/sdb -d sat # /dev/sdb [SAT], ATA device ~ # smartctl -a /dev/sdb smartctl 6.5 2016-05-07 r4318 [mips-linux-2.6.22.15] (localbuild) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Western Digital AV Device Model: WDC WD3200BUCT-63TWBY0 Serial Number: WD-WX11E33PU344 LU WWN Device Id: 5 0014ee 6ae1231e9 Firmware Version: 01.01A01 User Capacity: 320 072 933 376 bytes [320 GB] Sector Sizes: 512 bytes logical, 4096 bytes physical Rotation Rate: 5400 rpm Device is: In smartctl database [for details use: -P show] ATA Version is: ATA8-ACS (minor revision not indicated) SATA Version is: SATA 2.6, 3.0 Gb/s Local Time is: Sat Oct 8 18:21:49 2016 YEKT SMART support is: Available - device has SMART capability. SMART support is: Enabled При первом запуске (комманда sh /opt/usr/bin/smarthtml.sh) скрипт сам создаст каталог /opt/var/smarthtml/ и необходимые файлы для работы. ~ # sh /opt/usr/bin/smarthtml.sh + New dir /opt/var/smarthtml ... + New dir /opt/var/smarthtml/db ... + New dir /opt/var/smarthtml/log ... + New dir /opt/var/smarthtml/rrd ... + RRD DB /opt/var/smarthtml/rrd/sda.rrd was created... ~ # Параметры вызова скрипта: /opt/usr/bin/smarthtml.sh # запуск основной процедуры выполнения (запускается cron'ом по расписанию) /opt/usr/bin/smarthtml.sh resetwarn # сброс предупреждения после изменения критического параметра /opt/usr/bin/smarthtml.sh resetcount # сброс счётчиков изменений параметров /opt/usr/bin/smarthtml.sh makerrdgraph # только отрисовка графиков rrd без проверки SMART и без изменения данных /opt/usr/bin/smarthtml.sh mailtest # отправка тестового email (в случае использования e-mail оповещений) Про cgi-модуль smarthtml.cgi... Он позволяет обновлять данные SMART прямо с веб-страницы в любой момент, что может быть удобно для мониторинга в реальном времени. Эта процедура не затрагивает rrd (rrd обновляется cron'ом по расписанию), а поэтому может производиться в любое время когда требуется получить текущие данные. Для работы модуля необходимо в настройках веб-сервера указать выполнение .cgi файлов с помощью /bin/sh. Для lighttpd нужно установить модуль mod_cgi: opkg install lighttpd-mod-cgi ~ # opkg install lighttpd-mod-cgi Installing lighttpd-mod-cgi (1.4.38-1) to root... Downloading http://pkg.entware-keenetic.ru/binaries/keenle/lighttpd-mod-cgi_1.4.38-1_keenle.ipk. Installing lighttpd (1.4.38-1) to root... Downloading http://pkg.entware-keenetic.ru/binaries/keenle/lighttpd_1.4.38-1_keenle.ipk. Installing libpcre (8.39-1) to root... Downloading http://pkg.entware-keenetic.ru/binaries/keenle/libpcre_8.39-1_keenle.ipk. Configuring libpcre. Configuring lighttpd. Configuring lighttpd-mod-cgi. ~ # Далее в конфиге модуля /opt/etc/lighttpd/conf.d/30-cgi.conf изменить строку ".cgi" => "/opt/bin/perl", на ".cgi" => "/bin/sh", cgi.assign = ( ".pl" => "/opt/bin/perl", ".cgi" => "/bin/sh", ".rb" => "/opt/bin/ruby", ".erb" => "/opt/bin/eruby", ".py" => "/opt/bin/python" ) Это изменение заставит сервер выполнять .cgi файлы программой /bin/sh. Сам smarthtml.cgi нужно положить в /opt/share/www/cgi-bin/ и разрешить на выполнение: chmod +x /opt/share/www/cgi-bin/smarthtml.cgi. Скрипте smarthtml.sh отредактировать и изменить параметр USE_CGI_MODULE=0 на USE_CGI_MODULE=1. Так же в этом скрипте стоит обратить внимание на параметр Devices (example for multiple devices: DEVICES="/dev/sda /dev/sdb /dev/sdc" Там дожна стоять буква соответствующая вашему винчестеру, в моём случае это b - DEVICES="/dev/sdb". Если подключен только 1 винчестер, то скоре всего это будет буква a. ### Devices (example for multiple devices: DEVICES="/dev/sda /dev/sdb /dev/sdc") DEVICES="/dev/sdb" Есть один нюанс с правами доступа... Доступ к дисковым устройствам (/dev/sda и пр.) доступен лишь пользователю root (admin), в случае если ваш веб-сервер запускается с правами суперюзера (что в принципе нехорошо, но для embedded-систем является обычным делом), то нет никаких проблем. Если же сервер, скажем, публичный и запускается с правами специально созданного непривелегированного юзера, то можно использовать утилиту sudo из Entware для работы cgi-сценария. В smarthtml.cgi нужно выставить USE_SUDO=1. Затем установить и настроить sudo: ~ # opkg install sudo Installing sudo (1.8.14p3-1) to root... Downloading http://pkg.entware-keenetic.ru/binaries/keenle/sudo_1.8.14p3-1_keenle.ipk. Configuring sudo. ~ # Далее нужно отредактировать фаил sudoers ( /opt/etc/sudoers ). В оригинальной инструкции это предлагается сделать с помощью редактора vi используя комманду /opt/sbin/visudo. У меня почему то фаил не открылся для редактирования и я скопировал его на ПК, убрал атрибут "Только для чтения", отредактировал его с помощью Notepad++, сохранил изменения, вернул атрибут "Только для чтения" и вернул на прежнее место заменив старый фаил. В файле sudoers нужно добавить следующие строки (предположим, что веб-сервер запускается под юзером www) : admin ALL=(ALL) ALL www ALL=(admin) NOPASSWD:/opt/bin/smartctl, /opt/usr/bin/smarthtml.sh Вторая строка разрешит пользователю www запускать /opt/bin/smartctl и /opt/usr/bin/smarthtml.sh с правами admin без ввода пароля (это важно!), что необходимо для выполнения .cgi сценария. В случае успешной настройки при "клике" по ссылке "Check Now" в верхней части страницы таблица SMART должна обновиться вместе с датой последней проверки в заголовке таблицы. В результате получится: ## User privilege specification ## root ALL=(ALL) ALL admin ALL=(ALL) ALL www ALL=(admin) NOPASSWD:/opt/bin/smartctl, /opt/usr/bin/smarthtml.sh Чтоб заработал планировщик cron нужно перезагрузить роутер или просто запустить cron вручную с помощью комманды: /opt/etc/init.d/S10cron start ~ # /opt/etc/init.d/S10cron start Starting cron... already running. ~ # smarthtml_0.8.2.tar.gz Чтоб открыть страничку с информацией SMART нужно зайти по адресу \opt/share/www/ и открыть фаил smart.html Выглядит результат примерно так:
  4. TheBB

    Asterisk-11.x был "отправлен на пенсию" (openwrt/lede; подробности см. тут). Asterisk-15.x был "отправлен на пенсию" (openwrt/lede; подробности см. тут). Пакеты asterisk-13.x и asterisk-15.x добавлены в бинарные репозитории. --- upd asterisk-15.x заменен на asterisk-16.x
  5. ВНИМАНИЕ. В случае, если система Entware установлена на NTFS, не устанавливайте OpenSSH - работать не будет! Данный пост основан на более общей инструкции - http://forums.zyxmon.org/viewtopic.php?f=5&t=5261 и отличается от нее 3 байтами (найдите три различия) Некоторые считают openssh сервер более безопасным. Эта инструкция для таких пользователей. Настройка и использование openssh сервера почему то иногда вызывает затруднения. (1) Для использования openssh его сначала нужно его поставить командой `opkg install openssh-server` ~ # opkg install openssh-server Installing openssh-server (7.1p1-1) to root... Downloading http://entware.zyxmon.org/binaries/mipsel/openssh-server_7.1p1-1_mipselsf.ipk. Installing openssh-keygen (7.1p1-1) to root... Downloading http://entware.zyxmon.org/binaries/mipsel/openssh-keygen_7.1p1-1_mipselsf.ipk. Configuring openssh-keygen. Configuring openssh-server. Конфигурация сервера находится в файле /opt/etc/ssh/sshd_config. Я бы порекомендовал на время тестирования не отключать имеющийся ssh сервер dropbear, а настроить openssh на нестандартный порт, например 2222. Для этого отредактируем файл /opt/etc/ssh/sshd_config. (2) Уберем коментарий со строки #Port 22 и заменим ее на Port 2222 (3) Для того, чтобы пользователь root мог заходить по ssh добавим (отредактируем) строку PermitRootLogin yes (4) Теперь создадим ключи командой ` ssh-keygen -A` ~ # ssh-keygen -A ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519 (5) openssh сервер может работать только от имени пользователя sshd. Создадим его командой adduser -h /tmp -s /bin/false -D -H sshd -h задаем домашнюю директорию, -s задает shell, -D говорит, что пароль задавать не нужно, -H - не нужно создавать домашнюю папку, sshd - это имя пользователя. (6) После этих несложных манипуляций можно запустить сервер и проверить его работу: ~ # /opt/etc/init.d/S40sshd start starting sshd... Не забываем при проверках, что сервер запущен на нестандартном порту. Если все работает, можно отключать dropbear и переходить на openssh. Можно вернуть в этом случае порт на стандартный 22. Для отключения автозапуска dropbear переименуйте S51dropbear в K51dropbear
  6. Установка и настройка ntfs-3g-utils ntfs-3g - драйвер NTFS с открытым исходным кодом, который разрабатывается компанией Tuxera. В Linux OS данный пакет устанавливается отдельно, путем ввода в консоли команды: sudo apt install ntfs-3g В состав данного пакета входит утилита ntfsfix, которая позволяет проверить раздел фс NTFS на ошибки в Linux системах. Например, у Вас подключен к роутеру Keenetic накопитель с двумя фс EXT4 \ NTFS - на EXT4 установлен opkg Entware, на NTFS файловое хранилище, установлен прошивочный Transmission, DLNA. Выключили свет, размонтирование разделов прошло некорректно и далее при загрузке фс NTFS получаем записи в логе: [E] [May 21 11:21:45] ndm: FileSystem::Native: failed to mount "FLS" drive: filesystem is dirty, please perform a chkdsk maintenance of this drive on your Windows computer. [E] [May 21 11:21:45] ndm: FileSystem::Ext: failed to mount a dirty partition. в которой сказано, что нужно подключить диск к клиенту с Windows OS и сделать chkdsk раздела. В WebUI при этом будет сказано, что раздел "Требует проверки": Чтобы этого не делать, достаточно установить пакет из репозитория Entware под названием ntfs-3g-utils, в который входят утилиты: / # opkg info ntfs-3g-utils Package: ntfs-3g-utils Version: 2017.3.23-1-fuseext Depends: libc, libssp, librt, libpthread, ntfs-3g, libgcrypt, libuuid Status: install user installed Section: utils Architecture: mipsel-3.4 MD5Sum: 1804405a96cc22bc989a89d0fc6791dc Size: 356141 Filename: ntfs-3g-utils_2017.3.23-1-fuseext_mipsel-3.4.ipk Description: Suite of NTFS utilities for doing neat things with NTFS. Contains: - mkntfs - Create an NTFS filesystem. - ntfscat - Dump a file's content to the standard output. - ntfsclone - Efficiently clone, backup, restore or rescue NTFS. - ntfscluster - Locate the files which use the given sectors or clusters. - ntfscmp - Compare two NTFS filesystems and tell the differences. - ntfscp - Copy a file to an NTFS volume. - ntfssecaudit - Display ownership and permissions, check consistency - ntfsfix - Check and fix some common errors, clear the LogFile. - ntfsinfo - Show information about NTFS or one of the files or directories within it. - ntfslabel - Show, or set, an NTFS filesystem's volume label. - ntfsls - List information about files in a directory residing on an NTFS. - ntfsresize - Resize NTFS without losing data. - ntfsundelete - Recover deleted files from NTFS. - ntfsusermap - Define mapping of Windows accounts to Linux logins Installed-Time: 1526913822 Далее рассмотрим работу утилиты по исправлению ошибок файловой системы NTFS: - ntfsfix - Check and fix some common errors, clear the LogFile. Приступим к установке. Версия из репозитория ntfs-3g-utils_2017.3.23-1: http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-1-fuseext_mipsel-3.4.ipk Подготовка: 1. Создаем раздел EXT4 на жестком диске - Использование файловой системы EXT4 на USB-накопителях. 2. Установка и настройка Entware - в данной теме. Работоспособность проверена с: Keenetic Giga KN-1010, прошивка draft 2.12.A.6.0-2 от 19.05.2018, раздел на HDD EXT4. Обновляемся: / # opkg update Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz Updated list of available packages in /opt/var/opkg-lists/entware Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz Updated list of available packages in /opt/var/opkg-lists/keendev Устанавливаем пакет ntfs-3g-utils: / # opkg install ntfs-3g-utils Installing ntfs-3g-utils (2017.3.23-1-fuseext) to root... Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g-utils_2017.3.23-1-fuseext_mipsel-3.4.ipk Installing ntfs-3g (2017.3.23-1-fuseext) to root... Downloading http://bin.entware.net/mipselsf-k3.4/ntfs-3g_2017.3.23-1-fuseext_mipsel-3.4.ipk Configuring ntfs-3g. Configuring ntfs-3g-utils. Проверяем доступность утилиты ntfsfix: / # ntfsfix -h ntfsfix v2017.3.23 (libntfs-3g) Usage: ntfsfix [options] device Attempt to fix an NTFS partition. -b, --clear-bad-sectors Clear the bad sector list -d, --clear-dirty Clear the volume dirty flag -h, --help Display this help -n, --no-action Do not write anything -V, --version Display version information For example: ntfsfix /dev/hda6 Developers' email address: ntfs-3g-devel@lists.sf.net News, support and information: http://tuxera.com / # ntfsfix -V ntfsfix v2017.3.23 Attempt to fix an NTFS partition. Copyright (c) 2000-2006 Anton Altaparmakov Copyright (c) 2002-2006 Szabolcs Szakacsits Copyright (c) 2007 Yura Pakhuchiy Copyright (c) 2011-2015 Jean-Pierre Andre This program is free software, released under the GNU General Public License and you are welcome to redistribute it under certain conditions. It comes with ABSOLUTELY NO WARRANTY; for details read the GNU General Public License to be found in the file "COPYING" distributed with this program, or online at: http://www.gnu.org/copyleft/gpl.html Developers' email address: ntfs-3g-devel@lists.sf.net News, support and information: http://tuxera.com Проверяем доступность разделов: / # mount | grep sd /dev/sdb1 on /tmp/mnt/OPKG type ext4 (rw,relatime,stripe=8191,data=ordered) /dev/sdb1 on /opt type ext4 (rw,relatime,stripe=8191,data=ordered) /dev/sdb2 on /tmp/mnt/FLS type tntfs (rw,relatime,uid=0,gid=0,umask=022,nls=utf8,min_prealloc_size=64k,max_prealloc_size=32763900,readahead=4M,perm,user_xattr,case_sensitive,fail_safe,hidden=show,dotfile=show,protected_system=ignore,errors=continue,mft_zone_multiplier=1) Выбираем нужный NTFS раздел для проверки: /dev/sdb2 on /tmp/mnt/FLS type tntfs Отмонтируем раздел NTFS: / # umount /dev/sdb2 Проверяем раздел NTFS на ошибки: / # ntfsfix -b -d /dev/sdb2 Mounting volume... OK Processing of $MFT and $MFTMirr completed successfully. Checking the alternate boot sector... OK NTFS volume version is 3.1. Going to un-mark the bad clusters ($BadClus)... No bad clusters...OK NTFS partition /dev/sdb2 was processed successfully. Будут выполнены команды: -b, --clear-bad-sectors Clear the bad sector list -d, --clear-dirty Clear the volume dirty flag После монтируем раздел обратно: / # mount /dev/sdb2 /tmp/mnt/FLS Проверяем, что раздел примонтирован: / # mount | grep sd /dev/sdb1 on /tmp/mnt/OPKG type ext4 (rw,relatime,stripe=8191,data=ordered) /dev/sdb1 on /opt type ext4 (rw,relatime,stripe=8191,data=ordered) /dev/sdb2 on /tmp/mnt/FLS type tntfs (rw,relatime,uid=0,gid=0,umask=022,nls=utf8,min_prealloc_size=64k,max_prealloc_size=32763900,readahead=4M,perm,user_xattr,case_sensitive,fail_safe,hidden=show,dotfile=show,protected_system=ignore,errors=continue,mft_zone_multiplier=1) Далее проверяем show log NDMS: [I] May 21 16:55:06 ndm: FileSystem::Ext: ntfs "7783495649C29371:": filesystem initialized. [I] May 21 16:55:06 ndm: kernel: tntfs info (device sda2, pid 30728): ntfs_fill_super(): fail_safe is enabled. [I] May 21 16:55:06 ndm: kernel: tntfs info (device sda2, pid 30728): load_system_files(): NTFS volume name 'FLS', version 3.1 (cluster_size 4096, PAGE_SIZE 4096). [I] May 21 16:55:06 ndm: FileSystem::Repository: "7783495649C29371:" registered. как видим, раздел загрузился без ошибок и можно продолжать работу.
  7. Установка и настройка Transmission Transmission - BitTorrent-клиент c открытым кодом. Версия из репозитория Transmission 2.94-2: http://bin.entware.net/mipselsf-k3.4/transmission-daemon-mbedtls_2.94-2_mipsel-3.4.ipk http://bin.entware.net/mipselsf-k3.4/transmission-web_2.94-2_mipsel-3.4.ipk Изменения: Transmission 2.94: All Platforms: Fix building against LibreSSL (#284, #486, #570) Fix building against mbedTLS (#115, #528) Fix torrents ETA calculation (#522) Fix cross-compilation issues caused by miniupnpc configuration test (#475) Qt Client: Fix bad downloaded percentage in DetailsDialog (#547) Web Client: Fix tracker error XSS in inspector (CVE pending; found by Rory McNamara of Gotham Digital Science) Fix torrent name HTML-escaping in trackers inspector tab Transmission 2.93: All Platforms: Fix CVE-2018-5702 (#468) Fix crash on handshake if establishing DH shared secret fails (#27) Fix crash when switching to next tracker during announcement (#297) Fix potential issue during password salt extraction in OOM situation (#141) Workaround glib_DEFUN- and glib_REQUIRE-related configuration issue (#215) Fix building against OpenSSL 1.1.0+ (#24) Mac Client: Fix uncaught exception when dragging multiple items between groups (#51) Don't hard-code libcrypto version to 0.9.8 in Xcode project (#71) Подготовка: 1. Создаем раздел EXT4 на жестком диске - Использование файловой системы EXT4 на USB-накопителях. 2. Установка и настройка Entware - в данной теме. Работоспособность проверена с: Keenetic Giga III и Keenetic Giga KN-1010, прошивка draft 2.12.A.3.0-2 от 06.02.2018, раздел на HDD EXT4. Обновляемся: ~ # opkg update Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz Updated list of available packages in /opt/var/opkg-lists/entware Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz Updated list of available packages in /opt/var/opkg-lists/keendev Устанавливаем: / # opkg install transmission-daemon-mbedtls Installing transmission-daemon-mbedtls (2.94-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/transmission-daemon-mbedtls_2.94-2_mipsel-3.4.ipk Installing libcurl (7.59.0-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libcurl_7.59.0-2_mipsel-3.4.ipk Installing libopenssl (1.0.2o-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libopenssl_1.0.2o-1_mipsel-3.4.ipk Installing zlib (1.2.11-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/zlib_1.2.11-2_mipsel-3.4.ipk Installing libevent2 (2.0.22-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libevent2_2.0.22-1_mipsel-3.4.ipk Installing libminiupnpc (2.0.20170509-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libminiupnpc_2.0.20170509-1_mipsel-3.4.ipk Installing libnatpmp (20150609-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libnatpmp_20150609-1_mipsel-3.4.ipk Installing libmbedtls (2.8.0-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libmbedtls_2.8.0-1_mipsel-3.4.ipk Configuring zlib. Configuring libopenssl. Configuring libcurl. Configuring libmbedtls. Configuring libevent2. Configuring libnatpmp. Configuring libminiupnpc. Configuring transmission-daemon-mbedtls. / # opkg install transmission-web Installing transmission-web (2.94-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/transmission-web_2.94-2_mipsel-3.4.ipk Configuring transmission-web. Смотрим путь, где находится .conf, .json и загрузочный файл: / # opkg files transmission-daemon-mbedtls Package transmission-daemon-mbedtls (2.94-1) is installed on root and has the following files: /opt/bin/transmission-daemon /opt/etc/init.d/S88transmission /opt/etc/transmission/settings.json /opt/etc/sysctl.d/20-transmission.conf Запускаем: ~ # /opt/etc/init.d/S88transmission start Starting transmission-daemon... done. Останавливаем: ~ # /opt/etc/init.d/S88transmission stop Checking transmission-daemon... alive. Shutting down transmission-daemon... done. Настройка settings.json (можно настроить под себя): Директория, где лежит файл конфигурации /opt/etc/transmission: /opt/etc/transmission Директория, куда будут скачиваться торрент-файлы: "download-dir": "/tmp/mnt/NTFS_TEST/download", Директория, куда будут помещаться недоскаченные торрент-файлы: "incomplete-dir": "/tmp/mnt/NTFS_TEST/no_download", NTFS_TEST - для записи торрент-файлов указал раздел с фс NTFS, { "alt-speed-down": 50, "alt-speed-enabled": false, "alt-speed-time-begin": 540, "alt-speed-time-day": 127, "alt-speed-time-enabled": false, "alt-speed-time-end": 1020, "alt-speed-up": 50, "bind-address-ipv4": "0.0.0.0", "bind-address-ipv6": "::", "blocklist-enabled": false, "blocklist-url": "http://list.iblocklist.com/?list=bt_level1", "cache-size-mb": 2, "dht-enabled": true, "download-dir": "/tmp/mnt/NTFS_TEST/download", "download-queue-enabled": true, "download-queue-size": 5, "encryption": 2, "idle-seeding-limit": 30, "idle-seeding-limit-enabled": false, "incomplete-dir": "/tmp/mnt/NTFS_TEST/no_download", "incomplete-dir-enabled": true, "lpd-enabled": true, "message-level": 1, "peer-congestion-algorithm": "", "peer-id-ttl-hours": 6, "peer-limit-global": 2000, "peer-limit-per-torrent": 200, "peer-port": 51413, "peer-port-random-high": 65535, "peer-port-random-low": 49152, "peer-port-random-on-start": false, "peer-socket-tos": "lowcost", "pex-enabled": true, "port-forwarding-enabled": true, "preallocation": 1, "prefetch-enabled": false, "queue-stalled-enabled": false, "queue-stalled-minutes": 30, "ratio-limit": 2, "ratio-limit-enabled": false, "rename-partial-files": true, "rpc-authentication-required": false, "rpc-bind-address": "0.0.0.0", "rpc-enabled": true, "rpc-host-whitelist": "", "rpc-host-whitelist-enabled": true, "rpc-password": "{56d033989b5274bc42981b4b51ab541d664aa689c1che9lt", "rpc-port": 9091, "rpc-url": "/transmission/", "rpc-username": "root", "rpc-whitelist": "127.0.0.1", "rpc-whitelist-enabled": false, "scrape-paused-torrents-enabled": true, "script-torrent-added-enabled": false, "script-torrent-added-filename": "", "script-torrent-done-enabled": false, "script-torrent-done-filename": "", "seed-queue-enabled": false, "seed-queue-size": 10, "speed-limit-down": 100, "speed-limit-down-enabled": false, "speed-limit-up": 100, "speed-limit-up-enabled": false, "start-added-torrents": true, "trash-original-torrent-files": true, "umask": 18, "upload-slots-per-torrent": 14, "utp-enabled": true, "watch-dir": "/opt/etc/transmission/watchdir", "watch-dir-enabled": true } Запускаем: ~ # /opt/etc/init.d/S88transmission start Starting transmission-daemon... done. Заходим в WebUI по адресу http://192.168.1.1:9091/transmission/web/ и делаем настройку (можно настроить под себя): https://cloud.mail.ru/public/LFEg/9f6gjsFfu https://cloud.mail.ru/public/GnnN/jUoLTDCe5 https://cloud.mail.ru/public/CEya/dJBxGcRrL https://cloud.mail.ru/public/3uPy/pbjBx7pQ7 https://cloud.mail.ru/public/JCdn/7JCRmzQoS Версия Transmission: https://cloud.mail.ru/public/15nb/kNMkAY6zv Скорость download: https://cloud.mail.ru/public/HYLn/Jgw2ZWQje https://cloud.mail.ru/public/LbCB/zpUyaiW8B https://cloud.mail.ru/public/HS33/58Lv8v4dS Загрузка CPU: CPU: 34.6% usr 18.1% sys 0.0% nic 32.9% idle 3.0% io 0.0% irq 11.1% sirq Load average: 2.01 1.58 1.29 2/111 14504 PID PPID USER STAT VSZ %VSZ CPU %CPU COMMAND 13805 1 root S 48904 19.0 0 47.9 transmission-daemon -g /opt/etc/transmission https://cloud.mail.ru/public/CXMj/9s5Trqkfc Информация по настройке Transmission: https://help.keenetic.net/hc/ru/articles/213967249 http://nmt200.ru/nmt/apps/trans https://github.com/transmission/transmission/wiki Отдельное спасибо за обновление и поддержку репозитория @zyxmon, @TheBB
  8. Установка и настройка rTorrent rTorrent - BitTorrent-клиент на основе библиотек libTorrent. Версия из репозитория rTorrent 0.9.7-1: http://bin.entware.net/mipselsf-k3.4/rtorrent-easy-install_0.2-3a_mipsel-3.4.ipk http://bin.entware.net/mipselsf-k3.4/rtorrent-rpc_0.9.7-1_mipsel-3.4.ipk http://bin.entware.net/mipselsf-k3.4/rtorrent_0.9.7-1_mipsel-3.4.ipk Изменения в rTorrent 0.9.6: rtorrent (0.9.7-1) unstable; urgency=medium * New upstream release + Remove configure.ac patch folded in upstream + Build-Depend on libtorrent-dev >= 0.13.7 * Move VCS from Alioth to Salsa * Switch to priority optional instead of extra * Bump debhelper compat level to 10 -- Jonathan McDowell <email address hidden> Thu, 28 Jun 2018 08:07:39 +0100 Подготовка: 1. Создаем раздел EXT4 на жестком диске - Использование файловой системы EXT4 на USB-накопителях. 2. Установка и настройка Entware - в данной теме. Работоспособность проверена с: Keenetic Giga KN-1010, прошивка draft 2.12.A.3.0-2 от 06.02.2018, раздел на HDD EXT4. Обновляемся: / # opkg update Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz Updated list of available packages in /opt/var/opkg-lists/entware Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz Updated list of available packages in /opt/var/opkg-lists/keendev Устанавливаем пакет rtorrent-easy-install, чтобы получить русифицированное управление в WebUI rTorrent: / # opkg install rtorrent-easy-install Installing rtorrent-easy-install (0.2-3a) to root... Downloading http://bin.entware.net/mipselsf-k3.4/rtorrent-easy-install_0.2-3a_mipsel-3.4.ipk Installing rutorrent-plugin-rpc (3.8-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/rutorrent-plugin-rpc_3.8-1_mipsel-3.4.ipk Installing rutorrent (3.8-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/rutorrent_3.8-1_mipsel-3.4.ipk Installing rtorrent-rpc (0.9.7-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/rtorrent-rpc_0.9.7-1_mipsel-3.4.ipk Installing libcurl (7.61.0-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libcurl_7.61.0-3_mipsel-3.4.ipk Installing libopenssl (1.0.2p-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libopenssl_1.0.2p-1_mipsel-3.4.ipk Installing zlib (1.2.11-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/zlib_1.2.11-2_mipsel-3.4.ipk Installing ca-bundle (20180409-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/ca-bundle_20180409-3_all.ipk Installing libtorrent (0.13.7) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libtorrent_0.13.7_mipsel-3.4.ipk Installing libsigcxx (2.5.4-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libsigcxx_2.5.4-1_mipsel-3.4.ipk Installing libncursesw (6.1-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libncursesw_6.1-1_mipsel-3.4.ipk Installing xmlrpc-c-server (1.39.13-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/xmlrpc-c-server_1.39.13-2_mipsel-3.4.ipk Installing xmlrpc-c (1.39.13-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/xmlrpc-c_1.39.13-2_mipsel-3.4.ipk Installing xmlrpc-c-internal (1.39.13-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/xmlrpc-c-internal_1.39.13-2_mipsel-3.4.ipk Installing xmlrpc-c-common (1.39.13-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/xmlrpc-c-common_1.39.13-2_mipsel-3.4.ipk Installing coreutils-stat (8.23-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/coreutils-stat_8.23-3_mipsel-3.4.ipk Installing coreutils (8.23-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/coreutils_8.23-3_mipsel-3.4.ipk Installing coreutils-id (8.23-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/coreutils-id_8.23-3_mipsel-3.4.ipk Installing gzip (1.9-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/gzip_1.9-1_mipsel-3.4.ipk Installing curl (7.61.0-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/curl_7.61.0-3_mipsel-3.4.ipk Installing screen (4.6.2-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/screen_4.6.2-1_mipsel-3.4.ipk Installing libncurses (6.1-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libncurses_6.1-1_mipsel-3.4.ipk Installing php7-cgi (7.2.9-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/php7-cgi_7.2.9-1_mipsel-3.4.ipk Installing php7 (7.2.9-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/php7_7.2.9-1_mipsel-3.4.ipk Installing libxml2 (2.9.8-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libxml2_2.9.8-3_mipsel-3.4.ipk Installing lighttpd-mod-fastcgi (1.4.49-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/lighttpd-mod-fastcgi_1.4.49-2_mipsel-3.4.ipk Installing lighttpd (1.4.49-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/lighttpd_1.4.49-2_mipsel-3.4.ipk Installing lighttpd-mod-scgi (1.4.49-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/lighttpd-mod-scgi_1.4.49-2_mipsel-3.4.ipk Installing lighttpd-mod-auth (1.4.49-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/lighttpd-mod-auth_1.4.49-2_mipsel-3.4.ipk Installing lighttpd-mod-authn_file (1.4.49-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/lighttpd-mod-authn_file_1.4.49-2_mipsel-3.4.ipk Configuring zlib. Configuring libopenssl. Configuring ca-bundle. Configuring libcurl. Configuring lighttpd. Configuring lighttpd-mod-authn_file. Configuring xmlrpc-c-common. Configuring xmlrpc-c-internal. Configuring xmlrpc-c. Configuring libxml2. Configuring php7. Configuring php7-cgi. Configuring coreutils. Configuring coreutils-stat. Configuring libsigcxx. Configuring libtorrent. Configuring libncursesw. Configuring xmlrpc-c-server. Configuring rtorrent-rpc. Configuring coreutils-id. Configuring gzip. Configuring curl. Configuring rutorrent. Configuring rutorrent-plugin-rpc. Configuring libncurses. Configuring screen. Configuring lighttpd-mod-fastcgi. Configuring lighttpd-mod-scgi. Configuring lighttpd-mod-auth. Configuring rtorrent-easy-install. Настройка в момент установки: #### Welcome to rtorrent easy installation script! We assuming no lighttpd/rtorrent/rutorrent was installed before! Please, answer a few question to configure torrent client. Default aswers given in [brackets], just hit Enter to accept it. Type "username:password" if you want to protect Web UI or hit Enter to leave password protection disabled []: test:test Which port should be used by web interface? [81]: Enter (maximal) download speed in KB/s [2048]: Enter (maximal) upload speed in KB/s [2048]: Enter folder name on USB drive where torrent content should be stored [/opt/torrents]: Done! You may open 51411-51412 TCP/UDP ports on your router to facilitate uploading/donwloading. It's not necessary but recommended. rutorrent web UI will be available at following URL: http://<ip_address_of_router>:<port>/rutorrent Do you wish to start torrent client? [y]: Starting lighttpd... done. Starting rtorrent... done. Type "username:password" if you want to protect Web UI or hit Enter to leave password protection disabled []: test:test - логин и пароль указываем через двоеточие. Which port should be used by web interface? [81]: - выставляем порт, через который пойдет соединение. по умолчанию 81 порт. Enter (maximal) download speed in KB/s [2048]: - выставляем скорость загрузки. по умолчанию 2048. Enter (maximal) upload speed in KB/s [2048]: - выставляем скорость отдачи. по умолчанию 2048. Enter folder name on USB drive where torrent content should be stored [/opt/torrents]: - указываем директорию, путь, куда будут скачиваться торрент-файлы. по умолчанию /opt/torrents. Do you wish to start torrent client? [y]: - после настройки, можно сразу запустить графическую оболочку и сам клиент. по умолчанию стоит [y] - yes. Если демон rtorrent не запустился, вы увидите ошибку: Do you wish to start torrent client? [y]: Starting lighttpd... done. Starting rtorrent... failed. Collected errors: * pkg_run_script: package "rtorrent-easy-install" postinst script returned status 255. * opkg_configure: rtorrent-easy-install.postinst returned 255. Необходимо будет внести изменения в конфигурацию rtorrent. Для этого нужно будет установить пакет nano и отредактировать файл конфигурации rtorrent.conf Устанавливаем пакет nano: / # opkg install nano Installing nano (2.9.8-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/nano_2.9.8-1_mipsel-3.4.ipk Configuring nano. Редактируем файл конфигурации rtorrent.conf, в котором удаляем старую конфигурацию: / # nano /opt/etc/rtorrent/rtorrent.conf Выделяем все строки старого конфига, нажимаем клавиши Alt + A: Удаляем все строки старого конфига, нажимаем клавиши Ctrl + K Добавляем строки нового конфига, нажимаем клавиши Ctrl + V: throttle.max_uploads.set = 8 session.path.set = /opt/etc/rtorrent/session schedule2 = watch_directory,5,5,load_start=/opt/etc/rtorrent/watchdir/*.torrent schedule2 = untied_directory,5,5,stop_untied= schedule2 = low_diskspace,5,60,close_low_diskspace=100M network.bind_address.set = 0.0.0.0 network.port_range.set = 51411-51411 pieces.hash.on_completion.set = yes trackers.use_udp.set = yes protocol.encryption.set = allow_incoming,enable_retry,prefer_plaintext dht.mode.set = auto dht.port.set = 51412 protocol.pex.set = yes network.scgi.open_local = /opt/var/rpc.socket encoding.add = UTF-8 throttle.max_uploads.global.set = 32 throttle.max_downloads.global.set = 64 throttle.global_down.max_rate.set_kb = 0 throttle.global_up.max_rate.set_kb = 0 directory.default.set = /opt/torrents Нажимаем клавиши Ctrl + O , сохраняем конфигурацию. Выходим из редактора nano Ctrl + X Запускаем rtorrent: / # /opt/etc/init.d/S85rtorrent start Starting rtorrent... done. Дополнительная настройка: Останавливаем оболочку и клиента (можно пропустить и перейти к пункту настройки через WebUI): ~ # /opt/etc/init.d/S80lighttpd stop Checking lighttpd... alive. Shutting down lighttpd... done. ~ # /opt/etc/init.d/S85rtorrent stop Checking rtorrent... alive. Shutting down rtorrent... done. Изменить логин и пароль входа в графическую оболочку: Логин и пароль меняется в файле <rutorrent_passwd> Путь где находится файл - /opt/etc/lighttpd Не забываем, что логин и пароль указываются - login:password = mylogin:12345 (можно устанавливать свои параметры). Изменить порт, через которое идет обращение: Порт, он же сервер порт, меняется в файле конфигурации <99-rtorrent-fastcgi-scgi-auth.conf>, строчка server.port = 81 Путь где находится файл - /opt/etc/lighttpd/conf.d Заходим в WebUI по адресу http://192.168.1.1:81/rutorrent/ и делаем настройку (можно настроить под себя): https://cloud.mail.ru/public/cpDF/EeN1y372m https://cloud.mail.ru/public/Jgjc/UdJ31kRbG https://cloud.mail.ru/public/Vzv7/YXVaGJFtK https://cloud.mail.ru/public/EPFz/79fhEkq7w https://cloud.mail.ru/public/4AGe/c1QnxcfBb https://cloud.mail.ru/public/C5yz/XV7QaJ54T Скорость download: https://cloud.mail.ru/public/FnZK/49iq2bx35 https://cloud.mail.ru/public/Gh5e/THcvEfJ5i https://cloud.mail.ru/public/GJth/PWS27niae https://cloud.mail.ru/public/94d3/HbSdtJ1Qa https://cloud.mail.ru/public/5obi/v1omQkTGu Загрузка CPU: Mem: 231328K used, 24756K free, 12K shrd, 1056K buff, 161124K cached CPU: 12.2% usr 12.5% sys 0.0% nic 43.3% idle 24.8% io 0.0% irq 6.9% sirq Load average: 3.53 2.42 1.74 4/126 13026 PID PPID USER STAT VSZ %VSZ CPU %CPU COMMAND 12759 12758 root R 96824 37.7 3 19.3 {rtorrent main} rtorrent -D -n -o import=/opt/etc/rtorrent/rtorrent.conf Дополнительная информация по настройке rTorrent: https://wiki.archlinux.org/index.php/RTorrent_(Русский) https://github.com/rakshasa/rtorrent/wiki#download-links https://ru.wikibooks.org/wiki/RTorrent Отдельное спасибо за фикс lighttpd и rtorrent.conf @TheBB, @Александр Рыжов
  9. zyxmon

    Поскольку разработка популярного торрент клиента transmission буксует, вашему вниманию предлагается форк transmission-cfp. Он основан на версии 2.77 в которую внесены новые функции.Подробнее тут http://forums.zyxmon.org/viewtopic.php?f=5&t=5209 Процитирую @Александр Рыжов В начале каждого пункта я по возможности приведу опцию из settings.json и снабжу ссылкой на авторское описание фичи: построен на кодовой базе версии 2.77 (как самой стабильной по мнению автора) , но включающий новшества свежих версий, например иерархическое дерево файлов контента, prefetch-magnets-enabled - выбор контента после добавления magnet-ссылки, как в uTorrent. piece-temp-dir - сохранение закачанных, но невостребованных кусков. reverify-torrents-tries - принудительная проверка контента после скачивания. dht.bootstrap - добавление bootstrap DHT-нод, если взять их больше неоткуда. script-torrent-added-filename - скрипт, выполняемый после добваления торрента. stream-mode-default - видео качается с головы. Можно начать закачку и натравить на файл медиаплеер. поддержка magnet-линков в папке watchdir. blacklist для UDP-трекеров. расширенные настройки для webseed'ов. задание Peer ID/User agent - мимикрия под произвольного торрент клиента. группировка торрентов по категориям и задание для них персональных настроек. расширенные настройки для IPv6-интерфейса. cheat-mode-default - читинг ration/seeding/leeching. Без дальнейших комментариев. (конец цитаты) Собрал для entware-3x (mipsel), гонял около часа. Работает (предыдущая версия глючила). Желающие могут потестировать. http://entware-3x.zyxmon.org/binaries/mipsel/test/transmission-cfp-daemon_2.77plus-20170318-1_mipsel-3x.ipk http://entware-3x.zyxmon.org/binaries/mipsel/test/transmission-cfp-web_2.77plus-20170318-1_mipsel-3x.ipk И (на всякий пожарный) http://entware-3x.zyxmon.org/binaries/mipsel/test/transmission-cfp-cli_2.77plus-20170318-1_mipsel-3x.ipk http://entware-3x.zyxmon.org/binaries/mipsel/test/transmission-cfp-remote_2.77plus-20170318-1_mipsel-3x.ipk PS Могут быть проблемы с первым запуском. Второй раз запускается нормально.
  10. torrentmonitor nginx Устанавливаем минимальный набор пакетов (чтоб запустить) Сервер для Entware-Keenetic/Entware-3x opkg install nginx MySQL(MariaDB) PHP7 Общий список пакетов для обеих систем opkg install php7-cli php7-fastcgi php7-mod-curl php7-mod-iconv \ php7-mod-json php7-mod-mbstring php7-mod-pdo php7-mod-pdo-mysql \ php7-mod-session php7-mod-simplexml php7-mod-xml php7-mod-zip Правим nginx.conf примерно до следующего вида: Также правим fastcgi_params (добавим пару строк) Создаем скрипт запуска S79php-fcgi #!/bin/sh export PHP_FCGI_CHILDREN='' ENABLED=yes PROCS=php-fcgi ARGS="-b /opt/var/run/php-fcgi.sock &" PREARGS="" DESC=$PROCS PATH=/opt/bin:/opt/sbin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin . /opt/etc/init.d/rc.func И делаем его исполняемым chmod +x /opt/etc/init.d/S79php-fcgi Редактируем php.ini Проверяем корректность конфига nginx, если ошибок нет, то видим следующее nginx -t nginx: the configuration file /opt/etc/nginx/nginx.conf syntax is ok nginx: configuration file /opt/etc/nginx/nginx.conf test is successful Если есть ошибки, то сообщит с указанием строки Создаем каталог для файлов сервера и файл, с выводом информации о РНР mkdir /opt/share/www echo "<?php phpinfo(); ?>" >> /opt/share/www/phpinfo.php Стартуем сервисы /opt/etc/init.d/S79php-fcgi start /opt/etc/init.d/S80nginx start Идем по ip.add.re.ss:88/phpinfo.php и смотрим на вывод (если ничего нет - проверяем, что сделали не так) Cкачать и распаковать архив с torrentmonitor`ом любым удобным способом (в примере ниже - будет использоваться путь: /opt/share/www/tm) Ставим "Машку" opkg install mariadb-server mariadb-client-extra Создаём базу данных (БД) mysql_install_db Запускаем сервис /opt/etc/init.d/S70mariadbd start Задаем пароль для доступа к БД (в примере ниже - Passw0rd) mysqladmin -u root password "Passw0rd" Подключаемся к БД с созданным паролем mysql -u root -p Создаем БД для Torrentmonitor create database tm; Меняем БД для работы с ней \u tm Импортируем таблицы source /opt/share/www/tm/db_schema/mysql.sql Выход из MariaDB \q Перезапустим сервис, чтоб подхватилась созданная БД /opt/etc/init.d/S70mariadbd restart Переименовываем файл /opt/share/www/tm/config.php.example в config.php и редактируем: ... #Для MySQL: Config::write('db.host', 'localhost'); Config::write('db.type', 'mysql'); Config::write('db.charset', 'utf8'); Config::write('db.port', '3306'); Config::write('db.basename', 'tm'); # имя БД Config::write('db.user', 'root'); # имя пользователя для доступа к БД Config::write('db.password', 'Passw0rd'); # пароль к БД #Для PostgreSQL:... Переходим в браузере на ip.add.re.ss:88/tm , появится страница входа (пароль на вход - torrentmonitor). SQLite PHP7 ставим пакеты: opkg install php7-cli php7-fastcgi php7-mod-curl php7-mod-iconv \ php7-mod-json php7-mod-mbstring php7-mod-pdo php7-mod-pdo-sqlite \ php7-mod-session php7-mod-simplexml php7-mod-xml php7-mod-zip создаём скрипт запуска php `mcedit /opt/etc/init.d/S79php-fcgi` и делаем его исполняемым `chmod +x /opt/etc/init.d/S79php-fcgi` #!/bin/sh export PHP_FCGI_CHILDREN='' ENABLED=yes PROCS=php-fcgi ARGS="-b /opt/var/run/php-fcgi.sock &" PREARGS="" DESC=$PROCS PATH=/opt/bin:/opt/sbin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin . /opt/etc/init.d/rc.func правим конфиг nginx `mcedit /opt/etc/nginx/nginx.conf`: и `mcedit /opt/etc/nginx/fastcgi_params` и для php - `mcedit /opt/etc/php.ini` если в конфиг nginx вносили свои изменения, проверяем синтаксис на корректность `nginx -t` (для копи-пасты - не надо, проверено ) если не создан, создаём каталог для файлов сервера `mkdir /opt/share/www` "пара штрихов к портрету" `echo "<?php phpinfo(); ?>" >> /opt/share/www/phpinfo.php` и `ln -s /opt/share/nginx/html/ /opt/share/www/html` стартуем сервисы `/opt/etc/init.d/S79php-fcgi start` и `/opt/etc/init.d/S80nginx start` идём на адрес:88/html/ и смотрим приветственную страницу nginx, по адресу:88/phpinfo.php - сводную информацию о php (если нет - снова перечитываем и проходим все шаги ещё раз ) Качаем архив `wget http://korphome.ru/torrent_monitor/tm-latest.zip` , ставим пакет `opkg install unzip` и распаковываем `unzip tm-latest.zip -x -d /opt/share/www/` не нравиться имя папки? меняем (напр., tm) `mv /opt/share/www/TorrentMonitor-master/ /opt/share/www/tm` и переходим в неё `cd /opt/share/www/tm/` Готовим конфиг `cp config.php.example config.php` `mcedit config.php` ставим пакет `opkg install sqlite3-cli` и импортируем таблицы БД `cat db_schema/sqlite.sql | sqlite3 /opt/var/torrentmonitor.sqlite`, до кучи - задаём права доступа `chmod 666 /opt/var/torrentmonitor.sqlite` Всё! Можно отправляться по известному адресу и настраивать на работу... Не забываем добавить в cron задание */30 * * * * php-cli /opt/share/www/tm/engine.php >> /opt/var/log/torrent_monitor_error.log 2>&1
  11. selidora

    Что-то про OSPF вообще тишина. Внесу свои пять копеек. 1. Пакет bird4 мертв. При запуске загрузка cpu 100%, результата нет. Если из конфига убрать protocol device {scan time 10;} то запускается нормально, но естественно не работает. Нет стартового скрипта. Конфиг по умолчанию ищет /opt/etc/bird.conf, с пакетом ставится /opt/etc/bird4.conf. Дальше не копал. 2. Пакеты quagga. Все демоны некорректно отрабатывают опцию -d, соответственно стартовый скрипт делает вид что все запущено, но демоны тут же умирают. В виде временного решения заменил в стартовом скрипте "${BINDIR}/${d}" ${DAEMON_FLAGS} на ${BINDIR}/${d} & Работает.
  12. К тестированию меня сподвигла ситуация, что при наличии подключения IPV6 дома Телеграм отлично работает напрямую по IPV6, но у моего мобильного оператора IPV6 на сети его нет. Гонять же VPN по соте крайне расточительно для аккумулятора. Также как показала практика, при работе смарта с MTProxy, чем меньше задержка до прокси из сотовой сети, тем меньше расход аккумулятора (но это не точно, и требует доп. проверок и изучения). Также учитывая то, что многие хостеры в РФ ввели у себя запрет на размещение средств обхода блокировок, а у себя дома этому никто не мешает и имея такой прекрасный роутер, как Keenetic я начал исследовать этот вопрос. Для тестирования была выбрана реализация прокси сервера на Python3 от Александра Берсенёва. ( Статья автора https://habr.com/post/414139/ ) Особенностью работы MTProtoproxy является то, что прокси может работать в двух режимах соедения с серверами телеграмма: напрямую, в режиме эмуляции клиента, и через middle-proxy Телеграмма, как официальная реализация. Отмечу, что тестирование показало, что работа напрямую происходит в полтора раза быстрее и занимает практически в 2 раза меньше памяти, чем через middle-proxy. Однако нужно отметить, что только работа через middle-proxy позволяет пользователям своего прокси подключать рекламный канал (ну а вдруг...) Для работы должен быть развернут Entware на Вашем оборудовании https://forum.keenetic.net/topic/4299-entware/ Инсталляция. 1. Устанавливаем, если их нет, Python3 и библиотеку Cryptography. opkg install python3 python3-cryptography 2. Устанавливаем Git, если его нет. opkg install git git-http 3. Разворачиваем с Git образ MTProtoproxy git clone -b stable https://github.com/alexbers/mtprotoproxy.git (Экстремалы могу развернуть и master-ветку, в которую например 01.07.2018 была добавлена также поддержка пакетов переменной длины, и теперь можно сказать определённо - привет DPI-ям, которые будет пробовать блочить на уровне пакетов mtproxy. git clone -b master https://github.com/alexbers/mtprotoproxy.git ) 4. Переходим к конфигурированию. cd mtprotoproxy/ Конфигурирование заключается в редактировании файла config.py 1. Генерим секретный ключ подключения к прокси. (Ставим при необходимости xxd: opkg install xxd) head -c 16 /dev/urandom | xxd -ps Можно сгенерить и другими путями, или придумать ключ самому. Вставляем его в конфиг после "tg":, заменив им нули. По умолчанию конфиг настроен на работу по двум ключам. Но их кол-во одновременно работающих ключей можно менять по необходимости, как сократив до одного, так и увеличив. MTProtoproxy ведёт статистику подключений по каждому ключу. 2. Для увеличения скорости работы рекомендуется добавить опцию к конфиге FAST_MODE = True . 3. При желании подключить рекламный канал или работать именно через слой middle-proxy регистрируем свой прокси у бота @MTProxybot. (Рекомендация: Лучше всего давать ему имя хоста в доменном, а не в ip формате, особенно при dual stack ipv4-ipv6 подключении) Получаем у него proxy tag, раскомментируем и вписываем его в конфиге в разделе AD_TAG. Запускаем для проверки: python3 mtprotoproxy.py Постоянный запуск из консоли лучше проводить командой python3 mtprotoproxy.py >> out.txt & Тогда прокси уйдёт работать в фон и будет выводить свою статистику раз в 10 минут в файл out.txt. Небольшой файл для автозагрузки в /etc/init.d с логированием ошибок и выдачей статистики также приложен к сообщению. S61mtprotoproxy Для подключения к прокси снаружи не забываем открыть соответсвующий порт в фаерволле Keenetic-a. Как говорилось ранее для хоста желательно, особенно для ipv4-ipv6 dual stack, иметь доменное имя, с AAAA и A записями, тогда перадавать ссылку можно будет не ip адресами, а просто хостнеймом одновременно для ipv4 и ipv6. Обсуждение работы и поведения лучше всего вести или здесь, или на канале https://t.me/Keenetic_ru где я тоже присутствую. Детали работы для опытных. Mtprotoproxy имеет возможность работать на 4-х библиотеках шифрования. Встроенной AES, очень медленной, фактически она подходит лишь для тестирования работы python-а, Cryptography, Pycryptodome и Pycrypto. Как показали мои синтетические тесты разницы в скорости работы между Cryptography и Pycryptodome практически нет, но если всё-таки найдутся проблемы, то следует удалить библиотеку python3-cryptography и поставить тестовый build http://bin.entware.net/mipselsf-k3.4/keenetic/test/python3-pycryptodome_3.7.3-1_mipsel-3.4.ipk для моделей DSL, LTE, VOX http://bin.entware.net/mipssf-k3.4/keenetic/test/python3-pycryptodome_3.7.3-1_mips-3.4.ipk
  13. Давно хотел подключить свою веб камеру Logitech HD Webcam C310 к роутеру ZyXEL Keenetic II, но не получалось настроить их связь. На днях нашёл инструкцию как подключить Logitech HD Webcam C270 к роутеру ASUS ( It's only for mipsel devices like RT-N16, RT-N66U, RT-AC66U...). Для подключения по SSH к Entware использовал плагин FireSSH, для Mozilla Firefox, с этим плагином все комманды можно вводить прям в окне браузера и он немного удобнее чем PuTTY. Попробовал установить по инструкции, но пакета mjpg-streamer в репозитории не оказалось, тогда решил поискать похожий пакет и спомощью команды opkg list вывел в консоль список всех возможных пакетов для установки из репозитория. Нашёл похожий пакет mjpg-streamer-zyx, установил его opkg install mjpg-streamer-zyx. Все нужные ядерные модули и драйвера для UVC веб камер уже есть в официальной прошивке. После чего остановил на всякий случай сервер mjpg-streamer-zyx с помощью команды /opt/etc/init.d/S96mjpg-streamer stop, убедился что Entware видит веб камеру с помощью команды ls /dev/vid*, на что был получен ответ /dev/video0, т.е. вебкамера видится Entware как video0. Запустил сервер mjpg-streamer-zyx с помощью команды /opt/etc/init.d/S96mjpg-streamer start, светодиод на вебкамере загорелся, значит изображение с неё начало транслироваться. Зашёл по адресу 192.168.1.1:3000/stream_simple.html, изображение с камеры появилось, но разрешение картинки было слишком маленьким "QVGA" 320x240, а частота кадров всего лишь 5 кадров в секунду. Чтоб повысить эти показатели, а также чтоб добавить возможность авторизации для доступа к видеопотоку нужно править конфиг mjpg-streamer-zyx. Сначало останавливаем сервер с помощью команды /opt/etc/init.d/S96mjpg-streamer stop, потом правим конфиг. В приведённой выше инструкции предлагается править конфиг mjpg-streamer-zyx с помощью консольного редактора nano (кому больше нравится пользуйтесь им), а мне привычнее делать всё через графический интерфейс (GUI) и для правки конфига я воспользовался текстовым редактором Notepad++, зашёл в папку с файлом конфигурации (S96mjpg-streamer) и открыл этот фаил с помощью Notepad++. После того как сделал все изменения и закрыл Notepad++ чтоб сохранить изменения, то он ненадолго (секунд на 10-15) подвис, но потом закрылся, я снова открыл конфигурационный фаил чтоб убедиться что изменения были сохранены. Изменил разрешение видео увеличив его до "XGA" 1024x768, добавил частоту кадров до 25 кадров в секунду, изменил порт доступа на более короткий 86 и добавил логин с паролем - c admin:admin чтоб никто кроме меня не смог просмотреть изображение с вебкамеры. В результате строка: mjpg_streamer -b -i "input_uvc.so -r 320x240 -f 5" -o "output_http.so -p 3000 -w /opt/share/www/webcam" изменилась на: mjpg_streamer -b -i "input_uvc.so -r 1024x768 -f 25" -o "output_http.so -p 86 -w /opt/share/www/webcam -c admin:admin" Снова запустил сервер /opt/etc/init.d/S96mjpg-streamer start, зашёл по адресу 192.168.1.1:86/stream_simple.html, мне было предложено ввести логин и пароль, когда я авторизовался, то увидел картинку с вебкамеры высокого разрешения и более высокую частоту кадров. Если зайти по адресу 192.168.1.1:86, то откроется окно с дополнительными возможностями, среди которых есть возможность сгенерировать плей лист, который кожно открыть в VLC проигрывателе и просматривать изображение через него. FireSSH 0.94.10 'Playfair' designed by Mime Čuvalo in Croatia SSH component is ported from Paramiko 1.7.7.1, created by Robey Pointer Connecting to 192.168.1.1... Connected (version 2.0, client dropbear_2016.73) Authentication (password) successful! Secsh channel 1 opened. BusyBox v1.24.2 () built-in shell (ash) ~ # opkg update Downloading http://pkg.entware-keenetic.ru/binaries/keenle/Packages.gz. Updated list of available packages in /opt/var/opkg-lists/keenle. ~ # opkg upgrade ~ # opkg install mjpg-streamer-zyx Installing mjpg-streamer-zyx (r116-2) to root... Downloading http://pkg.entware-keenetic.ru/binaries/keenle/mjpg-streamer-zyx_r116-2_keenle.ipk. Installing libjpeg (9a-1) to root... Downloading http://pkg.entware-keenetic.ru/binaries/keenle/libjpeg_9a-1_keenle.ipk. Configuring libjpeg. Configuring mjpg-streamer-zyx. ~ # /opt/etc/init.d/S96mjpg-streamer stop stopping mjpg_streamer... killall: mjpg_streamer: no process killed ~ # ls /dev/vid* /dev/video0 ~ # /opt/etc/init.d/S96mjpg-streamer start starting mjpg_streamer... enabling daemon modeforked to background (680) ~ # /opt/etc/init.d/S96mjpg-streamer stop stopping mjpg_streamer... ~ # /opt/etc/init.d/S96mjpg-streamer start starting mjpg_streamer... enabling daemon modeforked to background (802) ~ # Мой провайдер интернета предоставляет бесплатную услугу подключения доменного имени компьютеру, т.е. аналог сервисов no-ip.com и других. Пробовал подключаться к своему роутеру по доменному имени и в конце указывал порт 86, видеопоток транслируется без проблем, даже не пришлось настраивать проброс порта в настройках безопасности роутера. Во время видеотрансляции процессор и оперативная память роутера нагружаются не сильно, при этом у меня запущены FTP сервер и Transmission. Список пакетов в репозитории.txt FireShot Screen Capture.rar
  14. Возможно ли добавить менеджер закачек в прошивку? Думаю будет полезная вещь на ряду с присутствующим BitTorrent'ом.
  15. Установка и настройка minidlna minidlna - DLNA\UPnP-сервер, который поддерживает мультимедийные файлы (музыку, изображения и видео). Данный OPKG-пакет предназначен для тех, у кого наблюдаются проблемы в работе встроенного "прошивочного" minidlna. Версия из репозитория minidlna 1.2.1: http://bin.entware.net/mipselsf-k3.4/minidlna_1.2.1-2_mipsel-3.4.ipk Изменения в minidlna 1.2.1 : 1.2.1 - Released 24-Aug-2017 -------------------------------- - Added Movian client detection and subtitle support. - Fixed an issue with discovery on non-Linux systems. - Fixed Bonjour discovery compatibility with TiVo Bolt. - Fixed NFO file parsing, and added change monitoring support for them. - Added a workaround for video thumbnails on some Samsung clients. - Added DoS protection for event subscriptions. - Fixed content browsing issues with some Samsung TVs. - Improved non-destructive update scan support. Подготовка: 1. Создаем раздел EXT4 на жестком диске - Использование файловой системы EXT4 на USB-накопителях. 2. Установка и настройка Entware - в данной теме. Работоспособность проверена с: Keenetic Giga KN-1010, прошивка draft 2.12.A.3.0-2 от 06.02.2018, раздел на HDD EXT4. Обновляемся: / # opkg update Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz Updated list of available packages in /opt/var/opkg-lists/entware Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz Updated list of available packages in /opt/var/opkg-lists/keendev Устанавливаем пакет minidlna - 1.2.1-2: ~ # opkg install http://bin.entware.net/mipselsf-k3.4/minidlna_1.2.1-2_mipsel-3.4.ipk Downloading http://bin.entware.net/mipselsf-k3.4/minidlna_1.2.1-2_mipsel-3.4.ipk Installing minidlna (1.2.1-2) to root... Installing libexif (0.6.21-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libexif_0.6.21-1_mipsel-3.4.ipk Installing libjpeg (9a-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libjpeg_9a-1_mipsel-3.4.ipk Installing libsqlite3 (3210000-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libsqlite3_3210000-2_mipsel-3.4.ipk Installing libid3tag (0.15.1b-4) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libid3tag_0.15.1b-4_mipsel-3.4.ipk Installing libflac (1.3.2-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libflac_1.3.2-1_mipsel-3.4.ipk Installing libvorbis (1.3.5-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libvorbis_1.3.5-2_mipsel-3.4.ipk Installing libogg (1.3.2-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libogg_1.3.2-2_mipsel-3.4.ipk Installing libuuid (2.30.2-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libuuid_2.30.2-2_mipsel-3.4.ipk Installing libffmpegthumbnailer (2.2.0-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libffmpegthumbnailer_2.2.0-1_mipsel-3.4.ipk Installing libffmpeg-full (3.2.9-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libffmpeg-full_3.2.9-1_mipsel-3.4.ipk Installing libbz2 (1.0.6-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libbz2_1.0.6-3_mipsel-3.4.ipk Installing alsa-lib (1.1.5-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/alsa-lib_1.1.5-1_mipsel-3.4.ipk Installing libopus (1.2.1-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libopus_1.2.1-1_mipsel-3.4.ipk Installing libpng (1.6.34-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libpng_1.6.34-1_mipsel-3.4.ipk Installing libiconv-full (1.11.1-3) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libiconv-full_1.11.1-3_mipsel-3.4.ipk Installing libintl-full (0.19.8.1-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libintl-full_0.19.8.1-1_mipsel-3.4.ipk Configuring libbz2. Configuring alsa-lib. Configuring libopus. Configuring libffmpeg-full. Configuring libpng. Configuring libjpeg. Configuring libffmpegthumbnailer. Configuring libogg. Configuring libexif. Configuring libflac. Configuring libiconv-full. Configuring libvorbis. Configuring libuuid. Configuring libintl-full. Configuring libsqlite3. Configuring libid3tag. Configuring minidlna. Запускаем из /opkg/etc/init.d/S90minidlna (opkg - у меня так называется раздел): ~ # /opt/etc/init.d/S90minidlna start Starting minidlna... done. Доступные команды: ~ # /opt/etc/init.d/S90minidlna Usage: /opt/etc/init.d/S90minidlna (start|stop|restart|check|kill|reconfigure) Останавливаем minidlna: ~ # /opt/etc/init.d/S90minidlna stop Checking minidlna... alive. Shutting down minidlna... done. Редактируем конфиг: Оригинальный конфиг из minidlna: # port for HTTP (descriptions, SOAP, media transfer) traffic port=8200 # network interfaces to serve, comma delimited #network_interface=eth0 # specify the user account name or uid to run as #user=jmaggard # set this to the directory you want scanned. # * if you want multiple directories, you can have multiple media_dir= lines # * if you want to restrict a media_dir to specific content types, you # can prepend the types, followed by a comma, to the directory: # + "A" for audio (eg. media_dir=A,/home/jmaggard/Music) # + "V" for video (eg. media_dir=V,/home/jmaggard/Videos) # + "P" for images (eg. media_dir=P,/home/jmaggard/Pictures) # + "PV" for pictures and video (eg. media_dir=PV,/home/jmaggard/digital_camera) media_dir=/opt/media # set this to merge all media_dir base contents into the root container # note: the default is no #merge_media_dirs=no # set this if you want to customize the name that shows up on your clients #friendly_name=My DLNA Server # set this if you would like to specify the directory where you want MiniDLNA to store its database and album art cache db_dir=/opt/var/minidlna # set this if you would like to specify the directory where you want MiniDLNA to store its log file log_dir=/opt/var/minidlna # set this to change the verbosity of the information that is logged # each section can use a different level: off, fatal, error, warn, info, or debug #log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn # this should be a list of file names to check for when searching for album art # note: names should be delimited with a forward slash ("/") album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg # set this to no to disable inotify monitoring to automatically discover new files # note: the default is yes inotify=yes # set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO enable_tivo=no # set this to strictly adhere to DLNA standards. # * This will allow server-side downscaling of very large JPEG images, # which may hurt JPEG serving performance on (at least) Sony DLNA products. strict_dlna=no # default presentation url is http address on port 80 #presentation_url=http://www.mylan/index.php # notify interval in seconds. default is 895 seconds. notify_interval=900 # serial and model number the daemon will report to clients # in its XML description serial=12345678 model_number=1 # specify the path to the MiniSSDPd socket #minissdpdsocket=/opt/var/minidlna/minissdpd.sock # use different container as root of the tree # possible values: # + "." - use standard container (this is the default) # + "B" - "Browse Directory" # + "M" - "Music" # + "V" - "Video" # + "P" - "Pictures" # + Or, you can specify the ObjectID of your desired root container (eg. 1$F for Music/Playlists) # if you specify "B" and client device is audio-only then "Music/Folders" will be used as root #root_container=. # always force SortCriteria to this value, regardless of the SortCriteria passed by the client #force_sort_criteria=+upnp:class,+upnp:originalTrackNumber,+dc:title # maximum number of simultaneous connections # note: many clients open several simultaneous connections while streaming #max_connections=50 # PNG image to use for an icon, optionally followed by a hex background # color #icon=myicon.png,7f7f7f # Background color (hex rgb triplet) for PNG images converted to jpeg. Two # colors indicate that a checkerboard background, in those colors, should # be used. #bgcolor=666666,999999 # Suport to Movie Thumbnail generation. To use this option, thumbnail generation must be enable at compile time. enable_thumbnail=yes # The width of the thumbnail image. Large images takes more time to generate. To use this option, thumbnail generation must be enable at compile time. thumbnail_width=160 # Thumbnail Image quality. To use this option, thumbnail generation must be enable at compile time. thumbnail_quality=8 # Should the thumbnail have a film strip? To use this option, thumbnail generation must be enable at compile time. enable_thumbnail_filmstrip=yes # For owners of LG TVs who suffer from 100% CPU utilization on the server # If you have a large collection of movies, set this value to define # how many objects will be sent by the server at once (0-100) # The downside of using this option is being unable to # "see" all images and/or pictures at once, the workaround is to use # the "Browse Folders" mode # search_limit=0 Конфиг можете отредактировать "под себя". Все файлы поместил сюда: media_dir=/opt/media Там же сделал папки: Music, Video, JPG, Torrents, Other. Для себя сделал такой конфиг: # port for HTTP (descriptions, SOAP, media transfer) traffic port=8201 # network interfaces to serve, comma delimited network_interface=br0 # set this to the directory you want scanned. media_dir=/opt/media # set this to merge all media_dir base contents into the root container # note: the default is no merge_media_dirs=no # set this if you want to customize the name that shows up on your clients friendly_name=EXTRA_DLNA # set this if you would like to specify the directory where you want MiniDLNA to store its database and album art cache db_dir=/opt/var/minidlna/db # set this if you would like to specify the directory where you want MiniDLNA to store its log file log_dir=/opt/var/minidlna/log # set this to change the verbosity of the information that is logged # each section can use a different level: off, fatal, error, warn, info, or debug log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn # this should be a list of file names to check for when searching for album art # note: names should be delimited with a forward slash ("/") album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg # set this to no to disable inotify monitoring to automatically discover new files # note: the default is yes inotify=yes # set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO enable_tivo=no # set this to strictly adhere to DLNA standards. # * This will allow server-side downscaling of very large JPEG images, # which may hurt JPEG serving performance on (at least) Sony DLNA products. strict_dlna=no # notify interval in seconds. default is 895 seconds. notify_interval=60 # serial and model number the daemon will report to clients # in its XML description serial=12345678 model_number=1 # maximum number of simultaneous connections # note: many clients open several simultaneous connections while streaming max_connections=50 # Suport to Movie Thumbnail generation. To use this option, thumbnail generation must be enable at compile time. enable_thumbnail=yes # The width of the thumbnail image. Large images takes more time to generate. To use this option, thumbnail generation must be enable at compile time. thumbnail_width=160 # Thumbnail Image quality. To use this option, thumbnail generation must be enable at compile time. thumbnail_quality=8 # Should the thumbnail have a film strip? To use this option, thumbnail generation must be enable at compile time. enable_thumbnail_filmstrip=yes Запускаем minidlna: ~ # /opt/etc/init.d/S90minidlna start Starting minidlna... done. Проверяем работу minidlna. Дополнительная информация по настройке - тут и тут2.
  16. Звуковая станция на базе Entware-Keenetic/Entware-3x и MPD основана на теме, за что, отдельная благодарность - McMCC. Зайти по SSH в подготовленную систему и выполнить следующие команды opkg update opkg install music-center Всё! Настройки mpd находятся по /opt/etc/mpd.conf и меняются, в зависимости от своих предпочтений. NB Тема про модули ядра - теперь они доступны для всех draft-версий прошивок.
  17. Добавить в WEB интерфейсе список сервисов управляемых скриптами в /opt/etc/inid.d с возможностью запуска (start) / остановки (stop) и отображением текущего статуса (check).
  18. Последнее время возможно после перехода на релиз прошивки 3 (на 2.15 не проверял пока) или обновление программ из Entware наблюдаю такую картину, например после чтения страницы или не пользованием Интернетом ~ 8-10мин набираю в браузере адрес forum.keenetic.net (или еще 2-3 сайта) получаю попытка соединения не удалась/попробовать снова, если набрать потом любой другой (он открывается) и опять проблемные то все открывается и работает. Схема Клиент-->--Dnsmasq-->--Dnscrypt-proxy-->--Интернет dnsmasq-full - 2.80-11 и dnscrypt-proxy2 - 2.0.21. Легкий анализ показал, что как бы проблема в следующем получен ответ для клиента с TC = 1 (Message truncated) или Flags: Response, Opcode - QUERY (Standard query), TC, RD, RA, Rcode - Success Такого никогда не было, начало появляться совсем не давно.
  19. Установка и настройка WGET Wget (CNU Wget) - свободная неинтерактивная консольная программа для загрузки файлов по сети. Поддерживает протоколы: HTTP, HTTPS, FTP, FTPS. Версия из репозитория Wget (1.19.5-2): http://bin.entware.net/mipselsf-k3.4/wget_1.19.5-2_mipsel-3.4.ipk Изменения - здесь. Подготовка: 1. Создаем раздел EXT4 на жестком диске - Использование файловой системы EXT4 на USB-накопителях. 2. Установка и настройка Entware - в данной теме. Обновляемся: / # opkg update Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz Updated list of available packages in /opt/var/opkg-lists/entware Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz Updated list of available packages in /opt/var/opkg-lists/keendev Устанавливаем: / # opkg install wget Installing wget (1.19.5-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/wget_1.19.5-2_mipsel-3.4.ipk Installing zlib (1.2.11-2) to root... Downloading http://bin.entware.net/mipselsf-k3.4/zlib_1.2.11-2_mipsel-3.4.ipk Installing libopenssl (1.0.2p-1) to root... Downloading http://bin.entware.net/mipselsf-k3.4/libopenssl_1.0.2p-1_mipsel-3.4.ipk Configuring zlib. Configuring libopenssl. Configuring wget. Пример работы. 1. Записываем файл прошивки Keenetic OS для KN-1010 в нужный нам раздел: / # wget -P opt/home/ --no-check-certificate https://help.keenetic.com/hc/article_attachments/360000591459/KN-1010_stable_2.13.C.0.0-3.zip --2018-11-13 11:33:36-- https://help.keenetic.com/hc/article_attachments/360000591459/KN-1010_stable_2.13.C.0.0-3.zip Resolving help.keenetic.com... 104.16.55.111, 104.16.51.111, 104.16.52.111, ... Connecting to help.keenetic.com|104.16.55.111|:443... connected. WARNING: cannot verify help.keenetic.com's certificate, issued by 'CN=Let\'s Encrypt Authority X3,O=Let\'s Encrypt,C=US': Unable to locally verify the issuer's authority. HTTP request sent, awaiting response... 200 OK Length: 13821475 (13M) [application/zip] Saving to: 'opt/home/KN-1010_stable_2.13.C.0.0-3.zip' KN-1010_stable_2.13.C.0.0-3.zip 100%[=====================================================================================================================>] 13.18M 4.54MB/s in 2.9s 2018-11-13 11:33:40 (4.54 MB/s) - 'opt/home/KN-1010_stable_2.13.C.0.0-3.zip' saved [13821475/13821475] где: ключ -P --directory-prefix=PREFIX save files to PREFIX/.. - здесь указываем нужную директорию для скачивания. ключ --no-check-certificate - отключает проверку сертификата протокола HTTPS. 2. Пример копирования скаченного файла из одной директории в другую: / # cp opt/home/KN-1010_stable_2.13.C.0.0-3.zip tmp/mnt/MYFILES/KN-1010_stable_2.13.C.0.0-3.zip где: opt/home/ - откуда копируем файл; tmp/mnt/MYFILES/ - куда копируем файл. 3. Проверяем директорию, куда был записан файл: / # ls tmp/mnt/MYFILES/ Camera Uploads Keenetic 4G III_revB_2.13.C.0.0-3.txt Keenetic_Air_2.13.C.0.0-3.bin IMAX.Dolphins.2000.2160p.Amazon.WEBRip.DD2.0.x264-TrollUHD.mkv Keenetic 4G_KN-1210_2.13.C.0.0-3.bin components KN-1010_stable_2.13.C.0.0-3.zip Keenetic 4G_KN-1210_2.13.C.0.0-3.txt Keenetic 4G III_revB_2.13.C.0.0-3.bin Keenetic Air_2.13.C.0.0-3.txt Как видим, файл записан корректно, в нужную нам директорию. Описание ключей: / # wget --help GNU Wget 1.19.5, a non-interactive network retriever. Usage: wget [OPTION]... [URL]... Mandatory arguments to long options are mandatory for short options too. Startup: -V, --version display the version of Wget and exit -h, --help print this help -b, --background go to background after startup -e, --execute=COMMAND execute a `.wgetrc'-style command Logging and input file: -o, --output-file=FILE log messages to FILE -a, --append-output=FILE append messages to FILE -d, --debug print lots of debugging information -q, --quiet quiet (no output) -v, --verbose be verbose (this is the default) -nv, --no-verbose turn off verboseness, without being quiet --report-speed=TYPE output bandwidth as TYPE. TYPE can be bits -i, --input-file=FILE download URLs found in local or external FILE -F, --force-html treat input file as HTML -B, --base=URL resolves HTML input-file links (-i -F) relative to URL --config=FILE specify config file to use --no-config do not read any config file --rejected-log=FILE log reasons for URL rejection to FILE Download: -t, --tries=NUMBER set number of retries to NUMBER (0 unlimits) --retry-connrefused retry even if connection is refused --retry-on-http-error=ERRORS comma-separated list of HTTP errors to retry -O, --output-document=FILE write documents to FILE -nc, --no-clobber skip downloads that would download to existing files (overwriting them) --no-netrc don't try to obtain credentials from .netrc -c, --continue resume getting a partially-downloaded file --start-pos=OFFSET start downloading from zero-based position OFFSET --progress=TYPE select progress gauge type --show-progress display the progress bar in any verbosity mode -N, --timestamping don't re-retrieve files unless newer than local --no-if-modified-since don't use conditional if-modified-since get requests in timestamping mode --no-use-server-timestamps don't set the local file's timestamp by the one on the server -S, --server-response print server response --spider don't download anything -T, --timeout=SECONDS set all timeout values to SECONDS --dns-timeout=SECS set the DNS lookup timeout to SECS --connect-timeout=SECS set the connect timeout to SECS --read-timeout=SECS set the read timeout to SECS -w, --wait=SECONDS wait SECONDS between retrievals --waitretry=SECONDS wait 1..SECONDS between retries of a retrieval --random-wait wait from 0.5*WAIT...1.5*WAIT secs between retrievals --no-proxy explicitly turn off proxy -Q, --quota=NUMBER set retrieval quota to NUMBER --bind-address=ADDRESS bind to ADDRESS (hostname or IP) on local host --limit-rate=RATE limit download rate to RATE --no-dns-cache disable caching DNS lookups --restrict-file-names=OS restrict chars in file names to ones OS allows --ignore-case ignore case when matching files/directories -4, --inet4-only connect only to IPv4 addresses -6, --inet6-only connect only to IPv6 addresses --prefer-family=FAMILY connect first to addresses of specified family, one of IPv6, IPv4, or none --user=USER set both ftp and http user to USER --password=PASS set both ftp and http password to PASS --ask-password prompt for passwords --use-askpass=COMMAND specify credential handler for requesting username and password. If no COMMAND is specified the WGET_ASKPASS or the SSH_ASKPASS environment variable is used. --no-iri turn off IRI support --local-encoding=ENC use ENC as the local encoding for IRIs --remote-encoding=ENC use ENC as the default remote encoding --unlink remove file before clobber --no-xattr turn off storage of metadata in extended file attributes Directories: -nd, --no-directories don't create directories -x, --force-directories force creation of directories -nH, --no-host-directories don't create host directories --protocol-directories use protocol name in directories -P, --directory-prefix=PREFIX save files to PREFIX/.. --cut-dirs=NUMBER ignore NUMBER remote directory components HTTP options: --http-user=USER set http user to USER --http-password=PASS set http password to PASS --no-cache disallow server-cached data --default-page=NAME change the default page name (normally this is 'index.html'.) -E, --adjust-extension save HTML/CSS documents with proper extensions --ignore-length ignore 'Content-Length' header field --header=STRING insert STRING among the headers --compression=TYPE choose compression, one of auto, gzip and none. (default: none) --max-redirect maximum redirections allowed per page --proxy-user=USER set USER as proxy username --proxy-password=PASS set PASS as proxy password --referer=URL include 'Referer: URL' header in HTTP request --save-headers save the HTTP headers to file -U, --user-agent=AGENT identify as AGENT instead of Wget/VERSION --no-http-keep-alive disable HTTP keep-alive (persistent connections) --no-cookies don't use cookies --load-cookies=FILE load cookies from FILE before session --save-cookies=FILE save cookies to FILE after session --keep-session-cookies load and save session (non-permanent) cookies --post-data=STRING use the POST method; send STRING as the data --post-file=FILE use the POST method; send contents of FILE --method=HTTPMethod use method "HTTPMethod" in the request --body-data=STRING send STRING as data. --method MUST be set --body-file=FILE send contents of FILE. --method MUST be set --content-disposition honor the Content-Disposition header when choosing local file names (EXPERIMENTAL) --content-on-error output the received content on server errors --auth-no-challenge send Basic HTTP authentication information without first waiting for the server's challenge HTTPS (SSL/TLS) options: --secure-protocol=PR choose secure protocol, one of auto, SSLv2, SSLv3, TLSv1, TLSv1_1, TLSv1_2 and PFS --https-only only follow secure HTTPS links --no-check-certificate don't validate the server's certificate --certificate=FILE client certificate file --certificate-type=TYPE client certificate type, PEM or DER --private-key=FILE private key file --private-key-type=TYPE private key type, PEM or DER --ca-certificate=FILE file with the bundle of CAs --ca-directory=DIR directory where hash list of CAs is stored --crl-file=FILE file with bundle of CRLs --pinnedpubkey=FILE/HASHES Public key (PEM/DER) file, or any number of base64 encoded sha256 hashes preceded by 'sha256//' and separated by ';', to verify peer against --random-file=FILE file with random data for seeding the SSL PRNG --egd-file=FILE file naming the EGD socket with random data --ciphers=STR Set the priority string (GnuTLS) or cipher list string (OpenSSL) directly. Use with care. This option overrides --secure-protocol. The format and syntax of this string depend on the specific SSL/TLS engine. HSTS options: --no-hsts disable HSTS --hsts-file path of HSTS database (will override default) FTP options: --ftp-user=USER set ftp user to USER --ftp-password=PASS set ftp password to PASS --no-remove-listing don't remove '.listing' files --no-glob turn off FTP file name globbing --no-passive-ftp disable the "passive" transfer mode --preserve-permissions preserve remote file permissions --retr-symlinks when recursing, get linked-to files (not dir) FTPS options: --ftps-implicit use implicit FTPS (default port is 990) --ftps-resume-ssl resume the SSL/TLS session started in the control connection when opening a data connection --ftps-clear-data-connection cipher the control channel only; all the data will be in plaintext --ftps-fallback-to-ftp fall back to FTP if FTPS is not supported in the target server WARC options: --warc-file=FILENAME save request/response data to a .warc.gz file --warc-header=STRING insert STRING into the warcinfo record --warc-max-size=NUMBER set maximum size of WARC files to NUMBER --warc-cdx write CDX index files --warc-dedup=FILENAME do not store records listed in this CDX file --no-warc-compression do not compress WARC files with GZIP --no-warc-digests do not calculate SHA1 digests --no-warc-keep-log do not store the log file in a WARC record --warc-tempdir=DIRECTORY location for temporary files created by the WARC writer Recursive download: -r, --recursive specify recursive download -l, --level=NUMBER maximum recursion depth (inf or 0 for infinite) --delete-after delete files locally after downloading them -k, --convert-links make links in downloaded HTML or CSS point to local files --convert-file-only convert the file part of the URLs only (usually known as the basename) --backups=N before writing file X, rotate up to N backup files -K, --backup-converted before converting file X, back up as X.orig -m, --mirror shortcut for -N -r -l inf --no-remove-listing -p, --page-requisites get all images, etc. needed to display HTML page --strict-comments turn on strict (SGML) handling of HTML comments Recursive accept/reject: -A, --accept=LIST comma-separated list of accepted extensions -R, --reject=LIST comma-separated list of rejected extensions --accept-regex=REGEX regex matching accepted URLs --reject-regex=REGEX regex matching rejected URLs --regex-type=TYPE regex type (posix|pcre) -D, --domains=LIST comma-separated list of accepted domains --exclude-domains=LIST comma-separated list of rejected domains --follow-ftp follow FTP links from HTML documents --follow-tags=LIST comma-separated list of followed HTML tags --ignore-tags=LIST comma-separated list of ignored HTML tags -H, --span-hosts go to foreign hosts when recursive -L, --relative follow relative links only -I, --include-directories=LIST list of allowed directories --trust-server-names use the name specified by the redirection URL's last component -X, --exclude-directories=LIST list of excluded directories -np, --no-parent don't ascend to the parent directory Email bug reports, questions, discussions to <bug-wget@gnu.org> and/or open issues at https://savannah.gnu.org/bugs/?func=additem&group=wget. Если возникли проблемы при работе wget: Читаем посты от TheBB и zyxmon Дополнительный материл: КОМАНДА WGET LINUX Wget Wiki КОПИРОВАНИЕ ФАЙЛОВ В LINUX КОМАНДА LS LINUX
  20. Эта тема основана на темах http://forum.zyxmon.org/topic249-podkly ... etiku.html и http://forums.zyxmon.org/viewtopic.php?f=5&t=33 и учитывает специфику кинетиков с прошивкой ndmsv2. Что необходимо для того, чтобы смонтировать яндекс диск как папку. 1. Кинетик с прошивкой от 02.07.2016 или более поздней в которой есть файл (симлинк) /etc/mtab ls -l /etc lrwxrwxrwx 1 root root 7 Jul 2 08:29 TZ -> /var/TZ ..... lrwxrwxrwx 1 root root 12 Jul 2 08:29 mtab -> /proc/mounts 2. Установленная система пакетов Entware-keenetic - viewtopic.php?f=4&t=333 3. Установленный модуль ядра fuse - viewtopic.php?f=3&t=471
  21. Данное решение поможет в случаях после перегрузки роутера сохранять и просматривать системные логи. Будет полезно в случае ошибок в работе прошивки или неправильных настроек роутера, после самостоятельной перегрузки роутера сохранить лог и иметь возможность его просматривать. Возможно несколько вариантов снятия с роутера и записи его логов на внешний носитель данных. В моем случае, я посчитал удобным вариантом запись данных лога, используя тот же локальный роутер Zyxel с установленной системой Entware-Keenetic и приложением syslog-ng, так как в таком варианте запись необходимо вести постоянно, без перерывов. Возможен и вариант установки и приема логов при небольших корректировках и на другом роутере c установленным Entware-Keenetic и приложением syslog-ng. 1. В первую очередь, конечно необходима установка системы Entware-Keenetic , следуя советам из темы по ссылке, на внешний, подключенный к USB носитель, отформатированный в NTFS, EXT2/3. На NTFS работает без ошибок и замечаний. 2. Обновляем список приложений и инсталлируем логгер syslog-ng и редактор nano через Putty по ssh.. opkg update opkg upgrade opkg install syslog-ng opkg install nano 3. Настройка. а) Открываем в редакторе nano файл настроек syslog-ng. Обратите внимание. Кто обновляется со старых версий 2.хх syslog-ng, смотрите мое сообщение здесь >>>> Ниже пока приведен пример настройки новой и свежеустановленной версии 3.9: Вызываем конфигурационный файл с помощью nano и редактируем его. nano /opt/etc/syslog-ng.conf Откроется окно следующего вида: На экране выше все настроено по моим предпочтениям и необходимостям, у вас же будет немного другого вида: б) Настройка директории, куда будет все писаться, например прямо в свою папку на USB диске, где удобно. По умолчанию syslog пишет в файл messages по пути opt/var/log/messages Примеры перенастройки: - писать в корень вашего диска или флешки - нужно изменить путь opt/var/log/messages на opt/messages. - писать в папку syslogs на вашем диске - сначало создайте папку на вашем диске: Ваш_Диск - syslogs, потом укажите к ней путь opt/syslogs/messages. в) Для корректного сбора всех логов в следствии экспериментов выяснилось, что самый простой и правильный путь, чтобы получить именно все записи из журнала роутера, это задействование оригинальной функции прошивки отправки логов на удаленный сервер в настройках роутера: и также сбор дополнительных записей из OPKG приложений (так как они из за настроек самих приложений часто не попадают в официальный журнал роутера, который вы видите на страничке роутера) и их прием с предварительно настроенной программкой syslog-ng. В локальном варианте сбора информации, когда syslog-ng ставиться на тот же роутер, на котором будут сниматься логи, строчки в файле конфигурации source src { internal(); unix-dgram("/dev/log"); }; source net { udp(ip(0.0.0.0) port(514)); }; меняется на source src { internal(); }; source net { udp(ip(192.168.1.1) port(514)); }; где адрес моего роутера с 0.0.0.0 меняется на 192.168.1.1 и, как у меня ранее работало правильно, удаляется строка UNIX-stream unix-dgram("/dev/log"); (если ее оставить, то будет "съедаться" часть записей в официальный журнал - они пропадут, хотя в файл syslog и будут писаться, это же и актуально для тех, кто обновился с версий постарше на последнюю и ранее это не сделал) г) обязательно (!) нужно закоментировать путь к include из несуществующего конфигурационного файла custom-logs.conf #@include "/opt/etc/custom-logs.conf" (актуально для тех кто обновлялся с версий постарше) или (актуально для тех кто ставит с нуля или заново) # put any customization files in this directory @include "/opt/etc/syslog-ng.d/" переделать на # put any customization files in this directory # @include "/opt/etc/syslog-ng.d/" Потом проверяем на синтаксис на пожарный случай: syslog-ng -s и если не появилось никаких сообщений (в противном случае смотрим, что выскочил и проверяем где накосячили), продолжаем. На всякий случай ниже оставляю как у меня сконфигурирован файл со всеми изменениями, в некоторых случаях проще посмотреть так: Мои комментарии к конфигурации: 4. Для автоматического старта приложения с загрузкой системы syslog переименовывать/менять атрибут автозагрузки не нужно, т.к. при инсталяции в init.d он уже сразу становиться с атрибутом S (для автостарта) и запускается автоматически при старте роутера. Но может кому то не нужно, чтобы он стартовал и он хочет иногда только вручную запускать, тогда его нужно переименовать следующим образом: mv /opt/etc/init.d/S01syslog-ng /opt/etc/init.d/K01syslog-ng 4. Стартуем его и наслаждаемся записью на диск в файл messages в выбранной папке на диске. /opt/etc/init.d/S01syslog-ng start (/opt/etc/init.d/K01syslog-ng start, если изменили атрибут автостарта ранее) 5. Через некоторое время проверяем, что все пишется с помощью nano. Пишет он по умолчанию в файл messages по пути opt/var/log/messages, посмотреть можно скачав файл messages из директории Ваш_Диск/opt/var/log/ на диске на комп и открыв любым текстовым редактором или же с помощью nano, по умолчанию это, если вы не изменили путь: nano /opt/var/log/messages Или по пути, где вы прописали ранее. 6. Коментарии. а) Пишет он лог из журнала на USB диск вроде довольно-таки быстро по моим наблюдениям, и должно сохранятся все, но в случае краша могут последние записи и не успеть сохраниться, тут уже нужно поэксперементировать. В таких случаях, по совету ув. Le ecureuil : если вы считаете, что у вас реально происходит kernel panic, то последний дамп всегда можно получить командой в CLI (но работает пока только увы это на Ultra II и Giga III) - отправляется в облако и нужно обращаться с сервисным кодам к разработчикам: (config)> more proc:mtdoops/oops б) Если лог будет приниматься на удаленном роутере, скорее всего, на первом придется в брандмаузере/сетевом экране открыть и перенаправить порт udp 514 на адрес принимающего устройства в интернете, а также его открыть на принимающем устройстве. Пока не было возможности и необходимости самому попробовать, но пишут коллеги, что можно одновременно сохранять на самом диске роутера и отправлять, прописав таким образом путь destination (предложил @serguei00), пробуйте: destination messages { file("/opt/var/log/messages"); udp("1.1.1.1" port(514)); }; в) если syslog-ng не хочет стартовать и вы не можете найти проблему, почему. Выполните команду syslog-ng. Она покажет вам лог запуска. В нем и будет написана ошибка, из за которой сервис не стартует. Или проверьте конфигурационный файл на синтаксис: syslog-ng -s г) логи из opkg переставали писаться в системные логи? В файле messages они есть, а вот именно в веб-интерфейсе пропали? Файловая система - ext3, Entware-3x.... проблемы... ? Тогда все понятно, почему так. Данный мануал написан для (читайте 1 пункт) : 1. В первую очередь, конечно необходима установка системы Entware-Keenetic , следуя советам из темы по ссылке, на внешний, подключенный к USB носитель, отформатированный в NTFS, EXT2/3. На NTFS также работает без ошибок и замечаний. На 3х никто не гарантирует ничего ... Но пишут коллеги (@DarkDiver), что можно все же и на 3х справиться, прописав таким образом, некоторые отзываются, что так заработало, пробуйте: Или пробуйте такой вариант (фрагмент конфига, где в разделе src убрана строка unix-stream("/dev/log"); ), как предложил @gvan (на данный момент это также стало актуально и на последних версиях Entware-Keenetic нужно удалять unix-dgram("/dev/log"); ): Также смотрите сортировку логов по рамеру и дате, а также их компрессию, если вы планируете лог писать долго и хотите все упорядочить, не все в одном файле, как в данном примере, от автора gvan: Ротация логов в entware, записанных на внешний USB-диск
  22. В репозиторий Entware-3x добавлен пакет netdata для мониторинга в реальном времени - https://github.com/firehol/netdata/wiki Установка и запуск элементарны opkg update opkg install netdata /opt/etc/init.d/S60netdata start Плагины отключены, использованы настройки для слабых устройств - https://github.com/firehol/netdata/wiki/Memory-Requirements#running-netdata-in-embedded-devices Для мониторинга зайдите на ваше устройство по http, порт 19999. Дэшборд с информацией огромен - до 100 красивых графиков. Приведена только часть. Что там есть понятно из "меню" в правом верхнем углу.
  23. Репозиторий entware включает в себя два nfs сервера - userspace сервер unfs3 и ядерный. В связи с возможностью установки дополнительных модулей ядра - viewtopic.php?f=3&t=471 расширились и возможности кинетика. В этом сообщении я покажу как поднять ядерный nfs сервер. Первое, что нужно сделать, это установить нужные модули. См. скриншот: В момент написания данной заметки все установленные модули автоматически загружаются. Делать insmod или modprobe не нужно. Второе- установим и запустим pormap opkg install portmap /opt/etc/init.d/S55portmap start (После перезагрузок pormap будет автоматически запускаться) Третье - установим сервер opkg install nfs-kernel-server Четвертое - отредактируем файл /opt/etc/exports # cat /opt/etc/exports /opt *(rw,no_root_squash,insecure,sync,no_subtree_check) Я в этом примере расшариваю всем всю директорию /opt на запись Пятое - удалим скрипт запуска и заменим его другим rm /opt/etc/init.d/S57nfs-kernel-server wget http://pkg.entware-keenetic.ru/binaries/S20nfsd -O /opt/etc/init.d/S20nfsd chmod +x /opt/etc/init.d/S20nfsd Шестое. Запустим скрипт запуска /opt/etc/init.d/S20nfsd start Седьмое - профит! :D PS Лучше переименовать скрипты запуска portmap и nfsd, чтобы portmap запускался первым. PPS. Содержимое S20nfsd: # cat /opt/etc/init.d/S20nfsd #!/bin/sh # Copyright (C) 2006 OpenWrt.org PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin NFS_D=/opt/var/lib/nfs LOCK_D=/opt/var/lib/nfs/sm start() { grep -q /proc/fs/nfsd /proc/mounts || \ mount -t nfsd nfsd /proc/fs/nfsd mkdir -p $LOCK_D touch $NFS_D/rmtab sysctl -w fs.nfs.nlm_tcpport=32777 fs.nfs.nlm_udpport=32777 > /dev/null rpc.statd -p 32778 -o 32779 exportfs -r rpc.nfsd rpc.mountd -p 32780 } stop() { killall rpc.mountd 2> /dev/null rpc.nfsd 0 2> /dev/null exportfs -au killall rpc.statd 2> /dev/null grep -q /proc/fs/nfsd /proc/mounts && \ umount /proc/fs/nfsd } reload() { exportfs -r } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; reload) reload ;; link_up) ;; ppp_up) ;; link_down) ;; ppp_down) ;; *) echo "Usage: $0 {start|stop|restart|reload|link_up|link_down|ppp_up|ppp_down}" ;; esac
  24. Прошивки маршрутизаторов кинетик содержат в качестве сервера сети Microsoft комерческий продукт под названием CIFS NQ - http://visualitynq.com/cifsnq/nqcifs.php Настройки CIFS NQ минимальные. Если нужен более полный контроль, то стоит отключить встроенный сервер и установить старую добрую самбу. Это делается просто. 1. Установка `opkg install samba36-server` 2. Настройка заключается в редактировании файла /opt/etc/samba/smb.conf Простейший рабочий файл [global] netbios name = Extra interfaces = lo br0 server string = Keenetic workgroup = MYGROUP guest account = nobody security = user map to guest = Bad User guest ok = yes guest only = no browseable = yes timestamp logs = no preserve case = yes short preserve case = yes socket options = TCP_NODELAY SO_KEEPALIVE IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536 log level = 0 syslog = 0 passdb backend = smbpasswd smb encrypt = disabled smb passwd file = /opt/etc/samba/smbpasswd [Entware] path = /tmp/mnt/ENTWARE3X force user = root writable = yes comment = ExtraFlash Если нужно, добавьте wins, local master и другой требуемы функционал. 3. Запуск будет осуществляться автоматически при загрузке роутера. Вначале для тестирования можно запускать руками `/opt/etc/init.d/S08samba start`
  25. TheBB

    прим.: варианты между собой молосовместимые Вариант 1 Заходим по ssh на Keenetic и выполняем следующие команды: opkg update opkg install tor polipo Редактируем файл /opt/etc/tor/torrc (пример базовой настройки) SOCKSPort 9050 # Default: Bind to localhost:9050 for local connections. SOCKSPort 192.168.1.1:9100 # Bind to this address:port too. RunAsDaemon 1 DataDirectory /opt/var/lib/tor #User tor Редактируем файл /opt/etc/polipo/config (пример базовой настройки) proxyAddress = "0.0.0.0" # IPv4 only allowedClients = 127.0.0.1, 192.168.1.0/24 socksParentProxy = "localhost:9050" socksProxyType = socks5 dnsQueryIPv6 = no dnsUseGethostbyname = yes Стартуем сервисы /opt/etc/init.d/S28polipo /opt/etc/init.d/S35tor Настраиваем браузер (в примере FireFox) Для проверки идем по адресу. Должны увидеть нечто подобное Можно посмотреть через кого идет выход, напр., на 2ip.ru И вместо этого наблюдаем Вариант 2. за-tor-енная точка доступа прим.: TOR - имя интерфейса (произвольное, задаем любое свое) pass-tor - пароль доступа к сети (мин. 8 символов, задаем любой свой, если надо) tor-net - имя Wi-Fi сети (произвольное, задаем любое свое) 172.16.2.1 - IP-адрес точки доступа (произвольный, задаем любой свой, не должен пересекаться с существующими) Подключаемся к CLI Keenetic`a Выбираем интерфейс беспроводной сети interface WifiMaster0/AccessPoint2 Переименовываем интерфейс в TOR name TOR Устанавливаем уровень безопасности сети - private security-level private Устанавливаем алгоритм безопасности WPA2 (если надо) encryption wpa2 Включаем шифрование Wi-Fi-трафика (если установили алгоритм безопасности) encryption enable Устанавливаем ключ доступа к сети (если выполнили 2 предыдущих комманды, что выше) authentication wpa-psk pass-tor Устанавливаем ip-адрес точки доступа ip address 172.16.2.1 255.255.255.0 Устанавливаем SSID беспроводной сети ssid tor-net Активация интерфейса TOR up Для автоматической раздачи IP создаем DHCP pool и привязываем его к интерфейсу TOR. Создаем DHCP-пул ip dhcp pool TOR Устанавливаем диапазон IP адресов range 172.16.2.50 172.16.2.100 Привязываем созданный пул к интерфейсу TOR bind TOR Для применения всех настроек нужно отключить и включить модуль Wi-Fi Отключить interface WifiMaster0 down Включить interface WifiMaster0 up Сохраняем system configuration save Заходим по ssh на Keenetic и выполняем следующие команды: opkg update opkg install tor iptables Редактируем файл /opt/etc/tor/torrc: SOCKSPort 9050 SOCKSPort 192.168.1.1:9100 RunAsDaemon 1 DataDirectory /opt/var/lib/tor #User tor AutomapHostsOnResolve 1 DNSListenAddress 172.16.2.1 DNSPort 9053 TransListenAddress 172.16.2.1 TransPort 9040 VirtualAddrNetwork 10.192.0.0/10 Создаем файл /opt/etc/ndm/netfilter.d/010-tor-net.sh со следующим содержанием: #!/opt/bin/sh iptables -t nat -A PREROUTING -i ra2 -p udp --dport 53 -j REDIRECT --to-ports 9053 iptables -t nat -A PREROUTING -i ra2 -p tcp --syn -j REDIRECT --to-ports 9040 прим.: ra2 - имя созданного интерфейса (просмотреть можно командой ifconfig) Делаем файл исполняемым chmod +x /opt/etc/ndm/netfilter.d/010-tor-net.sh Перезагружаем Keenetic и пробуем... to be continued...
×
×
  • Create New...