{"id":10353,"date":"2016-01-02T12:58:25","date_gmt":"2016-01-02T17:58:25","guid":{"rendered":"http:\/\/jianmingli.com\/wp\/?p=10353"},"modified":"2016-01-02T12:58:25","modified_gmt":"2016-01-02T17:58:25","slug":"install-bigbluebutton-vm-server","status":"publish","type":"post","link":"https:\/\/jianmingli.com\/wp\/?p=10353","title":{"rendered":"Install BigBlueButton VM Server"},"content":{"rendered":"<div class='toc wptoc'>\n<h2>Contents<\/h2>\n<ol class='toc-odd level-1'>\n\t<li>\n\t\t<a href=\"#Install_From_VM\">Install From VM<\/a>\n\t<\/li>\n\t<li>\n\t\t<a href=\"#Install_from_Package\">Install from Package<\/a>\n\t\t<ol class='toc-even level-2'>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Download\">Download<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Config_Network\">Config Network<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Setup_SSH_Server\">Setup SSH Server<\/a>\n\t\t\t<\/li>\n\t\t<\/ol>\n\t<li>\n\t\t<a href=\"#Install_BBB_0.81\">Install BBB 0.81<\/a>\n\t\t<ol class='toc-even level-2'>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Check_Ubuntu\">Check Ubuntu<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Update_apt-get_Repository\">Update apt-get Repository<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Install_LibreOffice\">Install LibreOffice<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Install_Ruby\">Install Ruby<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Install_ffmpeg\">Install ffmpeg<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Install_BigBlueButton\">Install BigBlueButton<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Install_API_Demo\">Install API Demo<\/a>\n\t\t\t<\/li>\n\t\t\t<li>\n\t\t\t\t<a href=\"#Clean_Restart\">Clean Restart<\/a>\n\t\t\t<\/li>\n\t\t<\/ol>\n\t<li>\n\t\t<a href=\"#References\">References<\/a>\n\t<\/li>\n<\/ol>\n<\/ol>\n<\/div>\n<div class='wptoc-end'>&nbsp;<\/div>\n<span id=\"Install_From_VM\"><h2>Install From VM<\/h2><\/span>\n<p>* Download from <a href=\"http:\/\/sourceforge.net\/projects\/bigbluebutton\/files\/\">BigBlueButton Sourceforge site<\/a>, e.g. <a href=\"http:\/\/sourceforge.net\/projects\/bigbluebutton\/files\/bigbluebutton081-VM.zip\/download\">bigbluebutton081-VM.zip<\/a><br \/>\n* Start VMPlayer 5<br \/>\n* Select <em>Player > File > Open<\/em><br \/>\n* Browse to <em>bigbluebutton-vm.vmx<\/em> file<\/p>\n<span id=\"Install_from_Package\"><h2>Install from Package<\/h2><\/span>\n<span id=\"Download\"><h3>Download<\/h3><\/span>\n<p>* Download Ubuntu 10.4 VM from <a href=\"http:\/\/www.thoughtpolice.co.uk\/vmware\/\">Thoughtpolice<\/a><\/p>\n<span id=\"Config_Network\"><h3>Config Network<\/h3><\/span>\n<p><a href=\"https:\/\/help.ubuntu.com\/10.04\/serverguide\/network-configuration.html\">Network Configuration<\/a><br \/>\n* Login as notroot\/thoughtpolice<br \/>\n* Config IP<br \/>\n&#8211; sudo vi \/etc\/network\/interfaces<\/p>\n<pre lang=\"bash\">\r\nauto eth0\r\niface eth0 inet static\r\naddress 192.168.1.137\r\nnetmask 255.255.255.0\r\ngateway 192.168.1.1\r\n<\/pre>\n<p>* Restart eth0<\/p>\n<pre lang=\"bash\">\r\nsudo ifdown eth0\r\nsudo ifup eth0\r\n<\/pre>\n<p>* Assign DNS Servers<br \/>\nsudo vi \/etc\/resolve.conf<\/p>\n<pre lang=\"bash\">\r\nnameserver 192.168.1.21\r\nnameserver 107.170.95.180\r\nnameserver 75.127.14.107\r\ndomain mytest.local\r\nsearch mytest.local\r\n<\/pre>\n<span id=\"Setup_SSH_Server\"><h3>Setup SSH Server<\/h3><\/span>\n<p>* <a href=\"https:\/\/help.ubuntu.com\/community\/SSH\/OpenSSH\/Configuring\">SSH\/OpenSSH\/Configuring<\/a><\/p>\n<pre lang=\"bash\">\r\nsudo apt-get update\r\nsudo apt-get install openssh-server\r\nsudo cp \/etc\/ssh\/sshd_config \/etc\/ssh\/sshd_config\/ori\r\nsudo chmod a-w \/etc\/ssh\/sshd_config.ori\r\nsudo vi \/etc\/ssh\/sshd_config\r\nsudo restart ssh\r\n<\/pre>\n<span id=\"Install_BBB_0.81\"><h2>Install BBB 0.81<\/h2><\/span>\n<span id=\"Check_Ubuntu\"><h3>Check Ubuntu<\/h3><\/span>\n<pre lang=\"bash\">\r\ncat \/etc\/default\/locale\r\nLANG=\"en_US.UTF-8\"\r\nuname -m\r\nx86_64\r\nruby -v\r\nThe program 'ruby' is currently not installed.  You can install it by typing:\r\nsudo apt-get install ruby\r\n<\/pre>\n<span id=\"Update_apt-get_Repository\"><h3>Update apt-get Repository<\/h3><\/span>\n<p>* To Access BigBlueButton Package Repository<\/p>\n<pre lang=\"bash\">\r\n# Add the BigBlueButton key\r\nwget http:\/\/ubuntu.bigbluebutton.org\/bigbluebutton.asc -O- | sudo apt-key add -\r\n\r\n# Add the BigBlueButton repository URL and ensure the multiverse is enabled\r\necho \"deb http:\/\/ubuntu.bigbluebutton.org\/lucid_dev_081\/ bigbluebutton-lucid main\" | sudo tee \/etc\/apt\/sources.list.d\/bigbluebutton.list\r\n<\/pre>\n<p>* Check <em>lucid multiverse<\/em> exists in your apt-get souces<\/p>\n<pre lang=\"bash\">\r\ngrep \"lucid multiverse\" \/etc\/apt\/sources.list\r\n\r\ndeb http:\/\/us.archive.ubuntu.com\/ubuntu\/ lucid multiverse\r\ndeb-src http:\/\/us.archive.ubuntu.com\/ubuntu\/ lucid multiverse\r\n<\/pre>\n<p>* Update server<\/p>\n<pre lang=\"bash\">\r\nsudo apt-get update\r\nsudo apt-get dist-upgrade\r\n<\/pre>\n<span id=\"Install_LibreOffice\"><h3>Install LibreOffice<\/h3><\/span>\n<p>* Install a stub package for openoffice<\/p>\n<pre lang=\"bash\">\r\nwget http:\/\/bigbluebutton.googlecode.com\/files\/openoffice.org_1.0.4_all.deb\r\nsudo dpkg -i openoffice.org_1.0.4_all.deb\r\n<\/pre>\n<p>* Install LibreOffice<\/p>\n<pre lang=\"bash\">\r\nsudo apt-get install python-software-properties\r\n\r\nsudo apt-add-repository ppa:libreoffice\/libreoffice-4-0\r\nsudo apt-get update\r\n\r\nsudo apt-get install libreoffice-common\r\nsudo apt-get install libreoffice\r\n<\/pre>\n<span id=\"Install_Ruby\"><h3>Install Ruby<\/h3><\/span>\n<p>* Download Ruby package:<\/p>\n<pre lang=\"bash\">\r\nwget https:\/\/bigbluebutton.googlecode.com\/files\/ruby1.9.2_1.9.2-p290-1_amd64.deb\r\n<\/pre>\n<p>* Install<\/p>\n<pre lang=\"bash\">\r\nsudo dpkg -i ruby1.9.2_1.9.2-p290-1_amd64.deb\r\nsudo apt-get install -f\r\n<\/pre>\n<p>* Setup paths to ruby executable:<\/p>\n<pre lang=\"bash\">\r\nsudo update-alternatives --install \/usr\/bin\/ruby ruby \/usr\/bin\/ruby1.9.2 500 \\\r\n                         --slave \/usr\/bin\/ri ri \/usr\/bin\/ri1.9.2 \\\r\n                         --slave \/usr\/bin\/irb irb \/usr\/bin\/irb1.9.2 \\\r\n                         --slave \/usr\/bin\/erb erb \/usr\/bin\/erb1.9.2 \\\r\n                         --slave \/usr\/bin\/rdoc rdoc \/usr\/bin\/rdoc1.9.2\r\nsudo update-alternatives --install \/usr\/bin\/gem gem \/usr\/bin\/gem1.9.2 500\r\n<\/pre>\n<p>* Check versions:<\/p>\n<pre lang=\"bash\">\r\nruby -v\r\n\r\nruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]\r\n\r\ngem -v\r\n\r\n1.3.7\r\n<\/pre>\n<p>* Install a test gem<\/p>\n<pre lang=\"bash\">\r\nsudo gem install hello\r\n\r\nSuccessfully installed hello-0.0.1\r\n1 gem installed\r\nInstalling ri documentation for hello-0.0.1...\r\nInstalling RDoc documentation for hello-0.0.1...\r\n<\/pre>\n<span id=\"Install_ffmpeg\"><h3>Install ffmpeg<\/h3><\/span>\n<p>* Create install-ffmpeg.sh file:<\/p>\n<pre lang=\"bash\">\r\nsudo apt-get install build-essential git-core checkinstall yasm texi2html libvorbis-dev libx11-dev libxfixes-dev zlib1g-dev pkg-config\r\n\r\nLIBVPX_VERSION=1.2.0\r\nFFMPEG_VERSION=2.0.1\r\n\r\nif [ ! -d \"\/usr\/local\/src\/libvpx-${LIBVPX_VERSION}\" ]; then\r\n  cd \/usr\/local\/src\r\n  sudo git clone http:\/\/git.chromium.org\/webm\/libvpx.git \"libvpx-${LIBVPX_VERSION}\"\r\n  cd \"libvpx-${LIBVPX_VERSION}\"\r\n  sudo git checkout \"v${LIBVPX_VERSION}\"\r\n  sudo .\/configure\r\n  sudo make\r\n  sudo checkinstall --pkgname=libvpx --pkgversion=\"${LIBVPX_VERSION}\" --backup=no --deldoc=yes --default\r\nfi\r\n\r\nif [ ! -d \"\/usr\/local\/src\/ffmpeg-${FFMPEG_VERSION}\" ]; then\r\n  cd \/usr\/local\/src\r\n  sudo wget \"http:\/\/ffmpeg.org\/releases\/ffmpeg-${FFMPEG_VERSION}.tar.bz2\"\r\n  sudo tar -xjf \"ffmpeg-${FFMPEG_VERSION}.tar.bz2\"\r\n  cd \"ffmpeg-${FFMPEG_VERSION}\"\r\n  sudo .\/configure --enable-version3 --enable-postproc --enable-libvorbis --enable-libvpx\r\n  sudo make\r\n  sudo checkinstall --pkgname=ffmpeg --pkgversion=\"5:${FFMPEG_VERSION}\" --backup=no --deldoc=yes --default\r\nfi\r\n<\/pre>\n<p>* Run the script file:<\/p>\n<pre lang=\"bash\">\r\n chmod +x install-ffmpeg.sh\r\n.\/install-ffmpeg.sh\r\n<\/pre>\n<p>* Check ffmpeg version<\/p>\n<pre lang=\"bash\">\r\nffmpeg -version\r\n\r\nffmpeg version 2.0.1\r\nbuilt on Nov  8 2014 00:27:43 with gcc 4.4.3 (Ubuntu 4.4.3-4ubuntu5.1)\r\nconfiguration: --enable-version3 --enable-postproc --enable-libvorbis --enable-libvpx\r\nlibavutil      52. 38.100 \/ 52. 38.100\r\nlibavcodec     55. 18.102 \/ 55. 18.102\r\nlibavformat    55. 12.100 \/ 55. 12.100\r\nlibavdevice    55.  3.100 \/ 55.  3.100\r\nlibavfilter     3. 79.101 \/  3. 79.101\r\nlibswscale      2.  3.100 \/  2.  3.100\r\nlibswresample   0. 17.102 \/  0. 17.102\r\n<\/pre>\n<span id=\"Install_BigBlueButton\"><h3>Install BigBlueButton<\/h3><\/span>\n<p>* Install<\/p>\n<pre lang=\"bash\">\r\nsudo apt-get install bigbluebutton\r\n<\/pre>\n<p>* Update applet?<\/p>\n<pre lang=\"bash\">\r\nwget https:\/\/github.com\/bigbluebutton\/bigbluebutton\/blob\/v0.81-release\/bigbluebutton-client\/resources\/prod\/bbb-deskshare-applet-0.8.1.jar\r\n\r\nsudo cp bbb-deskshare-applet-0.8.1.jar \/var\/www\/bigbluebutton\/client\/bbb-deskshare-applet-0.8.1.jar\r\n<\/pre>\n<span id=\"Install_API_Demo\"><h3>Install API Demo<\/h3><\/span>\n<pre lang=\"bash\">\r\nsudo apt-get install bbb-demo\r\n<\/pre>\n<p>* Remove bbb-demo<\/p>\n<pre lang=\"bash\">\r\nsudo apt-get purge bbb-demo\r\n<\/pre>\n<span id=\"Clean_Restart\"><h3>Clean Restart<\/h3><\/span>\n<pre lang=\"bash\">\r\nsudo bbb-conf --clean\r\nsudo bbb-conf --check\r\n<\/pre>\n<pre lang=\"bash\">\r\nBigBlueButton Server 0.81 (1556)\r\n                    Kernel version: 2.6.32-21-server\r\n                      Distribution: Ubuntu 10.04.4 LTS (64-bit)\r\n                            Memory: 493 MB\r\n\r\n\/var\/www\/bigbluebutton\/client\/conf\/config.xml (bbb-client)\r\n                Port test (tunnel): 192.168.1.137\r\n                              Red5: 192.168.1.137\r\n\r\n\/etc\/nginx\/sites-available\/bigbluebutton (nginx)\r\n                       server name: 192.168.1.137\r\n                              port: 80\r\n                    bbb-client dir: \/var\/www\/bigbluebutton\r\n\r\n\/var\/lib\/tomcat6\/webapps\/bigbluebutton\/WEB-INF\/classes\/bigbluebutton.properties (bbb-web)\r\n                      bbb-web host: 192.168.1.137\r\n\r\n\/var\/lib\/tomcat6\/webapps\/demo\/bbb_api_conf.jsp (API demos)\r\n                           api url: 192.168.1.137\r\n\r\n\/usr\/share\/red5\/webapps\/bigbluebutton\/WEB-INF\/red5-web.xml (red5)\r\n                  voice conference: FreeSWITCH\r\n                     capture video: true\r\n                   capture desktop: true\r\n\r\n\/usr\/local\/bigbluebutton\/core\/scripts\/bigbluebutton.yml (record and playback)\r\n                     playback host: 192.168.1.137\r\n\r\n\r\n** Potential problems described below **\r\n# Warning: You are running BigBlueButton on a server with less than 2G of memory.  Your\r\n# performance may suffer.\r\n\r\n# Warning: The API demos are installed and accessible from:\r\n#\r\n#    http:\/\/192.168.1.137\/\r\n#\r\n# These API demos allow anyone to access your server without authentication\r\n# to create\/manage meetings and recordings. They are for testing purposes only.\r\n# If you are running a production system, remove them by running:\r\n#\r\n#    sudo apt-get purge bbb-demo\r\n<\/pre>\n<span id=\"References\"><h2>References<\/h2><\/span>\n<p>* <a href=\"https:\/\/code.google.com\/p\/bigbluebutton\/wiki\/BigBlueButtonVM\">BigBlueButtonVM<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Install From VM * Download from BigBlueButton Sourceforge site, e.g. bigbluebutton081-VM.zip * Start VMPlayer 5 * Select Player > File > Open * Browse to bigbluebutton-vm.vmx file Install from Package Download * Download Ubuntu 10.4 VM from Thoughtpolice Config Network &hellip; <a href=\"https:\/\/jianmingli.com\/wp\/?p=10353\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[518],"tags":[517],"class_list":["post-10353","post","type-post","status-publish","format-standard","hentry","category-ubuntu","tag-bigbluebutton"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8cRUO-2GZ","_links":{"self":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/10353","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=10353"}],"version-history":[{"count":5,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/10353\/revisions"}],"predecessor-version":[{"id":10359,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=\/wp\/v2\/posts\/10353\/revisions\/10359"}],"wp:attachment":[{"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=10353"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=10353"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jianmingli.com\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=10353"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}