Пара вопросов...?

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Серёга
Сообщения: 201
ОС: Windows XP

Пара вопросов...?

Сообщение Серёга »

Привет всем.

1)Немогу запустить скрипт для работы в автозагрузке - почему-то не загружается.

Скрипт поднятия DVB карты и запуска Globax - назвал stv. Если в консоли под root даю команду stv start , не переходя в каталог где он лежит, то - он нормально запускается. Права на фаил 0755 root/root. Скрипт этот лежит в /usr/local/bin/stv.

В файле /etc/rc.d/rc.local я дописал строку: /usr/local/bin/stv start - но он не запускается почемуто. Как надо вписать чтобы работал или как его заставить запускаться? Дистрибутив Mandriva 2007 PP+.

2)Я вот в этой теме http://linuxforum.ru/index.php?showtopic=3...mp;#entry369531 писал про телефон что он разединяется раз в 30 минут примерно. Там эта проблемма так и не решилась вроде пока что, но я вот думаю если написать какой нибуть скрипт и сделать его запускаемым скажем с частотой в 1 минуту, то при падении телефона он мог бы автоматически перезванивать и тем самым удерживать связь постоянно. (не лучший конечно метод, но при невозможности сделать работу стабильной вполне сойдет)

Помогите пожалуйста с написанием скрипта для этого дела. Проверку я думаю можно основать на наличии в системе интерфейса ppp0 (при падении телефона этот инетрфейс просто исчезает)

Благодарю зарание за помощь
Спасибо сказали:
Аватара пользователя
Juliette
Сообщения: 5058
Статус: ROSA Lab
ОС: Ubuntu LTS, Mandriva 2011

Re: Пара вопросов...?

Сообщение Juliette »

Ну лучше всего выложить эти скрипты (только аттачем или в codebox'е), щас мужики посмотрят. :girl_smile:
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

Вот скрипт который поднимает DVB карту, он рабочий я сейчас через него пишу:

Код: Выделить всё

#!/bin/sh
DIR="/usr/local"
IP="82.yy.zz.xx"
MAC="00:D0:aa:xx:yy:zz"
#MAC="00:00:52:D3:A2:AA"
PID="514"
#GLOBAX_BIN="/usr/local/bin/globax"
GLOBAX_CONF="/usr/local/bin/globax.conf"

        cd $DIR/bin

        case "$1" in

        start)
#       rfcomm bind 1 00:13:70:00:2D:1D 1
#       rfcomm bind 0 00:13:70:00:2D:1D 3
        rmmod b2c2_flexcop_pci
        rmmod b2c2_flexcop
        rmmod stv0299
        rmmod dvb_core
        rmmod stv0297
        rmmod mt312
        sleep 10
#       echo "Loading drivers"
         modprobe dvb-core dvb_shutdown_timeout=0
         modprobe mt312
         modprobe b2c2_flexcop_pci
         modprobe b2c2_flexcop
         modprobe stv0297
         modprobe stv0299
#       echo "Creating devices"
        sleep 15
#       echo "Tuning..."
        szap -c /etc/channels.conf -n 1 -x 2>&1>/dev/null
        dvbnet -p $PID 2>&1>/dev/null
        ifconfig dvb0_0 $IP
        ifconfig dvb0_0 hw ether $MAC
        echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter
        #echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
        #$GLOBAX_BIN
        sleep 10
        globax $GLOBAX_CONF 2>&1>/dev/null
#       echo "All done"
           ;;

        stop)
        killall -9 globax
        ifconfig dvb0_0 down
        /usr/local/bin/dvbnet -d dvb0_0
           ;;

        restart)
            $0 stop
            $0 start
           ;;
        *)
            echo "Usage: `basename $0` start | stop | restart"
           ;;

        esac
Я пробовал в файле /etc/rc.d/rc.local вписать и так: /usr/local/bin/stv - всё равно на запускается при автозапуске.

По второму вопросу всё подробно расписано в теме по ссылки по этому я не стал выкладывать сюда весь материал. Я просто не знаю какой командой проверить наличие в системе телефона (устройства ppp0) и как правильно написать скрипт для этого.
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

вот на данный момент содержимое файла /etc/rc.d/rc.local

Код: Выделить всё

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.



touch /var/lock/subsys/local

/sbin/iptables-restore /usr/local/iptables-restore/tab1

