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  2015-08-16 23:03:45

  BodzioSZ - Użytkownik

BodzioSZ
Użytkownik
Skąd: Na Solláin
Zarejestrowany: 2014-12-21

Wykonywanie zawartosci /etc/rc.local

Witajcie

Macie moze jakies wytlumaczenie dlaczego zawartosc /etc/rc.local nie wykonuje sie wraz ze startem systemu ?
Ostatnio cos chcialem dopisac i lipa. Niestety nie dziala.
Plik /etc/init.d/rc.local wyglada tak :

Kod:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          rc.local
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist
### END INIT INFO


PATH=/sbin:/usr/sbin:/bin:/usr/bin

. /lib/init/vars.sh
. /lib/lsb/init-functions

do_start() {
    if [ -x /etc/rc.local ]; then
            [ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)"
        /etc/rc.local
        ES=$?
        [ "$VERBOSE" != no ] && log_end_msg $ES
        return $ES
    fi
}

case "$1" in
    start)
    do_start
        ;;
    restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
        ;;
    stop)
        ;;
    *)
        echo "Usage: $0 start|stop" >&2
        exit 3
        ;;
esac

Wszystko wskazuje na to ze jezeli /etc/rc.local istnieje i jest wykonywalny to powinna byc uruchamiana jego zawartosc wraz ze startem systemu.
Niestety nie dziala. Ma ktos pomysl dlaczego tak moze byc /
Acha to jest raspbmc wiec moze jest cos charkterystycznego w tej dystrybucji o czym ja nie wiem ?
Dzieki za pomoc.

Offline

 

#2  2015-08-16 23:08:43

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Wykonywanie zawartosci /etc/rc.local

2139

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:22:10)

Offline

 

#3  2015-08-16 23:24:44

  BodzioSZ - Użytkownik

BodzioSZ
Użytkownik
Skąd: Na Solláin
Zarejestrowany: 2014-12-21

Re: Wykonywanie zawartosci /etc/rc.local

Ma inetd. To bazuje na debianie wheezy 7.8 armv6l. Postawione na RPI.

Offline

 

#4  2015-08-17 00:06:47

  gindek - Zubr, bydle na etacie.

gindek
Zubr, bydle na etacie.
Skąd: Z puszczy.
Zarejestrowany: 2008-12-08

Re: Wykonywanie zawartosci /etc/rc.local

Jako ze nie wiem co robiłeś i co sprawdzałeś to klepne co mi do głowy wpadło. (częściowo trywialne, ale co mi szkodzi zapytać).


1.
Z palca odpala ?

Kod:

/etc/init.d/rc.local start

2.
Moze jak modyfikowales plik rc.local to usunoles mu prawa wykonywania :-). (albo pierwsza linijka jest exit 0)

3.
Z jakimi run lvl skrypt się obecnie odpala ?


" Wojny przychodzą i odchodzą, a moi żołnierze są wieczni"


"Zbuduj mały, dziarski router z udostępnionych przez prowadzącego części od Kamaza?"

Offline

 

#5  2015-08-17 00:28:13

  tajwan - mega boss

tajwan
mega boss
Skąd: Śląsk
Zarejestrowany: 2010-03-30

Re: Wykonywanie zawartosci /etc/rc.local

Brakuje ci na końcu.

Kod:

exit 0

NIGDY WIĘCEJ TESTING Z KTÓRYM SĄ SAME PROBLEMY !!!

Offline

 

#6  2015-08-17 00:28:18

  BodzioSZ - Użytkownik

BodzioSZ
Użytkownik
Skąd: Na Solláin
Zarejestrowany: 2014-12-21

Re: Wykonywanie zawartosci /etc/rc.local

1.
Z palca odpala ?

Kod:

/etc/init.d/rc.local start

Tak. Juz to wczesniej sprawdzalem i dlatego sie dziwie ze /etc/rc.local nie startuje z systemem

2.
Moze jak modyfikowales plik rc.local to usunoles mu prawa wykonywania :-). (albo pierwsza linijka jest exit 0)

Ma prawa wykonywania. Exit 0 jest ostatnia linijka. Wszystko dopisywalem bezposrednio nad exit 0.

3.
Z jakimi run lvl skrypt się obecnie odpala ?

Tak jak powinien 2 3 4 5

Kod:

pi@raspbmc:~$ for i in 2 3 4 5; do ls -l /etc/rc$i.d/ | grep local; done
lrwxrwxrwx 1 root root  18 Aug  3 23:11 S22rc.local -> ../init.d/rc.local
lrwxrwxrwx 1 root root  18 Aug  3 23:11 S22rc.local -> ../init.d/rc.local
lrwxrwxrwx 1 root root  18 Aug  3 23:11 S22rc.local -> ../init.d/rc.local
lrwxrwxrwx 1 root root  18 Aug  3 23:11 S22rc.local -> ../init.d/rc.local

tajwan napisał(-a):

Brakuje ci na końcu.

