在网上看了不少安装red5-server的方法,在我电脑上都好像安装不成功,本来是很简单的事,因为刚接触,结果费了不少时间。这里整理出ubuntu16.04 成功安装的方法,以便给搭建一个参考。

    (一)安装JDK

1. 终端输入:apt-cache search openjdk

运行结果:

licaibiao@lcb:~/test/RTMP$ sudo apt-cache search openjdk
[sudo] password for licaibiao:
Sorry, try again.
[sudo] password for licaibiao:
default-jdk - Standard Java or Java compatible Development Kit
default-jdk-doc - Standard Java or Java compatible Development Kit (document
default-jdk-headless - Standard Java or Java compatible Development Kit (hea
default-jre - Standard Java or Java compatible Runtime
default-jre-headless - Standard Java or Java compatible Runtime (headless)
openjdk-8-dbg - Java runtime based on OpenJDK (debugging symbols)
openjdk-8-demo - Java runtime based on OpenJDK (demos and examples)
openjdk-8-doc - OpenJDK Development Kit (JDK) documentation
openjdk-8-jdk - OpenJDK Development Kit (JDK)
openjdk-8-jdk-headless - OpenJDK Development Kit (JDK) (headless)
openjdk-8-jre - OpenJDK Java runtime, using Hotspot JIT
openjdk-8-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless)
openjdk-8-jre-jamvm - Alternative JVM for OpenJDK, using JamVM
openjdk-8-source - OpenJDK Development Kit (JDK) source files
icedtea-8-plugin - web browser plugin based on OpenJDK and IcedTea to execut
jtreg - Regression Test Harness for the OpenJDK platform
libhsdis0-fcml - HotSpot disassembler plugin using FCML
libreoffice - office productivity suite (metapackage)
openjdk-8-jre-dcevm - Alternative VM for OpenJDK 8 with enhanced class redef
openjdk-8-jre-zero - Alternative JVM for OpenJDK, using Zero/Shark
openjdk-9-dbg - Java runtime based on OpenJDK (debugging symbols)
openjdk-9-demo - Java runtime based on OpenJDK (demos and examples)
openjdk-9-doc - OpenJDK Development Kit (JDK) documentation
openjdk-9-jdk - OpenJDK Development Kit (JDK)
openjdk-9-jdk-headless - OpenJDK Development Kit (JDK) (headless)
openjdk-9-jre - OpenJDK Java runtime, using Hotspot JIT
openjdk-9-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless)
openjdk-9-source - OpenJDK Development Kit (JDK) source files
uwsgi-app-integration-plugins - plugins for integration of uWSGI and applica
uwsgi-plugin-jvm-openjdk-8 - Java plugin for uWSGI (OpenJDK 7)
uwsgi-plugin-jwsgi-openjdk-8 - JWSGI plugin for uWSGI (OpenJDK 7)
uwsgi-plugin-ring-openjdk-8 - Closure/Ring plugin for uWSGI (OpenJDK 7)
uwsgi-plugin-servlet-openjdk-8 - JWSGI plugin for uWSGI (OpenJDK 7)
java-package - Utility for creating Java Debian packages

2.这里我们安装openjdk-8-jdk,因为我安装openjdk-9-jdk的时候有出错。

运行安装命令:

sudo apt-get install openjdk-8-jdk

3.测试是否安装成功:java -version

licaibiao@lcb:~$ java -version
openjdk version "1.8.0_121"
OpenJDK Runtime Environment (build 1.8.0_121-8u121-b13-0ubuntu1.16.04.2-b13)
OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)

4.配置java_home变量:

运行:echo export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/">>~/.bashrc 添加变量

source .bashrc  使变量生效

licaibiao@lcb:~$ $JAVA_HOME
licaibiao@lcb:~$ echo export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/">>~/.bashrc
licaibiao@lcb:~$ $JAVA_HOME
licaibiao@lcb:~$ source .bashrc
licaibiao@lcb:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-openjdk-amd64/

  (二)安装red5

1.下载red5 linux 安装包:https://github.com/Red5/red5-server/releases ,国外网站,下载很慢