/usr/local/squid/sbin/squid -D

/usr/local/bin/stv
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Пара вопросов...?

Сообщение Uncle_Theodore »

В /etc/rc.d/rc.local сделай пустую строчку в конце.
И слова start там почему-то нет...
Спасибо сказали:
Sleeping Daemon
Сообщения: 1450

Re: Пара вопросов...?

Сообщение Sleeping Daemon »

Серёга писал(а):
12.04.2007 16:37
Привет всем.

1)Немогу запустить скрипт для работы в автозагрузке - почему-то не загружается.

Скрипт поднятия DVB карты и запуска Globax - назвал stv. Если в консоли под root даю команду stv start , не переходя в каталог где он лежит, то - он нормально запускается. Права на фаил 0755 root/root. Скрипт этот лежит в /usr/local/bin/stv.

В файле /etc/rc.d/rc.local я дописал строку: /usr/local/bin/stv start - но он не запускается почемуто. Как надо вписать чтобы работал или как его заставить запускаться? Дистрибутив Mandriva 2007 PP+.

2)Я вот в этой теме http://linuxforum.ru/index.php?showtopic=3...mp;#entry369531 писал про телефон что он разединяется раз в 30 минут примерно. Там эта проблемма так и не решилась вроде пока что, но я вот думаю если написать какой нибуть скрипт и сделать его запускаемым скажем с частотой в 1 минуту, то при падении телефона он мог бы автоматически перезванивать и тем самым удерживать связь постоянно. (не лучший конечно метод, но при невозможности сделать работу стабильной вполне сойдет)

Помогите пожалуйста с написанием скрипта для этого дела. Проверку я думаю можно основать на наличии в системе интерфейса ppp0 (при падении телефона этот инетрфейс просто исчезает)

Благодарю зарание за помощь

А если в консоли из под рута запускать не просто stv start, а /usr/local/bin/stv start ?
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

А если в консоли из под рута запускать не просто stv start, а /usr/local/bin/stv start ?
так тоже работает.

В /etc/rc.d/rc.local сделай пустую строчку в конце.
И слова start там почему-то нет...
я пробовал писать и со словом start и с --start - я писал про это выше всё равно не работает. А зачем строка пустая нужна?

Я по этому вопросу нашол несколько статей: http://www.intuit.ru/department/os/linux/10/1.html http://linuxportal.ru/entry.php/21_0_3_0_C/ http://linux.yaroslavl.ru/docs/book/lfsboo...er07/usage.html и прочитав их стало ещё непонятней про загрузку.

Вот к примеру почему я вписал строку для запуска squid только в один фаил /etc/rc.d/rc.local и больше никуда не прописывал - он нормально запускается. Тоже самое и про команду для правил iptables - только в один фаил.

А для того чтобы запустить скрипт я должен, как я понял прочитав вышеуказанные статьи, сам скрипт поместить в /etc/rc.d/init.d или создать в этом каталоге ссылку на скрипт, и потом ещё сделать ссылку в каталоге /etc/rc.d/rc(к примеру 5).d на то что от запускаемого скрипта находится в /etc/rc.d/init.d ? Я или не правильно понял статьи, или не пойму зачем такие заморочки с запуском скриптов?

Просьба к знающим просвитить меня в этом вопросе, желательно на примере.
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Пара вопросов...?

Сообщение arkhnchul »

для телефона чего-нить типа искать грепом в выводе ps процесс pppd, если его нет - sudo pppd call skylink ...
Losing is fun!
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Пара вопросов...?

Сообщение Uncle_Theodore »

Серёга писал(а):
13.04.2007 15:23
так тоже работает.

я пробовал писать и со словом start и с --start - я писал про это выше всё равно не работает. А зачем строка пустая нужна?

Пустая строка сама по себе ни для чего не нужна. :)
Но чтобы ее сделать, ты нажмешь Enter после предыдущей команды.
А для того чтобы запустить скрипт я должен, как я понял прочитав вышеуказанные статьи, сам скрипт поместить в /etc/rc.d/init.d или создать в этом каталоге ссылку на скрипт, и потом ещё сделать ссылку в каталоге /etc/rc.d/rc(к примеру 5).d на то что от запускаемого скрипта находится в /etc/rc.d/init.d ? Я или не правильно понял статьи, или не пойму зачем такие заморочки с запуском скриптов?

