UZIK Posted September 23, 2013 Posted September 23, 2013 первый скрипт #!/bin/sh ######################DEN################################ #4Mbit/s ipfw pipe 11 config bw 4096Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 12 config bw 4096Kbit/s queue "100 KBytes" mask src-ip 0xffffffff #6Mbit/s ipfw pipe 13 config bw 6144Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 14 config bw 6144Kbit/s queue "100 KBytes" mask src-ip 0xffffffff #3Mbit/s ipfw pipe 19 config bw 3072Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 20 config bw 3072Kbit/s queue "100 KBytes" mask src-ip 0xffffffff #5Mbit/s ipfw pipe 5 config bw 5120Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 6 config bw 5120Kbit/s queue "100 KBytes" mask src-ip 0xffffffff ifconfig fxp0 down ifconfig fxp1 down ifconfig fxp0 up ifconfig fxp1 up Второй скрипт #!/bin/sh #############################NOCH##################### #4Mbit/s ipfw pipe 11 config bw 20480Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 12 config bw 20480Kbit/s queue "100 KBytes" mask src-ip 0xffffffff #6Mbit/s ipfw pipe 13 config bw 20480Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 14 config bw 20480Kbit/s queue "100 KBytes" mask src-ip 0xffffffff #3Mbit/s ipfw pipe 19 config bw 20480Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 20 config bw 20480Kbit/s queue "100 KBytes" mask src-ip 0xffffffff #5Mbit/s ipfw pipe 5 config bw 20480Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ipfw pipe 6 config bw 20480Kbit/s queue "100 KBytes" mask src-ip 0xffffffff ifconfig fxp0 down ifconfig fxp1 down ifconfig fxp0 up ifconfig fxp1 up В кронтабе как только не прописывал незапускает и все... в логах пишет что запускает.. а сам не запускает, ручками когда запускаю все работает... смысл скриптов в том чтоб ночью юзверям запускать вместо простого тарифа 20ку а утром все возврашять на место... ####POVISHAEM SKOROST NA NOCH####### 32 9 * * * /bin/sh root sudo /root/.WORK/noch.sh ########PONIZHAEM NA UTRO####### 43 1 * * * /bin/sh root sudo /root/.WORK/den.sh Вставить ник Quote
YuryD Posted September 23, 2013 Posted September 23, 2013 Пути к ifconfig и ipfw надо полные писать.. Вставить ник Quote
^rage^ Posted September 23, 2013 Posted September 23, 2013 у вас ipfw нет PATH замените ipfw на /sbin/ipfw а лучше даже так: #!/bin/sh fwcmd="/sbin/ipfw -q" #4Mbit/s ${fwcmd} pipe 11 config bw 20480Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ${fwcmd} pipe 12 config bw 20480Kbit/s queue "100 KBytes" mask src-ip 0xffffffff Вставить ник Quote
UZIK Posted September 23, 2013 Author Posted September 23, 2013 у вас ipfw нет PATH замените ipfw на /sbin/ipfw а лучше даже так: #!/bin/sh fwcmd="/sbin/ipfw -q" #4Mbit/s ${fwcmd} pipe 11 config bw 20480Kbit/s queue "100 KBytes" mask dst-ip 0xffffffff ${fwcmd} pipe 12 config bw 20480Kbit/s queue "100 KBytes" mask src-ip 0xffffffff в скрипте поменял а в самом кронтабе ничего не нужно менять? Пути к ifconfig и ipfw надо полные писать.. это в кронтабе нужно прописать или в скрипте? Вставить ник Quote
morom Posted September 23, 2013 Posted September 23, 2013 (edited) Хотелось бы уточнить. 32 9 * * * /bin/sh root sudo /root/.WORK/noch.sh Если таблица, которая хранится в /etc/crontab, то формат такой: #minute hour mday month wday who command Т.е. в данном случае who = /bin/sh ??? Если через crontab -e, то имя пользователя не указывается: #minute hour mday month wday command Т.е. сразу после wday идет команда. /bin/sh root sudo /root/.WORK/noch.sh Что есть root, что вы его шеллу передаете. Решение. Если редактируете /etc/crontab: ####POVISHAEM SKOROST NA NOCH####### 32 9 * * * root /root/.WORK/noch.sh ########PONIZHAEM NA UTRO####### 43 1 * * * root /root/.WORK/den.sh Только сначала chmod +x /root/.WORK/noch.sh /root/.WORK/den.sh Если через crontab -e для не рута: ####POVISHAEM SKOROST NA NOCH####### 32 9 * * * /usr/local/bin/sudo /root/.WORK/noch.sh ########PONIZHAEM NA UTRO####### 43 1 * * * /usr/local/bin/sudo /root/.WORK/den.sh Ну и соответственно в sudoers настроить, чтобы пароль не спрашивался. Edited September 23, 2013 by morom Вставить ник Quote
vop Posted September 23, 2013 Posted September 23, 2013 (edited) Решение, как бы очевидное, но не совсем надежное. При нештатной ситуации, например, при перегрузке сервера, шейпер не восстановится. Надо либо добавлять стартовые скрипты, либо делать один, запускаемый регулярно, что бы он проврял время суток. Либо и то, и другое. Edited September 23, 2013 by vop Вставить ник Quote
UZIK Posted September 23, 2013 Author Posted September 23, 2013 по правил сегодне ночером проверю)) позже отпишусь) Вставить ник Quote
morom Posted September 23, 2013 Posted September 23, 2013 Решение, как бы очевидное, но не совсем надежное. При нештатной ситуации, например, при перегрузке сервера, шейпер не восстановится. Надо либо добавлять стартовые скрипты, либо делать один, запускаемый регулярно, что бы он проврял время суток. Либо и то, и другое. У меня при запуске загружаются правила ipfw, в которые добавлено следующее chour=`date '+%H'` # day - 08:00-23:59 - >= 8 if [ ${chour} -ge 8 ]; then /bin/sh /etc/day.sh fi # night - 00:00-08:00 - < 8 if [ ${chour} -lt 8 ]; then /bin/sh /etc/night.sh fi Проблема перезагрузки решена. Вставить ник Quote
vop Posted September 23, 2013 Posted September 23, 2013 (edited) У меня при запуске загружаются правила ipfw, в которые добавлено следующее chour=`date '+%H'` # day - 08:00-23:59 - >= 8 if [ ${chour} -ge 8 ]; then /bin/sh /etc/day.sh fi # night - 00:00-08:00 - < 8 if [ ${chour} -lt 8 ]; then /bin/sh /etc/night.sh fi Проблема перезагрузки решена. А еще лучше, засунуть выбор времени в единственный скрипт с шейпером, вместо двух на день и ночь, и просто его запустить при старте. Edited September 23, 2013 by vop Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.