Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2011-12-08 01:32:34

  paw4el - Użytkownik

paw4el
Użytkownik
Skąd: wielkopolska
Zarejestrowany: 2010-07-05

Uruchomienie skryptu wraz ze startem systemu

Witam.
Mam skrypt pythona, który ma startować zaraz po starcie systemu.
Skrypt znajduje się w:

Kod:

/usr/local/program/skrypt.py

Próbowałem dodać go do autostartu w ten sposób:

Kod:

ln -s /usr/local/program/skrypt.py /home/ja/.config/autostart

Niestety skrypt nie startuje wraz z uruchomieniem systemu.

Offline

 

#2  2011-12-08 04:36:34

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: Uruchomienie skryptu wraz ze startem systemu

Offline

 

#3  2011-12-08 07:32:03

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Uruchomienie skryptu wraz ze startem systemu

A najprościej będzie dopisać go do /etc/rc.local


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#4  2011-12-08 19:10:48

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: Uruchomienie skryptu wraz ze startem systemu

azhag napisał(-a):

A najprościej będzie dopisać go do /etc/rc.local

A mi to ostatnio nie działa... Czy wiadomo dlaczego?? Czy on 'wywołuje' rc.local z prawami root'a? Czyli czy mogę tam coś wsadzić co potrzebuje root'a??

EDIT:
Może coś jeszcze napisze ;p

Kod:

pablo@lena:~$ cat /etc/rc.local 
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#echo 1 > /sys/class/backlight/intel_backlight/brightness
#echo 0 > /proc/acpi/ibm/bluetooth

exit 0

Oczywiście linie 'echo.*' (że tak bashowo napiszę) były odkomentowane...

Ostatnio edytowany przez P@blo (2011-12-08 19:27:43)


ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |

Offline

 

#5  2011-12-08 22:13:58

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: Uruchomienie skryptu wraz ze startem systemu

P@blo napisał(-a):

A mi to ostatnio nie działa... Czy wiadomo dlaczego?? Czy on 'wywołuje' rc.local z prawami root'a? Czyli czy mogę tam coś wsadzić co potrzebuje root'a??

Tak, rc.local jest wykonywany na prawach roota. Jak potrzebujesz na prawach użytkownika, to musisz użyć su (ja w ten sposób przy starcie systemu uruchamiam rtorrenta na screenie jako użytkownik).

Offline

 

#6  2011-12-08 22:19:05

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Uruchomienie skryptu wraz ze startem systemu

P@blo napisał(-a):

azhag napisał(-a):

A najprościej będzie dopisać go do /etc/rc.local

A mi to ostatnio nie działa... Czy wiadomo dlaczego?

Może wyłączyłeś uruchamianie rc.local w skryptach startowych?


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#7  2011-12-08 22:32:24

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: Uruchomienie skryptu wraz ze startem systemu

azhag napisał(-a):

P@blo napisał(-a):

azhag napisał(-a):

A najprościej będzie dopisać go do /etc/rc.local

A mi to ostatnio nie działa... Czy wiadomo dlaczego?

Może wyłączyłeś uruchamianie rc.local w skryptach startowych?

Gdzież to jest?


ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |

Offline

 

#8  2011-12-08 23:32:36

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: Uruchomienie skryptu wraz ze startem systemu

W sysv-rc-conf na przykład. Pamiętam, że coś o nim wspominałeś przy okazji innego wątku…

Offline

 

#9  2011-12-09 16:49:36

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: Uruchomienie skryptu wraz ze startem systemu

No tak... Jest tam ustawione 2,3,4,5 czyli tak jak powinno być :). Aktualnie jest tak:

Kod:

pablo@lena:~$ cat /etc/rc.local 
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
echo 1 > /sys/class/backlight/intel_backlight/brightness
echo 0 > /proc/acpi/ibm/bluetooth

exit 0

Przy starcie systemu wyświetla (*) się:

Kod:

startpar: service(s) returned failure: rc.local ... failed!

Gdy miałem te dwie pozycje w moim skrypcie:

Kod:

pablo@lena:~$ cat Desktop/mystartup 
#!/bin/bash
### BEGIN INIT INFO
# Provides:        mystartup
# Required-Start:    $remote_fs $syslog
# Required-Stop:    $remote_fs $syslog
# Default-Start:    2 3 4 5
# Default-Stop:        0 1 6
# Short-Description: my script
# Description:       Enable service provided by daemon.
### END INIT INFO
#update-rc.d mystartup defaults 100

echo -n "Starting MyStartup: "

