How to Automatically run two commands after login?
Solution 1
- Create a script file, e.g. named
my_file.sh
, in the/etc/profile.d/
directory. - Put
#!/bin/bash
as the first line. - Write whatever command(s) you want to be executed immediately after logging in, e.g.
pgrep udhcpd
. - Mark your file as executable:
chmod +x /etc/profile.d/my_file.sh
*It should get executed after login. In case it doesn't or you don't have the ability to use root privileges, creating the same file under ~/.config/autostart
should work fine (I haven't tried this directory before).
Solution 2
Adding the autossh Command
- On the panel select
System
-->Preferences
-->Startup Applications
. - Under the
Startup Programs
tab select theAdd
button. - Choose any Name you want and paste in your command (the Comment is optional)
- Click the
Add
button.
Note for newer versions of Ubuntu
You can find this application by searching for "Startup Applications" in the dash. Also,
you can always launch it by pressing Alt + F2 (or opening a terminal) and running gnome-session-properties
.
Mounting the Partition
Option 1: Add partition to /etc/fstab
- See How to mount NTFS drive at startup if it is a Windows partition.
- Ubuntu Community Fstab documentation
Option 2: Use udisks
Add this startup command as shown previously:
udisks --mount /dev/sda2
Related videos on Youtube
Covi
Updated on September 18, 2022Comments
-
Covi over 1 year
I have these two commands that I need to manually run every time after login:
autossh -M 2000 -N -f -q -D 127.0.0.1:7070 [email protected]
and
sudo mkdir /media/C sudo mount /dev/sda2 /media/C
I'd like to make them automatically run every time I boot and login to my computer. I'm currently using 10.04LTS.
BTW, I only vaguely know what
init.d
orrunlevel
mean. But I still prefer to know a command-line based way to achieve this, not a fancy GUI way. Also, theautossh
will only succeed after Ubuntu automatically detect and connect to my network, so should we let it retry infinitely until successfully executed?Thank you!
-
Jo-Erlend Schinstad about 12 yearsCan you update your question to explain why you're mounting manually instead of adding it to /etc/fstab?
-
Covi about 12 years@Jo-ErlendSchinstad: I don't have any particular reason. fstab seems a viable option but I don't quite understand how to do it.
-
hingev about 12 yearsadd startup app with command:
autossh -M 2000 -N -f -q -D 127.0.0.1:7070 [email protected] && sudo mkdir /media/C && sudo mount /dev/sda2 /media/C
-
-
Covi about 12 yearsthank you! But can you point out how to achieve the first task in a non-GUI way? For the second, thank you for letting me know but I wonder if there's any disadvantage when just doing a
mkdir
and amount
. -
That Brazilian Guy over 11 yearsCan't find this screen on Ubuntu 12.04
-
jamesadney over 11 years@ruda.almeida see the changes I made to the post.
-
That Brazilian Guy over 11 yearsThanks! My copy of Ubuntu is not in English, so I had a hard time finding it. Thanks for taking your time to expand this answer!
-
jamesadney over 11 yearsNo problem! I'm glad you got it working.
-
John Hamilton over 6 yearsStartup programs were not working for me as I lost one specific setting at every login. After adding the command to
/etc/profile.d/
directory, it's now working as it should. This should definitely be picked as the answer.