-
Постов
2 475 -
Зарегистрирован
-
Посещение
-
Победитель дней
53
Тип контента
Профили
Форумы
Галерея
Загрузки
Блоги
События
Весь контент TheBB
-
owrt`шники изменили структуру Makefile`a, ну-у-у, потерялся конфиг, дело-то житейское, за всем не уследить... https://www.nginx.com/resources/wiki/start/topics/examples/full/ или
-
opkg install http://bin.entware.net/aarch64-k3.10/test/filebrowser_2.23.0-1_aarch64-3.10.ipk opkg install http://bin.entware.net/mipselsf-k3.4/test/filebrowser_2.23.0-1_mipsel-3.4.ipk opkg install http://bin.entware.net/mipssf-k3.4/test/filebrowser_2.23.0-1_mips-3.4.ipk
-
Можно и так ))) Не проблема совсем. Есть собранные и rustc, и maturin... ~ # maturin -V maturin 1.1.0 ~ # ~ # maturin list-python 🐍 1 python interpreter found: - CPython 3.11 at /opt/bin/python3.11 ~ # ~ # rustc -vV rustc 1.70.0-nightly (90c541806 2023-05-31) (built from a source tarball) binary: rustc commit-hash: 90c541806f23a127002de5b4038be731ba1458ca commit-date: 2023-05-31 host: mipsel-openwrt-linux-gnu release: 1.70.0-nightly LLVM version: 16.0.2 ~ #
-
https://github.com/Entware/Entware/wiki/Compile-packages-from-sources
-
"дело было не в бобине..." новые кингстоны ни* не работают, на старой сандиск (долго искал хоть какую-то "живую" флешку) с пол пинка взлетело.
-
aarch64 (arm64)
-
))) служба? ~ # ndmc -c show log | cut -d' ' -f5 | grep -E '[a-z]' | cut -d: -f1 | cut -d'[' -f1 | sort -u avahi-daemon cron crond dropbear kernel mini_snmpd ndhcpc ndm root sshd telnetd ~ # если выкинуть Entware, остаётся не так уж и много. ну, в файле места полно, сгрузите и посмотрите [C] May 8 04:07:47 ndm: Mutex: Cloud::UhpService::Impl_::DoControlListener_()+0x408 [C] May 8 04:07:47 ndm: Mutex: Cloud::UhpService::Impl_::DoActive_()+0x250 [C] May 8 04:07:47 ndm: Mutex: Cloud::UhpService::Impl_::Run()+0x368 [C] May 8 04:07:47 ndm: Mutex: Thread::StartRoutine_(void*)+0x420 ... [E] May 30 13:15:43 ndm: Core::Ndss: [23271] cannot connect to the server. [E] May 30 13:16:42 ndm: Core::Ndss: [23276] HTTP error: 504 (Gateway Time-out). [I] May 30 13:48:59 ndm: Network::Interface::Mtk::WifiMonitor: "WifiMaster0/AccessPoint0": STA(00:11:22:33:44:55) GTK rekey done, group cipher AES. [I] May 30 14:45:01 ndhcpc: Bridge0: received ACK for 123.456.789.0 from 098.765.432.1 lease 25200 sec. а в журнале, видимо, ограничение на кол-во отображаемых строк.
-
Можно ))) KN-2110 ток там нет ни фильтров, ни красненько-зелёненькой раскраски ))) А, вот, фильтры смотрелись бы неплохо, типа: D - debug (по умолчанию всё, как оно и есть), I - info (только информационные), W - warning (только предупреждения), E - error (только ошибки), C - critical (фих знает, м.б. опционально), с отключением "Обновлять в реальном времени" (чтоб ресурсы не жрало) и блокированием выбора неиспользуемых (защита от ССЗБ и шаловливых ручонок)
-
Можно! Можно отправлять лог на внешнее устройство, прям "искаропки", "в морде" (Использовать Syslog). Можно "воткнуть" пакет syslog-ng и в нём ковыряться. Можно... )))
-
"Кто хочет, тот ищет возможности, кто не хочет — ищет причины." (© Сократ) Нужен был лог, без захода на "морду лица" ака dashboard знатная "портянка" выходит, надо что-то с "этим" делать ~ # cat /opt/usr/bin/show-log #!/bin/sh wget -qO - --post-data='[{"log":{"once":true}}]' localhost:79/rci/show | \ sed -e '2,3d;s,^\[,,;s,^\],,;s,^[[:space:]]*,,g;s,^"[[:digit:]]*":[[:space:]],,' | \ tr -d '\n' | sed -e 's/},{/}\n{/g;s,}}}$,}\n,g' ~ # ~ # show-log {"message": {"level": "Info","label": "I","message": "Network::Interface::Base: \"WifiMaster1/AccessPoint1\": schedule cleared. "},"timestamp": "Apr 25 18:11:45","ident": "ndm","id": 2389} {"message": {"level": "Info","label": "I","message": "Network::Interface::Wireless: \"WifiMaster1/AccessPoint1\": SSID saved. "},"timestamp": "Apr 25 18:11:45","ident": "ndm","id": 2390} ... так куда веселей, не правда ли? но... хочется большего! (см. выше) да, знаю, можно натравить jq, однако, мы лёгких путей не ищем, т.к. комсомольцы без трудностей не могут ))) hl_0.14.0-1_mipsel-3.4.ipk
-
-
в файле "/opt/etc/php.ini" найти: log_errors = Off ;error_log = syslog и заменить на: log_errors = On error_log = /opt/var/log/php-error.log
-
Забыл добавить в Makefile, пакет перезалил...
-
вопрос выходит за пределы темы, однако... заменить указанную строку и собрать пакет. или opkg install http://bin.entware.net/mipselsf-k3.4/test/cron_4.1-5a_mipsel-3.4.ipk crontabs задвинут как и в busybox`e (/opt/var/spool/cron/crontabs) https://github.com/Entware/rtndev/blob/master/cron/patches/300-pathnames.h.patch#L8 --- a/cron/patches/300-pathnames.h.patch +++ b/cron/patches/300-pathnames.h.patch @@ -5,7 +5,7 @@ * are all relative to this directory. */ -#define CRONDIR "/var/cron" -+#define CRONDIR "/opt/var/cron" ++#define CRONDIR "/opt/var/spool/cron" #endif /* SPOOLDIR is where the crontabs live. @@ -14,7 +14,7 @@ * didn't exist last time around...) */ -#define SPOOL_DIR "tabs" -+#define SPOOL_DIR "crontabs" ++#define SPOOL_DIR CRONDIR"/crontabs" /* cron allow/deny file. At least cron.deny must * exist for ordinary users to run crontab. syslog (журнал) чтоб работало с текущим, задания править надо в "/opt/etc/crontab" (или раскидывать по каталогам)
-
включить логирование и изучать логи настраивать под свои нужды напр., сменить порт на сокет, увеличить"menory_limit" или "upload_max_filesize", ...
-
не сработает, поздравляю - нашли баг. ~ # ~ # strace -ffff -vvvv -e openat crontab -l openat(AT_FDCWD, "/opt/lib/tls/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/opt/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "crontabs/root", O_RDONLY) = -1 ENOENT (No such file or directory) no crontab for root +++ exited with 1 +++ ~ # или ~ # ~ # strace -ffff -vvvv -e openat crontab -u root -l openat(AT_FDCWD, "/opt/lib/tls/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/opt/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "crontabs/root", O_RDONLY) = -1 ENOENT (No such file or directory) no crontab for root +++ exited with 1 +++ ~ # тут https://github.com/Entware/rtndev/blob/master/cron/patches/300-pathnames.h.patch#L17 --- a/cron/patches/300-pathnames.h.patch +++ b/cron/patches/300-pathnames.h.patch @@ -14,7 +14,7 @@ * didn't exist last time around...) */ -#define SPOOL_DIR "tabs" -+#define SPOOL_DIR "crontabs" ++#define SPOOL_DIR CRONDIR"/crontabs" /* cron allow/deny file. At least cron.deny must * exist for ordinary users to run crontab. на выходе (задач нет) ~ # strace -ffff -vvvv -e openat crontab -l openat(AT_FDCWD, "/opt/lib/tls/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/opt/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/var/cron/crontabs/root", O_RDONLY) = -1 ENOENT (No such file or directory) no crontab for root +++ exited with 1 +++ ~ # после добавления ~ # crontab -e no crontab for root - using an empty one crontab: installing new crontab ~ # работает ~ # ~ # strace -ff -vv -e openat crontab -l openat(AT_FDCWD, "/opt/lib/tls/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/opt/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/etc/passwd", O_RDONLY|O_CLOEXEC) = 3 openat(AT_FDCWD, "/opt/var/cron/crontabs/root", O_RDONLY) = 3 # DO NOT EDIT THIS FILE - edit the master and reinstall. # (/tmp/crontab.XXXX8WIS60 installed on Sat May 6 14:38:46 2023) # (Cron version V5.0 -- $Id: crontab.c,v 1.12 2004/01/23 18:56:42 vixie Exp $) ### test SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin MAILTO="" HOME=/ # ---------- ---------- Default is Empty ---------- ---------- # */1 * * * * echo "ping-pong :)" +++ exited with 0 +++ ~ # в журнале ... [I] May 6 15:03:01 cron[20240]: (root) RELOAD (/opt/var/cron/crontabs/root) [I] May 6 15:03:01 cron[1234]: (root) CMD (echo "ping-pong :)") [I] May 6 15:19:01 cron[1957]: Core::Syslog: last message repeated 16 times. ... @Александр Рыжов @zyxmon
-
SHELL - без разницы PATH - /opt/* поставил впереди, без разницы само задание "*/1 * * * * root /opt/bin/php /opt/share/www/tt-rss/update.php --feeds --quiet" работает
-
работает ~ # cat /opt/etc/crontab SHELL=/opt/bin/sh PATH=/opt/bin:/opt/sbin:/opt/usr/bin:/opt/usr/sbin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin MAILTO="" HOME=/opt/root # ---------- ---------- Default is Empty ---------- ---------- # #*/1 * * * * root /opt/bin/run-parts /opt/etc/cron.1min #*/5 * * * * root /opt/bin/run-parts /opt/etc/cron.5mins #01 * * * * root /opt/bin/run-parts /opt/etc/cron.hourly #02 4 * * * root /opt/bin/run-parts /opt/etc/cron.daily #22 4 * * 0 root /opt/bin/run-parts /opt/etc/cron.weekly #42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly */1 * * * * root /opt/bin/php /opt/share/www/tt-rss/update.php --feeds --quiet ~ # ... [I] May 4 13:25:41 cron[17584]: (CRON) STARTUP (V5.0) [I] May 4 13:25:42 root: Started cron from . [I] May 4 13:26:01 cron[17698]: (root) CMD (/opt/bin/php /opt/share/www/tt-rss/update.php --feeds --quiet) [I] May 4 13:30:01 cron[17962]: Core::Syslog: last message repeated 4 times. ...
-
http://forums.zyxmon.org/cron update_daemon: создать файл сервиса (имя/номер произвольные, напр., "/opt/etc/init.d/S89ttrss-update") со следующим содержимым: #!/bin/sh ENABLED=yes PROCS=ttrss-update ARGS="--interval 300 --quiet --log /opt/var/log/ttrss-update.log" DESC="Tiny Tiny RSS update daemon" PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin case "$1" in start) if [ -n "$(pgrep -alf update_daemon2)" ]; then echo "$DESC already running." return 0 elif $PROCS $ARGS; then echo "$DESC started." else echo "$DESC failed." fi ;; kill|stop) if [ -n "$(pgrep -alf update_daemon2)" ]; then kill "$(pgrep -alf update_daemon2 | cut -d' ' -f1)" echo "$DESC stopped." else echo "$DESC not running." fi ;; restart) return 0 ;; check|status) if [ -n "$(pgrep -alf update_daemon2)" ]; then echo "$DESC running." else echo "$DESC not running." fi ;; *) echo "Usage: $0 {start|stop|status}" exit 1 ;; esac exit 0 и сделать его исполняемым `chmod +x /opt/etc/init.d/S89ttrss-update` interval - периодичность обновления (по умолчанию - 120 сек.) log - файл лога (можно нинужно) DESC - описание PROCS - файл-обвязка для запуска php-скрипта (см. ниже) создать файл скрипта (имя произвольные, напр., "/opt/sbin/ttrss-update", его указать в PROCS (см. выше)) со следующим содержимым: #!/bin/sh exec /opt/bin/php /opt/share/www/tt-rss/update_daemon2.php "$@" & и сделать его исполняемым `chmod +x /opt/sbin/ttrss-update` exec /путь/к/бинарнику /путь/к/скрипту параметры_запуска в_фон --- "вариации на тему..." 1 вместо скрипта-обвязки создать симлинк и переделать стартовый скрипт (добавить уход в фон) 2 вместо всего, что выше, добавить в PATH путь до каталога со скриптами (/opt/share/www-tt-rss) и переделать стартовый скрипт (добавить уход в фон) 3 вместо update_daemon.php использовать update.php с ключом --daemon, переписав стартовый скрипт ... N добавить свой вариант
-
Доброго! жалобы на root`a мы вырубили (эт про безопасность), если надо по "шен-фуй" - нужно настраивать юзверей и права доступа, организовать запуск демонов от их имени, ... (усложнять установку и настройку?). там же, 2 варианта обновления лент - или cron+update.php, или демон update_daemon2.php (без cron`a). терь о cron`e - какой из двух используется? апплет busybox`a или vixie cron (древний, аки окаменелые какахи мамонта)? будем моделировать/воспроизводить.
-
вот завтра и глянем, обновляет он ленты или нет.