Services - Ubuntu: Questions and Answers (2014)

Ubuntu: Questions and Answers (2014)

Services

Skip to questions, Wiki by user hexafraction

Daemons are programs that run in the background and either service requests or poll for various environment indicators, and then act accordingly. Once a request is received, it may be queued up or forked to run in a different thread or process. Daemons are often started via Upstart or init, which are started by the kernel in early startup.

The service command will run init scripts in /etc/init.d with a command. Usually, it is status, start, stop, or reload. Upstart (which provides Ubuntu's init) is in charge of managing these daemons automatically.

Daemons are also called services (especially in a Windows context, where the term "daemon" is rarely if ever used), but should not be confused with the concepts of online services, services in systems architecture, nor (though related) "software as a service".


Questions

Q: What's the difference between "Service" and "/etc/init.d/"?

Tags: services (Next Q)

I've been managing server installations both on and off Ubuntu flavor for some time - I've become quite adjusted to /etc/init.d/ for restarting servcies. Now I get this message:

root@tatooine:~# /etc/init.d/mysql status

Rather than invoking init scripts through /etc/init.d, use the service(8)

utility, e.g. service mysql status

Since the script you are attempting to invoke has been converted to an

Upstart job, you may also use the status(8) utility, e.g. status mysql

mysql start/running, process 14048

This seems to have been brought about in the latest LTS of Ubuntu - why? What's so bad about /etc/init.d/ and what/is there a difference between service and /etc/init.d/?

Tags: services (Next Q)

User: marco-ceppi


Answer by txwikinger

/etc/init.d scripts are the old way of doing things. They come from the System V standard. However, those scripts are fired only in a particular sequence, no real dependencies can be established.

Therefore, upstart has been developed with the intent to substitute all the /etc/init.d scripts with upstart scripts (in /etc/init).

service allows the smooth transition from /etc/init.d scripts to upstart scripts. When in the future more on more scripts are transferred to upstart, service will still work, because it finds both possibilties.

· What's the recommended way to enable / disable services?


Answer by joe-marty

Also check the man page for the service command: man service

service runs a script in a predictable environment (working directory is / and only 2 environment variables are set: LANG and TERM). It also adds the ability to do --full-restart. So to sum up:

1. service may run scripts from either /etc/init or /etc/init.d (upstart or System V)

2. service runs scripts in a predictable environment.

The "predictable environment" aspect can cause you problems if your script depends on an environment variable for some reason. There is probably a way to get around that, but I don't know what it is, and that's beyond the scope of this question :)


Tags: services (Next Q)


Q: How can I configure a service to run at startup

Tags: services (Next Q), autostart (Next Q)

I have a daemon that runs fin if I start it manually with the service command:

ricardo@ricardo-laptop:~$ sudo service minidlna start

* Starting minidlna minidlna [ OK ]

but it's not configured to auto start when the PC reboots.

How can I configure it to start automatically, even if no one is logged into the PC?

Tags: services (Next Q), autostart (Next Q)

User: ricardo-reyes


Answer by source-lab

sudo update-rc.d minidlna defaults

This should add the service to the automatic startup system. For further detail look at the man page for update-rc.d by typing the command man update-rc.d


Answer by hhlp

Sometimes you need to run a script on boot process, for example run an iptables config at boot process. So you dont have to run the script manually every rebooting.

You can run your script on boot process in Ubuntu by adding it to /etc/init.d/rc.local file. Look the steps below.

1. Open /etc/rc.local file with this command:

vim /etc/rc.local

1. Add your script that you want to run on boot process there, for example:

sh /home/ivan/iptables.sh echo 'Iptable Configured!'

1. Review the comments included in that file and make sure a exit 0 is at the end.

2. Save the files. And your script will run on boot process.


Tags: services (Next Q), autostart (Next Q)


Q: How to enable or disable services?

Tags: services

I read about how to enable and disable services in Ubuntu and it seems that there are different possibilities to manage them.

