I have seen it before. I am just wondering what exactly does it do?
In a nutshell,
apt-get update doesn't actually install new versions of software. Instead, it updates the package lists for upgrades for packages that need upgrading, as well as new packages that have just come to the repositories.
apt-get updatedownloads the package lists from the repositories and "updates" them to get information on the newest versions of packages and their dependencies. It will do this for all repositories and PPAs. From http://linux.die.net/man/8/apt-get:
Used to re-synchronize the package index files from their sources. The indexes of available packages are fetched from the location(s) specified in
/etc/apt/sources.list(5). An update should always be performed before an upgrade or dist-upgrade.
apt-get upgradewill fetch new versions of packages existing on the machine if APT knows about these new versions by way of
Used to install the newest versions of all packages currently installed on the system from the sources enumerated in
/etc/apt/sources.list(5). Packages currently installed with new versions available are retrieved and upgraded; under no circumstances are currently installed packages removed, nor are packages that are not already installed retrieved and installed. New versions of currently installed packages that cannot be upgraded without changing the install status of another package will be left at their current version. [Emphasis mine] An update must be performed first so that apt-get knows that new versions of packages are available.
apt-get dist-upgradewill do the same job which is done by
apt-get upgrade, plus it will also intelligently handle the dependencies, so it might remove obsolete packages or add new ones. See here: What is "dist-upgrade" and why does it upgrade more than "upgrade"?
In addition to performing the function of upgrade, this option also intelligently handles changing dependencies with new versions of packages; apt-get has a "smart" conflict resolution system, and it will attempt to upgrade the most important packages at the expense of less important ones, if necessary. The
/etc/apt/sources.list(5) file contains a list of locations from which to retrieve desired package files. See also apt_preferences(5) for a mechanism for over-riding the general settings for individual packages.
You can combine commands with
&& as follows:
sudo apt-get update && sudo apt-get install foo bar baz foo-dev foo-dbg
or to get newest versions possible as per version requirements of dependencies:
sudo apt-get update && sudo apt-get dist-upgrade
sudo both times, but since
sudo by default doesn't prompt you within 5 or so minutes since the last
sudo operation, you will be prompted for your password only once (or not at all).
apt-get install PACKAGE_NAME
Is the command used to install any package you know the name for, like
sudo is used to earn root access and be able to install and remove software.
sudo is always required if you do system wide changes like installing, removing, updating and upgrading packages.
Is the command used to manage any software and software sources. install is an extra command that tells the computer that you want to install software with the package name as follows. It will then check the software sources for a download link with the same name and then download and install the latest version (or specified version).
will update the sofware sources with new versions of the software listed (not installing anything)
upgrades the software if new versions are available in the software sources.
removes the package name specified after (like install).
there are more useful commands, but these are necessary for getting started with managing software from the terminal.
After more research on aptitude i found out that it's already installed. So installing aptitude wouldn't resolve in anything besides errors in the conosle. Start aptitude by:
aptitude package is a GUI version of the
apt-get command, it hasn't got the full set of features as apt-get but you have the basics like,
install, etc. More information about
aptitude and it features can be found here.
Also search in the software center if you want o use a GUI to find and install/uninstall applications.