dodanie polecenia do autostartu nie dzia

Ogólne pytania dotyczące systemu
marcinpruciak
Posty: 64
Rejestracja: 13 sierpnia 2008, 18:28

dodanie polecenia do autostartu nie działa

Post autor: marcinpruciak »

Mam problem w dodaniu jednego polecenia do autostartu, które chciałbym aby było wykonywane zawsze gdy komputer jest włączony.
Dawniej wystarczyło je wkleić do /etc/rc.local, ostatnio widocznie coś się zmieniło, bo skrypt nie uruchamia się. Próbowałem dodać ten skrypt do /etc/init.d/ wg różnych poradników w sieci, jednak żaden z nich nie był poprawny i skrypt i tak nie uruchamia się.
Proszę o pomoc, lub działający poprawnie poradnik krok po kroku.
Dziękuję z góry.
Awatar użytkownika
lun
Beginner
Posty: 266
Rejestracja: 01 lutego 2010, 22:06
Lokalizacja: Warszawa

Post autor: lun »

Jak dla mnie nic się nie zmieniło. Przed momentem sprawdziłem i skrypty z rc.local wykonują się po starcie systemu. Próbowałeś wykonać skrypt "z ręki"?
marcinpruciak
Posty: 64
Rejestracja: 13 sierpnia 2008, 18:28

Post autor: marcinpruciak »

Skrypt z ręki działa nawet w tej chwili. Nie uruchamia się tylko po resecie.
Jesteś pewny że rc.local nadal działa? Mam debiana 6. Szukając poradników gdzieś przeczytałem że Debian już z tego pliku nie korzysta, chyba że gdzies się to włącza.
Awatar użytkownika
lun
Beginner
Posty: 266
Rejestracja: 01 lutego 2010, 22:06
Lokalizacja: Warszawa

Post autor: lun »

Tak, przed chwilą sprawdzałem na wirtualnej maszynie z Debianem 6. A spytam jeszcze w którym pliku rc.local dodałeś skrypt? /etc/rc.local czy /etc/init.d/rc.local?
marcinpruciak
Posty: 64
Rejestracja: 13 sierpnia 2008, 18:28

Post autor: marcinpruciak »

/etc/rc.local
Awatar użytkownika
lun
Beginner
Posty: 266
Rejestracja: 01 lutego 2010, 22:06
Lokalizacja: Warszawa

Post autor: lun »

No to naprawdę nie wiem czemu może ci nie działać. Wklejasz tam cały skrypt, czy tylko wywołanie z innego pliku .sh?

Kod: Zaznacz cały

cat /etc/rc.local
...
touch /tmp/datefile
echo `date` > /tmp/datefile

Kod: Zaznacz cały

cat /tmp/datefile
TUE FEB 22 17:59:52 CET 2011
Datą się nie sugeruj bo to wirtualna maszyna.

Edycja:
Spróbuj zrobić jeszcze

Kod: Zaznacz cały

/bin/bash /etc/rc.local
marcinpruciak
Posty: 64
Rejestracja: 13 sierpnia 2008, 18:28

Post autor: marcinpruciak »

Wywołuje inny plik bo mam tam pętle.
Wygląda tak:

Kod: Zaznacz cały

vz4407:~# 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.

        /etc/init.d/test &

#mkdir /tmp/eaccelerator
#chmod 777 /tmp/eaccelerator
#/etc/init.d/httpd restart


exit 0
Dodane:
Jakieś pomysły? Próbowałem też, skopiować skrypt do /etc/init.d

Kod: Zaznacz cały

chmod +x

Kod: Zaznacz cały

update-rc.d test defaults
A i tak nie uruchamia się.
Awatar użytkownika
lun
Beginner
Posty: 266
Rejestracja: 01 lutego 2010, 22:06
Lokalizacja: Warszawa

Post autor: lun »

A zrobiłeś?
Edycja:
Spróbuj zrobić jeszcze
Kod:

Kod: Zaznacz cały

/bin/bash /etc/rc.local
W innym temacie poruszono jeszcze taki wątek że skrypty w rc.local mogą się nie uruchomić, jeśli korzystają z X'ów (Gnome, KDE, itp.).
a co robi u ciebie ten skrypt?
marcinpruciak
Posty: 64
Rejestracja: 13 sierpnia 2008, 18:28

Post autor: marcinpruciak »

Gdy uruchamiam /etc/rc.local ręcznie, skrypt działa, ale

Kod: Zaznacz cały

 top
pokazuje, że rc.local zużywa 50% procesora.
Skrypt pobiera curlem inną stronę w pętli cosekundowej. X-sów nie ma na serwerze.

Udało mi się rozwiązać zagadkę. Problemem była niepełna ścieżka do curla.
ODPOWIEDZ