Update Manager keeps packages at the latest version, but occasionally a new package version may not work as expected or properly. How to downgrade an installed package and lock it at a specific version to prevent it from being updated? How can I do this using GUI or using a Terminal?
2 Answers
In GUI - using Synaptic
The Ubuntu Software Center’s simplified interface doesn’t offer the option to downgrade packages. Synaptic, a more advanced graphical package manager interface that Ubuntu used to include, offers this option. To downgrade a package graphically, first install the Synaptic application:
After you done this, open the Synaptic Package Manager from the Dash:
Search for the package you want to install an older version of in Synaptic, select it, and use the Package > Force Version option:
Select the version you want to install and click Force Version. Synaptic will only show you versions available in your repositories:
Click the Apply button to apply your changes and install the older version of the package, assuming everything works properly.
After you downgrade the package, select it and use the Package > Lock Version option. If you don’t do this, Ubuntu will try to upgrade the installed package the next time you update your installed packages:
In Terminal – using apt-get
You can install a specific version of a package with apt-get
in the Terminal. First, determine the available versions you can install with the following command (use for packagename the name of the program that you want to downgrade):
apt-cache showpkg [packagename]
Next, run the apt-get install command and specify the package version you want to install (use for version the version number previously determined of the program that you want to downgrade):
sudo apt-get install [packagename]=[version]
After it’s installed, run the following command to hold your installed version, preventing the package manager from automatically updating it in the future:
sudo echo "[packagename] hold" | sudo dpkg --set-selections
Source: http://www.howtogeek.com/117929/how-to-downgrade-packages-on-ubuntu/

- 15,826

- 169,590
-
4if you based your answer on this site http://www.howtogeek.com/117929/how-to-downgrade-packages-on-ubuntu/ please provide source link. I don't think howtogeek will mind but they sure need the proper source link so they can get the credit. – Luis Alvarado May 10 '13 at 21:52
-
When I tried to do this I got into all kinds of problems with unmet dependencies. I found it better to use aptitude as this resolved all the dependencies e.g. sudo aptitude install smbclient=2:4.1.6+dfsg-1ubuntu2 . See http://askubuntu.com/questions/770789/how-to-downgrade-smbclient – Lance Holland May 12 '16 at 09:40
Another possibility:
Lets find the archived package on http://packages.ubuntu.com/:
For example downgrading php5 :
Search:
Found an exact hit lets look at the package page for php5 :
We can see the different versions of Ubuntu releases here we are at trusty:
Lets switch to version that ran php (5.3) ... 12.04 (precise) for example:
download the tar.gz
And then extract the tar file and install it:
cd /path/to/download
tar -xzvf name_of_package
cd name_of_extracted_folder
./configure
make
sudo make install
Possible issues that one could run into when running ./configure
:
- Missing dependencies ( had to install
libxm2-dev
):
Issues running make
:
- errors while compiling could include flags not being set properly, or issues with the code itself.
- A bunch of garbage when compiling, and then some issue in the code?
- In my case i had to find the up to date source files/tarball for php ( http://php.net/downloads.php )
- and retry extraction and make