Kod:

exit 0

Nie nie brakuje.

Ostatnio edytowany przez BodzioSZ (2015-08-17 00:32:00)

Offline

 

#7  2015-08-17 00:41:29

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Wykonywanie zawartosci /etc/rc.local

2140

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:22:12)

Offline

 

#8  2015-08-17 01:09:36

  BodzioSZ - Użytkownik

BodzioSZ
Użytkownik
Skąd: Na Solláin
Zarejestrowany: 2014-12-21

Re: Wykonywanie zawartosci /etc/rc.local

uzytkownikubunt napisał(-a):

Kod:

update-rc.d rc.local enable
chkconfig rc.local on

Może po czymś takim i restarcie ruszy.

Dalej nie idzie. Generalnie to jakiejs tragedi niema bo sobie klepne z reki co mi potrzebne.
Denerwuje mnie tylko ze nie dziala tak jak powinno :)

Offline

 

#9  2015-08-17 09:34:39

  Yampress - Imperator

Yampress
Imperator
Zarejestrowany: 2007-10-18

Re: Wykonywanie zawartosci /etc/rc.local

Przecież wszelakie programu do startu systemu dopisuje się do pliku /etc/rc.local a nie do /etc/init.d/rc.local
Ten ostatni plik wczytuje tego pierwszego...

Offline

 

#10  2015-08-17 10:45:37

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: Wykonywanie zawartosci /etc/rc.local

BodzioSZ napisał(-a):

Ma inetd. To bazuje na debianie wheezy 7.8 armv6l. Postawione na RPI.

Raspbian się nazywa.

Pokaż:

Kod:

cat /etc/rc.local

https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#11  2015-08-17 11:23:42

  BodzioSZ - Użytkownik

BodzioSZ
Użytkownik
Skąd: Na Solláin
Zarejestrowany: 2014-12-21

Re: Wykonywanie zawartosci /etc/rc.local

Yampress napisał(-a):

Przecież wszelakie programu do startu systemu dopisuje się do pliku /etc/rc.local a nie do /etc/init.d/rc.local
Ten ostatni plik wczytuje tego pierwszego...

Wiem ja tylko klepnalem /etc/init.d/rc.local start zeby sprawdzic czy sie ykonuje zawartosc /etc/rc.local. No i jak z reki wpisze to dziala a przy starcie systemu juz nie.

mati75 napisał(-a):

Raspbian się nazywa.

Tak to okrojony Raspbian + Kodi

Pokaż:

Kod:

cat /etc/rc.local

Kod:

pi@raspbmc:~$ 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 > /home/pi/testrc # to tylko testowy przyklad

exit 0

Offline

 

#12  2015-08-18 08:26:55

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: Wykonywanie zawartosci /etc/rc.local

Kod:

echo > /home/pi/testrc

Coś takiego nigdy nie będzie działać.

Jak chcesz zrobić to:

Kod:

touch /home/pi/testrc

https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#13  2015-08-18 10:44:31

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wykonywanie zawartosci /etc/rc.local

dlaczego nie będzie? poważnie pytam.


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#14  2015-08-18 11:42:23

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: Wykonywanie zawartosci /etc/rc.local

U mnie wali, że nie może ścieżki znaleźć.


https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#15  2015-08-18 12:01:26

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wykonywanie zawartosci /etc/rc.local

wciórności... aż sprawdzę jak wrócę do domciu, bo z czymś takim się nigdy nie spotkałem.
rozumiem że shell to bash?


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#16  2015-08-18 12:12:37

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Wykonywanie zawartosci /etc/rc.local

2143

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:22:15)

Offline

 

#17  2015-08-18 12:32:44

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wykonywanie zawartosci /etc/rc.local

nie wiem jak w *bsd, ale w pozostałych unixopodobnych /bin/sh to softlink do /bin/cośtam (albo jeszcze jakiś patent jeśli tubylczy fs nie obsługuje softlinków).  a że spotkałem się z sytuacją że /bin/sh był linkiem do ash - wolę zapytać.
btw. wstawianie -e do rc.local to nie jest dobry pomysł...

dopisane po przeczytaniu dopisania:
wiesz, w tym przypadku mamy do czynienia z konkretną dystrybucją (raspbian/raspbmc) która z *bsd ma niewiele wspólnego, ale miewa swoje widzimisię :)

Ostatnio edytowany przez ethanak (2015-08-18 12:36:31)


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#18  2015-08-18 13:19:10

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: Wykonywanie zawartosci /etc/rc.local

ethanak napisał(-a):

rozumiem że shell to bash?

/etc/rc.local wykonuje się jako /bin/sh,

jako bash pięknie przechodzi.


https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#19  2015-08-18 13:22:07

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wykonywanie zawartosci /etc/rc.local

to czym, wciórności, jest /bin/sh???


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#20  2015-08-18 13:30:26

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Wykonywanie zawartosci /etc/rc.local

2144

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:22:17)

