Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

nombre réponses : 1

#0 Re : -1 »  [RESOLU] Mediacenter SFR Evolution » Le 04/03/2013, à 23:03

laurentsab
Réponses : 21

Bonjour à tous,
suite à la mise à jour de ma box, je me suis confronté au problème du mediacenter non supporté.Grâce à vous j'ai pu le refaire fonctionner, alors pour apporter ma contribution j'ai fait ce script (soyez indulgent c'est mon premier) qui permet la configuration de base :lancer le serveur, l'arrêter ... et même ajouter des partages ou en supprimer .
En espérant qu'il puisse satisfaire quelqu'un.
En plus je me suis éclaté à l'écrire

#!/bin/bash
if [ $USER == root ]
then echo "ce script ne doit pas être executé en root"
exit
else
rougefonce='\e[0;31m'
vertfonce='\e[0;32m'
vertclair='\e[1;32m'
orange='\e[0;33m'
bleufonce='\e[0;34m'
bleuclair='\e[1;34m'
violetfonce='\e[0;35m'
violetclair='\e[1;35m'
cyanfonce='\e[0;36m'
cyanclair='\e[1;36m'
neutre='\e[0;m'
echo -e "${orange} _________________________ "
echo "| --= MiniDLNA Server =-- |"
echo "|_________________________|"
pid=`pidof -x 'minidlna'`
        if [ -z $pid ] 
        then echo
			 echo -e "${rougefonce}Le serveur n'est pas lancé"
			 echo -e "${neutre}"
        else echo
			 echo -e "${vertfonce}Le serveur est démarré. N° de processus" PID $pid
			 echo -e "${neutre}" 
		fi
PS3='SFR MediaCenter> '   # le prompt
LISTE=("[1] Partages" "[2] Lancer service" "[3] Actualiser base" "[4] Stop service" "[5] Quitter ")  # liste de choix disponibles
	 select CHOIX in "${LISTE[@]}" ; do 
	     case $REPLY in
		1|Partages)
					cat /etc/minidlna.conf |egrep -v '^(#|$)'>/home/$USER/mediadir.txt
					test=$(cat /home/$USER/mediadir.txt|wc -l) 
					partage=$((test-9))
					echo -e "${bleufonce}" $partage "partage(s)${neutre}"
					cat /home/$USER/mediadir.txt|grep media_dir		
					echo -e "${vertfonce}Ajouter un partage (a) -${rougefonce}Supprimer un partage (s)${neutre} "
					read reponse
					if [ "$reponse" == "a" ]
					then  
					echo -e "${vertfonce}quel repertoire souhaitez vous ajouter${neutre}"
					echo -e "Liste des répertoires disponible indiquez le numéro souhaitez"
					ls /home/$USER | grep -v '\..*$' >/home/$USER/mediadir3.txt
					sed '/./=' /home/$USER/mediadir3.txt | sed '/./N; s/\n/) /'>/home/$USER/mediadir4.txt
					cat /home/$USER/mediadir4.txt
					read part
					part1=$(sed -n "$part"p /home/$USER/mediadir3.txt)		
					sed -i "2i\media_dir=/home/$USER/$part1" /home/$USER/mediadir.txt
					cat /home/$USER/mediadir.txt|grep media_dir	
					echo -e "${vertfonce}confirmez vous cette liste (o)ui ?${neutre}"
					read reponse
						if [ "$reponse" == "o" ]
						then 
						sudo mv /etc/minidlna.conf /etc/minidlna.conf.bak
						sudo mv /home/$USER/mediadir.txt /etc/minidlna.conf
						echo -e "${vertfonce}ajout validé"
						echo -e "Actualisation de la base${neutre}"
						sudo /etc/init.d/minidlna force-reload
						else
						cat /etc/minidlna.conf |egrep -v '^(#|$)'>/home/$USER/mediadir.txt
						test=$(cat /home/$USER/mediadir.txt|wc -l) 
						partage=$((test-9))
						echo -e "${bleufonce}"$partage "partage(s)${neutre}"
						cat /home/$USER/mediadir.txt|grep media_dir
						fi
					else 
							if [ "$reponse" == "s" ] 	
							then 
							echo -e "${rougefonce}quel partage souhaitez vous supprimer?${neutre}"
							echo -e "${bleufonce}"$partage "${rougefonce}partages.Indiquez le n° de ligne que vous souhaitez supprimer${neutre}"
							cat /home/$USER/mediadir.txt|grep media_dir>/home/$USER/mediadir2.txt
							sed '/./=' /home/$USER/mediadir2.txt | sed '/./N; s/\n/) /'
							read sup
							LIGNE=$((sup+1))
							sed -i "$LIGNE"d  /home/$USER/mediadir.txt
							cat /home/$USER/mediadir.txt|grep media_dir
							echo -e "${rougefonce}Confirmez-vous cette liste (o)ui ?${neutre}"
							read reponse
								if [ "$reponse" == "o" ]
								then 
								sudo mv /etc/minidlna.conf /etc/minidlna.conf.bak
								sudo mv /home/$USER/mediadir.txt /etc/minidlna.conf
								echo -e "${rougefonce}Suppression validée"
								
								echo -e "Actualisation de la base${neutre}"
								sudo /etc/init.d/minidlna force-reload
								else
								echo "${rouge}ABANDON${rouge}"
								cat /etc/minidlna.conf |egrep -v '^(#|$)'>/home/$USER/mediadir.txt
								test=$(cat /home/$USER/mediadir.txt|wc -l) 
								partage=$((test-9))
								echo -e "${bleufonce}"$partage "partage(s)${neutre}"
								cat /home/$USER/mediadir.txt|grep media_dir
								fi
							else echo -e "${bleufonce}saisie non comprise !${neutre}"
							fi
					fi
		;;
		2|Start)
        pid=`pidof -x 'minidlna'`
        if [ -z $pid ] 
        then sudo minidlna -f /etc/minidlna.conf -R
			 pid=`pidof -x 'minidlna'`
			 echo
			 echo -e "${vertfonce}Le serveur est démarré. N° de processus" PID $pid
			 echo -e "${neutre}"
        else echo
			 echo -e "${vertfonce}Le serveur est deja démarré. N° de processus" PID $pid
			 echo -e "${neutre}"
        fi
        ;;
        3|Refresh)
        pid=`pidof -x 'minidlna'`
        if [ -z $pid ] 
        then echo -e "${rougefonce}Le serveur n'est pas lancé !!!"
			 echo -e "${neutre}"
			 echo -e "${orange}Lancement du serveur"
			 sudo minidlna -f /etc/minidlna.conf -R
			 pid=`pidof -x 'minidlna'`
			 echo
			 echo -e "${vertfonce}Le serveur est démarré. N° de processus" PID $pid
			 echo -e "${orange}"
			 sudo /etc/init.d/minidlna force-reload
			 echo
			 echo -e "${vertfonce} La base a été réactualisée."
			 echo -e "${neutre}"
        else echo
			 echo -e "${vertfonce}Le serveur est démarré. N° de processus" PID $pid
			 echo -e "${orange}"
			 sudo /etc/init.d/minidlna force-reload
			 echo
			 echo -e "${vertfonce} La base a été réactualisée."
			 echo -e "${neutre}"
        fi
         ;;
         4|Stop)
        pid=`pidof -x 'minidlna'`
        if [ -z $pid ] 
        then echo -e "${orange}Le serveur n'est pas lancé !!!" 
        echo -e "${neutre}"
        else sudo kill -9 $pid
        echo
        echo -e "${rougefonce}Le serveur est arrété !!!"
        echo -e "${neutre}"
        fi
        ;;
        5|quit)
        echo -e "nettoyage des temporaires"
        if [ -e /home/$USER/mediadir.txt ] 
        then rm /home/$USER/mediadir.txt
        fi
        if [ -e /home/$USER/mediadir2.txt ] 
        then rm /home/$USER/mediadir2.txt
        fi
        if [ -e /home/$USER/mediadir3.txt ] 
        then rm /home/$USER/mediadir3.txt
        fi
        if [ -e /home/$USER/mediadir4.txt ] 
        then rm /home/$USER/mediadir4.txt
        fi
        echo "OK"
        echo "Bye"
        echo -e "${neutre}"
        exit
        ;;
    esac
done
fi

Je vous suggère de faire une sauvegarde de votre /etc/minidlna.conf
car le script recrée le sien en effaçant toutes les lignes commentées.