Просьба к знающим просвитить меня в этом вопросе, желательно на примере.

Воспользуйся штатными средствами Мандривы. Что там есть, chkconfig, кажется?
http://club.mandriva.com/xwiki/bin/view/KB/AdminAdaemon
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

попробовал выполнить эту команду

Код: Выделить всё

[root@server ~]# chkconfig
chkconfig version 1.3.24 - Copyright (C) 1997-2000 Red Hat, Inc.
Может свободно распостраняться в рамках GNU Public License.

применение:   chkconfig --list [имя сервиса]
         chkconfig --add <имя сервиса>
         chkconfig --del <имя сервиса>
         chkconfig [--level <уровни>] <имя сервиса> <on|off|reset>
[root@server ~]# chkconfig --list
acpi            0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
acpid           0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
alsa            0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
apmiser         0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
atd             0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
autofs          0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
avahi-daemon    0:выкл  1:выкл  2:выкл  3:вкл   4:выкл  5:вкл   6:выкл
cpufreq         0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
crond           0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
dm              0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:вкл   6:выкл
haldaemon       0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
harddrake       0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
htcacheclean    0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
httpd           0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
iptables        0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
keytable        0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
kheader         0:выкл  1:выкл  2:вкл   3:вкл   4:выкл  5:вкл   6:выкл
lisa            0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
mdadm           0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
messagebus      0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
mtink           0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
mysql           0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
netfs           0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
network         0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
network-up      0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
nfs             0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
nfslock         0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
numlock         0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
oki4daemon      0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
partmon         0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
portmap         0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
routed          0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
rpcgssd         0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
rpcidmapd       0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
rpcsvcgssd      0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
smb             0:выкл  1:выкл  2:выкл  3:вкл   4:вкл   5:вкл   6:выкл
sound           0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
syslog          0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
ultrabayd       0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
vncserver       0:выкл  1:выкл  2:выкл  3:выкл  4:выкл  5:выкл  6:выкл
wltool          0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
xfs             0:выкл  1:выкл  2:вкл   3:вкл   4:вкл   5:вкл   6:выкл
[root@server ~]# chkconfig --add stv
ошибка чтения информации о сервисе stv: Нет такого файла или каталога
[root@server ~]# chkconfig --add /usr/local/bin/stv
ошибка чтения информации о сервисе /usr/local/bin/stv: Нет такого файла или каталога
[root@server ~]# chkconfig --add /usr/local/bin/stv
ошибка чтения информации о сервисе /usr/local/bin/stv: Нет такого файла или каталога
[root@server ~]#
не работает она. Пишет что не может найти скрипт, хотя он там есть.

Как сделать чтобы работало??? Я уже замучился искать, читать и гадать как вписать чтобы работало гарнтированно.

Скажите пожалуйста кто нибуть, КОНКРЕТНО что куда вписать чтобы заработало? Просто тогда можно будет ориентироваться потом по этой программе и так же делать другие.
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Пара вопросов...?

Сообщение Uncle_Theodore »

ln -s /usr/local/bin/stv /etc/rc.d/init.d/stv
chkconfig --add stv
chkconfig --level 5 stv on

Где ломается?
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

Код: Выделить всё

ln -s /usr/local/bin/stv /etc/rc.d/init.d/stv
а это зачем? Почему squid запустился ьез всяких прописываний? и правила командой в iptables тоже сразу вбились, а этот скрипт надо прописывать, в чём разница? и почему он не может найти скрипт когда я ему указываю точный путь к нему?
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

Код: Выделить всё

ln -s /usr/local/bin/stv /etc/rc.d/init.d/stv
 chkconfig --add stv
 chkconfig --level 5 stv on
не сработало так. Только ссылку создал. Вот что пишет:

Код:

