How to install specific version of some package? [duplicate]

Solution 1:

How to know the version of installed package?

apt-cache policy <package name>

The above command will shows installed package version and also all the available versions in the repository according to the version of Ubuntu in which you are running.It doesn't display the package version which was intended for another version of Ubuntu(not your's).

Example:

$ apt-cache policy gparted
gparted:
  Installed: 0.16.1-1
  Candidate: 0.16.1-1
  Version table:
 *** 0.16.1-1 0
        500 http://ubuntu.inode.at/ubuntu/ saucy/main amd64 Packages
        100 /var/lib/dpkg/status

So the installed gparted version is 0.16.1-1.

How to install a specific package version?

sudo apt-get install <package name>=<version>

Example:

$ sudo apt-get install gparted=0.16.1-1
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gparted is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 265 not upgraded.

Solution 2:

There is no general way to check the version of installed packages, but most of them can be checked using the command:

command -v 

for example to know the version of apache2:

apache2 -v

But this may not work with other packages so the best practice is to search the manual.

man XXX

and search for the option of showing the version.

To install a specific version of a package:

sudo apt-get install package=version

For example:

sudo apt-get install apache2=2.3.35-4ubuntu1