The first method I found is update-rc.d to add new services to startup, which aims on the /etc/init.d folder and its contents.

The other one I found is to edit .conf files in the /etc/init folder.

What's the recommended way to enable / disable / add services and why?

Could you please give a short bulletproof step by step example on how to add a service in Ubuntu and enable and disable it?

Tags: services

User: nes


Answer by luis-alvarado

I can show you several ways which are documented on this excellent Upstart Cookbook. There are services that can be enabled/disabled using the GUI (Like the startup application) and then other ways of doing the same through the terminal.

For the Terminal you have several options. Open a terminal (Type "terminal" in the dash for example and open it) and keep on reading:

Enabling / Disabling a service

To toggle a service from starting or stopping permanently you would need to:

echo manual | sudo tee /etc/init/SERVICE.override

where the stanza manual will stop Upstart from automatically loading the service on next boot. Any service with the .override ending will take precedence over the original service file. You will only be able to start the service manually afterwards. If you do not want this then simply delete the .override. For example:

echo manual | sudo tee /etc/init/mysql.override

Will put the MySQL service into "manual" mode. If you do not want this, afterwards you can simply do

sudo rm /etc/init/mysql.override

and Reboot for the service to start automatically again. Of course to enable a service, the most common way is by installing it. If you install Apache, Nginx, MySQL or others, they automatically start upon finishing installation and will start every time the computer boots. Disabling as mentioned above will make state of the service "manual".

Temporary enabling/disabling services

To stop and start services temporarily (Does not enable / disable them for future boots), you can type sudo /etc/init.d/SERVICE_NAME. For example:

sudo /etc/init.d/apache2 stop (Will STOP the Apache service until Reboot or until you start it again).

sudo /etc/init.d/apache2 start (Will START the Apache service assuming it was stopped before.).

sudo /etc/init.d/apache2 status (Will tell you the STATUS of the service, if it is either enabled/running of disabled/NOT running.).

sudo /etc/init.d/apache2 restart (Will RESTART the service. This is most commonly used when you have changed, a config file. For example in this case, if you have changed either a PHP configuration or a Apache configuration. Restart will save you from having to stop/start with 2 command lines)

