CentOS8服务器+XShell远程连接+VNC可视化

1、远程连接

软件:Xshell
步骤:新建会话(会话名、主机、端口号)+连接
注意:连不通的话先ping一下(ping 主机号),talent一下(talent 主机号 端口号),如果能ping通,talent不通,可能是该端口被防火墙拦截了

2、界面可视化

软件:VNC Viewer
主教程辅教程

3、软件安装

软件:Xftp、SAC、GMT-6.2.0
1)MATLAB2019b
安装教程1-R2019b安装教程2-R2017b
问题1:ubuntu安装MatlabR9b报错"无法从dvd目录内部运行安装程序"(解决
问题2:挂载iso文件的路径应该是/home/用户名/xxx,如果选择别的路径,在中文系统下2019b会出现乱码现象,2019b版本安装过程会要求改路径为/home/用户名/xxx
问题3:尽管2017b挂载iso文件的路径为/home/用户名/xxx,但是继续安装下去依旧会导致中文字体方块化现象以及打开matlab时不出现启动界面,虽然后面可以打开而且似乎不影响运行,估摸着对matlab界面的了解,大致的操作运行matlab文件,屡次运行程序屡次报错/usr/lib64/libfontconfig.so.1: undefined reference to FT_Done_MM_Var ;也就是说问题出在libfontconfig.so.1这儿。
①参考教程a在/usr/lib64/打开终端输入命令ll |grep libfontconfig.so.1发现libfontconfig.so.1是个软链接,并且连接到libfontconfig.so.1.12.0了,以此推测matlab2017b跟它不匹配。
②参考教程b去我的Ubuntu上找到libfontconfig.so.1(Ubuntu16.04安装matlab2017b成功)查找命令find / -name "libfontconfig.so.1*",接下来就复制过去/usr/lib64/并且覆盖。当然啦,失败了!原因是/usr/lib64/下面的libfontconfig.so.1本来就是个软链接,这样做还是没有改变正主为libfontconfig.so.1.12.0的事实,正确操作是先将libfontconfig.so.1.12.0备份,然后删掉libfontconfig.so.1.12.0,接着将libfontconfig.so.1复制过来。又失败了!原因是我Ubuntu上libfontconfig.so.1也是个软链接!于是顺藤摸瓜找到他的真身libfontconfig.so.1.10.0,完结。正确操作应该是这样的:

#1、将所需要的库文件拷贝到/usr/lib64
cp libfontconfig.so.1.10.0 /usr/lib64
#2、备份一个libfontconfig.so.1.12.0,免得后悔哈哈哈
cp libfontconfig.so.1.12.0 libfontconfig.so.1.12.0-bak
#3、删掉libfontconfig.so.1.12.0和它的软链接
rm libfontconfig.so.1.12.0 libfontconfig.so.1
#4、创建libfontconfig.so.1.10.0的软链接libfontconfig.so.1
ln -s libfontconfig.so.1.10.0 libfontconfig.so.1

(PS.笔者现在同时装了两个MATLAB,R2017b是后来安装好的一开始一直没有办法解决乱码问题。而为啥不用R2019b?我的程序在Ubuntu的R2017b上顺利跑通,而在CentOS8上R2019b碰到一个空文件就会出错,“在拷了大半天数据并在我Ubuntu机子上验证过没有问题的前提下,在山穷水复疑无路的时候凭借着“没有条件创造条件也要上”的精神,终于在CentOS8上解决了R2017b的bug~~芜湖!”——软件小白终于松了一口气)

2)SAC
安装教程
解压: tar zxvf sac-101.6a-linux_x86_64.tar.gz
拷贝:sudo cp -r sac /usr/local
设置环境变量:vi ~/.bashrc

export SACHOME=/usr/local/sac
export SACAUX=${SACHOME}/aux
export PATH=${SACHOME}/bin:${PATH}

报错教程

报错:sac: error while loading shared libraries: libSM.so.6: cannot open shared object file: No such file or directorysudo apt-file search libSM.so.6
cd /usr/local/sac/bin
ldd sac#看看有什么库缺失了
sudo apt-get update
sudo apt-get install apt-file
sudo apt-file update
sudo apt-file serch libSM.so.6
libsm6: /usr/lib/x86_64-linux-gnu/libSM.so.6
libsm6: /usr/lib/x86_64-linux-gnu/libSM.so.6.0.1
sudo apt-get install libsm6

在这里插入图片描述

