Хотелось бы отметить несколько моментов, которые я как нуб открыл для себя лично.
1. "Встроенный " tar и tar, установленный через "opkg install tar" работают по-разному. Как минимум, в первом нет ключей "--exclude"
Дальнейшее относится к отдельно устанавливаемому tar-у.
2.
Команда вида
tar cvzf /opt/opkg_backup.tar.gz -C /opt
работать не будет. Сработает либо
tar cvzf /opt/opkg_backup.tar.gz /opt
либо
tar cvzf /opt/opkg_backup.tar.gz -C /opt .
Важна точка на конце.
Их различие прекрасно разжёвано тут:
Для случая, если мы хотим восстановить бэкап через автоматическую распаковку архива из папки install, нам подходит только команда, оканчивающаяся на "-C /opt ."
3. В случае использования ключей --exclude вариант, который заработал через скрипт, имеет такой вид:
tar --exclude=var/run/* cvzf /opt/opkg_backup.tar.gz -C /opt .
При такой команде "/opt/var/run" войдёт в архив, но пустая. Если ввести "--exclude=var/run" - папки "run" вовсе не будет. Если ввести "--exclude=/opt/var/run/*" или "--exclude=/opt/var/run" - ключ "--exclude" не сработает.