Skrypty startowe mldonkey

Tomasz Pala gotar at polanet.pl
Tue Dec 8 18:04:53 CET 2015


On Tue, Dec 08, 2015 at 10:58:37 +0100, Łukasz Maśko wrote:

> Na skutek ewolucji skryptów rc-scripts (najwyraźniej) przestał mi startować 
> poprawnie mldonkey. W tej chwili w jego skrypcie startowym jest takie coś:
> 
> daemon --fork --user $USER "cd ~$USER && exec $MLDONKEY_PATH > ${LOG:-/dev/null} 2>&1"

daemon wymaga pełnej ścieżki. Masz ścieżkę do cd?

> No i wykłada się to tak:
> 
> $ sudo service mldonkey start
> Uruchamianie usługi mldonkey..................................... [ PROBLEMY ]
> setsid: nie udało się uruchomić cd: Nie ma takiego pliku ani katalogu
> MLDonkey could not be started! Check logfile: /var/log/mldonkey.log
> 
> Poprawiłem na:
> daemon --fork --user $USER --chdir ~$USER "exec $MLDONKEY_PATH > ${LOG:-/dev/null} 2>&1"
> 
> ale to dalej jest źle:
> $ sudo service mldonkey start
> Uruchamianie usługi mldonkey..................................... [  ZAJĘTY  
> ]/etc/rc.d/init.d/mldonkey: cd: /~mldonkey: No such file or directory
>                                                                   [ PROBLEMY ]
> setsid: nie udało się uruchomić exec: Nie ma takiego pliku ani katalogu

Bo tak samo jak cd, również exec jest konstrukcją shella. Aby jej użyć musisz

sh -c exec

> Czy macie jakieś propozycje, jak poprawić ten skrypt? Bo z tego co widzę, to 
> sporo (co do zasad) się zmieniło w samych rc-scripts ostatnio.

Nie tyle pewnie zmieniło, co zostały załatane dziury, którymi
uruchamiano takie usługi. Jak można demonizować polecenie wbudowane
shella? Nie można i słusznie, że teraz nie działa. Ale czy rozsądne jest
wołanie dodatkowego shella, to też wątpię. Oczywiście dodawanie & na
końcu daemona to też pomyłka - zobacz, co już robi opcja --fork:

                        prog="/usr/bin/setsid sh -c \""
                        end='&'

Zresztą pooglądaj sobie /etc/rc.d/init.d/functions (ja to mam z baaardzo
starej wersji, w lutym 7 lat stuknie), może ktoś faktycznie zepsuł.

Niech żyje SysV! :)

-- 
Tomasz Pala <gotar w pld-linux.org>


More information about the pld-devel-pl mailing list