Fedora linux forum

Форум русской поддержки ОС Fedora linux

 

#1 2009-09-08 11:29:35

dorado
Member
Откуда: Львів
Зарегистрирован: 2008-07-21
Сообщений: 49

transmission-deamon init.d script

Привет Всем!
Вот назрела у меня потребность настроить работу transmission для работы демоном на третем ранлевеле с подержкой WEB-морди для управления! Только не как не могу понять где прописывать настройки в самом скрипте для запуска или в SHOME/.config/transmission/
Может кто покажет пример для Fedora 11 помогите новичку буду очень признателен! А пример готовых скриптов зделает самимы благодарним юзером!


Заходьте: http://dorado-lviv.homelinux.com — Світ очима Українця

Неактивен

 

#2 2009-09-08 11:42:27

Vascom
Member
Зарегистрирован: 2008-09-29
Сообщений: 453

Re: transmission-deamon init.d script

man transmission-daemon

Добавляешь transmission-daemon с нужными опциями в конец какого-нибудь скрипта инициализации, например в /etc/rc.d/rc.local .

Неактивен

 

#3 2009-09-08 11:58:26

dorado
Member
Откуда: Львів
Зарегистрирован: 2008-07-21
Сообщений: 49

Re: transmission-deamon init.d script

Да но откуда он будут брать настройки для веб-клиента вы не ответили!


Заходьте: http://dorado-lviv.homelinux.com — Світ очима Українця

Неактивен

 

#4 2009-09-08 12:22:49

Vascom
Member
Зарегистрирован: 2008-09-29
Сообщений: 453

Re: transmission-deamon init.d script

Я же сказал man transmission-daemon

DESCRIPTION
     transmission-daemon is a daemon-based Transmission session that can be
     controlled via RPC commands from transmission's web interface or
     transmission-remote(1).


OPTIONS
     -a --allowed x.x.x.x,...
             Allow RPC access to a comma-delimited whitelist of IP addresses.
             Wildcards can be specified in an address by using '*'.  Default:
             "127.0.0.1" Example: "127.0.0.*,192.168.1.*"

Неактивен

 

#5 2009-10-20 03:09:10

froller
New member
Зарегистрирован: 2009-10-20
Сообщений: 3

Re: transmission-deamon init.d script

Vascom написал:

man transmission-daemon

Добавляешь transmission-daemon с нужными опциями в конец какого-нибудь скрипта инициализации, например в /etc/rc.d/rc.local .

А потом grep-аешь всю /etc поисках того скрипта, который его запустил? smile
Наиболее разумным решением было бы написать нормальный rc-скрипт, который был бы совместим с chkconfig в первую очередь, и всякой другой мишурой, вроде ntsysv.

Чтобы не писать все самому можно взять rc-скрипт от Apache (/etc/rc.d/init.d/httpd) или еще от чего-нть. Только смотрите, чтоб он запускался после всех сетевых служб вроде samba, nfs, named и прочего, что может ему понадобиться. Порядок запуска Apache вполне подойдет для Transmission.

Или можно почитать доку от разработчиков Transmission, и сделать все совсем правильно. smile Только обратите внимание, что предложенный скрипт написан для Ubuntu, а у них принят несколько иной формат заголовков rc-скриптов. Так что я, все равно, рекомендую посмотреть rc-скрипт от Apache и внести некоторые изменения, чтобы ваш rc-шник выглядел более похожим на Fedor-овские. Разобраться будет несложно, он простой как 3 копейки. smile

Отредактированно froller (2009-10-20 03:15:12)

Неактивен

 

#6 2009-10-22 15:32:57

froller
New member
Зарегистрирован: 2009-10-20
Сообщений: 3

Re: transmission-deamon init.d script

Init-скрипт transmission-daemon-а для Fedora 11 и прочих дистрибутивов с init-ом в стиле SystemV.
Именно этим скриптом transmission запускается на моей машине.

Инструкция по установке: создаем файл /etc/rc.d/init.d/transmission, копируем в него содержимое ниже приведенного блока, делаем файл исполняемым и говорим service transmission start.

Спойлер:



#!/bin/bash
#
# transmission    Startup script for the Transmission BitTorrent client daemon.
#
# chkconfig: — 85 15
# description: Start the Transmission BitTorrent client daemon.
# processname: transmission-daemon
# config: /etc/transmission.conf
# config: /etc/sysconfig/transmission
# pidfile: /var/run/transmission.pid
#
### BEGIN INIT INFO
# Provides: transmission-daemon
# Required-Start: $local_fs $remote_fs $network $named
# Required-Stop: $local_fs $remote_fs $network
# Short-Description: Start the Transmission BitTorrent client daemon.
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

if [ -f /etc/sysconfig/transmission ]; then
        . /etc/sysconfig/transmission
fi

# The name of the user that should run Transmission.
# It's RECOMENDED to run Transmission in it's own user,
# by default, this is set to 'transmission'.
# For the sake of security you shouldn't set a password
# on this user
USERNAME=transmission

# Only change these options if you know what you are doing!
#
# The folder where Transmission stores the config & web files.
# ONLY change this you have it at a non-default location
#TRANSMISSION_HOME="/var/config/transmission-daemon"
#TRANSMISSION_WEB_HOME="/usr/share/transmission/web"
#
# The arguments passed on to transmission-daemon.
# ONLY change this you need to, otherwise use the
# settings file as per above.
#TRANSMISSION_ARGS=""

# Path to the server binary, and short-form for messages.
transmission=/usr/bin/transmission-daemon
prog=transmission
pidfile=/var/run/transmission.pid
lockfile=/var/lock/subsys/transmission
RETVAL=0

OPTIONS="${OPTIONS}"

start() {
        echo -n $"Starting $prog: "
    if [ -n "`/sbin/pidof -o %PPID "$transmission"`" ]; then
        echo -n $"transmission: already running"
        failure
        echo
        exit 1;
    fi;
        daemon --user ${USERNAME} ${transmission} ${OPTIONS}
        RETVAL=$?
    if [ -n "`/sbin/pidof -o %PPID "$transmission"`" ]; then
        if [ ! -e $pidfile ]; then
            echo `/sbin/pidof -o %PPID "$transmission"` > $pidfile;
        fi;
    fi;
        echo
        [ $RETVAL = 0 ] && touch ${lockfile}
        return $RETVAL
}

stop() {
    echo -n $"Stopping $prog: "
    killproc -p $pidfile $transmission
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
}

# See how we were called.
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
        status -p ${pidfile} $transmission
    RETVAL=$?
    ;;
  restart)
    stop
    start
    ;;
  condrestart|try-restart)
    if status -p ${pidfile} $transmission >&/dev/null; then
        stop
        start
    fi
    ;;
  *)
    echo $"Usage: $prog {start|stop|restart|condrestart|status}"
    RETVAL=3
esac

exit $RETVAL


Неактивен

 

#7 2009-12-27 00:58:27

dorado
Member
Откуда: Львів
Зарегистрирован: 2008-07-21
Сообщений: 49

Re: transmission-deamon init.d script

А может у кого уже есть готовый для Web морди config: /etc/transmission.conf


Заходьте: http://dorado-lviv.homelinux.com — Світ очима Українця

Неактивен

 

#8 2010-01-06 17:09:04

froller
New member
Зарегистрирован: 2009-10-20
Сообщений: 3

Re: transmission-deamon init.d script

А как же?! Есть, конечно!

Спойлер:



# Redirect requests to /transmission to /transmission/web
#RewriteEngine on
#RewriteRule /transmission[/]?$ /transmission/web [R=permanent]
<LocationMatch /transmission[/]?$>
   Redirect 301 /transmission /transmission/web
</LocationMatch>

# Forward all requests for /transmission to transmission-daemon
ProxyPass /transmission http://127.0.0.1:9091/transmission
ProxyPassReverse /transmission http://127.0.0.1:9091/transmission

<Location /transmission>
   Order Allow,Deny
   Allow from All
   AuthName "Transmission Web Interface"
   AuthType Basic
   AuthUserFile "/var/www/.htpasswd.transmission"
   Require valid-user
</Location>

Конфиг: /etc/httpd/conf.d/transmission.conf
Файл со списком пользователей: /var/www/.htpasswd.transmission
Читать man htpasswd перед созданием файла со списком юзверей.

Отредактированно froller (2010-01-06 17:09:59)

Неактивен

 

#9 2010-02-19 11:35:28

gago
New member
Откуда: Armenia
Зарегистрирован: 2010-02-19
Сообщений: 6

Re: transmission-deamon init.d script

Братва нужен скрипт который будет переименовывать файлы, давая им имена даты их создания.
Заранее всем спасибо.

Неактивен

 

#10 2010-02-19 11:40:11

Vascom
Member
Зарегистрирован: 2008-09-29
Сообщений: 453

Re: transmission-deamon init.d script

gago написал:

Братва нужен скрипт который будет переименовывать файлы, давая им имена даты их создания.
Заранее всем спасибо.

Дату создания получаешь командой ls -l, с помощью awk выцепляешь именно дату, с помощью команды mv переименовываешь файл. Всё это используй в своём скрипте.

Неактивен

 

#11 2010-02-19 13:28:38

gago
New member
Откуда: Armenia
Зарегистрирован: 2010-02-19
Сообщений: 6

Re: transmission-deamon init.d script

Спасибо за подсказку, но мне нужно чтобы файлы переименовывались автоматически в заданной директории.

Неактивен

 

#12 2010-02-19 13:39:04

Vascom
Member
Зарегистрирован: 2008-09-29
Сообщений: 453

Re: transmission-deamon init.d script

То есть хочешь, чтобы мы за тебя написали скрипт?

Неактивен

 

#13 2010-02-19 14:20:42

gago
New member
Откуда: Armenia
Зарегистрирован: 2010-02-19
Сообщений: 6

Re: transmission-deamon init.d script

Дело в том, что я еще не совсем понимаю как нужно писать скрипты, а этот скрипт нужен позарез. Если вам не трудно помогите начинающему.....

Неактивен

 

#14 2010-02-20 10:44:43

gago
New member
Откуда: Armenia
Зарегистрирован: 2010-02-19
Сообщений: 6

Re: transmission-deamon init.d script

Вот что я нашел, но этот скрипт не работает, потому что у меня файлы не Jpeg а seed,  подскажите что надо менять

#!/bin/sh

# check if the filename is given
if [ -z "$1" ]
then
    echo "Usage: `basename $0` file-to-rename"
exit 1
fi

# rename consequtively all files
export rename_counter=0

for file2rename in `ls $1`;
do

# check if destination file exists
new_filename=`ls -l --time-style="+%Y.%m.%d.%H.%M.%S" "$file2rename" | cut -d' ' -f6`
if [ -e "$new_filename.jpg" ]
then
    echo "Destination file for ${file2rename} exists. Appending extra characters"

    # Appending characters
    export i=1
    while [ "$i" -lt 10000 ]
    do
        case ${#i} in
            1 ) extrachar="000"$i;;
            2 ) extrachar="00"$i;;
            3 ) extrachar="0"$i;;
            4 ) extrachar=$i;;
        esac
        # test if file exists
        if [ -e "$new_filename$extrachar.jpg" ]
        # if so then pick next extra character
        then
            i+=$1
        #if not then rename and proceed to the next file
        else
            mv -v $file2rename $new_filename$extrachar'.jpg'
            i=10000
            let rename_counter=$rename_counter + 1
        fi
    done
else

# just rename and move to the next file
# just rename and move to the next file
mv -v "$file2rename" $new_filename'.jpg'
let rename_counter=$rename_counter+1
fi

done

# reporting results
if [ "$rename_counter" -eq "0" ]
then
echo "no files to rename"
else
echo "total: $rename_counter file(s)"
fi

Неактивен

 

#15 2010-02-20 11:36:42

Vascom
Member
Зарегистрирован: 2008-09-29
Сообщений: 453

Re: transmission-deamon init.d script

Попробуй заменить в скрипте везде jpg на seed.

Неактивен

 

#16 2010-02-20 11:56:44

gago
New member
Откуда: Armenia
Зарегистрирован: 2010-02-19
Сообщений: 6

Re: transmission-deamon init.d script

Я пробовал, но ничего не получилось. Дело в том, что у меня эти файлы показываются без расширения, но я знаю на 100%, что это seed файлы.

Неактивен

 

#17 2010-02-27 10:32:29

gago
New member
Откуда: Armenia
Зарегистрирован: 2010-02-19
Сообщений: 6

Re: transmission-deamon init.d script

Спасибо. Вы мне очень помогли.sad

Неактивен

 

#18 2010-02-27 10:35:45

Vascom
Member
Зарегистрирован: 2008-09-29
Сообщений: 453

Re: transmission-deamon init.d script

Если файлы без расширения, то можно было везде просто удалить .jpg
Мы бы помогли, если бы более конкретная задача стояла. Если бы ты показал что именно требуется переименовать (вывод команды ls -l).

Неактивен