использую только wget, не нужна release версия, нужна только версия:
wget -e robots=off -nd -r --no-parent -A 'VirtualBox-5.0.6-*-Linux_amd64.run' http://download.virtualbox.org/virtualbox/5.0.6/
wget поддерживает globing в рекурсивном режиме как часть шаблона accept, поэтому:
-r
: рекурсивная загрузка--no-parent
: не рекурсировать в ...
-A 'VirtualBox-5.0.6-*-Linux_amd64.run'
: использовать шаблон принятия с glob-e robots=off
: не загружать robots. txt-nd
: не создавайте локально подкаталогов
Использование переменной окружения для версии, конечно, возможно:
VER=5.0.6
wget -e robots=off -nd -r --no-parent -A "VirtualBox-${VER}-*-Linux_amd64.run" http://download.virtualbox.org/virtualbox/${VER}/
VER может быть получен из http://download.virtualbox.org/virtualbox/LATEST.TXT, так что это становится:
VER=$(wget -O - http://download.virtualbox.org/virtualbox/LATEST.TXT)
wget -e robots=off -nd -r --no-parent -A "VirtualBox-${VER}-*-Linux_amd64.run" http://download.virtualbox.org/virtualbox/${VER}/
Или используйте curl или lynx для извлечения информации о версии...
При использовании в скрипте cron, вы можете приравнять ver каждый день к локальной ver env var (wget к NEWVER) и загружать только когда NEWVER отличается от текущей VER
У вас смешанный список источников :Jessie и ascii (stretch ).
Удалить ascii из вашегоsources.list
Удалите следующие строки из файла preferences
:
Package: *
Pin: release a=ascii
Pin-Priority: 550
Выполнить:
apt-get update
apt-get dist-upgrade
Что такое неудовлетворенные зависимости ?
Если во время установки пакета не выполняются некоторые зависимости, установка завершится ошибкой. libgcc1 (1:6.3.0-18+deb9u1)
зависит от конкретной версии gcc-6-base
v= 6.3.0 -18+deb9u1. Текущая установленная версия6.3.0-18
Как устранить неудовлетворенные зависимости?
В вашем случае добавьте приоритет булавки 1001
к старой стабильной версии, это обновит/понизит ваши пакеты до jessie.
Package: *
Pin: release a=jessie-security
Pin-Priority: 1001
Package: *
Pin: release a=stable
Pin-Priority: 1001
Package: *
Pin: release a=jessie-updates
Pin-Priority: 1001
Затем обновите свой пакет.
apt-get update
apt-get dist-upgrade
В некоторых случаях для решения проблемы неудовлетворенных зависимостей следует использовать именно ту версию пакета, которую нужно установить.:
apt-get install gcc-4.9-base=4.9.2-10+deb8u1
apt-get install libgcc1
Почему многие пакеты будут удалены?
apt установить пакет, включая его зависимости, если пакет будет удален, этот пакет станет ненужным и будет автоматически удален.
APT сообщает, какие пакеты больше не нужны
Over time, some of those automatically installed packages become unnecessary because the packages that depended on them no longer do. It might be that they are using a newer version of the same library, or they switched to use something else, or they are able to do the task themselves.
Чтобы обновить devuan до ascii, отредактируйте /etc/apt/sources.list
, добавив только следующие строки:
deb http://pkgmaster.devuan.org/merged ascii main
deb http://pkgmaster.devuan.org/merged ascii-updates main
deb http://pkgmaster.devuan.org/merged ascii-security main
deb http://pkgmaster.devuan.org/merged ascii-backports main
Удалите файл /etc/apt/preferences
, затем запустите
apt-get upgrade devuan-keyring
apt-get update
apt-get dist-upgrade