[root@server ~]# ln -s /usr/local/bin/stv /etc/rc.d/init.d/stv [root@server ~]# chkconfig --add stv сервис stv не поддерживает chkconfig [root@server ~]# chkconfig --level 5 stv on сервис stv не поддерживает chkconfig [root@server ~]# chkconfig --list acpi 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл acpid 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл alsa 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл apmiser 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл atd 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл autofs 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл avahi-daemon 0:выкл 1:выкл 2:выкл 3:вкл 4:выкл 5:вкл 6:выкл cpufreq 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл crond 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл dm 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:вкл 6:выкл haldaemon 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл harddrake 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл htcacheclean 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл httpd 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл iptables 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл keytable 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл kheader 0:выкл 1:выкл 2:вкл 3:вкл 4:выкл 5:вкл 6:выкл lisa 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл mdadm 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл messagebus 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл mtink 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл mysql 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл netfs 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл network 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл network-up 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл nfs 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл nfslock 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл numlock 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл oki4daemon 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл partmon 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл portmap 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл routed 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл rpcgssd 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл rpcidmapd 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл rpcsvcgssd 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл smb 0:выкл 1:выкл 2:выкл 3:вкл 4:вкл 5:вкл 6:выкл sound 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл syslog 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл ultrabayd 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл vncserver 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл wltool 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл xfs 0:выкл 1:выкл 2:вкл 3:вкл 4:вкл 5:вкл 6:выкл [root@server ~]#
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Пара вопросов...?

Сообщение Uncle_Theodore »

Значит, в скрипте что-то не так.
Посмотри темплейт в /etc/init.d
Еще, вроде, в man chkconfig должно быть написано, как должен быть организован скрипт. (секции "chkconfig" и "description", вроде)
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

Значит, в скрипте что-то не так.
Содержимое скрипта вылажено в посте под номером 3, там же сказано его назначение (поднятие DVB карты). Это обычный скрипт. Он работает нормально и через командную строку по команде stv start из рутовской консоли он запускается без проблем. Права на енго выставленны root/root 755. Я непонимаю что в него надо ещё вписать чтобы он запускался? Это что получается: если какой нибуть обычный скрипт сделать автозапускаемым то надо его переписывать чтоли весь?

Напишите пожалуйста как ОБЫЧНЫЙ скрипт ЛЮБОВО назначения если есть в этом необходимость загнать в автозагрузку?

P\S: я не понимаю уже столько обсуждается этот скрипт и так ничего и не вышло, либо никто меня не может понять, что мне надо сделать, либо никто не может опмочь.
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Пара вопросов...?

Сообщение Uncle_Theodore »

Ну я же просил тебя глянуть, как устроены скрипты в /etc/init.d
Они, как выяснилось на гугле, должны иметь определенную форму.
Что-то типа этого

Код:

#!/bin/bash # # /etc/rc.d/init.d/ # # # # # # Source function library. . /etc/init.d/functions start() { echo -n "Starting : " touch /var/lock/subsys/ return } stop() { echo -n "Shutting down : " rm -f /var/lock/subsys/ return } case "$1" in start) start ;; stop) stop ;; status) status ns-slapd ;; restart) stop start ;; *) echo "Usage: {start|stop|status|restart}" exit 1 ;; esac exit $?

Тут погляди
http://www.linux.com/article.pl?sid=05/08/02/1821218

То есть, твой скрипт придется модифицировать.
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

я почитав все статьи на которые есть здесь ссылки написал вот такой скрипт:

Код:

#!/bin/sh # # chkconfig: - 98 02 # # # description: Staet and stop DVB and Globax # # processname: stv # IP="82.yy.zz.xx" MAC="00:D0:aa:zz:yy:xx" PID="514" DIR="/usr/local" GLOBAX_BIN="/usr/local/bin" GLOBAX_CONF="/usr/local/bin/globax.conf" # Source function library. if [ -f /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions fi KIND="stv" start() { echo -n $"Starting $KIND services: " cd $DIR/bin sleep 10 rmmod b2c2_flexcop_pci rmmod b2c2_flexcop rmmod stv0299 rmmod dvb_core rmmod stv0297 rmmod mt312 sleep 10 modprobe dvb-core dvb_shutdown_timeout=0 modprobe mt312 modprobe b2c2_flexcop_pci modprobe b2c2_flexcop modprobe stv0297 modprobe stv0299 sleep 15 szap -c /etc/channels.conf -n 1 -x 2>&1>/dev/null dvbnet -p $PID 2>&1>/dev/null cd /sbin ifconfig dvb0_0 $IP ifconfig dvb0_0 hw ether $MAC echo 0 > /proc/sys/net/ipv4/conf/dvb0_0/rp_filter #echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter cd $GLOBAX_BIN sleep 10 globax $GLOBAX_CONF 2>&1>/dev/null echo } stop() { echo -n $"Shutting down $KIND services: " killall -9 globax cd /sbin ifconfig dvb0_0 down /usr/local/bin/dvbnet -d dvb0_0 echo } restart() { echo -n $"Restarting $KIND services: " $0 stop $0 start echo } case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1 esac
и полажил его в директорию /etc/rc.d/init.d, и выполнил команды от проги chkconfig, но он не работает - говорит что не может найти программы которые в нём запрашиваются, хотя пути ко всем программам указаны правильно.