我这里提供一个已经下载好的安装包:red5-server-1.0.9-M6

2.创建目录:

mkdir -p /usr/share/red5

3.设置环境变量:

export RED5_HOME=/usr/share/red5

4.将安装包解压到目录

/usr/share/red5

5. 开始运行red5

cd /usr/share/red5
    ./red5.sh &

6.结束运行red5

cd /usr/share/red5
    ./red5-shutdown.sh

安装结束

测试red5是否安装成功

(1)运行red5

(2)浏览器输入:本地IP:5080

比如我的IP地址为192.168.0.6,则输入:http://192.168.0.6:5080/   出现下面界面表示安装成功。

附启动脚本

Configure init script

#!/bin/sh
#
# /etc/init.d/red5 -- startup script for the red5 server
#
# Based on the tomcat6 init script.
# Written by Miquel van Smoorenburg <miquels@cistron.nl>.
# Modified for Ubuntu red5 by Fred Dixon <ffdixon@bigbluebutton.org>
# Modified for Debian GNU/Linux by Ian Murdock <imurdock@gnu.ai.mit.edu>.
# Modified for Tomcat by Stefan Gybas <sgybas@debian.org>.
# Modified for Tomcat6 by Thierry Carrez <thierry.carrez@ubuntu.com>.
#
### BEGIN INIT INFO
# Provides:          red5
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $named
# Should-Stop:       $named
# Default-Start:     2 3 4 5
# Default-Stop:      1
# Short-Description: Start red5.
# Description:       Start the red5 service.
### END INIT INFOset -e PATH=/bin:/usr/bin:/sbin:/usr/sbin
NAME=red5
DESC="Red5 Server"
RED5_HOME=/mnt/opt/$NAME
DEFAULT=/etc/default/$NAME
UMASK=0002# These variables are needed by Xuggler
export XUGGLE_HOME=/usr/local
export PATH=$PATH:$XUGGLE_HOME/bin
export LD_LIBRARY_PATH=$XUGGLE_HOME/lib:$LD_LIBRARY_PATHif [ `id -u` -ne 0 ]; thenecho "You need root privileges to run this script"exit 1
fi# Make sure red5 is started with system locale
if [ -r /etc/default/locale ]; then. /etc/default/localeexport LANG
fi. /lib/lsb/init-functions
. /etc/default/rcS# The following variables can be overwritten in $DEFAULT# The first existing directory is used for JAVA_HOME (if JAVA_HOME is not
# defined in $DEFAULT)
JDK_DIRS="/usr/lib/jvm/java-6-openjdk /usr/lib/jvm/java-6-sun /usr/lib/jvm/java-1.5.0-sun /usr/lib/j2sdk1.5-sun /usr/lib/j2sdk1.5-ibm"# Look for the right JVM to use
for jdir in $JDK_DIRS; doif [ -r "$jdir/bin/java" -a -z "${JAVA_HOME}" ]; thenJAVA_HOME="$jdir"fi
done
export JAVA_HOME# Output file
if [ -z "$OUT_FILE" ]; thenOUT_FILE=/var/log/red5.out
fi# End of variables that can be overwritten in $DEFAULT# overwrite settings from default file
if [ -f "$DEFAULT" ]; then. "$DEFAULT"
fiif [ ! -f "$RED5_HOME/red5.jar" ]; thenlog_failure_msg "$NAME is not installed"exit 1
fi#
# Function to wait if there are connections still open for 1935.  Some browsers hang on to a connection
# that prevents a ./red5 restart from binding to port 1935
#
wait_1935_close () {ACTIVE=$(netstat -ant | grep 1935 | wc | awk -F ' ' '{print $1}')if [ $ACTIVE != 0 ]; thenecho -n "   Waiting for $ACTIVE connections on 1935 to close before starting Red5 "while [ $ACTIVE != 0 ]; doecho -n "."sleep 5ACTIVE=$(netstat -ant | grep 1935 | wc | awk -F ' ' '{print $1}')donefiecho
}# Define other required variables
RED5_PID="/var/run/$NAME.pid"RED5_MAINCLASS=org.red5.server.Bootstrap
RED5_CLASSPATH="$RED5_HOME/boot.jar:$RED5_HOME/conf:$RED5_HOME/lib/ejb3-persistence.jar"
JAVA_OPTS="-Dpython.home=lib -Xms128M -Xmx128M -Dred5.root=$RED5_HOME -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector -Dcatalina.useNaming=true -Djava.security.debug=failure -cp $RED5_CLASSPATH org.red5.server.Bootstrap"case "$1" instart)if [ -z "$JAVA_HOME" ]; thenlog_failure_msg "no JDK found - please set JAVA_HOME"exit 1fiif [ ! -d "$RED5_HOME/conf" ]; thenlog_failure_msg "invalid RED5_HOME: $RED5_HOME"exit 1filog_daemon_msg "Starting $DESC" "$NAME"if start-stop-daemon --start --test --pidfile $RED5_PID \--startas "$JAVA_HOME/bin/java" \>/dev/null; thenwait_1935_closestart-stop-daemon --start --background --make-pidfile --chuid red5  --umask $UMASK \--chdir $RED5_HOME --pidfile $RED5_PID --startas "$JAVA_HOME/bin/java" -- $JAVA_OPTSsleep 5# Because we pushed it into the background, we need to check it's statusif start-stop-daemon --test --start --pidfile $RED5_PID --startas "$JAVA_HOME/bin/java" >/dev/null; thenlog_end_msg 1elselog_end_msg 0fielselog_progress_msg "(already running)"log_end_msg 0fi;;stop)log_daemon_msg "Stopping $DESC" "$NAME"if start-stop-daemon --start --test --pidfile $RED5_PID \--startas "$JAVA_HOME/bin/java" \>/dev/null; thenlog_progress_msg "(not running)"elsestart-stop-daemon --stop --pidfile $RED5_PID \--startas "$JAVA_HOME/bin/java"sleep 5rm -f $RED5_PIDfilog_end_msg 0;;status)if start-stop-daemon --start --test --pidfile $RED5_PID \--startas "$JAVA_HOME/bin/java" \>/dev/null; thenif [ -f "$RED5_PID" ]; thenlog_success_msg "$DESC is not running, but pid file exists."exit 1elselog_success_msg "$DESC is not running."exit 3fielselog_success_msg "$DESC is running with pid `cat $RED5_PID`"fi;;restart|force-reload)if start-stop-daemon --test --stop --pidfile "$RED5_PID" \--startas "$JAVA_HOME/bin/java" \>/dev/null; then$0 stopsleep 1fi$0 start;;*)log_success_msg "Usage: $0 {start|stop|restart|force-reload|status}"exit 1;;
esacexit 0
该博客将停止更新 新的文章内容和附件工程文件更新到了公众号 :   liwen01liwen01

