24 Listopada 2024 06:54:46
Nawigacja
· Strona Główna
· Forum

· Tomato by Shibby
· FreshTomato


Wątki na forum
Najnowsze dyskusje
· [S] Asus RT-AC56U
· DIR868l OFW asus vs ...
· Szukam zaproszenia n...
· [MOD] FreshTomato-AR...
· Asus RT-AC5300 ,prob...
· archer c6 v3.20
· [S] Nighthawk R7000P...
· [S]Asus RT-AC5300 - ...
· Tanie N100 na promce...
· net z telefonu wifi+...
· Tomato - bugi/proble...
· HUAWEI z światłowodem
· Asus TUF-AX3000_V2 p...
· rt-ax88upro częste ...
· [Howto] Xpenology na...
· Jaki router pod Open...
· Ruter z tomato
· Czy to jeszcze NAS?
· RT AC66U B1
· Wireguard na FreshTo...
Najpopularniejsze obecnie wątki
· DIR868l OFW asus ... [8]
· [S] Asus RT-AC56U [0]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
36% [151 głosów]

Broadcom ARM
Broadcom ARM
52% [219 głosów]

Atheros
Atheros
5% [22 głosów]

Marvell
Marvell
1% [4 głosów]

Ralink
Ralink
1% [3 głosów]

Intel/AMD/VIA
Intel/AMD/VIA
1% [5 głosów]

Żaden z powyższych
Żaden z powyższych
4% [15 głosów]

Ogółem głosów: 419
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38
Twoje IP
18.119.107.159
Zobacz wątek
OpenLinksys » :: PORTAL :: » Tutoriale
 Drukuj wątek
Jak przenieść zmienne NVRAM między routerami??
jack78
Instrukcja: https://openlinksys.info/forum/viewth...ost_156573

Cześć,
wyeksportowałem sobie zmienne z NVRAM do pliku, interesował mnie tylko zmienne:
dhcpd_static
new_qoslimit_rules
portforward
resztę ustawiam ręcznie.

próbuje je teraz wrzucić do nowego routera niestety bez skutków. Ciągle dostaje jakieś błędy

/tmp/.wxhui4zM: line 5: syntax error: unexpected redirection 



Zmienne pochodzą z Tomato 124 i próbuję je wrzucić do Tomato 138. Dodam że kiedyś to już robiłem i wszystko działało, czy coś się zmieniło w Tomato 138 że teraz to nie działa?



Mikrotik hAP ac2
UniFi AP AC v2
-OFW, UniFi AP PRO- OpenWRT,
Linksys E1000v2 - Tomato-RT-N5x-MIPSR2-116-Hyzoom.4M-Mini
Tenda AC10 - AC1200 OFW
NAS - HP Microserver Gen8 i3-3220T, 8GB RAM 5x 3TB WD RED | Xpenology
 
kille72
Skrypt ktory dziala na MIPS i ARM

1. Zapisz skrypt do pliku, np. export.sh lub sciagnij moj plik export.zip


#!/bin/sh

#USE AT YOUR OWN RISK.
#THIS SCRIPT DOES NOT COME WITH ANY WARRANTY WHATSOEVER.
#
#Backs up selected nvram variables in "nvram export --set" format.
#
#Correctly handles multi-line entries.
#
#Thanks to ryzhov_al for basic approach.
#
#Should work equally well with both MIPS and ARM builds.
#
#Looks for a list of items to export in $etc/scriptname.ini
#OR enter items to grep for below.
#
#The items list is a list of regular expressions to match against the
#nvram variable names.
#
#Script assumes all entries are at beginning of line(prefixed with ^).
#
#Leave items list blank to backup up all of nvram.  Resulting in essentially
#the same output as MIPS "nvram export --set"
#
#The items list below is only intended as example and is not complete or
#comprehensive. Customize for your own use.
#

#Edit list below if not using .ini file, it is ignored if .ini file is found

items='
  dhcpd
  wl[0-9]
  ddnsx
  adblock
  wan_hwaddr
  portforward
  smbd
  usb
  vpn_server1
  vpn_client1
  http
  cstats
  rstats
  log_file
  script
  clkfreq
'

