搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法...

 

 

系统类型版本:centos7 64位

结果:最终跑通了项目并且实现了虚拟驱动器的文件传输功能,添加了中文支持

 

反思总结:

先查看官方文档的Q&A,找找有没有类似的错误,然后如果有错误日志或者现成的解决方案,直接尝试用解决方案或者搜索错误日志的方式,更加容易搜索到解决方案。

除非确实不方便,否则用开发者自己的开发环境类型版本、部署环境类型版本更加不容易出现bug或者兼容性问题,这次的这个就是因为作者的部署环境是 ubuntu 14.04 ,而我使用的 centos7 64位,所以才出现了这样的兼容性问题。

 

 

搭建环境:

jdk mysql 都是用的yum的方式安装的,教程里提到的和我的版本不一样,所以我手动去 Guacamole 的官网找了 1.0.0 的相关文件的下载地址,打开chrome控制台,找到了下载地址,有些是一些文件提供商,有些是清华大学的tuna的镜像源(https://mirrors.tuna.tsinghua.edu.cn/)

 

yum 安装 mysql:

# yum install -y mariadb mariadb-server
# systemctl start mariadb

 

yum 安装 jdk 1.8

https://blog.csdn.net/a360616218/article/details/76736988

 

tomcat安装时使用的源:

https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.14/bin/

 

tomcat 版本:

[root@localhost translations]# /usr/local/tomcat/bin/catalina version
-bash: /usr/local/tomcat/bin/catalina: No such file or directory
[root@localhost translations]# /usr/local/tomcat/bin/catalina.sh version
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.37
Server built:   Dec 12 2018 12:07:02 UTC
Server number:  8.5.37.0
OS Name:        Linux
OS Version:     3.10.0-957.el7.x86_64
Architecture:   amd64
JVM Version:    1.8.0_191-b12
JVM Vendor:     Oracle Corporation
[root@localhost translations]# 

 

java 版本:

[root@localhost translations]# java -version
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
[root@localhost translations]# 

 

 

参照的搭建方法链接:

https://www.jianshu.com/p/ebaba8ca17de   (主要)

https://blog.csdn.net/Yg854879464/article/details/82151314  (这个主要参照 guacamole.properties文本内容 ,不过目前跑通了的是下面这个)

[root@localhost ~]# cat /etc/guacamole/guacamole.properties 
# Hostname and port of guacamole proxy

guacd-hostname: localhost

guacd-port:     4822

enable-websocket: true

enable-clipboard-integration: true

# auth-provider: net.sourceforge.guacamole.net.auth.noauth.NoAuthenticationProvider

# noauth-config: /etc/guacamole/noauth-config.xml

 auth-provider: net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider

 basic-user-mapping: /etc/guacamole/user-mapping.xml

# MySQL properties
mysql-hostname: localhost
mysql-port: 3306
mysql-database: guacamole_db
mysql-username: guacamole_user
mysql-password: some_password
[root@localhost ~]# 

https://blog.csdn.net/cloudmq/article/details/80852944   (这个是 mysql 类型的配置方式的入口)

https://blog.csdn.net/cloudmq/article/details/80838192   (这个是 mysql 类型的配置方式)

https://blog.csdn.net/ccc_12345/article/details/76842312    (这个是 mysql 类型的配置方式)

mysql 方式配置时注意:(这里输入完了回车,出现 enter password后 直接回车就行了)

root@ubuntu:/etc/guacamole/sqlauth/guacamole-auth-jdbc-0.9.14/mysql/schema# ls
001-create-schema.sql  002-create-admin-user.sql  upgrade
root@ubuntu:/etc/guacamole/sqlauth/guacamole-auth-jdbc-0.9.14/mysql/schema# cat ./*.sql | mysql -u root -p guacamole_db   这里输入完了回车,出现 enter password后 直接回车就行了
Enter password: 
root@ubuntu:/etc/guacamole/sqlauth/guacamole-auth-jdbc-0.9.14/mysql/schema#

 

http://guacamole.apache.org/doc/gug/    (官方文档)

https://www.realks.com/archives/322    (rdp连接配置说明  其实这些参数,包括那些别的教程的、官方的参数,指的都是web配置面板的那些参数)

http://guacamole.apache.org/doc/gug/configuring-guacamole.html#rdp   (rdp配置说明(官方))

https://www.cnblogs.com/redirect/p/10066735.html    (guacamole实现RDP的下载)

https://sourceforge.net/p/guacamole/discussion/1110834/thread/9b3cc822/   (如何启动rdp文件传输  (主程回答了))

https://www.jianshu.com/p/d67cd6ba9595   (搭建及添加中文支持)

 

首先同时参照几种方式进行搭建,要搭建mysql方式的,因为xml方式的功能少,不实用,而且配置远程终端的密码时,如果有特殊符号 $ & 等时,将会登录失败。

注意,登录后默认用户名和密码均为:guacadmin

 

部署时的注意事项:./configure 的时候会报错(configure: error: no acceptable C compiler found in $PATH),安装gcc即可,(百度一下错误提示,就能找到安装gcc的命令)(yum install gcc)  参考:https://blog.csdn.net/duguduchong/article/details/8699774

要直接安装 mysql 的方式

注意统一版本(我安装时统一为 1.0.0 版本)

注意教程里说的不必要安装的依赖也必须安装,否则根本连不上,安装后成功连接上(那里面都包含了freerdp,都是必须装的,不知道那篇安装教程的博主为什么说是非必须的依赖)

重点:虚拟驱动器问题,这个baidu和google都找不到资料(这个中英文描述的,甚至用上了虚拟驱动器的关键字(G on Guacamole RDP),都没几个人回答,英文答案也是没人解决),看官方文档说是不能实现基础功能就可以看错误日志,百度和google了错误日志(包含 Failed to load guacdr plugin ),才仅在 Glyptodon,Inc。是Apache Guacamole的商业服务提供商(https://jira.glyptodon.com/secure/Dashboard.jspa) 的问答区的问题  (https://jira.glyptodon.com/browse/GUAC-1036?page=com.atlassian.jira.plugin.system.issuetabpanels)  和 sourceforge 的 Apache Guacamole项目下的 Discussion 即 Home/Browse/Apache Guacamole/Discussion ( https://sourceforge.net/p/guacamole/discussion/1110834/thread/76764d35/ ) 找到了解决方法(这个 sourceforge 的问题,主程回答了解决方法,问题提供者最后给出了正确的(只适用于他自己环境的bash命令,但是具有同类型的参考价值)bash命令),

果然,先查看官方文档的Q&A,找找有没有类似的错误,然后如果有错误日志或者现成的解决方案,直接尝试用解决方案或者搜索错误日志的方式,更加容易搜索到解决方案。

然后我把两个答案的内容结合我的实际环境(centos7),尝试着,竟然成功了!

在设置了两个软链接之后,重启guacamole的服务和tomcat(方法在下面的history里都有),然后再去面板重新设置保存一下,即可在远程桌面看到虚拟驱动器,

搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法..._第1张图片

 

 

搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法..._第2张图片

 

 搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法..._第3张图片

 

 

下面是从安装centos的配置网卡起,经过搭建环境的过程和解决各种问题和虚拟驱动器问题的linux history:

 

[root@localhost translations]# history 
    1  vi /etc/sysconfig/network-scripts/ifcfg-ens192 
    2  ping www.baidu.com
    3  service network restart
    4  ping www.baidu.com
    5  vi /etc/sysconfig/network-scripts/ifcfg-ens192 
    6  service network restart
    7  ifconfig
    8  ip addr
    9  ping www.baidu.com
   10  ls
   11  ping 192.168.1.30
   12  yum install -y java-1.8.0-openjdk-devel.x86\_64
   13  java -version
   14  yum install wget
   15  wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.0.M15/bin/apache-tomcat-9.0.0.M15.tar.gz
   16  wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.tar.gz
   17  tar -zxvf apache-tomcat-8.5.37.tar.gz 
   18  mv apache-tomcat-8.5.37 /usr/local/tomcat
   19  cd /etc/init.d/
   20  vi tomcat
   21  yum install -y cairo-devel libjpeg-turbo-devel libpng-devel uuid-devel
   22  wget http://mirrors.hust.edu.cn/apache/incubator/guacamole/0.9.10-incubating/source/guacamole-server-0.9.10-incubating.tar.gz
   23  yum install -y freerdp-devel pango-devel libssh2-devel libvncserver-devel pulseaudio-libs-devel openssl-devel libvorbis-devel libwebp-devel
   24  wget http://mirror.bit.edu.cn/apache/guacamole/1.0.0/source/guacamole-server-1.0.0.tar.gz
   25  tar -zxvf guacamole-server-1.0.0.tar.gz 
   26  cd guacamole-server-1.0.0
   27  yum install gcc
   28  ./configure --prefix=/usr/local/guacamole --with-init-dir=/etc/init.d
   29  make
   30  make install
   31  ldconfig 
   32  wget http://mirror.bit.edu.cn/apache/guacamole/1.0.0/binary/guacamole-1.0.0.war
   33  cp guacamole-1.0.0.war /usr/local/tomcat/webapps/guacamole.war
   34  mkdir /etc

你可能感兴趣的:(操作系统,javascript,运维,ViewUI)