Uživatelské nástroje

Nástroje pro tento web


rb435g

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

rb435g [2017/10/28 23:51] – [Upgrade] djbuldogrb435g [2025/08/28 10:09] (aktuální) – upraveno mimo DokuWiki 127.0.0.1
Řádek 25: Řádek 25:
       * všechno jen přes mikrotik a s mikrotik přes TLS/SRTP       * všechno jen přes mikrotik a s mikrotik přes TLS/SRTP
       * mělo by to jít i přes třeba [[https://www.kamailio.org/w/features/|kamailio]]       * mělo by to jít i přes třeba [[https://www.kamailio.org/w/features/|kamailio]]
-    * n2n klient pro vzdálené ovládání+    * n2n klient pro vzdálené ovládání ([[https://www.wireguard.com|wireguard]])
  
   * test z 6.8.2017   * test z 6.8.2017
Řádek 77: Řádek 77:
     * na co je ten ubifs extroot options v menuconfig? :)     * na co je ten ubifs extroot options v menuconfig? :)
  
-===== Kompilace základního img =====+===== Sestavení =====
  
-  * použité verze+  * [[lede#postup_sestaveni|obecný postup sestavení]] 
 +  * použité git verze
  
 <code> <code>
Řádek 87: Řádek 88:
 feeds/routing/.git/refs/heads/master: f15b8246fabbf042cf520b40876247e654396a54 feeds/routing/.git/refs/heads/master: f15b8246fabbf042cf520b40876247e654396a54
 feeds/telephony/.git/refs/heads/master: 1f0fb2538ba6fc306198fe2a9a4b976d63adb304 feeds/telephony/.git/refs/heads/master: 1f0fb2538ba6fc306198fe2a9a4b976d63adb304
 +</code>
 +
 +  * přidané extra balíčky
 +
 +<code>
 +scripts/feeds install tcpdump nmap lighttpd aircrack-ng iftop php7 asterisk13 asterisk11  
 </code> </code>
  
Řádek 98: Řádek 105:
  
   * výběr formátu image   * výběr formátu image
 +
 <code> <code>
 ramdisk + squashfs ramdisk + squashfs
 </code> </code>
  
-   použité balíčky+  do základního img jsem dal minimum balíčků (základní funkce systému) 
 +  * ideální je zkompilovat všechny kmod moduly, jelikož pozdější přidání vyžaduje flash základního obrazu 
 +  * balíčky v základním obrazu
  
 <code> <code>
Řádek 155: Řádek 165:
 usign - 2015-07-04-ef641914-1 usign - 2015-07-04-ef641914-1
 </code> </code>
 +
 +==== Modifikace rootfs ====
 +
 +  * mám nastavený symlink [[lede#uzivatelske_soubory|files]] na složku modifikace_rom_rootfs
 +  * ta obsahuje:
 +    * můj ssh klíč
 +    * moje root heslo
 +    * moje nastavení sítě a wifi pro rb435g
 +    * název systému
 ==== Problémy ==== ==== Problémy ====
  
Řádek 172: Řádek 191:
     * zapsáno jako bug https://github.com/lede-project/source/pull/854/files     * zapsáno jako bug https://github.com/lede-project/source/pull/854/files
     * na základě http://lists.infradead.org/pipermail/lede-dev/2017-January/005197.html     * na základě http://lists.infradead.org/pipermail/lede-dev/2017-January/005197.html
 +
 +==== Problémy kompilace ====
 +
 +=== chybějící libedit ===
 +
 +  * pro kompilaci asterisk13 bylo potřeba explicitně přidat
 +
 +<code>
 +scripts/feeds install libedit
 +</code>
 +
 +=== chybějící libxml2 ===
 +
 +  * nelze přeložit Asterisk13x balíček, problém s libxml2
 +
 +<code>
 +(cd /home/djbuldog/Projekty/embedded/rb435g/LEDE/build_dir/target-mips_24kc_musl/asterisk-13.9.1/menuselect; ./bootstrap.sh; ./configure  --without-newt --without-curses --with-ncurses="/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr" --with-libxml2="/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr" LDFLAGS="-L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/lib -L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr/lib -L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/lib -L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/lib -lxml2" CFLAGS="-O2 -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/include/libxml2" );
 +Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/bin/automake line 3938.
 +Generating the configure script ..
 +...
 +checking for xml2-config... /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/bin/xml2-config
 +configure: error: Could not find required 'Libxml2' development package
 +Makefile:279: recipe for target '/home/djbuldog/Projekty/embedded/rb435g/LEDE/build_dir/target-mips_24kc_musl/asterisk-13.9.1/.configured_yyyyyy' failed
 +</code>
 +
 +  * v configure se spouštěl test na include libxml souborů, který selhal protože hledal ve špatné cestě
 +
 +<code>
 +strace -F -f -e open gcc ...
 +[pid 19198] open("/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/include/libxml/tree.h", O_RDONLY|O_NOCTTY) = -1 ENOENT (No such file or directory)
 +[pid 19198] open("/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include/libxml/tree.h", O_RDONLY|O_NOCTTY) = -1 ENOENT (No such file or directory)
 +..
 +conftest.c:32:27: fatal error: libxml/tree.h: No such file or directory
 +   #include <libxml/tree.h>
 +                           ^
 +compilation terminated.
 +</code>
 +
 +  * soubory jsou ve skutečnosti v adresářích
 +
 +<code>
 +/staging_dir/hostpkg/include/libxml2/libxml/tree.h
 +/staging_dir/target-mips_24kc_musl/usr/include/libxml2/libxml/tree.h
 +</code>
 +
 +  * oprava provedena následovně:
 +
 +<code>
 +ln -s /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include/libxml2/libxml /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include/
 +</code>
 +
 +=== nelze zavést pjsip.so ===
 +
 +  * po instalaci asterisk nefunguje zavádění chan_pjsip.so
 +  * nejspíš to nejde kvůli [[https://github.com/openwrt/telephony/issues/142|chybějícímu modulu res_pjproject.so]]
 +  * píše se o tom i [[https://community.asterisk.org/t/error-loading-module-res-pjsip-so/69161/2|zde]] - že je potřeba načítat moduly ve správném pořadí
 +
 +<code>
 +scp djbuldog@10.10.11.2:/home/djbuldog/Projekty/embedded/rb435g/LEDE/build_dir/target-mips_24kc_musl/asterisk-13.9.1/ipkg-install/
 +usr/lib/asterisk/modules/res_pjproject.so /usr/lib/asterisk/modules/
 +scp djbuldog@10.10.11.2:/home/djbuldog/Projekty/embedded/rb435g/LED
 +E/build_dir/target-mips_24kc_musl/asterisk-13.9.1/ipkg-install/etc/asterisk/pjpr
 +oject.conf  /etc/asterisk/pjproject.conf
 +</code>
 +
 +  * aha tak to nepomohlo :D .. co tohle? https://issues.asterisk.org/jira/browse/ASTERISK-26518
 +    * to nepomohlo.. ten patch nejde nějak vůbec aplikovat :D
 +
 +  * zkusil jsem git update a dostal jsem se na verzi 13.15.0
 +  * ani v ní ten pjsip nefungoval
 +  * zkusil jsem ale místo něj ten obyčejný chan-sip a ten funguje :)
 +
 +=== nefunkční tls ===
 +
 +  * zkusil jsem zreplikovat na čistým LEDE 17.01.1 x86_64
 +  * do /etc/asterisk/sip.conf jsem přidal akorát ''register => tls:%%//%%xxxxx:yyyyyyyy@sip.odorik.cz:6689''
 +  * balíčky pouze: ''asterisk13 asterisk13-chan-sip asterisk13-cdr''
 +
 +<code>
 +[May 12 19:34:01] WARNING[23982]: tcptls.c:731 handle_tcptls_connection: FILE * open failed!
 +[May 12 19:34:01] ERROR[23982]: tcptls.c:734 handle_tcptls_connection: Attempted a TLS connection without OpenSSL support. This will not work!
 +</code>
 +
 +  * zjistil jsem, že není nastaveno makro ''DO_SSL''
 +  * toto makro se definuje pokud platí: ''if defined(HAVE_OPENSSL) && (defined(HAVE_FUNOPEN) || defined(HAVE_FOPENCOOKIE))''
 +  * přes config.log a autoconfig.h jsem ověřil, že chybí makro HAVE_FUNOPEN (BSD) nebo HAVE_FOPENCOOKIE (glibc)
 +  * dočetl jsem se, že musl tyto funkce neimplementuje
 +  * jediné řešení je tedy asi přejít na glibc místo musl, protože přepisovat to by nebylo úplně lehké
 +  * řeší se to i třeba [[https://bugs.alpinelinux.org/issues/3503|zde]], reportováno i přímo do [[https://issues.asterisk.org/jira/browse/ASTERISK-24515|asterisk]]
 +  * je tam i [[https://issues.asterisk.org/jira/browse/ASTERISK-24515?devStatusDetailDialog=repository|patch]], který to řeší :D Akorát vůbec nechápu, proč to není v té verzi 13.15.0, která je novější než ten patch :) Půjde vůbec aplikovat?
 +  * ten patch byl vytvořen asi pro nějakou 14.x verzi a oficiálně bude nejspíš až v 15.x. Backport se pravděpodobně dělat nebude, protože je to velký zásah.
 +  * můžu zkusit ten patch aplikovat, ale spíš bych měl přejít na 11.x LTS, který tím není dotčeno
 +  * aha... tak v 11.x je ten problém taky :D
  
 ===== Boot po síti ===== ===== Boot po síti =====
Řádek 413: Řádek 525:
     * MikroTik RouterBoard with >= 128 MB NAND flash     * MikroTik RouterBoard with >= 128 MB NAND flash
  
-===== Modifikace rootfs ===== 
- 
-<code> 
-scripts/feeds install tcpdump nmap lighttpd aircrack-ng iftop php7 asterisk13 asterisk11 
-</code> 
- 
-  * překompilování jednoho balíčku 
- 
-<code> 
-make package/feeds/telephony/asterisk-11.x/compile // alternativně make package/asterisk-11.x/compile 
-make package/install 
-make package/index 
-</code> 
- 
-  * n2n 
- 
-<code> 
-ls -la package/feeds/custompkgs/ 
-celkem 8 
-drwxr-xr-x 2 djbuldog djbuldog 4096 úno 26 17:05 . 
-drwxr-xr-x 6 djbuldog djbuldog 4096 úno 26 21:50 .. 
-lrwxrwxrwx 1 djbuldog djbuldog   29 úno 26 17:05 n2n -> ../../../feeds/custompkgs/n2n 
-</code> 
-==== Problémy ==== 
- 
-=== chybějící libedit === 
- 
-  * pro kompilaci asterisk13 bylo potřeba explicitně přidat 
- 
-<code> 
-scripts/feeds install libedit 
-</code> 
- 
-=== chybějící libxml2 === 
- 
-  * nelze přeložit Asterisk13x balíček, problém s libxml2 
- 
-<code> 
-(cd /home/djbuldog/Projekty/embedded/rb435g/LEDE/build_dir/target-mips_24kc_musl/asterisk-13.9.1/menuselect; ./bootstrap.sh; ./configure  --without-newt --without-curses --with-ncurses="/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr" --with-libxml2="/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr" LDFLAGS="-L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/lib -L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr/lib -L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/lib -L/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/lib -lxml2" CFLAGS="-O2 -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/usr/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/include -I/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/include/libxml2" ); 
-Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/bin/automake line 3938. 
-Generating the configure script .. 
-... 
-checking for xml2-config... /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/target-mips_24kc_musl/host/bin/xml2-config 
-configure: error: Could not find required 'Libxml2' development package 
-Makefile:279: recipe for target '/home/djbuldog/Projekty/embedded/rb435g/LEDE/build_dir/target-mips_24kc_musl/asterisk-13.9.1/.configured_yyyyyy' failed 
-</code> 
- 
-  * v configure se spouštěl test na include libxml souborů, který selhal protože hledal ve špatné cestě 
- 
-<code> 
-strace -F -f -e open gcc ... 
-[pid 19198] open("/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/host/include/libxml/tree.h", O_RDONLY|O_NOCTTY) = -1 ENOENT (No such file or directory) 
-[pid 19198] open("/home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include/libxml/tree.h", O_RDONLY|O_NOCTTY) = -1 ENOENT (No such file or directory) 
-.. 
-conftest.c:32:27: fatal error: libxml/tree.h: No such file or directory 
-   #include <libxml/tree.h> 
-                           ^ 
-compilation terminated. 
-</code> 
- 
-  * soubory jsou ve skutečnosti v adresářích 
- 
-<code> 
-/staging_dir/hostpkg/include/libxml2/libxml/tree.h 
-/staging_dir/target-mips_24kc_musl/usr/include/libxml2/libxml/tree.h 
-</code> 
- 
-  * oprava provedena následovně: 
- 
-<code> 
-ln -s /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include/libxml2/libxml /home/djbuldog/Projekty/embedded/rb435g/LEDE/staging_dir/hostpkg/include/ 
-</code> 
- 
-=== nelze zavést pjsip.so === 
- 
-  * po instalaci asterisk nefunguje zavádění chan_pjsip.so 
-  * nejspíš to nejde kvůli [[https://github.com/openwrt/telephony/issues/142|chybějícímu modulu res_pjproject.so]] 
-  * píše se o tom i [[https://community.asterisk.org/t/error-loading-module-res-pjsip-so/69161/2|zde]] - že je potřeba načítat moduly ve správném pořadí 
- 
-<code> 
-scp djbuldog@10.10.11.2:/home/djbuldog/Projekty/embedded/rb435g/LEDE/build_dir/target-mips_24kc_musl/asterisk-13.9.1/ipkg-install/ 
-usr/lib/asterisk/modules/res_pjproject.so /usr/lib/asterisk/modules/ 
-scp djbuldog@10.10.11.2:/home/djbuldog/Projekty/embedded/rb435g/LED 
-E/build_dir/target-mips_24kc_musl/asterisk-13.9.1/ipkg-install/etc/asterisk/pjpr 
-oject.conf  /etc/asterisk/pjproject.conf 
-</code> 
- 
-  * aha tak to nepomohlo :D .. co tohle? https://issues.asterisk.org/jira/browse/ASTERISK-26518 
-    * to nepomohlo.. ten patch nejde nějak vůbec aplikovat :D 
- 
-  * zkusil jsem git update a dostal jsem se na verzi 13.15.0 
-  * ani v ní ten pjsip nefungoval 
-  * zkusil jsem ale místo něj ten obyčejný chan-sip a ten funguje :) 
- 
-=== nefunkční tls === 
- 
-  * zkusil jsem zreplikovat na čistým LEDE 17.01.1 x86_64 
-  * do /etc/asterisk/sip.conf jsem přidal akorát ''register => tls:%%//%%xxxxx:yyyyyyyy@sip.odorik.cz:6689'' 
-  * balíčky pouze: ''asterisk13 asterisk13-chan-sip asterisk13-cdr'' 
- 
-<code> 
-[May 12 19:34:01] WARNING[23982]: tcptls.c:731 handle_tcptls_connection: FILE * open failed! 
-[May 12 19:34:01] ERROR[23982]: tcptls.c:734 handle_tcptls_connection: Attempted a TLS connection without OpenSSL support. This will not work! 
-</code> 
- 
-  * zjistil jsem, že není nastaveno makro ''DO_SSL'' 
-  * toto makro se definuje pokud platí: ''if defined(HAVE_OPENSSL) && (defined(HAVE_FUNOPEN) || defined(HAVE_FOPENCOOKIE))'' 
-  * přes config.log a autoconfig.h jsem ověřil, že chybí makro HAVE_FUNOPEN (BSD) nebo HAVE_FOPENCOOKIE (glibc) 
-  * dočetl jsem se, že musl tyto funkce neimplementuje 
-  * jediné řešení je tedy asi přejít na glibc místo musl, protože přepisovat to by nebylo úplně lehké 
-  * řeší se to i třeba [[https://bugs.alpinelinux.org/issues/3503|zde]], reportováno i přímo do [[https://issues.asterisk.org/jira/browse/ASTERISK-24515|asterisk]] 
-  * je tam i [[https://issues.asterisk.org/jira/browse/ASTERISK-24515?devStatusDetailDialog=repository|patch]], který to řeší :D Akorát vůbec nechápu, proč to není v té verzi 13.15.0, která je novější než ten patch :) Půjde vůbec aplikovat? 
-  * ten patch byl vytvořen asi pro nějakou 14.x verzi a oficiálně bude nejspíš až v 15.x. Backport se pravděpodobně dělat nebude, protože je to velký zásah. 
-  * můžu zkusit ten patch aplikovat, ale spíš bych měl přejít na 11.x LTS, který tím není dotčeno 
-  * aha... tak v 11.x je ten problém taky :D 
  
 ===== Extroot ===== ===== Extroot =====
  
-  * https://lede-project.org/docs/user-guide/extroot_configuration+  * https://openwrt.org/docs/guide-user/additional-software/extroot_configuration
   * doporučuje se pivot-overlay místo pivot-root   * doporučuje se pivot-overlay místo pivot-root
   * rozdíl je asi jen v tom, co uvedu do /etc/config/fstab souboru.. jestli target /overlay nebo /   * rozdíl je asi jen v tom, co uvedu do /etc/config/fstab souboru.. jestli target /overlay nebo /
Řádek 701: Řádek 698:
     * ''opkg upgrade $(opkg list-upgradable | awk '($1 !~ "^kmod|Multiple") {print $1}')''     * ''opkg upgrade $(opkg list-upgradable | awk '($1 !~ "^kmod|Multiple") {print $1}')''
   * pokud se měnil kernel, musí se extroot vytvořit prý znovu   * pokud se měnil kernel, musí se extroot vytvořit prý znovu
-    * spustit /mnt/data/restore.sh /mnt/data/backup/YYYYmmdd /mnt/new-overlay +    * připojit si /mnt/data partition (sda2) 
-    * odkomentovat extern9 overlay+    * připojit si /tmp/new-overlay (sda1) 
 +    * zkontrolovat, ze funguje opkg update 
 +    * spustit /mnt/data/restore.sh /mnt/data/backup/YYYYmmdd /tmp/new-overlay 
 +    * odkomentovat externí overlay
     * reboot     * reboot
  
   * [[http://wiki.mbirth.de/know-how/software/openwrt/sysupgrade-with-extroot.html|zdroj inspirace]]   * [[http://wiki.mbirth.de/know-how/software/openwrt/sysupgrade-with-extroot.html|zdroj inspirace]]
  
rb435g.1509227471.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki