Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Modifiche software tipo:Telnetting, email server, torrent, .....
Rispondi
ilGaspa
Utente
Utente
Messaggi: 7
Iscritto il: lunedì 23 febbraio 2009, 12:16

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da ilGaspa »

Salve a tutti! :)

Ho installato da poco Transmission sul mio DS-107: funziona tutto alla perfezione, ma per quanto mi sforzi non riesco a far partire il demone transmission-daemon all'avvio del dispositivo. O meglio: riesco a farlo partire all'avvio, ma solo con i privilegi di root, mentre non riesco a farlo partire come utente normale...

Ho provato sia ad inserire

Codice: Seleziona tutto

su enrico -c "transmission-daemon -g /var/services/homes/enrico/.config/transmission-daemon"


sia in rc.optware che in rc.local, ma all'avvio il demone non parte... ho anche tentato di creare il file /usr/syno/etc/rc.d/S90transmission.sh

Codice: Seleziona tutto

#!/bin/sh
	#
	# Startup script for transmission-daemon
	# if you update this script, please send me a copy to nas.announcement@gmail.com
	# S*transmission.sh - startup script for inetd
	#
	# This goes in /usr/syno/etc/rc.d and gets run at boot-time.
	TRAN=/opt/bin/transmission-daemon
	
	case "$1" in
	
	start)
	                if [ -x $TRAN ] ; then
	                                echo "Starting TRAN..."
	                                su enrico -c "transmission-daemon -g /var/services/homes/enrico/.config/transmission-daemon"
	                fi
	                ;;
	
	stop)
	                echo "stop TRAN"
	                killall transmission-daemon* 2>/dev/null
	                ;;
	
	restart)
	                $0 stop
	                $0 start
	                ;;
	
	*)
	                echo "usage: $0 { start | stop | restart}" >&2
	                exit 1
	                ;;
	
	esac

anche in questo caso senza successo. La cosa strana è che se sostituisco la riga menzionata prima con

Codice: Seleziona tutto

/opt/bin/transmission-daemon -g /root/.config/transmission-daemon

il demone parte senza problemi. All'inizio ho pensato in un errore nella stringa di avvio che uso, ma sia il comando singolo che l'intero script funzionano perfettamente se avviati manualmente via SSH... qualcuno può aiutarmi? :| Me ne faccio poco di transmission installato se non parte da solo all'accensione purtroppo :(
Parsipal
Utente
Utente
Messaggi: 867
Iscritto il: martedì 22 aprile 2008, 12:37

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da Parsipal »

Hai controllato i diritti di accesso dello script?
Vedi:
- chown ........
- chmod +x .......


Saluti
Parsipal
NAS: DS207. (128MB) | HD: 2x MAXTOR STM3250820AS | FW: 3.1-1636 (since 2007)

NAS: DS209+(512MB) | HD: 2x WD10EACS 1TB RAID-1 | FW: 4.2-3202 (since 2009)

UPS: APC 800 Back-ups RS
ilGaspa
Utente
Utente
Messaggi: 7
Iscritto il: lunedì 23 febbraio 2009, 12:16

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da ilGaspa »

Non ci avevo pensato, visto che lo script se lanciato a mano

Codice: Seleziona tutto

/usr/syno/etc/rc.d/S90transmission.sh start

loggandomi come root funziona... :| lo stesso script, se modificato mettendo il demone in avvio come root anzichè come utente, parte correttamente all'avvio del NAS. Quindi, visto che

* Se metto l'avvio come utente, lo script va se lanciato a mano ma non automaticamente all'avvio
* Se metto l'avvio come root, lo script va automaticamente all'avvio

Il problema sembra essere il fatto che eseguo il demone come utente all'avvio del sistema... e deve esser qualcosa che si risolve dopo l'avvio, visto che dopo se mi loggo ed eseguo lo stesso identico script a mano funziona :|

Comunque ho checkato permessi e owner dello script

Codice: Seleziona tutto

NAS> ls -al /usr/syno/etc/rc.d/S90transmission.sh
	-rwxr-xr-x    1 root     root          645 Oct  5 10:46 /usr/syno/etc/rc.d/S90transmission.sh
	

I permessi sembrano giusti visto che tutti posson leggere ed eseguire il file :|
Galotar
Utente
Utente
Messaggi: 175
Iscritto il: mercoledì 2 aprile 2008, 13:05

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da Galotar »

Mi spiegheresti come hai fatto?
Per utente root,intendi che per loggarti a transmission da web devi usare l'utente "root"?
Anche un link con guida in inglese mi basta :D
Grazie mille.
ilGaspa
Utente
Utente
Messaggi: 7
Iscritto il: lunedì 23 febbraio 2009, 12:16

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da ilGaspa »

No, per utente root intendo che transmission gira sotto l'utente root, quindi tutti i file che crea sono di proprietà di root... in questo modo ti tocca loggarti via ssh per spostare e cancellare ciò che scarichi. Detto questo però, forse ho capito come risolvere il problema e come farlo funzionare ;) Dammi un attimo, se va ti posto le istruzioni :)
ilGaspa
Utente
Utente
Messaggi: 7
Iscritto il: lunedì 23 febbraio 2009, 12:16

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da ilGaspa »