case "$1" in
    start)
    echo 0 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable
    echo 1 > /sys/class/backlight/acpi_video0/brightness
    echo "$1"
    exit 1
    ;;

    stop)
    echo 1 > /sys/devices/platform/thinkpad_acpi/bluetooth_enable
    echo 5 > /sys/class/backlight/acpi_video0/brightness
    echo "$1"
    exit 1
    ;;
    *)
    echo "Usage: "$0" {start|stop}"
esac

exit 0

to (*) przy starcie systemu też się pojawiało... No ale działało, czyli wyłączało bluta i sciemniało. Teraz gdy siedzi to w rc.local nie robi tego... No i moje rc wywołuje się na samy końcu... Wiadomo co może być przyczyną?


ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |

Offline

 

#10  2011-12-09 18:19:47

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: Uruchomienie skryptu wraz ze startem systemu

To ma się wywoływać na końcu, czyli jest OK. Może te polecenia po prostu nie działają? Weź wpisz tam zamiast nich:

Kod:

echo dupa > /tmp/test

I zobacz po restarcie systemu:

Kod:

cat /tmp/test

Offline

 

#11  2011-12-09 20:27:19

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: Uruchomienie skryptu wraz ze startem systemu

Nie no, to działa! Ogólnie rc.local działa. :) Właśnie zrobiłem identyczny test wcześniej i okazało się, że to jest ok, ale problem jest taki, że te komendy nie działają... No, ale w tym moim skrypcie jak są to działają. Więc problem jest taki, że nie działają jak są w rc.local... Trochę namieszałem, ale mam nadzieje, że wiadomo o co chodzi :D

Ostatnio edytowany przez P@blo (2011-12-09 20:28:18)


ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |

Offline

 

#12  2011-12-09 20:42:56

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: Uruchomienie skryptu wraz ze startem systemu

W tym Twoim skrypcie są inne ścieżki niż te co dałeś w rc.local.

Offline

 

#13  2011-12-09 21:07:44

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: Uruchomienie skryptu wraz ze startem systemu

(...) o_0 ale wstyd...

Nie ma to jak świeże oko... ;p Dzięki :D


ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |

Offline

 

#14  2011-12-13 21:37:57

  paw4el - Użytkownik

paw4el
Użytkownik
Skąd: wielkopolska
Zarejestrowany: 2010-07-05

Re: Uruchomienie skryptu wraz ze startem systemu

A więc dodałem do

Kod:

/etc/rc.local

taki wpis

Kod:

su pawel -c "python /home/pawel/script/script.py"

Niestety jest problem bo p wisaniu takowego polecenia w konsoli jest pytanie o hasło. Jak to obejść?

Offline

 

#15  2011-12-13 22:04:52

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: Uruchomienie skryptu wraz ze startem systemu

Hm? root (z którego rc.local jest wykonywany) powinien się przelogować bez hasła...


Błogosławieni, którzy czynią FAQ.
opencaching :: debian sources.list :: coś jakby blog :: polski portal debiana :: linux user #403712

Offline

 

#16  2011-12-13 22:14:21

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Uruchomienie skryptu wraz ze startem systemu

Spróbuj wpisać w local:

Kod:

sudo -u  pawel python  /home/pawel/script/script.py

Pozdro
;-)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#17  2011-12-13 22:14:51

  fervi - Użytkownik

fervi
Użytkownik
Zarejestrowany: 2010-03-14

Re: Uruchomienie skryptu wraz ze startem systemu

@UP
Szybszy fus :D

Spróbuj

Kod:

sudo -u <user> <command>

Fervi

Ostatnio edytowany przez fervi (2011-12-13 22:15:20)

Offline

 

#18  2011-12-13 22:16:49

  paw4el - Użytkownik

paw4el
Użytkownik
Skąd: wielkopolska
Zarejestrowany: 2010-07-05

Re: Uruchomienie skryptu wraz ze startem systemu

A bez "sudo" się nie da ?

OK, zainstalowałem sudo
Dodałem linijkę:

Kod:

pawel localhost = /home/pawel/script/script.py

do

Kod:

/etc/sudousers

i po wpisaniu w konsoli

Kod:

sudo -u pawel python  /home/pawel/script/script.py

mam komunikat:


Kod:

pawel nie ma uprawnień do uruchamiania sudo na debian. Ten incydent zostanie zgłoszony.

Ostatnio edytowany przez paw4el (2011-12-13 22:54:54)

Offline

 

#19  2011-12-13 23:27:42

  marcin'82 - Użytkownik

marcin'82
Użytkownik
Zarejestrowany: 2011-10-02

Re: Uruchomienie skryptu wraz ze startem systemu

