Jump to content

TheBB

Moderators
  • Posts

    2,411
  • Joined

  • Last visited

  • Days Won

    51

Everything posted by TheBB

  1. bump to 2.17.2 2.18.0 aarch64 - http://bin.entware.net/aarch64-k3.10/test/filebrowser_2.17.2-1_aarch64-3.10.ipk mips - http://bin.entware.net/mipssf-k3.4/test/filebrowser_2.17.2-1_mips-3.4.ipk mipsel - http://bin.entware.net/mipselsf-k3.4/test/filebrowser_2.17.2-1_mipsel-3.4.ipk
  2. Похоже, закешировалось "в интернетах", в индексе есть, но список не тот выдаёт. Вроде б, отлегло... Пытайте снова.
  3. Bridge или оно же (в одну строку) ещё Bridge или оно же (в одну строку) reboot.sh #!/bin/sh wget -qO - --post-data='[{"system":{"reboot":true}}]' localhost:79/rci > /dev/null 2>&1 --- log ~ # ~ # logger '"Hello,World!"' ~ # logger `date` ~ # logger '"Bye!"' ~ # === И ещё один Bridge0
  4. 0. Строка инициализации должна быть пустой. 1. см. здесь 0 и п. 5 или п.п. 8.1-8.2 2. см. здесь 0-1; для обхода таймаута во время установки, в текущей версии инсталлера, задействован вызов doinstall через /opt/etc/initrc см. здесь 0, 2 повезло (см. тут ) там речь о другом см. здесь 2 (историю изменений скрипта создания установочного архива можно смотреть на github, напр., для mipsel) см. здесь 0-1 @enpa ?
  5. Продолжим глумиться над пользователями, группами, правами доступа, запуском... ))) Для наглядности, запуск с отладкой - "#!/opt/bin/sh -x" (прошивочный sh так не умеет) USER=GROUP=privoxy USER=GROUP=nobody ~ # ~ # sed -i -e 's,^USER="privoxy",USER="nobody",' /opt/etc/init.d/S24privoxy ~ # USER=GROUP=www ~ # ~ # sed -i -e 's,nobody,www,' /opt/etc/init.d/S24privoxy ~ # ~ # ~ # cat /opt/etc/init.d/S24privoxy #!/opt/bin/sh -x USER="www" ENABLED=yes PROCS=privoxy . /opt/etc/init.d/protector ARGS="--pidfile $PIDFILE --user $USER $CONFDIR/config" PREARGS="" DESC=$PROCS PATH=/opt/sbin:/opt/bin . /opt/etc/init.d/rc.func [ "$ACTION" = "stop" ] && rm -rf "$HOMEDIR" ~ # ~ # ~ # ~ # cat /opt/etc/init.d/protector # test protector protect() { local USER="$USER" local GROUP="$USER" HOMEDIR="/opt/tmp/$PROCS" CONFDIR="$HOMEDIR/conf" LOGDIR="$HOMEDIR/log" LOGFILE="$LOGDIR/$PROCS.log" PIDDIR="$HOMEDIR/run" PIDFILE="$PIDDIR/$PROCS.pid" [ -d "$HOMEDIR" ] || { mkdir -p "$HOMEDIR" chown "$USER":"$GROUP" "$HOMEDIR" } [ -d "$CONFDIR" ] || { mkdir -p "$CONFDIR" cp -R /opt/etc/"$PROCS"/* "$CONFDIR"/ chown -R "$USER":"$GROUP" "$CONFDIR" } [ -d "$LOGDIR" ] || { mkdir -p "$LOGDIR" touch "$LOGFILE" chown -R "$USER":"$GROUP" "$LOGDIR" chmod 644 "$LOGFILE" } [ -d "$PIDDIR" ] || { mkdir -p "$PIDDIR" chown -R "$USER":"$GROUP" "$PIDDIR" } } protect ~ # ! не руководство к действию, а информация к размышлению ! Если предусмотрено конфигами (php-fpm, nginx, ...) или ключами (privixy, ...), этим и надо пользоваться.
  6. Это всего лишь вариации на тему... ~ # /opt/etc/init.d/S20privoxy start starting privoxy ~ # /opt/etc/init.d/S20privoxy status privoxy already running ~ # /opt/etc/init.d/S20privoxy restart stopping privoxy starting privoxy ~ # /opt/etc/init.d/S20privoxy check privoxy already running ~ # ps | grep -v grep | grep priv 31153 privoxy 3844 S /opt/sbin/privoxy --pidfile /opt/tmp/privoxy.pid /opt/etc/privoxy/config ~ # /opt/etc/init.d/S20privoxy stop stopping privoxy ~ # /opt/etc/init.d/S20privoxy status privoxy is not running ~ # ~ # ~ # cat /opt/etc/init.d/S20privoxy #!/bin/sh PATH=/opt/sbin:/opt/bin PIDFILE="/opt/tmp/privoxy.pid" PROGRAM="privoxy" PROGRAM_BIN="/opt/sbin/$PROGRAM" USER="$PROGRAM" OK="$PROGRAM already running" NO="$PROGRAM is not running" status_check () { [ -f $PIDFILE ] && [ -d /proc/"$(pidof $PROGRAM)" ] } start() { su "$USER" -m -p -c "$PROGRAM_BIN --pidfile $PIDFILE /opt/etc/privoxy/config" && echo starting $PROGRAM } stop() { kill "$(pidof $PROGRAM)" && echo stopping $PROGRAM } case "$1" in start) if status_check then echo $OK else start fi ;; stop) if status_check then stop else echo $NO fi ;; check|status) if status_check then echo $OK else echo $NO fi ;; restart) stop sleep 3 start ;; *) echo "Usage: $0 {start|stop|restart|status}" ;; esac ~ #
  7. правильно - через ключ "--user" --- ~ # ~ # /opt/etc/init.d/S24privoxy start Starting privoxy... done. ~ # ~ # /opt/etc/init.d/S24privoxy status Checking privoxy... alive. ~ # ~ # ps | grep -v grep | grep priv 15059 root 3844 S privoxy /opt/etc/privoxy/config ~ # ~ # /opt/etc/init.d/S24privoxy stop Checking privoxy... alive. Shutting down privoxy... done. ~ # ~ # chown -R privoxy:privoxy /opt/etc/privoxy ~ # ~ # chown privoxy:privoxy /opt/var/log/privoxy.log ~ # ~ # /opt/etc/init.d/S24privoxy start Starting privoxy... done. ~ # ~ # /opt/etc/init.d/S24privoxy status Checking privoxy... alive. ~ # ~ # ps | grep -v grep | grep priv 15164 privoxy 3980 S privoxy --user privoxy /opt/etc/privoxy/config ~ # === ~ # start-stop-daemon BusyBox v1.33.1 (2021-07-08 20:18:22 UTC) multi-call binary. Usage: start-stop-daemon [OPTIONS] [-S|-K] ... [-- ARGS...] Search for matching processes, and then -K: stop all matching processes -S: start a process unless a matching process is found Process matching: -u USERNAME|UID Match only this user's processes -n NAME Match processes with NAME in comm field in /proc/PID/stat -x EXECUTABLE Match processes with this command in /proc/PID/cmdline -p FILE Match a process with PID from FILE All specified conditions must match -S only: -x EXECUTABLE Program to run -a NAME Zeroth argument -b Background -c USER[:[GRP]] Change user/group -m Write PID to pidfile specified by -p -K only: -s SIG Signal to send -t Match only, exit with 0 if found Other: -q Quiet ~ #
  8. privoxy --help ~ # chmod 666 /opt/etc/privoxy/config ~ # ~ # chmod 666 /opt/var/log/privoxy.log ~ # ~ # /opt/etc/init.d/S24privoxy start Starting privoxy... done. ~ # ~ # /opt/etc/init.d/S24privoxy status Checking privoxy... alive. ~ # ~ # ps | grep -v grep | grep priv 20658 test 3980 S privoxy --user test /opt/etc/privoxy/config ~ # --- через обёртку ~ # ~ # id test uid=10(test) gid=10(test) groups=10(test) ~ # ~ # /opt/etc/init.d/S24privoxy stop Checking privoxy... alive. Shutting down privoxy... done. ~ # ~ # ps | grep -v grep | grep priv ~ # ~ # privoxy-su /opt/etc/privoxy/config ~ # ~ # ps | grep -v grep | grep priv 21646 test 3844 S privoxy /opt/etc/privoxy/config ~ # ~ # /opt/etc/init.d/S24privoxy status Checking privoxy... alive. ~ # ~ # cat /opt/bin/privoxy-su #!/opt/bin/sh exec su test -p -c "privoxy $1 $2 $3 $4" ~ # === чтоб два раза не вставать - обратный финт ушами... /opt $ id uid=10000(tester) gid=10000(tester) groups=10000(tester) /opt $ /opt $ /opt/etc/init.d/S24privoxy status Checking privoxy... dead. /opt $ /opt $ privoxy-su /opt/etc/privoxy/config /opt $ /opt $ /opt/etc/init.d/S24privoxy status Checking privoxy... alive. /opt $ ~ # cat /opt/bin/privoxy-su #!/opt/bin/sh -x exec echo keenetic | su -p -m root -c "/opt/sbin/privoxy $1 $2 $3 $4" ~ #
  9. Вот "классический" вариант, сам выкачивает исходники:
  10. atinout_0.9.1-1_mips-3.4.ipk atinout_0.9.1-1_mipsel-3.4.ipk Makefile (фай atinout.c разместить с корне директории пакета рядом с Makefile`ом): ~ # atinout -V atinout version 0.9.1 Copyright (C) 2013 Håkon Løvdal <hlovdal@users.sourceforge.net> This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; see http://www.gnu.org/licenses/gpl.html for details. ~ # ~ # ls -al /dev/tty* crw-rw-rw- 1 root root 5, 0 Aug 16 22:03 /dev/tty crw------- 1 root root 4, 64 Aug 16 22:06 /dev/ttyS0 crw------- 1 root root 4, 65 Jan 1 1970 /dev/ttyS1 crw-r----- 1 root root 188, 0 Aug 16 22:14 /dev/ttyUSB0 ~ # ~ # echo AT | atinout - /dev/ttyUSB0 - OK ~ # ~ # echo AT+CSCS=? | atinout - /dev/ttyUSB0 - +CSCS: ("IRA","UCS2","GSM") OK ~ #
  11. Пробовал обе-две, сейчас с ssl, работало везде.
  12. Все логи отправки, что выше, были с паролем "открытым текстом" (для гугляпочты дополнительно сгенерен в настройках аккаунта, яндикс страдает той же фигнёй ))) ). ковыряния привели к Permission denied стало совсем не секурно ))) [14-Aug-2021 12:49:13 Europe/Moscow] mail() on [/opt/share/nginx/html/msmtp.php:2]: To: receipient@domain.com -- Headers: -- Subject: A Subject Here Aug 14 12:49:28 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=root@xxx recipients=receipient@domain.com errormsg='cannot locate host smtp.gmail.com: Temporary failure in name resolution' exitcode=EX_NOHOST [14-Aug-2021 12:49:31 Europe/Moscow] mail() on [/opt/share/nginx/html/msmtp.php:2]: To: receipient@domain.com -- Headers: -- Subject: A Subject Here Aug 14 12:49:39 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=root@xxx recipients=receipient@domain.com mailsize=173 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628934579 b20sm4744690pfl.9 - gsmtp' exitcode=EX_OK [14-Aug-2021 12:51:43 Europe/Moscow] mail() on [/opt/share/nginx/html/msmtp.php:2]: To: receipient@domain.com -- Headers: -- Subject: A Subject Here Aug 14 12:51:50 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=nobody@xxx recipients=receipient@domain.com mailsize=175 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628934710 r10sm4993668pff.7 - gsmtp' exitcode=EX_OK [14-Aug-2021 12:51:57 Europe/Moscow] mail() on [/opt/share/nginx/html/msmtp1.php:5]: To: receipient@yandex.ru -- Headers: -- Subject: my subject Aug 14 12:52:04 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=nobody@xxx recipients=receipient@yandex.ru mailsize=124 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628934724 125sm5255156pfy.17 - gsmtp' exitcode=EX_OK Aug 14 12:52:37 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=root@xxx recipients=username@domain.com mailsize=87 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628934756 f1sm5229922pfk.115 - gsmtp' exitcode=EX_OK Aug 14 12:52:54 host=smtp.gmail.com tls=on auth=on user=xxxo@gmail.com from=root@xxx recipients=username@domain.com mailsize=87 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628934774 r16sm4273396pje.10 - gsmtp' exitcode=EX_OK ~ # убил систему... ))) ___ по "паролю" оно работает, по "крипте" надо или настраивать многопользовательскую систему (и не факт, что взлетит), или установить debian (надо проверять).
  13. локализовано ))) проблема тут passwordeval gpg --no-tty -q -d ~/.msmtp-password.gpg не может добраться и расшифровать ... [pid 20278] rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=0}, 16) = 0 [pid 20278] rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 16) = 0 [pid 20278] stat64("/sbin/gpg", 0x7ff48d78) = -1 ENOENT (No such file or directory) [pid 20278] stat64("/usr/sbin/gpg", 0x7ff48d78) = -1 ENOENT (No such file or directory) [pid 20278] stat64("/bin/gpg", 0x7ff48d78) = -1 ENOENT (No such file or directory) [pid 20278] stat64("/usr/bin/gpg", 0x7ff48d78) = -1 ENOENT (No such file or directory) [pid 20278] write(2, "/opt/bin/sh: ", 13) = 13 [pid 20278] write(2, "gpg: not found", 14) = 14 [pid 20278] write(2, "\n", 1) = 1 [pid 20278] exit_group(127) = ? [pid 20278] +++ exited with 127 +++ [pid 20277] <... read resumed>"", 4096) = 0 [pid 20277] --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=20278, si_uid=65534, si_status=127, si_utime=0, si_stime=0} --- [pid 20277] close(6) = 0 [pid 20277] waitpid(20278, [{WIFEXITED(s) && WEXITSTATUS(s) == 127}], 0) = 20278 [pid 20277] write(2, "msmtp: ", 7) = 7 [pid 20277] write(2, "cannot read output of 'gpg --qui"..., 94) = 94 [pid 20277] write(2, "\n", 1) = 1 [pid 20277] close(4) ... будем посмотреть дальше...
  14. Для проверки на свои менять, потому они без надобности... ))) ~ # diff -uraN msmtp/etc/php.ini /opt/etc/php.ini --- msmtp/etc/php.ini 2021-06-09 09:11:00.000000000 +0300 +++ /opt/etc/php.ini 2021-08-13 07:41:32.579970752 +0300 @@ -214,7 +214,8 @@ ;SMTP = localhost ;smtp_port = 25 ;sendmail_from = no-reply@xxx.yyy.zzz -sendmail_path = "/opt/sbin/sendmail -t" +;;sendmail_path = "/opt/sbin/sendmail -t" +sendmail_path = "/opt/bin/msmtp -t" ;mail.force_extra_parameters = ;mail.add_x_header = Off mail.log = "/opt/var/log/php8/php-mail.log" ~ # ~ # cat /opt/var/log/php8/php-mail.log [13-Aug-2021 07:46:44 Europe/Moscow] mail() on [/opt/share/www/ext-ui/msmtp.php:2]: To: receipient@domain.com -- Headers: -- Subject: A Subject Here Aug 13 07:46:52 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=root@xxx recipients=receipient@domain.com mailsize=173 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628830012 v63sm612505pgv.59 - gsmtp' exitcode=EX_OK [13-Aug-2021 07:46:59 Europe/Moscow] mail() on [/opt/share/www/ext-ui/msmtp1.php:5]: To: receipient@yandex.ru -- Headers: -- Subject: my subject Aug 13 07:47:06 host=smtp.gmail.com tls=on auth=on user=xxx@gmail.com from=root@xxx recipients=receipient@yandex.ru mailsize=122 smtpstatus=250 smtpmsg='250 2.0.0 OK 1628830026 t19sm455174pfg.216 - gsmtp' exitcode=EX_OK ~ #
  15. Не зависимостей, а самого пакета. Исправлено: добавлено в preinst удаление симлинка. !!! "npm install -g typescript winston-transport" !!! актуально при обновлении с предыдущей версии (1.18.1) или новой установке
  16. скидывайте конфиги в личку, персональные данные (адреса/явки/пароли) можете затереть , по наличию времени, будем посмотреть.
  17. Размер пакета уменьшился более чем в 10 раз (~ 5.5 MB) --- после установки ~ # du -sh /opt/lib/node/zigbee2mqtt 36.1M /opt/lib/node/zigbee2mqtt ~ # === + (будет ме-е-е-е-едленно расти) ~ # du -sh /opt/var/lib/.z2m 68.0K /opt/var/lib/.z2m ~ #
  18. А связка nginx+php-fpm работает? Проблема только с почтой?
×
×
  • Create New...