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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.


Członek DUG



Ja mam takie pytanie, bo w /etc/init.d są skrypty które można tam dodać komendą (teraz niepamiętam) do startowych i przy starcie zostanie wywołany taki skrypt z jaką zmienną ?? Jak mam start|stop|restart ???
Bo sam napisałem taki skrypt firewalla i niewiem jak to jest:P
Offline
Kawałek ze spryptu od MySQL:
case "${1:-''}" in
'start')
# check for config file
if [ ! -r /etc/mysql/my.cnf ]; then
/bin/echo -e "nWARNING: /etc/mysql/my.cnf cannot be read. See README.Debian.gz"
fi
# Start daemon
echo -n "Starting MySQL database server: mysqld"
if mysqld_status check_alive nowarn; then
echo "...already running."
else
/usr/bin/mysqld_safe > /dev/null 2>&1 &
for i in 1 2 3 4 5 6; do
sleep 1
if mysqld_status check_alive nowarn ; then break; fi
done
if mysqld_status check_alive warn; then
echo "."
# Now start mysqlcheck or whatever the admin wants.
/etc/mysql/debian-start
else
echo "...failed or took more than 6s."
/bin/echo -e "tPlease take a look at the syslog."
fi
fi
if $MYADMIN variables | egrep -q have_bdb.*YES; then
/bin/echo "BerkeleyDB is obsolete, see /usr/share/doc/mysql-server-5.0/README.Debian.gz" | $ERR_LOGGER -p daemon.info
fi
;;
'stop')
# * As a passwordless mysqladmin (e.g. via ~/.my.cnf) must be possible
# at least for cron, we can rely on it here, too. (although we have
# to specify it explicit as e.g. sudo environments points to the normal
# users home and not /root)
echo -n "Stopping MySQL database server: mysqld"
if ! mysqld_status check_dead nowarn; then
set +e
shutdown_out=`$MYADMIN shutdown 2>&1`; r=$?
set -e
if [ "$r" -ne 0 ]; then
/bin/echo -e -n "...failed.n$shutdown_outnKilling MySQL database server by signal: mysqld"
killall -15 mysqld
server_down=
for i in 1 2 3 4 5 6 7 8 9 10; do
sleep 1
if mysqld_status check_dead nowarn; then server_down=1; break; fi
done
if test -z "$server_down"; then killall -9 mysqld; fi
fi
fi
if ! mysqld_status check_dead warn; then
echo "...failed."
echo "Please stop MySQL manually and read /usr/share/doc/mysql-server-5.0/README.Debian.gz!"
exit -1
else
echo "."
fi
;;
'restart')
set +e; $SELF stop; set -e
$SELF start
;;
'reload'|'force-reload')
echo -n "Reloading MySQL database server: mysqld"
$MYADMIN reload
echo "."
;;
'status')
if mysqld_status check_alive nowarn; then
$MYADMIN version
else
echo "MySQL is stopped."
exit 3
fi
;;
*)
echo "Usage: $SELF start|stop|restart|reload|force-reload|status"
exit 1
;;
esac
Popatrzeć i brzerobić według własnego uznania.


Członek DUG
Przy starcie systemu skrypt jest zawsze wywoływany ze zmnienną start...


Członek DUG


Członek DUG



No to teraz zagadka :) zrobiłem sobie skrypta dodałem przez update-rc.d firewall defaults 20 i.... niestartuje z kompem kaaramba poniżej skrypt :)
Dodam że normanie firewall start jak i inne opcje działają :) i tam gdzie się mial dodać się dodał simlink .....
#!/bin/bash
#PATH=/sbin:/bin:/usr/sbin:/usr/bin
case "$1" in
start)
echo "STARTUJEMY FIREWALL JAAAZDA "
if [ ! "$2" == "" ]; then
NOC="/root/skrypty/inet/config_noc"
DZIEN="/root/skrypty/inet/config_dzien"
CEL="/root/skrypty/inet/rc.fire_conf"
if [ -s $NOC ]; then
if [ -s $DZIEN ]; then
if [ -s $CEL ]; then
if [ "$2" == "noc" ]; then
cp -v $NOC $CEL
else
cp -v $DZIEN $CEL
fi
fi
fi
fi
fi
/root/skrypty/inet/rc.firewall start
/root/skrypty/inet/rc.hfsc start
;;
stop)
echo "ZATRZYMUJEMY FIREWALL'a "
/root/skrypty/inet/rc.firewall stop
/root/skrypty/inet/rc.hfsc stop
;;
test)
if [ -z "$2" ]; then
CZAS="20"
fi
if [ ! -z "$2" ]; then
CZAS="$2"
fi
echo "Włączam Firewalla na $CZAS sekund"
/root/skrypty/inet/rc.firewall start
/root/skrypty/inet/rc.hfsc start
echo `sleep $CZAS`
/root/skrypty/inet/rc.firewall stop
/root/skrypty/inet/rc.hfsc stop
;;
*)
echo "Dostępne opcje: /etc/init.d/firewall {start|stop|test time}" >&2
exit 1
;;
esac
Offline



Administrator




Odpal go ręcznie i sprawdz czy nie wyrzuca błędów. Sprawdź też czy na pewno powstały dowiązania w katalogach runleveli, czy startuje i konczy działanie w odpowiednich runlevelach. No i chyba kolejnosc jest ważna dobrze jakby startował po postawionych interfejsach sieciowych.
Offline


Członek DUG


Członek DUG



Interfejsy sa podnoszone już w rcS.d także nie ma obaw że odpalisz skrypt wcześniej niż interfejsy. Co do skrytpu to sprawdź czy odwołanie w katalogu rc2.d ma literke S przy nazwie.
Offline


Członek DUG


Użytkownik



hej, skrypt w np, /etc/rc2.d(start systemu - muliuser), bedzie uruchamial tylko podwarunkiem ze w linku bedzie litera S np. S99proftpd
gdybysmy chcieli zeby bylo killowane to link musialby miec nazwe K99proftp gdzie K-kill, S-start numer - numer uslugi kiedy startuje i nazwa deamona
Offline