sudo /etc/init.d/apache2 (In this case, since you did not mention the ACTION to execute for the service, so it will show you all options available for that specific service

This of course can vary depending on the service, for example, with MySQL it would only mention that it is missing a parameter. For other services like networking service it would mention the small list of all options available.

IF the service was already converted to Upstart, you should see a message recommending to use the service command

UPSTART

As you can see it varies in several details when using the /etc/init.d/SERVICE way. If we would wanted to use the official upstart way (Note that, for the moment, not all services have been converted to upstart), we could use the following commands:

status SERVICE - This will tell us if a converted service is running or not. Note that this is deprecated in favor of start, stop, status & restart. It will also tell us if a service was not yet been converted to upstart:

A converted service would typically output the current status (Starting, Running, Stopping...) and process ID. A non converted service would give an error about an unknown job.

With upstart with have a simpler way to accessing the service options as you can see in the following examples:

sudo service mysql start (Would START a service)

sudo service mysql stop (Would STOP a service until reboot or start it again)

sudo service mysql restart (Would RESTART the service)

sudo service mysql status (Would show the current STATUS of the service)

But upstart is not limited to only converted services, it can also pass the instructions to non converted services because if offers compatibility with them.

Some shortcuts for the upstart service are:

START

sudo start mysql

STOP

sudo stop mysql

RESTART

sudo restart mysql

STATUS

sudo status smbd

OTHERS

There are other commands like initctl which can do nice things like list all services with the status for each of them: initctl list. It can also start, stop, restart a job as many other options found when you execute initctl help.

Now, what is the recommended way you ask, for Ubuntu it is Upstart, is an easy to use, easy to manage way to access and work with services, in the present and future of Ubuntu.

Upstart in the future will include options that could replace cron. For example, creating a timed based starting/stopping of services in a very user friendly way. A good guide is found here as the cookbook for upstart: http://upstart.ubuntu.com/cookbook/


Answer by spamaps

Currently there are actually 2 different ways for software to be started as a service in Ubuntu. A service is defined here as a program run by the system in the background, as opposed to one started and run directly by the user.

The traditional way to start services in Linux was to place a script in /etc/init.d, and then use the update-rc.d command (or in RedHat based distros, chkconfig) to enable/disable it. This command, btw, uses some mildly complicated logic to create symlinks in /etc/rc#.d, that control the order of starting services. If you run ls /etc/rc2.d you can see the order that services will be killed (K##xxxx) and started (S##xxxx).

The issue with that was that when booting the system, everything had to be done in serial, one thing after another, making system boot times really slow. Attempts were made to parallelize this, but they were haphazard and hard to take full advantage of. This was the main reason that Upstart was created.

Upstart uses job definition files in /etc/init to define on what events a service should be started. So, while the system is booting, upstart processes various events, and then can start multiple services in parallel. This allows them to fully utilize the resources of the system, for instance, by starting a disk-bound service up while another CPU-bound service runs, or while the network is waiting for a dynamic IP address to be assigned.

You can see all of the upstart job files by running ls /etc/init/*.conf

Let me just stop here and say that if you don't know what a service is, or what it does, DO NOT disable it!

Not all services have been converted to upstart. While working on the server team at Canonical for the past few months, I've worked on a number of converted job files, and the nicest part is that it allows one to get rid of all the script "magic" and just put in a few commands here and there to define exactly how to start the service, and nothing more. But for now, only a handful of traditional network services, like squid and samba, have been converted.

In order to figure out if a service is upstart based, you can run the status command:

status servicename

If its an upstart job, it will show this:

$ status statd

statd start/running, process 942

But if its not, you'll see something more like this:

$ status apache2

status: Unknown job: apache2

In this case, apache2 has not been converted to upstart. So, to disable apache2 you just run

sudo update-rc.d apache2 disable

sudo service apache2 stop

Upstart job definitions do not have an update-rc.d command. To disable the job, you need to edit the job file directly to disable it. There are two ways to do this.

If you want to still be able to manually start it, then you need to comment out the 'start on' condition. Say you want to install samba, but not have it start automatically.. here is its job file (in natty):

Skip code block

description "SMB/CIFS File Server"

author "Steve Langasek <steve.langasek@ubuntu.com>"

start on local-filesystems

stop on runlevel [!2345]

respawn

pre-start script

RUN_MODE="daemons"

[ -r /etc/default/samba ] && . /etc/default/samba

[ "$RUN_MODE" = inetd ] && { stop; exit 0; }

install -o root -g root -m 755 -d /var/run/samba

end script

exec smbd -F

To disable it, you can just put a # in front of the 'start on local-filesystems'. Note that while it won't start back up on boot, you still need to stop it this time with

sudo service smbd stop

If, however, you never want it to start, I'd suggest actually removing the package. If, however, you want it installed, but not startable, you can also do:

mv /etc/init/smbd.conf /etc/init/smbd.conf.disabled

Starting with the version of upstart that will be in 11.04, there is a new keyword that disables the 'start on' and 'stop on' stanzas, it is 'manual'. So another way to disable the service as of 11.04 is to do:

command using sudo

echo 'manual' | sudo tee /etc/init/mysql.override

command from root shell

echo manual >> /etc/init/mysql.override

And, hopefully real soon, you will be able to create an "override" file to disable a service without editing the job definition at all, by just putting the 'manual' keyword in it.


Answer by atenz

Try using sysv-rc-conf

sudo apt-get install sysv-rc-conf

and to start managing the services, execute

sudo sysv-rc-conf

Which will bring up interactive window like this

enter image description here

You can further navigate through pages using Ctrl+n for next page and Ctrl+p for previous page .You can enable and disable services by selecting SPACE on desired runlevels.

Another alternate would be Jobs-Admin by installing through

sudo apt-get install jobs-admin

Which also provides GUI like this

enter image description here

For showing more jobs , you have to tick the Show Protected Jobs from its menu.

And third option would be chkconfig,

sudo apt-get install chkconfig

It can be used via CLI chkconfig, showing list of On/Off jobs. Also we can view system services using chkconfig list

Services can be turned on using

chkconfig <service> on

Services can be turned off using

chkconfig <service> off

And we can even add our own service, using a proper init script with proper headings.

chkconfig --add <service>

And another option can be referred here update-rc.d , explained briefly here.

Note that for Ubuntu Server 12.04, update-rc.d is used instead of chkconfig.


Tags: services


Q: What's the difference between "Service" and "/etc/init.d/"?


Q: Chkconfig alternative for Ubuntu Server?


Q: How do you restart Apache?


Q: How can I configure a service to run at startup


Q: How to enable or disable services?


Q: Disable autostart for a service without uninstalling?


Release Management

Questions

Q: How can I find the version of Ubuntu that is installed?

Tags: release-management (Next Q)

I installed some version of Ubuntu on my VMware, but I don't know what version exactly it is. How can I find it out?

Tags: release-management (Next Q)

User: am1rr3za


Answer by paweł-karpiński

Your version of Ubuntu can be determined by opening System Settings and then opening the System Info or Details (from 12.04) section:

System Info screenshot

This page will also tell you whether you have the 32- or 64-bit version of Ubuntu installed, as well as what processor and graphics you have, the amount of RAM installed, and your disk capacity.

You can get this info from a terminal with the command:

lsb_release -a

Credit in part to htorque and WarriorIng64

[Note: for versions before 11.10, e.g. 11.04 this is not available this way, but see Roland's answer below for workable option (basically use the 'System Monitor' icon instead]


Answer by htorque

Apart from:

· lsb_release -a and

· cat /etc/issue ,

you can also see the version in the GNOME System Monitor (press Alt + F2, type gnome-system-monitor, and hit Enter):

enter image description here


Answer by warrioring64

In Ubuntu 11.10 onwards, the version of Ubuntu installed can be found by entering System Settings > System Info (in newer versions like 14.04 LTS, this tab might be called Details instead):

System Info screenshot

This page will also tell you whether you have the 32- or 64-bit version of Ubuntu installed, as well as what processor and graphics you have, the amount of RAM installed, and your disk capacity.


Tags: release-management (Next Q)


Q: What's the difference between a Long Term Support Release and a Normal Release?

Tags: release-management (Next Q)

What are the differences between an Ubuntu Long Term Support release (LTS) and a normal release?

Tags: release-management (Next Q)

User: olivier-lalonde


Answer by stefano-palazzo

There is a new release every 6 months (apart from Dapper, which was delayed 2 months). Every two years, the release is a Long Term Support version.

· Normal releases before 13.04 are supported for 18 months.

· Starting with 13.04, normal releases are only supported for 9 months.

· LTS releases before 12.04 are supported for three years on the desktop and five years on the server.

· LTS releases 12.04 and later are now supported for five years on both the desktop and the server.

Now, support means:

o Updates for potential security problems and bugs (not new versions of software)

o Availability of Commercial support contracts from Canonical

o Support by Landscape, Canonical's enterprise oriented server management tool set

The Desktop refers to the packages that are in the main and restricted repositories, these are the ones that have the little Ubuntu icon next to them in Synaptic or are marked as Supported in the Software-Centre respectively.

The Server packages are the ones in the "server-ship" and "supported-common" seeds (there's a directory of all of the different seeds available).

This is what this looks like:

enter image description here
via the Release end of life info page | Ubuntu


The primary reason for using an LTS release is that you can depend on it being updated regularly and therefore secure and stable.

As you can see from the diagram, people who have installed the 8.04 LTS server don't need to worry about replacing it for still another 2 years! Fantastic. :-)

As if this wasn't enough, Ubuntu release an additional version of the last LTS between releases - such as 8.04.1, that incorporates all of the updates up to this point. This is called a Point-Release (or sometimes snapshot). Those are released every quarter to half year, as needed.

In addition to support, there are Development strategies that differentiate an LTS release:

· The base of the operating system, Debian, comes in three versions: Stable, Testing and Unstable. Normally, Ubuntu is based on Unstable; the LTS releases are based on Testing. Starting with 14.04 LTS, all new releases will be based on Debian Unstable.

· The Development effort for an LTS release in focussed on providing a rock solid base, not only for customers who want the LTS release, but also for the next Three ubuntu versions to come.


Thanks to Oli for demystifying that last part, I wasn't quite sure about it.


Answer by oli

Support cycle

An LTS gets package updates for supported software for 3 years for desktop packages and 5 years for server packages, compared to 18 months support for standard releases. Current to 14.04, Ubuntu LTS gets package updates for supported software for 5 years, compared to 9 months support for standard releases. Current to 14.04, Xubuntu LTS and Lubuntu LTS get package updates for supported software for 3 years.

This means you can guarantee a system for a long time. Applications won't jump versions, so it makes a very solid deployment platform.

Package imports

Ubuntu syncs with Debian at the beginning of a new development cycle. On a normal release this pulls in packages from debian-unstable, whereas in an LTS cycle, packages come from debian-testing.

These packages have usually had more time with Debian and should therefore reflect a better quality product (albeit at the cost of bleeding edge features).

Development style

There is supposedly more focus on bug fixing for an LTS release, whereas an LTS+1 might focus on adding features, LTS+2 focuses on performance and LTS+3 on stability before rounding it off for the next LTS.

This is less formal than the other points as it's frequently ignored.


Tags: release-management (Next Q)


Q: How to roll back Ubuntu to a previous version?

Tags: release-management (Next Q)

I just installed a new version of Ubuntu and I want to roll it back to the previous version.

How can I do that? Is that even possible?

Tags: release-management (Next Q)

User: run


Answer by oli

Downgrading releases is possible to some extent. With enough fighting, it can be done (see some of the other answers here for the the technical details).

However the result you end up with is not the same as what you had before the upgrade. During an upgrade certain one-way changes are made to make new packages happy and downgrading them won't reverse those edits. It's impossible to guarantee a downgrade will work at all, let alone if it'll be stable.

In short, your easiest option is always going to be a reinstall. Don't think of it as a chore, look at it as a nice opportunity to trim down on packages and configure things better.

If you want to test things in the future and you fear you might have issues, always make sure you do the following:

· Test the LiveCD first. If you're going to have immediate hardware issues, this should let you know.

· Back up before you do anything. I know everybody and their mother has already told you to do this, but it's really important if you think you're going to have issues. If you can't do without your machine for more than 20 minutes, consider some full-disk cloning tools like Clonezilla so you can just restore a previous version of the disk. There are other tools that can offer similar results.

· Keep your data separate. Having your /home/ within the same partition as your installation is a recipe for a headache if you're constantly upgrading/downgrading things. Push it off to another disk or at least another partition so that when you do need to reinstall, you really just need to set up the mount.

· There was a critical bug for downgrading that was fixed by the Ubuntu QA team. Make sure you read up on that, as some people will recommend you just stick in an older CD and "upgrade" to it, but this is a bad idea.


Answer by sergey

There's a saying in my language which can be roughly translated as "You can't turn mince back into meat by rotating the mincer's handle in the opposite direction" :)

enter image description here

The upgrade procedure is one-way - while installing new versions of software, your configuration files and settings are modified by packages' post-install scripts to use new format which is required by new software. Basically, there's no opposite procedure - to make a newer configuration file compatible with old software.


Answer by gilles

It's possible at the level of the packaging tools (apt). But the resulting system may not be equivalent to doing a reinstall, and you may get errors along the way. This is because many packages contain specific support for upgrades (e.g. handling changes in configuration files) but not for downgrades.

Normally, apt prefers to install the most recent version of a package. But you can change this through pinning: you can declare that packages from the old release have higher priority than the installed packages, so that they will be downgrades when you do aptitude dist-upgrade.

Change your /etc/apt/sources.list to include only the old release (either edit the file or use your favorite GUI), and run aptitude update. Then edit /etc/apt/preferences (documented in the apt_preferences man page) and add the following lines (to downgrade to lucid):

Package: *

Pin: release v=10.04

Pin-Priority: 1001

Then run aptitude dist-upgrade. Every package has a priority greater than 1000, so every package that is present in 10.04 and installed on your system will be downgraded. You'll have to remove packages that weren't in 10.04 manually; they'll be listed under Obsolete and locally created packages in aptitude.


Tags: release-management (Next Q)


Q: How to install software or upgrade from old unsupported release?

Tags: release-management (Next Q)

Recently I have installed an older version of Ubuntu on my old machine. When ever I am trying to install any software it is giving error

sudo -i apt-get install vlc

The error being flagged is under below.

Reading package lists... Done

Building dependency tree

Reading state information... Done

E: Couldn't find package vlc

Tags: release-management (Next Q)

User: made_in_india


Answer by fossfreedom

The repositories for older releases that are not supported (like 11.04, 11.10 and 13.04) get moved to an archive server. There are repositories available at http://old-releases.ubuntu.com

The reason for this is that it is now out of support and no longer receiving updates and security patches.

I would urge you to consider a supported distribution. If your computer is too old in terms of memory or processor then you should consider a distribution such as Lubuntu or Xubuntu.

If you want to continue using an outdated release then edit /etc/apt/sources.list and change archive.ubuntu.com to old-releases.ubuntu.com

You can do this with sed

sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

then update with

sudo apt-get update && sudo apt-get dist-upgrade

Sometimes, it might be faster to create backups of your system and reinstall using supported release instead.

source

See also:

· EOLUpgrades - Community Help Wiki


Answer by aditya

What are 404 errors

The 404 or Not Found error message is a HTTP standard response code indicating that the client was able to communicate with the server, but the server could not find what was requested.

The web site hosting server will typically generate "404 - Page Not Found" web page, when users attempts to follow a broken or dead link.

Why are we facing 404 errors

Ubuntu follows the approach of two different release cycles:

Normal Ubuntu releases are supported for 9 months. LTS releases are supported for 5 years.

Past releases may have different support schedules (for example, normal releases (before 13.04) used to be supported for 18 months, while LTS releases (before 12.04) used to be supported for 3 years on the desktop and 5 years on the server).

EOL: Once the support period for a particular release is over; they are called End Of Life (EOL) and all the updates and package repositories for that Release are transferred to a different server which results in 404 errors while running sudo apt-get update. You can confirm if your release has become EOL by going to this page. If your Ubuntu release is mentioned under "End Of Life (EOL)" Table, then the release is no longer supported and you should try to upgrade to a newer supported release. However, if you wish to continue using this unsupported release, you would have to make necessary modifications in /etc/apt/sources.list to point to the old-releases server of Ubuntu.

Steps to make necessary modifications

1. Open your Terminal:

o Press Ctrl + Alt + T; OR

o If you have Gnome: Applications → Accessories → Terminal; OR

o If you have Unity: press Super (the key between Left Ctrl and Left Alt) and query for Terminal.

2. Run the following command:

3. gksudo gedit /etc/apt/sources.list

input your user password and press Enter.

3. Find the first line which doesn't start with #. Suppose you are running Karmic Koala (Ubuntu 9.10): it should be like the following line:

4. deb <siteurl> karmic main restricted

where, <siteurl> is your preferred server - http://gb.archive.ubuntu.com/ubuntu in your case (for example).

4. Press Ctrl + H to replace your <siteurl> with http://old-releases.ubuntu.com/ubuntu.

o Search for: http://gb.archive.ubuntu.com/ubuntu ie; <siteurl>

o Replace with: http://old-releases.ubuntu.com/ubuntu and

o Press Replace All

5. Once again:

o Search for: http://security.ubuntu.com/ubuntu (this exact url for all the Ubuntu Releases — whatever be the present server that you are using)

o Replace with: http://old-releases.ubuntu.com/ubuntu

o Press Replace All

6. Save your file and exit Gedit.

7. Run the following command:

8. sudo apt-get update

There you go. No 404 Errors this time. You can now install all the available packages for your Ubuntu Release. You can also run sudo apt-get dist-upgrade to install any Security/Bug-fix updates which have not yet been installed but you won't get any further Security/Bug-fix updates from Ubuntu.


Answer by radu-rădeanu

The short answer is to add the next apt repository to the Third-Party Software (or Other Software in newer versions) in Software Sources (or Software & Updates in newer versions):

deb http://old-releases.ubuntu.com/ubuntu code_name main restricted universe multiverse

The long answer...

GUI Method

Well, actually we will do this without to use any terminal. Not even once. Just GUI, I promise ;-)

First, open Software Sources (or Software & Updates in newer versions). It does not matter how old is your Ubuntu, there is certainly something like this. For Ubuntu 9.04 (Jaunty Jackalope) look at next image to see where is located:

Open Software Sources

After Software Sources (or Software & Updates) it is open, go in Ubuntu Software and Updates tabs and unselect everytiyng like in next pictures. You don't need this things anymore since your Ubuntu version is End of Life:

Ubuntu Software tab


enter image description here

Without closing Software Sources (or Software & Updates), go in Third-Party Software (for newest releases this tab is named Other Software) tab and add a new apt repository. Insert exactly next line when you are asked:

deb http://old-releases.ubuntu.com/ubuntu jaunty main restricted universe multiverse

If your version of Ubuntu is other than 9.04, replace in the above line jaunty with your Ubuntu codename (for example if you have Ubuntu 9.10, replace with karmic and so on):

Third-Party Software tab

Now, when you will close Software Sources (or Software & Updates) you will be asked to reload the information about available software. Just be sure that you have a working internet connection:

Reload available software


Downloading available software

And now you are free to download almost whatever you want. For 9.04 you can use Synaptic Package Manager. For newest releases there is Ubuntu Software Center.

For example to install VLC in Ubuntu 9.04 using Synaptic Package Manager, follow the instructions in the following pictures:

Open Synaptic Package Manager


Search VLC in SPM


Mark VLC


Mark aditional VLC


Apply VLC


Download VLC


Open VLC

If you want to Update your Ubuntu to a new release, just go to System > Update Manager:

Update Manager


Upgrade

I tested this method from a live session of Ubuntu 9.04 (Jaunty Jackalope) and as you can see from these pictures it worked. If you are on an installed session of Ubuntu you will be asked sometimes for root or admin password. Just insert your personal user password when you are asked.


Tags: release-management (Next Q)


Q: What will happen when the Code Names of the Ubuntu releases get to Z

Tags: release-management (Next Q)

The last release was Natty Narwhal (Letter N) for the 11.04. Then it was Oneiric Ocelot (Letter O) for the 11.10. This time, the newest one will be Precise Pangolin (Letter P) for the 12.04.

At this pace, what will happen when Ubuntu gets to Z. Will it start with numbers (007 Edition), will it start with double letters (AA Battery), will it start from the beginning (Amazing Apple). What will happen?

Tags: release-management (Next Q)

User: luis-alvarado


Answer by fossfreedom

Astonishing Antelope

As questions go - this is pretty much will be a decision will be made by Mark Shuttleworth himself.

Maybe we could start doubling the initial like in Aalenian Aal or Aalenian Aardvark We could restart using flowers or plants instead of animals. e. g. Apologetic Anemone For release 17.10 i suggest Ambitious Aye Aye Maybe: Awesome Alebrije? I like the idea of using plants next. Or perhaps rocks/minerals.

Thus as you have indicated we are in the realms of speculation.

On the link below - the wrap around to A is described upto F - Flying Fox etc i.e. ubuntu 20.04

What is beyond that - happy speculating.


Useful link:

1. https://wiki.ubuntu.com/DevelopmentCodeNames


Answer by oli

Aahing Aardvark

That gets a lot tougher after AA.

But seriously, there are plenty of other verbs, adjectives and animals for each letter, so I expect it stay the same for 17.10.

And remember that is a long time (that's like a hundred years in Internet years) so Ubuntu might be doing something completely different by then.

Note: I look forward to you accepting (or down-voting) this in ~60 months time. Puts it on his calendar!


Answer by keith-thompson

It could just follow ASCII, and ultimately Unicode, order.

· ...

· Xenophobic Xenopus

· Yawning Yak

· Zealous Zebra

· [lumsy [aribou

· \ashful \ackslash

· ]ashing ]oberman

· ...

·

· ...

This may eventually require genetic engineering to breed new animals with appropriate names.


Tags: release-management (Next Q)


Q: Why don't the Ubuntu repositories have the latest versions of software?

Tags: release-management

Why are packages in the official Ubuntu repositories older than the latest (upstream) versions from Debian Sid, PPAs, the authors, etc.?

Tags: release-management

User: thomas-w.


Answer by bruno-pereira

An Ubuntu release goes through several stages before it actually makes it to the public as a finished product:

· Some time before Ubuntu launches a release it freezes its packages at a certain point.

· Before a release is out but after the package freezing, work is done mostly to fix all the bugs and issues that there might be in those packages. New package versions are not imported into the repositories anymore after package or feature freezing.

· Once the release happens additional changes to those packages only happen for bug fixing and security issues. There are no more upgrades done to the packages in the official repository even if new versions of the packages are released.

New version of packages are consistently being imported (from Debian) for the next release of Ubuntu, until the next freeze happens and the same process repeats itself.

As an example, you can have a look at the release schedule of 12.04.

You can see that even though 12.04 was released in April, in January 12 something called Debian Import Freeze happened.

This is just the first of many freeze stages happening before the actual release and means that at that point the import of packages from Debian testing or unstable stops and work starts on them to customize and fix issues with them.

No upgrades are done after that point in a lot of packages and the version that package had at that point is the version present and maintained through a release's lifetime.

So even though there are higher versions of the same package in developers' PPAs or in Ubuntu+1 repositories those will only be included in the next release of Ubuntu.

This is done for stability, security and functionality. New bleeding packages being imported all the time to the main repository would mean issues and a lot more problems to be solved. A freeze in the packages version helps to sort that out and make Ubuntu safer and more stable for the end user.

A new version of Ubuntu is released every 6 months, so every 6 months new packages are prepared, tested, customized and released with a new version. Future versions of a packages can be installed in your system via a PPA or just by downloading it from a web site, but the version of the package in the official repository remains the same.

For more understanding and an interesting overview of what happened to Ubuntu from 10.04 until the launch of 12.04 have a look at ReleaseSchedule - LTS to LTS and Stable Release Updates page for a complete overview and explanation of an Ubuntu stable release.


Tags: release-management


Q: How can I find the version of Ubuntu that is installed?


Q: What's the difference between a Long Term Support Release and a Normal Release?


Q: How to roll back Ubuntu to a previous version?


Q: How to install software or upgrade from old unsupported release?


Q: What will happen when the Code Names of the Ubuntu releases get to Z


Q: Why don't the Ubuntu repositories have the latest versions of software?