It seems that changing the directory before python command is mandatory: #!/bin/sh cd /home/mahmood/ python sendip.py I am now able to receive the IP address right after boot and before login page. Thank you // Naderan *Mahmood;
________________________________ From: Thomas Jollans <tho...@jollybox.de> To: python-list@python.org Sent: Sun, August 22, 2010 5:50:00 PM Subject: Re: Running python script before user login On Sunday 22 August 2010, it occurred to Mahmood Naderan to exclaim: > I am trying to execute this script before login: > > #!/bin/sh > date > /home/mahmood/dateatboot.txt > echo "In local file" > /usr/bin/python2.6 /home/mahmood/sendip.py > echo "python script finished" > after restart, dateatboot.txt was created shows that the script was > executed. In the python file, I have this: > import smtplib, commands, os, datetime > # find IP address and write to file > print 'I am in python file' > f = open('.ip.txt', 'w') > f.write( commands.getoutput("ifconfig").split("\n")[1].split()[1][5:]) > f.close() > ... > > After boot there is no .ip.txt file. Where are you looking? Do you actually know in which working directory your script is being executed? How about something like this: #!/bin/sh cd /home/mahmood/ python sendip.py >sendip.log 2>&1 ... this will write Python's output to a log file. If there is an exception, you'd be able to see it. > > > // Naderan *Mahmood; > > > > > ________________________________ > From: Thomas Jollans <tho...@jollybox.de> > To: python-list@python.org > Sent: Sun, August 22, 2010 3:17:57 PM > Subject: Re: Running python script before user login > > On Sunday 22 August 2010, it occurred to Mahmood Naderan to exclaim: > > >Specify exactly how it's not working. > > > > I have wrote a script to send my ip address to an email address. It does > > work when I am login (python sendip.py). I then followed the procedure in > > https://help.ubuntu.com/community/RcLocalHowto. However after restart, no > > email is sent. > > The first step would be to make sure your init script is actually running. > Add some simple command that you know will not fail, and where you can see > easily that it worked. Say, you could use > > #!/bin/sh > > date > /home/[USER]/Desktop/created_during_boot.txt > > as an init script. Then you could see that, if the file was created on your > desktop, that the script is running at all. When you know that, THEN you > can start to worry about Python > > (I think Ubuntu probably doesn't bring up the network before NetworkManager > does this after login. So you might just not be able to send e-mail before > login. You can check this by saving the output of /sbin/ifconfig somewhere) > > > // Naderan *Mahmood; > > > > > > > > > > ________________________________ > > From: Chris Rebert <c...@rebertia.com> > > To: Mahmood Naderan <nt_mahm...@yahoo.com> > > Cc: python mailing list <python-list@python.org> > > Sent: Sun, August 22, 2010 1:28:45 PM > > Subject: Re: Running python script before user login > > > > On Sun, Aug 22, 2010 at 1:52 AM, Mahmood Naderan <nt_mahm...@yahoo.com> > > wrote: > > > I have wrote a python script and want to run it before user login. To > > > do that, I have added it to the ubuntu startup file (init.d). However > > > it seems that the script doesn't work. > > > > Specify exactly how it's not working. > > > > Cheers, > > Chris > > -- > > More details = Better assistance -- http://mail.python.org/mailman/listinfo/python-list
-- http://mail.python.org/mailman/listinfo/python-list