Offline

 

#21  2015-08-18 14:50:49

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wykonywanie zawartosci /etc/rc.local

to jak nie masz to zawrzyj paszczę, bo jak znam życie to raspbiana na oczy nie widziałeś a próbujesz się wykreować na eksperta...

ech... błogosławieni niech będą ci, którzy nie mając nic do powiedzenia nie ubierają tego w słowa...


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

#22  2015-08-18 23:17:55

  mati75 - Psuj

mati75
Psuj
Skąd: masz ten towar?
Zarejestrowany: 2010-03-14

Re: Wykonywanie zawartosci /etc/rc.local

Teoretycznie /bin/sh to symlink /bin/bash, ale bashem to nie jest. Chyba że mój system jest dziwny, bo u mnie domyślnym shellem jest zsh.


https://l0calh0st.pl/obrazki/userbar.png

Offline

 

#23  2015-08-18 23:57:10

  uzytkownikubunt - Zbanowany

uzytkownikubunt
Zbanowany
Zarejestrowany: 2012-04-25

Re: Wykonywanie zawartosci /etc/rc.local

2145

Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:22:18)

Offline

 

#24  2015-08-19 01:11:22

  BodzioSZ - Użytkownik

BodzioSZ
Użytkownik
Skąd: Na Solláin
Zarejestrowany: 2014-12-21

Re: Wykonywanie zawartosci /etc/rc.local

Jak widać w tej wersji dystrybucji domyślny shell (dla skryptów) to dash co jest skrótem od Debian Almquist Shell. Oczywiście nie oznacza to 100% pewności jaki domyślny shell jest w Raspbmc. Tutaj najlepiej, gdyby autor pokazał wyniki komend, które ja wpisałem na Debianie

Kod:

pi@raspbmc:~$ ls -nh /bin/sh
lrwxrwxrwx 1 0 0 4 Jan  1  1970 /bin/sh -> dash
pi@raspbmc:~$ readlink -f /bin/sh
/bin/dash

Sprawdziłem jak wygląda oryginalny plik /etc/rc.local

U mnie jest identyczny zarowno w rapsbmc jak i w jessie na lapku.

Czy działa echo? Tak

U mnie tez dziala echo ale jak klepne z reki. Przy starcie systemu nie dziala i nie wiem dlaczego.

Offline

 

#25  2015-08-19 17:35:36

  ethanak - Użytkownik

ethanak
Użytkownik
Skąd: Ungwenor
Zarejestrowany: 2010-07-19
Serwis

Re: Wykonywanie zawartosci /etc/rc.local

To tak podsumowując:

1) przedstawiamy się:

Kod:

pi@bufka ~ $ uname -a
Linux bufka 3.12.28+ #709 PREEMPT Mon Sep 8 15:28:00 BST 2014 armv6l GNU/Linux
pi@bufka ~ $ cat /etc/debian_version 
7.6

(jajco dość stare ale w nowszych miałem problemy z 1wire, a na dłuższe niedziałanie maszynki zimą nie mogłem sobie pozwolić, a teraz mi się nie chce grzebać)
2) /etc/init.d/rc.local oryginalny, czyli:

Kod:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          rc.local
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist
### END INIT INFO


PATH=/sbin:/usr/sbin:/bin:/usr/bin

. /lib/init/vars.sh
. /lib/lsb/init-functions

do_start() {
    if [ -x /etc/rc.local ]; then
            [ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)"
        /etc/rc.local
        ES=$?
        [ "$VERBOSE" != no ] && log_end_msg $ES
        return $ES
    fi
}

case "$1" in
    start)
    do_start
        ;;
    restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
        ;;
    stop)
        ;;
    *)
        echo "Usage: $0 start|stop" >&2
        exit 3
        ;;
esac

3) Mój /etc/rc.local (końcowe echo dodane specjalnie żeby sprawdzić):

Kod:

#!/bin/sh
#
# 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.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi

for i in 17 27 19 20 12 26 6 13; do
    /usr/local/bin/gpio -g mode $i output
    /usr/local/bin/gpio -g write $i 0
done

echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
sleep 5
/sbin/hwclock -s && touch /dev/shm/date_ok

#touch /dev/shm/hostapd.enable
amixer set Speaker 20
echo $SHELL > /home/pi/whatsmyshell.txt
exit 0

4. I w efekcie po reboocie:

Kod:

pi@bufka ~ $ cat whatsmyshell.txt 
/bin/sh

Ergo: echo działa
Przy okazji:

Kod:

pi@bufka ~ $ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 sty  1  1970 /bin/sh -> dash

/edit/
A jeszcze przy okazji - jakby echo nie działało to bym nie miał zegarka, prawda?

Ostatnio edytowany przez ethanak (2015-08-19 17:40:26)


Nim mechaniczne larum zagrasz mi, kanalio,
głosząc nadejście Javy - śmiertelnego wroga!
Zespół Adwokacki Dyskrecja

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)