Bonjour,
Je cherche un retour d’expérience sur BigBlueButton sur debian ou ubuntu. J’ai l’ai installé sur ubuntu 14.04 mais après reboot du serveur je n’ai plus rien. Tant que je ne reboot pas, ça marche mais après j’ai des processus freeswitch qui se multiplient et plantent…
Voici mon setup
if [ $USER != root ]
then
clear screen
whiptail --title "Avertissement" --msgbox "Merci d'exécuter ce programme avec sudo ou en root... L'installeur de BigBlueButton va se fermer." 20 80
exit 0
fi
grep 14.04 /etc/lsb-release
if [ "$?" != 0 ]
then
clear screen
whiptail --title "Avertissement" --msgbox "Merci d'exécuter ce programme sur Ubuntu 14.04 uniquement... L'installeur de BigBlueButton va se fermer." 20 80
exit 0
fi
function NetConfig () {
function EthQuest () {
function Quest1 () {
function testip () {
IP=$(whiptail --inputbox "Tapez l'adresse IPV4 que vous souhaitez assigner au serveur \
(au format xxx.xxx.xxx.xxx ou x représente un chiffre) :" 20 80 $(ifconfig| grep "inet adr"| grep -v 127.0.0.1|awk '{print $2}'|cut -d: -f2) 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
exit 0
fi
}
testip
until [[ "$IP" =~ ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ ]]
do
testip
done
function Quest2 () {
function testmask () {
netmask=$(whiptail --inputbox "Tapez l'adresse du masque de sous reseau :" 20 80 $(ifconfig |grep Masque|grep Bcast|awk '{ print $4 }'|cut \-d: \-f2) 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest1
fi
}
testmask
until [[ "$netmask" =~ ^((255|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]|0)\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ ]]
do
testmask
done
function Quest3 () {
function testdns () {
dns=$(whiptail --inputbox "Tapez l'adresse du serveur DNS primaire :" 20 80 $(grep nameserver /etc/resolv.conf|head \-n 1|awk '{ print $2 }' ) 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest2
fi
}
testdns
until [[ "$dns" =~ ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ ]]
do
testdns
done
function Quest4 () {
function testdns2 () {
dns2=$(whiptail --inputbox "Tapez l'adresse du serveur DNS secondaire :" 20 80 $(grep nameserver /etc/resolv.conf|head -2|tail \-1|awk '{ print $2 }' ) 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest3
fi
}
testdns2
until [[ "$dns2" =~ ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ ]]
do
testdns2
done
function Quest5 () {
function testgate () {
gateway=$(whiptail --inputbox "Tapez l'adresse de la passerelle :" 20 80 $(route -n|grep 0.0.0.0|awk '{print $2}'|head -n 1) 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest4
fi
test -f /tmp/passerelle
if [ "$?" = "0" ]
then
rm /tmp/passerelle
fi
}
testgate
until [[ "$gateway" =~ ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ ]]
do
testgate
done
function Quest6 () {
function domaine_addr () {
domain=$(whiptail --inputbox "Tapez votre nom de domaine ou de workgroup :" 20 80 $(grep domain /etc/resolv.conf|awk '{print $2}') 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest5
fi
}
domaine_addr
until [[ "$domain" =~ [A-Za-z0-9.-]+\.[A-Za-z]{2,6}$ ]] || [[ "$domain" =~ [A-Za-z0-9.-]{2,16}$ ]]
do
domaine_addr
done
function Quest7 () {
function hostname_addr () {
hostname=$(whiptail --inputbox "Tapez le nom de machine affecté à Wordpress" 20 80 conf 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest6
fi
}
hostname_addr
until [[ "$hostname" =~ ^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$ ]]
do
hostname_addr
done
function Quest8 () {
function hostname_addr2 () {
hostname2=$(whiptail --inputbox "Tapez le nom de machine Affecté à BigBlueButton" 20 80 bbb 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest7
fi
}
hostname_addr2
until [[ "$hostname2" =~ ^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$ ]]
do
hostname_addr2
done
function Quest9 () {
function pass_confirm () {
Root_pass=$(whiptail --passwordbox "Tapez ici le mot de passe de l'administrateur de mysql/mariadb :" --nocancel 20 80 3>&1 1>&2 2>&3)
Root_pass2=$(whiptail --passwordbox "Confirmez le mot de passe de l'administrateur de mysql/mariadb :" --nocancel 20 80 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
Quest8
fi
}
pass_confirm
while [ "${Root_pass}" != "${Root_pass2}" ]
do
whiptail --msgbox "Les mots de passe ne correspondent pas" 20 80
pass_confirm
done
function Quest10 () {
function pass_confirm2 () {
PassWP=$(whiptail --passwordbox "Créez ici le mot de passe de l'administrateur (wordpressuser) de la base de données wordpress :
Cet utilisateur sera utilisé plus tard dans la configuration de wordpress dans un navigateur WEB." --nocancel 20 80 3>&1 1>&2 2>&3)
PassWP2=$(whiptail --passwordbox "Confirmez le mot de passe de l'admin de la base de données wordpress :" 20 80 3>&1 1>&2 2>&3)
if [ "$?" = 1 ]
then
Quest9
fi
}
pass_confirm2
while [ "${PassWP}" != "${PassWP2}" ]
do
pass_confirm2
done
}
}
}
}
}
}
}
}
}
}
Quest1
Quest2
Quest3
Quest4
Quest5
Quest6
Quest7
Quest8
Quest9
Quest10
MyPubIP=$(wget -qO- whatismyip.org |grep -oE "\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b" |cut -d\> -f 2|cut -d\< -f 1)
whiptail --msgbox "Récapitulatif des modifications :
- Adresse IP de l'interface : $IP
- Masque de sous réseau : $netmask
- Passerelle : $gateway
- Serveur DNS 1 : $dns
- Serveur DNS 2 :$dns2
- Nom de machine Wordpress : $hostname
- Nom de domaine BigBlueButton : $domain
- FQDN : $hostname.$domain
- Adresse IP publique : $MyPubIP" 20 80
FinalQuest=$(whiptail --title "Confirmation" --yes-button "Suivant" --no-button "Recommencer" --yesno "Souhaitez-vous conserver les modifications" --nocancel 20 80 3>&1 1>&2 2>&3)
if [ "$?" = "1" ]
then
whiptail --title " AVERTISSEMENT" --msgbox "Nous avons détecté que vous n'avez pas procédé à la configuration de l'interface réseau, un assistant va vous aider à procéder à cette configuration. Une fois terminé, il vous faudra relancer ce script et éventuellement vous reconnecter si vous avez pris la main en SSH et que vous avez changé l'adresse IP du serveur." 20 80
EthQuest
fi
}
EthQuest
cat > /etc/network/interfaces << EOF
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address $IP
netmask $netmask
gateway $gateway
dns-nameservers $dns $dns2
dns-search $domain
dns-domain $domain
EOF
cat > /etc/resolv.conf << EOF
search $domain
domain $domain
nameserver $dns
nameserver $dns2
EOF
cat > /etc/hosts << EOF
127.0.0.1 localhost
#127.0.1.1 $hostname.$domain $hostname # à utiliser si retour vers dhcp
$IP $hostname.$domain $hostname
$IP $hostname2.$domain $hostname2
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
EOF
cat > /etc/mailname << EOF
$hostname.$domain
EOF
cat > /etc/hostname << EOF
$hostname
EOF
hostname $hostname
mkdir /usr/NetwConf
echo ${IP} > /usr/NetwConf/IP
echo ${hostname} > /usr/NetwConf/hostname
echo ${hostname2} > /usr/NetwConf/hostname2
echo ${domain} > /usr/NetwConf/domain
echo ${Root_pass} > /usr/NetwConf/Root_pass
echo ${PassWP} > /usr/NetwConf/PassWP
touch /usr/NetConfigOk
apt-get autoremove --purge -y isc-dhcp-client
whiptail --title " AVERTISSEMENT" --msgbox "Vous avez procédé à la configuration de l'interface réseau. Le script d'installation va certainement s'interrompre. Pour finir l'installation, il vous faudra relancer ce script et éventuellement vous reconnecter si vous avez pris la main en SSH et que vous avez changé l'adresse IP du serveur." 20 80
ifdown eth0 && ifup eth0 && source /root/.bashrc && exec bash && exit 0
}
test -f /usr/NetConfigOk
if [ "$?" = 1 ]
then
NetConfig
fi
IP=$(cat /usr/NetwConf/IP)
hostname=$(cat /usr/NetwConf/hostname)
hostname2=$(cat /usr/NetwConf/hostname2)
domain=$(cat /usr/NetwConf/domain)
Root_pass=$(cat /usr/NetwConf/Root_pass)
PassWP=$(cat /usr/NetwConf/PassWP)
echo "export DEBIAN_FRONTEND=noninteractive
sudo debconf-set-selections <<< 'mariadb-server mysql-server/root_password password ${Root_pass}'
sudo debconf-set-selections <<< 'mariadb-server mysql-server/root_password_again password ${Root_pass}'" > /tmp/mariadb
sudo bash /tmp/mariadb
rm /tmp/mariadb
sudo add-apt-repository ppa:libreoffice/libreoffice-4-4
sudo add-apt-repository -y ppa:ondrej/php
wget http://ubuntu.bigbluebutton.org/bigbluebutton.asc -O- | sudo apt-key add -
echo "deb http://ubuntu.bigbluebutton.org/trusty-090/ bigbluebutton-trusty main" | sudo tee /etc/apt/sources.list.d/bigbluebutton.list
sudo apt-get update && sudo apt-get upgrade -y
cd /tmp
touch install-ffmpeg.sh
cat >> install-ffmpeg.sh << EOF
sudo apt-get install build-essential git-core checkinstall yasm texi2html libvorbis-dev libx11-dev libvpx-dev libxfixes-dev zlib1g-dev pkg-config netcat libncurses5-dev php5-curl sudo -y --force-yes
cd /usr/local/src
if [ ! -d "/usr/local/src/ffmpeg-2.3.3" ]; then
sudo wget "http://ffmpeg.org/releases/ffmpeg-2.3.3.tar.bz2"
sudo tar -xjf "ffmpeg-2.3.3.tar.bz2"
fi
cd "ffmpeg-2.3.3"
sudo ./configure --enable-version3 --enable-postproc --enable-libvorbis --enable-libvpx
sudo make
sudo checkinstall --pkgname=ffmpeg --pkgversion="5:2.3.3" --backup=no --deldoc=yes --default
EOF
chmod +x install-ffmpeg.sh
./install-ffmpeg.sh
sudo apt-get install bigbluebutton php5-fpm php5-gd libssh2-php mariadb-server php5-mysql mariadb-client php5-curl software-properties-common build-essential git-core checkinstall yasm texi2html libvorbis-dev libx11-dev libvpx-dev libxfixes-dev zlib1g-dev pkg-config netcat libncurses5-dev -y --force-yes
cd /tmp
wget https://fr.wordpress.org/wordpress-4.4.2-fr_FR.tar.gz
tar xvzf wordpress-4.4.2-fr_FR.tar.gz
sudo mv wordpress /var/www/wordpress
## création de la base wordpress et de son user wordpress...
echo "
CREATE DATABASE wordpress;
CREATE USER wordpressuser@localhost IDENTIFIED BY '${PassWP}';
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost;
FLUSH PRIVILEGES;
exit" > /tmp/sql.tmp
sudo mysql -u root -p${Root_pass} < /tmp/sql.tmp
rm /tmp/sql.tmp
cd /var/www/wordpress
sudo cp wp-config-sample.php wp-config.php
sudo mkdir wp-content/uploads
sudo chown -R www-data:www-data /var/www/wordpress
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/wordpress
sudo sed -i "s|/usr/share/nginx/html|/var/www/wordpress|" /etc/nginx/sites-available/wordpress
sudo sed -i "s|127.0.1.1|${hostame}.${domain}|" /etc/nginx/sites-available/wordpress
sudo sed -i "s|127.0.1.1|${hostame2}.${domain}|" /etc/nginx/sites-available/bigbluebutton
sudo sed -i "s|server_name localhost|server_name $(hostame -f)|" /etc/nginx/sites-available/wordpress
sudo sed -i "s|server_name localhost|server_name $(hostame -i)|" /etc/nginx/sites-available/bigbluebutton
sudo sed -i "s|index index.html index.htm|index index.php index.html index.htm|" /etc/nginx/sites-available/wordpress
#sudo sed -i "s|server_name localhost|server_name $(hostname -i)|" /etc/nginx/sites-available/wordpress
sudo sed -i "s|try_files \$uri \$uri/ =404|try_files \$uri \$uri/ /index.php?q=\$uri\&\$args|" /etc/nginx/sites-available/wordpress
sudo sed -i "54ilocation ~ \.php\$ {" /etc/nginx/sites-available/wordpress
sudo sed -i "55ifastcgi_split_path_info ^(.+\\\.php)(/.+)\$;" /etc/nginx/sites-available/wordpress
sudo sed -i "56ifastcgi_pass unix:/var/run/php5-fpm.sock;" /etc/nginx/sites-available/wordpress
sudo sed -i "57ifastcgi_index index.php;" /etc/nginx/sites-available/wordpress
sudo sed -i "58iinclude fastcgi_params;" /etc/nginx/sites-available/wordpress
sudo sed -i "59i}" /etc/nginx/sites-available/wordpress
sudo sed -i "s|bigbluebutton.web.serverURL=http://${IP}|bigbluebutton.web.serverURL=http://${hostname2}.${domain}|" /var/lib/tomcat7/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties
sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default
#sudo rm /etc/nginx/sites-enabled/bigbluebutton
sudo sed -i "s|votre_nom_de_bdd|wordpress|" /var/www/wordpress/wp-config.php
sudo sed -i "s|votre_utilisateur_de_bdd|wordpressuser|" /var/www/wordpress/wp-config.php
sudo sed -i "s|votre_mdp_de_bdd|${PassWP}|" /var/www/wordpress/wp-config.php
sudo service nginx restart
sudo service php5-fpm restart
sudo ifdown eth0 && sudo ifup eth0 && sudo bbb-conf --setip $(hostame -i) && sudo bbb-conf --enablewebrtc && sudo bbb-conf --clean && sudo bbb-conf --check && rm -rf /usr/NetwConf && exit 0
Je refais une “clean install” et je poste les logs, je viens de péter ma VM et j’ai oublié de copier les logs avant de la supprimer
Et si jamais quelqu’un connait un bon tuto pour l’installer sur Jessie je suis preneur, j’ai du mal avec ubuntu !