sudo apt-get install libncurses5
问题:error while loading shared libraries:libncurses.so.5: cannot open shared object file:No such file or directory(解决
PS.Ubuntu遇到上述问题时的解决办法
sudo apt-get install libncurses5
sudo apt-get install libxpm4
sudo apt-get install libsm6

3)dateconv
ps1.报错安装lib32stdc++6
ps2.报错erminate called after throwing an instance of ‘std::out_of_range’
what(): basic_string::substr
是由于没有写完整‘2020234’只写了jday‘234’

4)PROGRAMS.330
问题1:X11/Xlib.h: No such file or directory (解决
问题2:linux 中没有curses.h库如何解决(解决
问题3:20版Ubuntu没有libgfortran.so.3的源(解决

5)GMT-6.2.0
安装教程——Linux/macOS 下编译 GMT 源码
问题1:安装依赖软件这一步很关键哦,特别是netcdf

sudo yum install epel-release
sudo yum install gcc cmake make glibc netcdf-devel libcurl-devel
#下面这条我的机子只能成功装 ghostscript、glib2-devel、pcre-devel、fftw-devel
sudo yum install ghostscript gdal gdal-devel lapack-devel openblas-devel glib2-devel pcre-devel fftw-devel
sudo yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-`rpm -E %rhel`.noarch.rpm
sudo yum install GraphicsMagick ffmpeg

我这里也是找不到匹配的netcdf-devel,于是无奈要安装那个很难安装的netcdf,找到的比较好的教程有教程1教程2视频教程3,根据教程1和视频教程3,基本只需要安装zlib、hdf5,然后上netcdf即可,有了这个信心,别慌干就完事,开始安装。中间可能make check或者make要很久,然后给你报个错很考验心态,重要的看报错再改错误,稳住。最后,我安装的有zlib、hdf5、curl、netcdf-c,最后成功!!对了版本我大部分根据教程2的,直接下载没啥问题。

问题2:编译安装gmt过程出问题,试着先安装一些依赖,这里我用了sudo yum install ghostscript glib2-devel pcre-devel fftw-devel,再安装就没有报错了

问题3:连续测试两个gmt文件都报错没有找到模块,顺藤摸瓜检查cmake ..发现找不到GDAL和GEOS等,但是centos8下载库又一直报错未找到匹配参数,于是直接复制粘贴库文件
ln -s libgdal.so.20.3.2 libgdal.so
ln -s libgeos_c.so.1.10.2 libgeos_c.so
再次检查cmake ..发现依然报错FindGEOS.cmake: geos-config not found. Please set it manually. GEOS_CONFIG=GEOS_CONFIG-NOTFOUND
最后卸载了用源码安装的gmt6.2.0,虽然照搬库文件过来了,但某些配置文件路径不匹配,难搞。
于是,尝试转战二进制安装👇

yum install epel-release
yum config-manager --set-enabled PowerTools
yum install yum-plugin-copr
yum copr enable genericmappingtools/gmt
yum install gmt

报错1:

  • nothing provides libgdal.so.26()(64bit) needed by gmt-6.2.0-1.el8.x86_64(中途需要很多依赖包,只能一个一个下,差不多三十五个吧苦笑😮)👉下载网址

  • nothing provides libnetcdf.so.15()(64bit) needed by gmt-6.2.0-1.el8.x86_64👉下载网址
    在这里插入图片描述
    在这里插入图片描述

安装rpm二进制文件命令:
rpm -ivf rpm文件名

配置好之后运行测试代码出现同样问题,最后竟然发现脚本写错了??!!测试下面这个成功,所以实际上可能源码编译也是没得问题,毕竟版本号测试成功了不是😶,怎么当初不坚持一下啊🤣可是海岸线问题依然没有解决,以及今天更新了一下epel源,但还是很多软件没有找到匹配参数~

cat > points.dat << EOF
2 2
8 2
5 7
EOF
gmt begin polygon png,pdf
gmt basemap -JX10c -R0/10/0/10 -Baf
gmt plot points.dat -W4p,lightblue -Glightred -L
gmt end show

画图问题1 画布不显示该有的地图范围
画图问题2 如何不显示轴标注的“N”“E”?
解决 同样的代码在自己win和ubuntu装的gmt6.1没有出现相应的问题,只有这个出现类似的问题。在当前目录下生成并查看默认配置文件gmt.conf——gmt defaults -D > gmt.conf,对比两个版本果然发现了有不同之处。比如MAP_ANNOT_OBLIQUE,GMT_TRIANGULATE,COLOR_SET和GMT_THEME这几个,其中MAP_ANNOT_OBLIQUE是问题2的主角,原默认参数是MAP_ANNOT_OBLIQUE anywhere,查得这个版本的却是MAP_ANNOT_OBLIQUE=separate,lon_horizontal,lat_horizontal,tick_extend。所以解决办法就是在gmt set...啦~
画图问题3报错:plot [WARNING]: Mismatch between actual (1) and expected (2) fields near line 1 in file
解决同样的数值文件在windows下报错,但是linux下的gmt不报错

6)DsurfTomo
问题1:ImportError: libgfortran.so.4: cannot open shared object file: No such file or directory(解决)但是没有完全解决,首先这个版本找不到匹配参数libgfortran4和libgfortran.so.4,拷贝libgfortran4到centos的库文件路径/usr/lib64并建立软连接libgfortran.so.4报错,于是在Ubuntu系统下命令查找sudo find / -name libgfortran*,找到并拷贝到库路径搞定!
问题2:改用了其他版本的DsurfTomo软件,报错ImportError: libgfortran.so.3: cannot open shared object file: No such file or directory。这次有经验了,首先试着直接下载yum install gfortranyum install libgfortran均无果找不到匹配参数,接着直接从Ubuntucd /usr/lib/x86_64-linux-gnu/找我的libgfortranll|grep libgfortran.so.3,存在硬链接libgfortran.so.3.0.0,于是直接拷贝到centos/usr/lib64,创建软链接ln -s libgfortran.so.3.0.0 libgfortran.so.3,毫无意外成功了,屡试不爽。
问题3:报错bash:python:未找到命令。参考教程,首先用命令which python查找发现没有找到python,which python2也无果,which python3有正常输出/usr/bin/python3,最后加个软链接ln -s /usr/bin/python3 /usr/bin/python
问题4:报错ModuleNotFoundError: No module named ‘numpy’。参考教程,开始用的是yum和dnf命令安装numpy,结果都显示没有找到匹配参数,已经是个牛皮癣问题了真的很难搞定,已经做好要下源码的准备了,好在看了这个教程,先用which pip3找到确实有pip,接着开始啦~软连接搞一波ln -s /usr/bin/pip3 /usr/bin/pip,一开始还十分疑惑centos为什么可以用pip安装软件,结果真香。pip install numpy。同时,报一个警告WARNING: Running pip install with root privileges is generally not a good idea. Try pip install --user instead.找了一下教程发现这是出于安全考虑,代表仅该用户的安装,安装后仅该用户可用。而原命令代表进行全局安装,可供任何用户使用。
问题5:报错TabError: inconsistent use of tabs and spaces in indentation。将原来的Tab格式换成空格格式。
问题6:画图程序报错bash:minmax:未找到命令,解决:minmax是gmt的命令,故gmt minmax。另外,注意bash与csh的区别,csh命令后面除了跟要执行的文件还可以外加文件名和数字等作为输入参数。
问题7:关于gmt绘图画布留白问题,可以在画布格式语句后加上A选项,参考

7)rdseed解压seed格式文件出错,导致时钟出错,改用EvtData2SAC
EvtData2SAC.sh eventDir outDir
eventDir路径为输入文件路径
outDir路径为输出文件路径

