Быстрый поиск в вики OpenWrt под Das U -Boot Environment...
"Das U-Boot uses a small amount of space on the flash storage usually on the same partition it is stored on to store some important configuration parameters."
конкретно...
bootargs: The contents of this variable are passed to the Linux kernel as boot arguments (aka "command line").
С некоторыми предположениями, но вы должны иметь возможность редактировать этот файл конфигурации из работающего ядра. Возможно, потребуется найти раздел u -boot и файл конфигурации, и смонтировать его R/W. Кроме того, вы также должны иметь возможность редактировать этот файл конфигурации из командной строки загрузки u -, только один раз, если вы сохраните переменную с помощью saveenv
.
set
screen
в автономном режимеcase... esac
для создания сценария запуска/остановки. Может быть, что-то вроде этого:
#!/bin/bash
start(){
status # Print IP before connection
set -- /etc/openvpn/ovpn_tcp/*.nordvpn.com.tcp.ovpn
shift $(( RANDOM % $# ))
screen -S vpn -dm openvpn "$1" # connect
sleep 5 # wait for connection
status # Print IP after connection
}
stop(){
screen -S vpn -X quit
pkill -f ovpn
}
status(){
printf 'IP: %s\n' "$(curl -s ifconfig.co)"
}
case "$1" in
start)
if screen -ls | grep -w vpn; then
echo "Vpn already connected";
status
else
start
fi
;;
stop)
stop
;;
*)
status
;;
esac
, а затем вы можете добавить это как псевдоним:
alias vpn='bash /etc/openvpn/ovpn_tcp/go'
Использование:
# Start connection
vpn start
# Stop connection
vpn stop
# get status
vpn
В качестве альтернативы псевдониму вы можете поместить скрипт в свой ~/bin
, сделать его исполняемым и добавить этот каталог в свой $PATH
.