Wpis w /etc/sudoers zmień w taki sposób - de facto chodzi o sudo bez hasła i program, który wykonuje skrypt, bo to pythona wywołujesz z "parametrem" sudo:

Kod:

pawel ALL= NOPASSWD: /usr/bin/python

W tym przypadku plik:

Kod:

/home/pawel/script/script.py

musi "móc być wykonywanym" przez wszystkich (#):

Kod:

chmod a+x /home/pawel/script/script.py

Daj znać, czy przypadkiem nie działa ;]

Ostatnio edytowany przez marcin'82 (2011-12-13 23:51:40)

Offline

 

#20  2011-12-14 00:21:43

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Poznań, Polska
Zarejestrowany: 2007-12-22
Serwis

Re: Uruchomienie skryptu wraz ze startem systemu

paw4el: napisz dokładnie jakie polecenia wpisujesz i jaki wynik otrzymujesz. /etc/rc.local jest wykonywany na prawach superużytkownika i samo su nie ma prawa pytać o hasło. Natomiast może być tak, że skrypt który próbujesz uruchomić, pyta o jakieś hasło i Twoje pytanie dotyczy tego, jak z poziomu rc.local to hasło mu wprowadzić. Może być również tak, że ten skrypt wywołuje gdzieś os.system("sudo costam") (czy jak tam się takie rzeczy zapisuje w Pythonie) i to sudo pyta o hasło. Bez konkretnych wiadomości diagnostycznych (i prawdopodobnie treści skryptu, który wywołujesz) nasze próby pomocy Tobie będą przypominały błądzenie pijanych dzieci we mgle.

Offline

 

#21  2011-12-14 00:40:14

  paw4el - Użytkownik

paw4el
Użytkownik
Skąd: wielkopolska
Zarejestrowany: 2010-07-05

Re: Uruchomienie skryptu wraz ze startem systemu

Z konsoli zwykłego użytkownika:

Kod:

cd /home/pawel/script
./script.py

Nie mam żadnego pytania o hasło.

Nadal w konsoli zwykłego użytkownika:

Kod:

su pawel -c "/home/pawel/script/script.py"

Pytanie o hasło.


Gdy z konsoli roota wykonuje polecenie

Kod:

su pawel -c "/home/pawel/script/script.py"

to pytania o hasło nie ma.

PS. Dodam jeszcze że jest to skrypt gnome-shell-google-calendar.py

W pliku:

Kod:

/etc/rc.local

mam taki wpis:

Kod:

su -u pawel "/home/pawel/scripts/script.py"
exit 0

Skrypt nie jest uruchomiony bądź uruchamia się z błędami.
Skrypt musi być uruchomiony z poziomu zwykłego usera.

Ostatnio edytowany przez paw4el (2011-12-14 00:47:25)

Offline

 

#22  2011-12-14 03:18:36

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Uruchomienie skryptu wraz ze startem systemu

PS. Dodam jeszcze że jest to skrypt gnome-shell-google-calendar.py

Jesli to skrypt do Gnome - to czy przypadkiem w Gshell nie zachowało się takie magiczne miejsce:
System=>Preferencje=>Programy Startowe?

<OT>
Co Debian stał się taki skomplikowany ostatnio?
Bo w strasznym i przerażającym Gentoo mam taki folder:

Kod:

ls -l /etc/local.d
razem 20
-rwxr-xr-x. 1 root root   59 10-21 15:23 arpbrama.start
-rwxr-xr-x. 1 root root  330 06-14 15:47 fbtheme.start
-rwxr-xr-x. 1 root root   80 10-30 01:47 inne.start
-rw-r--r--. 1 root root  387 10-19 17:56 README

I jak tam coś wrzucę i odpowiednio nazwę, to jeszcze się nie zdażyło, żeby nie działało..
</OT>

I jeszcze jedno:
Dlaczego tego niezwykle ważnego skryptu nie zapiszesz w zmiennej $PATCH $PATH - w /usr/local/bin jako skrypt, żeby był uruchamiany, jak każdy normalny program?

Pozdro
;-)

Ostatnio edytowany przez azhag (2011-12-14 08:41:56)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#23  2011-12-14 08:35:24

  ArnVaker - Kapelusznik

ArnVaker
Kapelusznik
Skąd: Midgard
Zarejestrowany: 2009-05-06

Re: Uruchomienie skryptu wraz ze startem systemu

Jacekalex napisał(-a):

Jesli to skrypt do Gnome - to czy przypadkiem w Gshell nie zachowało się takie magiczne miejsce:
System=>Preferencje=>Programy Startowe?

Chyba nie, ale powinno dać się tam dobić via:

Kod:

gnome-session-properties

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)