问题+解决
1)xftp上传文件状态错误解决方法——解决1(建议chmod命令给权限)
2)Linux无法删除只读文件系统——解决2
3)Linux 删除文件夹和文件的命令——解决3
4)输入rdseed,报错bash:XXX 权限不够——解决4
5)续上一问,依然有rdseed的错,rdseed: error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory——解决5
👉yum install libnsl.x86_64
6)Vone客户端小图标右击打不开——解决6(在任务管理器找到该进程把它结束任务)
7)CentOS8中文输入法设置问题。——解决7【设置】->【Region&Language】->【输入源】->【汉语(中国)】-> 【汉语(智能拼音)】选项。
8)报错无法执行二进制文件。——解决8,添加可执行的权限
9)VNC登录失败,网页登录页失败,QQ可以登上——解决:打开电脑设置【代理】,把手动设置代离一项关掉
10)用到JDK11,而原本机子装的是java-1.8.0——解决
同时,在这个教程学到了几句代码,如
查看软件包安装的名字:rpm -qa | grep java
查看软件包安装的位置:rpm -ql java-11-openjdk
11)VNC Viewer在另外一台电脑开启一个新客户端,同时享用同样的root或者/home/user
方法:1、先想好是从哪个用户下登录,从xshell进入登录该用户
2、终端输入vncserver :2
3、由于前期同样的root配置过.vnc/xstartup不再调整。在vnc入口输入IP输入用户名密码即可(如:VNC Server:IP***:2 Name:随便)
注:在linux下登录ssh 用户名@IP号 -p 端口号
然后vncserver :3
终端退回去base,传输文件scp -P 端口号 -r 用户名@IP号:远程文件路径 下载到本机的路径

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值