Ubuntu16.04 安装搭建RED5流媒体服务器相关推荐

  1. Ubuntu16.04, 安装vncserver (tightvnc) 连接服务器

    安装TightVnc 1.预装的服务器没有桌面,我建议Ubuntu16.04安装gnome桌面比较好 尝试安装过Unity(配置vnc的教程比较少).xfc4桌面(terminal终端很小,不够大气) ...

  2. 在ubuntu16.04上搭建samba文件共享服务器

    需求: 有两个用户abo和abu; 有三个文件夹: /samba_workspace/abo/ : 用户abo可访问,拥有读写权限 /samba_workspace/abu/ : 用户abu可访问,拥 ...

  3. 在ubuntu16.04上搭建svn服务器

    本文介绍在如何在ubuntu16.04 的系统上搭建svn服务器以及可能遇到的问题.下面的操作都以root用户进行. 1.安装svn服务器软件subversion. // 安装完成后的svn版本为 1 ...

  4. 阿里云服务器Ubuntu16.04安装Anaconda(python3.6)和本地远程连接jupyter

    一.ubuntu16.04安装Anaconda(python3.6) 1.上传Anaconda 我选择的是在本地下载了anaconda的linux版本,之后用xftp上传到服务器上 下载地址:http ...

  5. 服务器ubuntu16.04安装Miniconda配置pytorch环境

    服务器ubuntu16.04安装Miniconda配置pytorch环境 刚进入实验室时配置过服务器node1节点,node1节点有4张p100,但是总是被占满,几个月后申请了node2节点,但是完全 ...

  6. linux ubuntu 安装git服务器,[linux] Ubuntu20.04上安装搭建私有Git服务器Gitea

    [linux] Ubuntu20.04上安装搭建私有Git服务器Gitea [linux] Ubuntu20.04上安装搭建私有Git服务器Gitea Gitea 是相比于gitlab更加轻量化,而且 ...

  7. 【转】ubuntu16.04安装配置tftp服务

    转自:ubuntu16.04安装配置tftp服务_carspiriter的博客-CSDN博客_ubuntu安装tftp 首先声明:tftp是client客户端,tftpd是server服务器端,d应该 ...

  8. 手把手教你搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流

    手把手教你搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流 转载自:https://www.jianshu.com/p/06c2025edcd3 by – paperfish 最近尝试着搭建 ...

  9. ubuntu16.04 安装cuda9.0+cudnn7.0.5+tensorflow+nvidia-docker配置GPU服务

    [摘要] docker很好用,但是在GPU服务器上使用docker却比较复杂,需要一些技巧,下面将介绍一下在ubuntu16.04环境下的GPU-docker环境搭建过程. 第一步: 删除之前的nvi ...

  10. 使用 NGINX 搭建 RTMP 流媒体服务器实现直播功能

    使用 NGINX 搭建 RTMP 流媒体服务器实现直播功能 本文介绍了如何使用 Nginx 搭建 RTMP 流媒体服务器,并提供配置文件和前端示例,实现直播功能. 环境 操作系统: Ubuntu 18 ...