Люди, как засунуть в автозагрузку самописный скрипт СНАБЖОННЫЙ САМ ПО СЕБЕ УЖЕ командами START STOP RESTART и лежаший в директории /usr/local/bin?

Я пытаюсь запустить НЕ ПРОГРАММУ УЖЕ СКОМПИЛИРОВАННУЮ, как даются рекосмендации в статьях, а просто СКРИПТ #!bin/sh (полный его текст в посте №3) он сам по себе работает и по команде из консоли #stv start/stop/restart выполняет указанные действия.

я пробовал и по другому писать скрипт в /etc/rc.d/init.d вот так:

Код:

#!/bin/sh # chkconfig: - 98 02 # description: Start and stop DVB and Globax # processname: stv # Source function library. if [ -f /etc/init.d/functions ]; then . /etc/init.d/functions elif [ -f /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions else exit 0 fi KIND="stv" start() { echo -n $"Starting $KIND services: " daemon /usr/local/bin/stv start echo } stop() { echo -n $"Shutting down $KIND services: " killproc stv stop echo } restart() { echo -n $"Restarting $KIND services: " killproc stv stop daemon /usr/local/bin/stv start echo } case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1 esac exit $?
результат его действия тот же - не могу найти исполняемые проги(!).

Может кто нибуть хоть правильно сможит ответить на мой вопрос именно то что я пытаюсь осуществить а не другое?
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Пара вопросов...?

Сообщение arkhnchul »

а нелльзя сам скрипт засунуть в /etc/init.d вместо /usr/local/bin?


а нелльзя сам скрипт засунуть в /etc/init.d вместо /usr/local/bin? вместе со всеми бинарниками до кучи?
или такая дикая мысль приходит в голову: может он у вас прописан до маунта /usr?
Losing is fun!
Спасибо сказали:
Серёга
Сообщения: 201
ОС: Windows XP

Re: Пара вопросов...?

Сообщение Серёга »

Arkhnchul писал(а):
14.04.2007 18:19
может он у вас прописан до маунта /usr?
не понял как это? Объясните пожалуйста по подробней? /usr у меня на отдельном разделе, а как надо делать тогда? я при установке выбрал категорию деления диска как сервер и он поделил его на 5 или 6 разделов (не помню точно) Как делать тогда?

а нелльзя сам скрипт засунуть в /etc/init.d вместо /usr/local/bin? вместе со всеми бинарниками до кучи?
думаю что на вряд ли будет работать т.к. среди ненайденого им он пишет и программу ifconfig а её я не думаю что можно перетаскивать из /sbin
Спасибо сказали:
Аватара пользователя
Uncle_Theodore
Сообщения: 3339
ОС: Slackware 12.2, ArchLinux 64

Re: Пара вопросов...?

Сообщение Uncle_Theodore »

Что именно он не может найти?
Вы пытались написать полные пути ко всем исполняемым файлам, которые есть в скрипте?
В первом варианте, пути к ifconfig, modprobe, rmmod и прочему?
Спасибо сказали:
Аватара пользователя
arkhnchul
Сообщения: 2284
Статус: Толчковый инженер
ОС: Debian, Fedora

Re: Пара вопросов...?

Сообщение arkhnchul »

про /usr - бред мне в голову пришел... Не может оно такого быть.

Ых. Мандрива - оно вроде так там устроено: в /etc/rc.d/rc.<номер уровня> лежат все скрипты, кои должны при загрузке этого уровня выполняться. Запускаются оные скрипты по алфавиту, и для достижения правильного порядка загрузки нумеруются в начале имени (этим можно не заморачиваться в данном случае). Имхо надо бы попробовать туда запихнуть руками (забить на chkconfig) коротенький скрипт вида

Код: Выделить всё

#!/bin/sh
/usr/local/bin/stv start

и дать ему права на выполнение.
Losing is fun!
Спасибо сказали: