Guacamole Ubuntu20.04配置
没成功
最近老大让我调研一个云桌面 需要捣鼓Guacamole
顺便学习下Linux 开心
配置教程 —— 我还在摸索.... 可以一起探讨
全程在root权限下
下载server 和 client 的压缩包
wget https://apache.org/dyn/closer.lua/guacamole/1.3.0/source/guacamole-client-1.3.0.tar.gz?action=download wget https://apache.org/dyn/closer.lua/guacamole/1.3.0/source/guacamole-server-1.3.0.tar.gz?action=download
server端
解压安装包
tar -xzvf guacamole-server-1.3.0.tar.gz?action=download
更新库
sudo apt-get update
下载gcc
sudo apt install build-essential
验证
gcc --version
下载依赖包
sudo apt-get install libcairo2-dev libjpeg-turbo8-dev libpng-dev libtool-bin libossp-uuid-dev sudo apt-get install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libwebsockets-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev
找到了哪些库以及应该构建哪些库的列表
./configure --with-init-dir=/etc/init.d
得到
guacamole-server version 1.3.0 ------------------------------------------------ Library status: freerdp2 ............ yes pango ............... yes libavcodec .......... yes libavformat.......... yes libavutil ........... yes libssh2 ............. yes libssl .............. yes libswscale .......... yes libtelnet ........... yes libVNCServer ........ yes libvorbis ........... yes libpulse ............ yes libwebsockets ....... yes libwebp ............. yes wsock32 ............. no Protocol support: Kubernetes .... yes RDP ........... yes SSH ........... yes Telnet ........ yes VNC ........... yes Services / tools: guacd ...... yes guacenc .... yes guaclog .... yes FreeRDP plugins: /usr/lib/x86_64-linux-gnu/freerdp2 Init scripts: /etc/init.d Systemd units: no
可能有权限问题
$: sudo chmod -R 777 目录 -R 是指级联应用到目录里的所有子目录和文件 777将所有文件都赋以最高权限
编译:make
make[2]: Leaving directory '/home/galesaur/Guacamole/guacamole-server-1.3.0/src/guaclog' make[2]: Entering directory '/home/galesaur/Guacamole/guacamole-server-1.3.0' make[2]: Leaving directory '/home/galesaur/Guacamole/guacamole-server-1.3.0' make[1]: Leaving directory '/home/galesaur/Guacamole/guacamole-server-1.3.0'
安装构建的组件:
make install
更新已安装库的系统缓存
ldconfig
Client
有两种安装方式...
1)源码编译安装 之前下载的应该是源码
2)下载官方提供的
wget https://apache.org/dyn/closer.lua/guacamole/1.3.0/binary/guacamole-1.3.0.war?action=download
下载JDK
sudo apt-get -y --force-yes install default-jre sudo apt-get -y --force-yes install default-jdk
openjdk11已经没有提供jre了
生成jre
root@DESKTOP-EBHIKEH:/usr/lib/jvm/java-1.11.0-openjdk-amd64# bin/jlink --module-path jmods --add-modules java.desktop --output jre
下载配置maven
官网:https://maven.apache.org/download.cgi 下载 wget https://dlcdn.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz 解压 tar -xzvf apache-maven-3.6.3-bin.tar.gz cd ~ && vim .bashrc
export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export M2_HOME=/usr/local/source/apache-maven-3.6.3
export PATH=$M2_HOME/bin:$PATH
验证下:
root@DESKTOP-EBHIKEH:~# mvn -v
Apache Maven 3.6.3
Maven home: /usr/share/maven
Java version: 11.0.13, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en, platform encoding: UTF-8
OS name: "linux", version: "5.10.60.1-microsoft-standard-wsl2", arch: "amd64", family: "unix"
搜了一波网上的..... 啊啊啊啊啊啊啊啊啊 我发现我没有 Java home.... 问同事 可能是jdk版本问题 写个Java程序跑一下可以输出 好的没问题
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00) Maven home: /usr/lib/jvm/apache-maven-3.3.9 Java version: 1.8.0_121, vendor: Oracle Corporation Java home: /usr/lib/jvm/jdk1.8.0_121/jre Default locale: zh_CN, platform encoding: UTF-8 OS name: "linux
参考来自:https://blog.csdn.net/qq_34412086/article/details/88038210
下载Tomcat
mkdir /usr/local/tomcat
下载:wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.14/bin/apache-tomcat-10.0.14.tar.gz
解压: tar -xzvf apache-tomcat-10.0.14.tar.gz
cd apache-tomcat-10.0.14/bin
vim startup.sh
加入这些:
#set java environment export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=${JAVA_HOME}/bin:$PATH #tomcat export TOMCAT=/usr/local/tomcat/apache-tomcat-10.0.14
执行命令:apache-tomcat-7.0.75/bin 用来进入bin文件中。
执行命令:./startup.sh 启动tomcat服务
执行命令:./shutdown.sh 停止tomcat服务
开启tomcat服务
root@DESKTOP-EBHIKEH:/usr/local/tomcat/apache-tomcat-10.0.14/bin# sudo ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat/apache-tomcat-10.0.14 Using CATALINA_HOME: /usr/local/tomcat/apache-tomcat-10.0.14 Using CATALINA_TMPDIR: /usr/local/tomcat/apache-tomcat-10.0.14/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/apache-tomcat-10.0.14/bin/bootstrap.jar:/usr/local/tomcat/apache-tomcat-10.0.14/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.
验证:输入curl 127.0.0.1:8080 输出一堆代码 就是成功啦
如果没有的话回输出curl: (7) Failed to connect to 127.0.0.1 port 8080: Connection refused
部署Guacamole
解压guacamole-1.3.0.war?action=download
如何tar -xzvf guacamole-1.3.0.war?action=download
gzip: stdin has more than one entry--rest ignored tar: Child returned status 2 tar: Error is not recoverable: exiting now
tar命令是调用了gunzip命令的
对只有一个压缩内容的文件来解压的时候才用tar 而如果压缩包里有多个文件被压缩了
tar命令不能继续工作。可以采用unzip命令去解压。
先查看是否已安装unzip,没有安装的话下载unzip
apt-get install unzip
1、把文件解压到当前目录下 unzip test.zip 2、如果要把文件解压到指定的目录下,需要用到-d参数。 unzip -d /xxx test.zip 3、解压的时候,有时候不想覆盖已经存在的文件,那么可以加上-n参数 unzip -n test.zip unzip -n -d /xxx test.zip
所以
root@DESKTOP-EBHIKEH:/home/galesaur/Guacamole# unzip -d /home/galesaur/Guacamole/guacamole-1.3.0 guacamole-1.3.0.war?action=download
#部署到Tomcat
root@DESKTOP-EBHIKEH:/usr/local/tomcat/apache-tomcat-10.0.14/webapps# cp -r /home/galesaur/Guacamole/guacamole-1.3.0 guacamole-1.3.0
#这里还不是很确定 好像是复制错了 应该是复制那个压缩包.....
cp guacamole-1.3.0.war?action=download /usr/local/tomcat
mv guacamole-1.3.0.war?action=download guacamole.war #这个好像是必须要改成这个名字 剩下的我还没看懂
//感觉是复制压缩包过去的... 也可以采用第一种方式 进入到目录下
cd guacamole-client-1.3.0
然后
mvn package
执行失败了....排查了一早上,没看见啥问题.....也可能是环境? 最后成功
打包成功后,会输出build success的信息。打包完成后,在当前目录的子目录guacamole/target(也就是guacamole-client-1.3.0/guacamole/target)中,有guacamole-1.3.0.war文件。将其放置到tomcat容器中。记得改名字。
所以确实是复制压缩包
我的init.d没有 tomcat .... 所以我是去tomacat目录重启的
重启Tomcat并启动guacd后,Guacamole就安装成功了,虽然还不能完全运行。在当前状态下,它完全未配置,需要进一步的步骤来添加至少一个 Guacamole 用户和一些连接。这在第 5 章,配置 Guacamole 中有介绍。
欧克
配置Guacamole
//出错了