etc=/tmp/etc
base=${0##*/}; base=${base%.*}
config=$etc/$base.ini

#file to output - default to stdout
if [ "$1" != "" ] ; then
  backupfile="$1"
else
  backupfile=/proc/$$/fd/1
fi

grepstr=$( { [ -r $config ] && cat $config || echo "$items" ; } | sed -e 's/[\t ]//g;/^$/d' | sed ':a;N;$!ba;s/\n/\\\|\^/g')

{
echo "#Exporting $grepstr"
for item in $(nvram show 2>/dev/null | grep "^.*=" | grep "$grepstr"  | awk -F= "{print \$1}" | sort -u)
do
  item_value="$(nvram get $item | sed 's!\([\$\"\`]\)!\\\1!g' echo nvgetwasnull)"
  case $item_value in
  nvgetwasnull) ;;
  *) echo "nvram set ${item}=\"${item_value%
nvgetwasnull}\"" ;;
  esac
done
}>"$backupfile"


2. Edytuj zmienne ktore chcesz wyeksportowac po items='

Mozna tez uzyc pliku .ini ze zmiennymi, w tym tutku pokazuje tylko jak edytowac zmienne w pliku export.sh.

3. Skopiuj plik export.sh do jakiegos katalogu, w moim przypadku bedzie to /nas/downloads (mozna do /tmp, ale pamietaj ze po restarcie routera pliki znikna)
Nie zapomnijmy o nadaniu uprawnien do uruchomienia +x przez telnet/ssh w katalogu gdzie znajduje sie plik export.sh


chmod +x export.sh


4. EXPORT ZMIENNYCH. W katalogu gdzie znajduje sie plik export.sh wydaj nastepujaca komende:


./export.sh > zmienne.txt

Zmienne z NVRAM zostaly zapisane u mnie do pliku /nas/downloads/zmienne.txt

5. IMPORT ZMIENNYCH:
a) Skopiuj wszystko co sie zaczyna od "nvram set" z pliku zmienne.txt (bez #Exporting...na samej gorze)
b) Wklej zmienne przez ssh/telnet (nie rekomenduje wszystkiego na raz jak masz duzo zmiennych)
c) Ostatnia komenda to


nvram commit

d) Przerestartuj router

Prosze o wasze sugestie. Dzieki za testy Steel_Rat :)

kille72 załączono następujące plik:
Nie masz uprawnień, by zobaczyć załączniki w tym wątku.
 
jack78
Pisałem wczoraj z kolega MONTER, autorem programiku do przenoszenia danych między routerami - http://monter.techlog.pl/files/downlo...ntmigrate/
Skompilował dziś w nocy wersję dla ARM i wszystko działa.
Ale oczywiście Twoją propozycję również przetestuję, ponieważ muszę jakoś przenieść więcej zmiennych niż tylko Static DHCP, z tym że po pracy, bo teraz muszę się już zbieraćSad



Mikrotik hAP ac2
UniFi AP AC v2
-OFW, UniFi AP PRO- OpenWRT,
Linksys E1000v2 - Tomato-RT-N5x-MIPSR2-116-Hyzoom.4M-Mini
Tenda AC10 - AC1200 OFW
NAS - HP Microserver Gen8 i3-3220T, 8GB RAM 5x 3TB WD RED | Xpenology
 
kille72
Dopisalem co mnie interesuje, eksport dziala elegancko.



  dhcpd
  wl[0-9]
  ddnsx
  adblock
  wan_hwaddr
  portforward
  smbd
  usb
  vpn_server1
  vpn_client1
  http
  cstats
  rstats
  log_file
  script
  clkfreq

 
jack78
Co robię źle??
jeśli skopiuje plik export.sh do routera i wydam komendę
./export.sh > zmienne.txt
to dostaję błąd Permission denied
natomiast jeśli plikowi export.sh nadam uprawnienia
chmod +x export.sh
wtedy dostaję błąd ./export.sh not found.

A mimo to każdorazowy jest generowany plik zmienne.txt, tylko że jest pusty.



Mikrotik hAP ac2
UniFi AP AC v2
-OFW, UniFi AP PRO- OpenWRT,
Linksys E1000v2 - Tomato-RT-N5x-MIPSR2-116-Hyzoom.4M-Mini
Tenda AC10 - AC1200 OFW
NAS - HP Microserver Gen8 i3-3220T, 8GB RAM 5x 3TB WD RED | Xpenology
 
kille72
Pokaz wynik ls -la

 
jack78


