Linux: Как установить определенную версию пакета на Ubuntu/Debian

Иногда бывает, что нужно установить определенную версию пакета для вашей ОС, например в целях тестирования или для совместимости ПО и компонентов той или иной программы. Использования всевозможных версия одного и того же пакета, крайне полезная вещь, особенно для серверных систем и разработки ПО или ИС, где крайне важна стабильность системы. Установку версий пакетов рассмотрим на примере Firefox.

Прежде всего, необходимо проверить версию текущего установленного пакета и всех доступных версий для установки, и сделать это можно с помощью команды apt-cache:
apt-cache policy firefox

apt-cache policy firefox
firefox:
  Installed: 58.0.2+build1-0ubuntu0.16.04.1 # Установленная версия пакета
  Candidate: 58.0.2+build1-0ubuntu0.16.04.1
  Version table: # Список доступных версий для установки
 *** 58.0.2+build1-0ubuntu0.16.04.1 500
        500 http://ru.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages
        100 /var/lib/dpkg/status
     45.0.2+build1-0ubuntu1 500
        500 http://ru.archive.ubuntu.com/ubuntu xenial/main amd64 Packages


Например, для установки Firefox 45.0.2, используем синтаксис:
sudo apt install firefox=45.0.2+build1-0ubuntu1

sudo apt install firefox=45.0.2+build1-0ubuntu1
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  fonts-lyx
The following packages will be DOWNGRADED:
  firefox
0 upgraded, 0 newly installed, 1 downgraded, 0 to remove and 0 not upgraded.
Need to get 43.2 MB of archives.
After this operation, 68.5 MB disk space will be freed.
Do you want to continue? [Y/n]


Если у вас уже установлена более новая версия пакета, вы можете удалить ее и установить ту версию, которую хотите:
sudo apt remove firefox
sudo apt install firefox=45.0.2+build1-0ubuntu1


Более подробную можно найти в документации к пакетам apt и apt-cache:
man apt
man apt-cache