Ok, dopo varie peripezie sono riuscito a risolvere il problema dell'avvio sotto privilegi utente di transmission :) Non ho molto tempo libero quindi le istruzioni che lascerò su come farlo partire saranno per forza spartane... portate pazienza.

PREMESSA
L'approccio che useremo sarà quello di inserire uno script in /usr/syno/etc/rc.d/
Sebbene questo approccio sembri simile a quello di altri post, gli script che ho trovato fino ad ora non si sono mai rivelati efficaci... quello che includo, recuperato in parte da altre guide (i crediti sono in fondo al post) non solo sembra funzionare, ma riesce anche ad avviare correttamente transmission con previlegi di utente normale anzichè di root (con il vantaggio che i file creati sono quindi liberamente movibili e cancellabili senza loggarsi come admin/root e cambiarne il proprietario)

COME FARE
1) Loggatevi via ssh sul vostro NAS, accedendo come root

2) Usate l'editor che più vi aggrada (vi, nano, pico...) e create il file
/usr/syno/etc/rc.d/S90transmission.sh

3) OCCHIO a non dimenticarvi il .sh alla fine del file...

4) Incollate questo script nel file

Codice: Seleziona tutto

#!/bin/sh
	
	prefix="/opt"
	
	PATH=${prefix}/bin:${prefix}/sbin:/sbin:/bin:/usr/sbin:/usr/bin
	NAME=transmission-daemon
	CONFIGDIR=/var/services/homes/enrico/.config/transmission-daemon
	DAEMON=${prefix}/bin/${NAME}
	USER=enrico
	
	test -x $DAEMON || exit 0
	
	if [ -z $1 ] ; then
	    case `echo "$0" | sed 's:^.*/(.*):1:g'` in
	        S??*) rc="start" ;;
	        K??*) rc="stop" ;;
	        *) rc="usage" ;;
	    esac
	else
	    rc="$1"
	fi
	
	case "$rc" in
	    start)
	        echo "Starting Torrent client: $NAME"
	        su $USER -c "$DAEMON -g ${CONFIGDIR}"
	        ;;
	    stop)
	        #if [ -n `pidof $NAME` ]; then
	            echo "Stopping Torrent client: $NAME"
	            killall $NAME 2> /dev/null
	        #fi
	        ;;
	    restart)
	        "$0" stop
	        sleep 1
	        "$0" start
	        ;;
	    *)
	        echo "Usage: $0 (start|stop|restart|usage)"
	        ;;
	esac
	
	exit 0

5) Prima di chiudere e salvare, dovete modificare lo script: guardate l'inizio del file, vedrete le seguenti righe

CONFIGDIR=/var/services/homes/enrico/.config/transmission-daemon
USER=enrico

Dovete modificarle a seconda dell'utente sotto di cui volete che transmission giri; CONFIGDIR è il percorso dei file di configurazione di transmission, mentre USER è l'utente che lo avvierà. Ad esempio

CONFIGDIR=/var/services/homes/ginopilotino/.config/transmission-daemon
USER=ginopilotino

CONFIGDIR=/volume1/public/.config/transmission-daemon
USER=admin

6) Salvate ;)

7) Digitate
chmod +x /usr/syno/etc/rc.d/S90transmission.sh

8) Ok... ora dovete solo digitare

/usr/syno/etc/rc.d/S90transmission.sh start

e sperare che transmission parta.. Quindi provate

/usr/syno/etc/rc.d/S90transmission.sh stop

e verificare che transmission non sia più in esecuzione

9) Riavviate il NAS, recitate un paio di preghierine e se tutto va bene, transmission partirà da solo :)

CREDITI
Lo script che ho usato è quasi completamente copiato da http://mybookworld.wikidot.com/transmission
Indi per cui non mi prendo nessun merito, è grazie a quella guida che ce l'ho fatta :)
Galotar
Utente
Utente
Messaggi: 175
Iscritto il: mercoledì 2 aprile 2008, 13:05

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da Galotar »

Sei un grande funziona(merito tuo che l'hai trovata la guida,stessa cosa faccio io quando posto qualche novità :P ).
Per chi ha cominciato già dei download con l'utente root,come il sottoscritto,basta che entri nella filestation,proprietà su cartella/file che si stava scaricando(naturalmente del relativo torrent),e aggiunga i permessi all'utente che si è inserito in

USER=

A me dava Accesso Negato sul file e non funzionava il download ;)
rg1965
Utente
Utente
Messaggi: 5
Iscritto il: mercoledì 7 gennaio 2009, 21:55

Problemi autostart transmission-daemon come utente (applicabile ad ogni tipo di autostart)

Messaggio da rg1965 »

ciao ilgaspa,

ho fatto tutto quello da te consigliato ma non ce verso di farlo partire come user , cosa posso verificare?
grazie
Rispondi

Torna a “Modding Disk Stations”