root@unknown:/tmp# ls -la export.sh
-rwxr-xr-x    1 root     root          1714 Aug  8 20:39 export.sh
root@unknown:/tmp#



Może znaczenie ma to że robię to na tomaro ARM 124, a nie na najnowszym 138

Połączony z 08 sierpień 2016 21:22:27:
Możesz wrzucić tutaj fragment twojego wyeksportowanego pliku zmienne txt??
np fragment odpowiedzialny za portforwarding?
Może na tej podstawie przeedytuje sobie pliki które posiadam i uda mi sie to ręcznie przenieść.


Edytowany przez jack78 dnia 08-08-2016 21:22

Mikrotik hAP ac2
UniFi AP AC v2
-OFW, UniFi AP PRO- OpenWRT,
Linksys E1000v2 - Tomato-RT-N5x-MIPSR2-116-Hyzoom.4M-Mini
Tenda AC10 - AC1200 OFW
NAS - HP Microserver Gen8 i3-3220T, 8GB RAM 5x 3TB WD RED | Xpenology
 
kille72

#!/bin/sh

items='
  portforward 
'

etc=/tmp/etc
base=${0##*/}; base=${base%.*}
config=$etc/$base.ini

#file to output - default to stdout
if [ "$1" != "" ] ; then
  backupfile="$1"
else
  backupfile=/proc/$$/fd/1
fi

grepstr=$( { [ -r $config ] && cat $config || echo "$items" ; } | sed -e 's/[\t ]//g;/^$/d' | sed ':a;N;$!ba;s/\n/\\\|\^/g')

{
echo "#Exporting $grepstr"
for item in $(nvram show 2>/dev/null | grep "^.*=" | grep "$grepstr"  | awk -F= "{print \$1}" | sort -u)
do
  item_value="$(nvram get $item | sed 's!\([\$\"\`]\)!\\\1!g' echo nvgetwasnull)"
  case $item_value in
  nvgetwasnull) ;;
  *) echo "nvram set ${item}=\"${item_value%
nvgetwasnull}\"" ;;
  esac
done
}>"$backupfile"



./export.sh > zmienne.txt



#Exporting portforward
nvram set ipv6_portforward=""
nvram set portforward="1<3<<40101<<192.168.1.101"

 
jack78
Coś jest nie tak.
Nawet jak próbuję wrzucić Twoją zmienną do routera to dostaję błąd: /tmp/.wxwdwQRi: line 5: syntax error: unterminated quoted string

Wrzucę jutro jakąs starszą wersję softu i jeszcze raz próbuję, może w Tomato 138 jest coś nie tak.

Połączony z 09 sierpień 2016 21:47:23:
Próbowałem 132 NOSMP i zwykłą, 138 również obie, na żadnej nie działa komenda


nvram set

więc nie możliwe jest przeniesienie tych danych w ten sposób.
Widocznie w ARM zmiany były na tyle głębokie że taki sposób przenoszenia danych nie działa.


Edytowany przez jack78 dnia 09-08-2016 21:47

Mikrotik hAP ac2
UniFi AP AC v2
-OFW, UniFi AP PRO- OpenWRT,
Linksys E1000v2 - Tomato-RT-N5x-MIPSR2-116-Hyzoom.4M-Mini
Tenda AC10 - AC1200 OFW
NAS - HP Microserver Gen8 i3-3220T, 8GB RAM 5x 3TB WD RED | Xpenology
 
kille72
OK! Juz wiem jaki masz problem!

s10.postimg.org/tps2atqnd/Selection_004.png

Brakowalo ", poprawilem, sorry!

Ma byc

nvram set portforward="1<3<<40101<<192.168.1.101[color=#ff0000]"[/color]

 
jack78
No faktycznie, teraz się importuje.
Nadal nie mogę wyeksportować Twoją metodą, ale to nie problem, bo robię to w inny sposób.



Mikrotik hAP ac2
UniFi AP AC v2
-OFW, UniFi AP PRO- OpenWRT,
Linksys E1000v2 - Tomato-RT-N5x-MIPSR2-116-Hyzoom.4M-Mini
Tenda AC10 - AC1200 OFW
NAS - HP Microserver Gen8 i3-3220T, 8GB RAM 5x 3TB WD RED | Xpenology
 
kille72
Musi dzialac, testowane przez pare osob.

