I frequently need to start several programs that I use every time I start my computer. How can I make it so that whenever I login the program is automatically launched?
To make a program start with Ubuntu:
If you're using Unity, search for the program
If you're using Ubuntu Classic, it's under Start Menu > Preferences > Startup Applications.
To make Ubuntu remember your running applications on shutdown:
Open a terminal, and run
Navigate to /apps/gnome-session/options.
Enable the option: auto_save_session.
(NOTE: this may slow system boot, and has not been throughly tested.)
User defined sessions for applications to start after login
An alternative way to automatically start applications after login is to define a user defined session. This has the advantage to use different sessions for different task, each with different applications loaded.
For this purpose we create a
custom.desktop file as root in
/usr/share/xsessions with the following content (for GNOME/GDM):
[Desktop Entry] Name=Marco's Crowded Session Comment=Custom ~/.xsession script Exec=/home/username/.xsession X-Ubuntu-Gettext-Domain=gdm
Use any fancy name for your session and replace
username by your name of course.
This will run the script
.xsession in the HOME directory at login where we can put in any appplications we need to start after login.
The script needs to be named as defined in the .desktop file, that is
~/.xsession in the example given, needs to be made executable and may have a content similar to this:
#! /bin/bash my-important-app [options] & second-app [options] & [...] # add other applications gnome-session [options]
Options for gnome-session may be omitted to load the default session. Give e.g.
--session=classic-gnome as option to run Classic GNOME Desktop in 11.04.
Next time we login we will have the choice to start a "Marco's Crowded Session" with all applications from the script running in addition to applications from the gnome-session (or any other desktop manager you chose to start here).
Starting other desktop managers
To start another installed desktop manager replace the last line from the
~/.xsession script with the following:
gnome-session --session=ubuntufor standard desktop (with Unity in 11.04).
gnome-session --session=classic-gnomefor classic GNOME desktop.
startkdefor KDE desktop manager.
startxfce4for XFCE, or when running Xubuntu.
We can add applications to the "Startup Applications" by opening the menu entry on the top panel right side:
14.04 (Unity) and later
We can search the Dash for "startup applications"
or we can run the startup preferences from a terminal with
This will open a window where we can see all installed applications that will run on startup. Tick or untick the applications there or choose "Add" to add a new application:
If we know the command to run the application just enter it here in the "Command" line. We may also add an optional "Comment" here.
If we do not know the command we can choose to "Browse..." our file system for installed applications. Many default applications are found e.g. in
Select an application to add to autostart.
Command line or programmatical approach
Similar to what the GUI solution above does we can manually add a
.desktop file to
~/.config/autostart. The content of this file may be as follows:
[Desktop Entry] Type=Application Exec=</path/to/binary or command to execute> Hidden=false NoDisplay=false X-GNOME-Autostart-enabled=true Name=<Name_to_be_displayed> Comment=<optional comment>
Note that in a vanilla installation the directory
~/.config/autostart may not yet exist. We need to create it before we can access it programmatically.
- Go to
- Now you can either add an application by clicking add,
- And adding the application/script you want to run on startup,
- Or you can add an application by dragging the launcher you wish to add from the Application menu to the Startup Applications screen.
Another, possibly simpler, option would be to go to menu System/Preferences/Startup applications, then choose the "Options" tab and tick "Automatically remember running applications when logging out"
This will start up any applications you have running when you log out.
None of the answers (until now) gives a user-independent solution.
The correct way (according to this thread) to add some autorunning program (named a Desktop Entry) for the whole Operating System is adding it as a
.desktop file here:
[Desktop Entry] Name=MyScript GenericName=A descriptive name Comment=Some description about your script Exec=/path/to/my/script.sh Terminal=false Type=Application X-GNOME-Autostart-enabled=true
No need to
chmod it to executable permission, it seems.
Exec will run for any logging user, including
xubuntu (for custom Live distribution desktops)
In 11.04, you press the powerbutton (rightmost on the upper panel) and select System settings. You'll find Startup Applications under Personal preferences. It's the same dialog that we had in earlier versions of Ubuntu.
i guess that you can add the command in System --> Preferences --> app Start
then click add, put a name somthing like "Firefox start" the command name part click
"examine" and look for executable file of the program that you need start at login...restart
hope this help you!!!
protected by Community♦ Sep 21 '11 at 15:46
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?