最新文章

  1. asp.net ajax post 请求
  2. Yesterday、Today、Tomorrow - 昨天、今天、明天
  3. 音视频技术开发周刊 | 180
  4. vue mock模拟后台接口数据
  5. [渝粤教育] 广东-国家-开放大学 21秋期末考试马克思主义基本原理概论(A)10882k1 (5)
  6. 现代软件工程系列 学生的精彩文章 (2) 到底是谁的 bug?
  7. Word2Vec学习笔记(一)
  8. 为什么中文分词比英文分词更难?有哪些常用算法?(附代码)
  9. Mac开发必备工具(二)—— iTerm 2
  10. (24)FPGA减法器设计(第5天)
  11. [ISSUE]angularjs resolve: $injector:unpr] Unknown provider:
  12. java测试输入星座匹配_java十二星座 (快来测试你是什么星座吧)
  13. 干货 | 这可能是最详细的「阻抗匹配」介绍
  14. 国产磁力架的规格:1.5ml,2ml,15ml,50ml,0.2ml离心管,PCR单管,8连排管,12连排管,96孔PCR板磁力架
  15. 硬盘突然变raw格式_磁盘分区变成RAW格式怎么办?手把手教你解决方法
  16. oracle ora-各种常见java.sql.SQLException归纳
  17. The server time zone value '?й???????' is unrecognized or represents more than one time zone
  18. 微软全球最大人工智能和物联网实验室落户上海张江
  19. Fineplus 1.0(QQ完美助手) 正式版
  20. 阿里 ahooks介绍(二): useRequest

热门文章

  1. mysql中删除列的语句_MySQL 语句大全--------添加列,修改列,删除列
  2. 支付宝支付即时到账接口在ThinkPHP商城中的应用(转载)
  3. javaShop JAVA版多用户B2B2C商城源码(PC +H5+小程序+APP)
  4. 微信小程序云开发实现一对一聊天
  5. 被欧美公司垄断的工业软件,中国还有机会吗?
  6. 一款自动生成唯一头像的开源代码库
  7. 转载:住在我隔壁的大学刚毕业的小夫妻
  8. Java实现一个简单的两人五子棋游戏(二) 画棋盘
  9. 使用PdgCntEditor软件对PDF目录进行快速编辑
  10. 怎么修改PDF文件内容