Połączony z 22 sierpień 2016 00:47:23:
Dzis bylem zmuszony do wyczyszczenia NVRAM po testach VLAN, wytestowalem wiec skrypt, export i import zmiennych. Po 15 minutach mialem wszystko ustawione! Jedyne czego zapomnialem wyeksportowac to Wireless Channel oraz Wireless Channel Width. I like!

 
ovner
@kille72 wałkuje skrypt który podałeś, ale borykam się z tym samym problemem co jack78 mianowicie

[root@apek opt]$ ./export.sh > txt.txt
-sh: ./export.sh: not found
[root@apek opt]$ export.sh > txt.txt
-sh: export.sh: not found
[root@apek opt]$ ls -la export.sh
-rwxr--r--    1 root     root          1639 Nov 19 21:46 export.sh
 

wyeksportowałem sobie ręcznie to co potrzebuje, ale mam problem z zmienną script_init po po wyeksportowaniu

dostaje tylko pierwszą linijkę

brakuje całej reszty eksporty ścieżek, montowania, bcm_nat itp
Kolejna rzecz to po czysczeniu nvramu i imporcie np


nvram set wl0_security_mode="wpa2_personal"
nvram set wl0_wpa_psk="qparka"
nvram set wl0_crypto="tkip+aes"
nvram set wl0_channel="6"
nvram set wl0_country_code="SG"
nvram set wl0_ssid="Home"
nvram set wl0_nctrlsb="lower"
nvram commit

po reboocie routera w basic jest ustawione szyfrowanie, ale sieć jest otwarta jak po czyszczeniu nvramu i dopiero ręczne kliknięcie w Save włącza szyfrowanie.


TUF-AX5400 @ Firmware:388.1_0-gnuton1
RT-N16 @ FreshTomato Firmware 2023.3 MIPSR2 K26 USB VPN + Huawei e3372 no-hilink
www.speedtest.net/result/14587008641.png
 
kille72
Hmm...nie rozumiem dlaczego, nie tylko u mnie dziala:


root@Asus:/nas/downloads# ls -la
drwxr-xr-x    3 root     root          4096 Nov 14 15:49 .
drwxr-xr-x    7 root     root          4096 Aug 31 21:40 ..
-rwxr--r--    1 root     root          1724 Sep  4 23:20 export.sh
drwxr-xr-x    4 root     root          4096 Nov  9 15:22 tomato-arm-kille72
root@Asus:/nas/downloads# ./export.sh > zmienne.txt
root@Asus:/nas/downloads# ls -la
drwxr-xr-x    3 root     root          4096 Nov 19 22:20 .
drwxr-xr-x    7 root     root          4096 Aug 31 21:40 ..
-rwxr--r--    1 root     root          1724 Sep  4 23:20 export.sh
drwxr-xr-x    4 root     root          4096 Nov  9 15:22 tomato-arm-kille72
-rw-r--r--    1 root     root         17320 Nov 19 22:20 zmienne.txt


Połączony z 19 listopad 2016 22:41:10:
Zalogowalem sie do routera znajomego i stworzylem plik export.sh w JFFS, dostalem Permission denied za 1 razem ale po chmod +x export.sh wszystko poszlo bez problemu.

script_init tez elegancko wyeksportowalo:


> /var/run/firstrun
echo \"LABEL=opt /opt ext4 defaults 0 1\" >> /etc/fstab
echo \"LABEL=nas /nas ext4 defaults 0 1\" >> /etc/fstab
fi"

 
ovner


[root@apek tmp]$ chmod -x export.sh
[root@apek tmp]$ ./export.sh > zrzut.txt
-sh: ./export.sh: Permission denied
[root@apek tmp]$ ls -ls export.sh
     4 ----------    1 root     root          1802 Nov 19 21:12 export.sh
[root@apek tmp]$ chmod +x export.sh
[root@apek tmp]$ ls -ls export.sh
     4 ---x--x--x    1 root     root          1802 Nov 19 21:12 export.sh
[root@apek tmp]$ ./export.sh > zrzut.txt
-sh: ./export.sh: not found
[root@apek tmp]$

chmod -x Permission denied
chmod +x not found :@
chyba jutro kolejne czyszczenie nvram i się pobawie. Btw tomato v132.


TUF-AX5400 @ Firmware:388.1_0-gnuton1
RT-N16 @ FreshTomato Firmware 2023.3 MIPSR2 K26 USB VPN + Huawei e3372 no-hilink
www.speedtest.net/result/14587008641.png
 
kille72
Daj mu (Everyone can read write and execute)

chmod 777 export.sh

 
ovner


[root@apek jffs]$ chmod 777 export.sh
[root@apek jffs]$ ls -ls export.sh
     2 -rwxrwxrwx    1 root     root          1802 Nov 19 21:12 export.sh
[root@apek jffs]$ ./export.sh > zrzut.t
-sh: ./export.sh: not found
[root@apek jffs]$ ls
export.sh        zrzut.t
[root@apek jffs]$

NC


TUF-AX5400 @ Firmware:388.1_0-gnuton1
RT-N16 @ FreshTomato Firmware 2023.3 MIPSR2 K26 USB VPN + Huawei e3372 no-hilink
www.speedtest.net/result/14587008641.png
 
kille72
@Steel_Rat: Pokaz jak to wyglada u Ciebie prosze.

 
Steel_Rat
Nie wiem o co chodzi ale u mnie działa Smile


WRT3200ACN (WRT32X) + OpenWRT 18.06+światełko 150/150 Mb/s
Asus RT-AC68UvE1 + RMerlin + Entware
Netgear WNR3500Lv2 + DDWRT
 
ovner
Wyczyściłem nvram i nadal not found
W ramach testów potwierdziłem

Cytat

ovner napisał(a):
po reboocie routera w basic jest ustawione szyfrowanie, ale sieć jest otwarta jak po czyszczeniu nvramu i dopiero ręczne kliknięcie w Save włącza szyfrowanie.

Na wyższych wersjach nie testowałem bo mam problem z połączeniem drukarki z kompem po wi-fi (niestety winne tomato Frown ) czekam na nową wersję.


TUF-AX5400 @ Firmware:388.1_0-gnuton1
RT-N16 @ FreshTomato Firmware 2023.3 MIPSR2 K26 USB VPN + Huawei e3372 no-hilink
www.speedtest.net/result/14587008641.png
 
Przejdź do forum
Zaloguj
Wprowadź adres e-mail lub nazwę użytkownika

Hasło



Nie masz jeszcze konta? Zarejestruj się.

Zapomniałeś/aś hasła?
Aktualnie online
· Gości online: 90

· Użytkowników online: 0

· Łącznie użytkowników: 24,115
· Najnowszy użytkownik: Ja
Czat
Musisz się zalogować, aby opublikować wiadomość.

Maniek91PL
06-11-2024 22:37
dzięki !Grin

maxikaaz
29-10-2024 14:27
@Maniek91PL - Administration=> Admin Access, i tam masz "Allow Wireless Access" do zaznaczenia

Maniek91PL
26-10-2024 22:07
siemka! ktoś przypomni co się ustawiało jeśli nie mogę wejść od strony wifi do tomato? od lan działa

overflow2
04-10-2024 17:34
Kupowałem Asusy n10u albo n12d1 ale nie widzę ich, chyba już nie produkują, Chodzi o coś nowego i taniego. Transfery niewielkie.

maxikaaz
04-10-2024 09:38
@overflow2 patrząc po dostępności funkcji w nowych kompilacjach, to chyba nawet WRT54G/GL jeszcze ma OpenVPN, albo jakiś odpowiednik... zależy, na jakie transfery liczysz.

overflow2
30-09-2024 20:53
Jaki aktualnie najtańszy router do tomato do openvpn?

maxikaaz
27-07-2024 15:07
@servee - na początek router do rozebrania i obejrzenia, ciężko wróżyć tak tylko po objawach

maxikaaz
27-07-2024 14:55
@servee - cały kontroler nie pada tak sobie z powodu "zbiegu okoliczności",
więc prawdopodobnie gdzieś przepięcie.

servee
25-07-2024 13:33
@maxikaaz: działało, aż pewnego pięknego dnia przestało działać. W tym dniu była też burza, ale to raczej zbieg okoliczności.

maxikaaz
25-07-2024 11:38
@servee - o ile problem jest w obrębie samych wyjść (dławiki, warystory), to naprawialne, ale jeśli w samym SoC - to nienaprawialne ze względu na koszta. A co było przyczyną?

95,536,798 unikalnych wizyt