CentOS 7下安装IDL 8.2
材料准备:
CentOS 7 x86_64
IDL 8.2,下载自 ftp://ftp.lowell.edu/incoming/temp/old/IDL_Clients/v8.2/idl82sp2linux.x86_64.tar.gz
参考资料:
安装步骤:
1、下载IDL
mkdir ~/Downloads/IDL cd ~/Downloads/IDL wget ftp://ftp.lowell.edu/incoming/temp/old/IDL_Clients/v8.2/idl82sp2linux.x86_64.tar.gz
2、找到相应的license破解文件
2.0 license文件
在网上找到一个破解文件,内容如下,并将其保存为 license.dat 文件。
############ license file comments, do not delete ###############
# License Number(s):705016
SERVER xxx bc305bd94286 1700
USE_SERVER
DAEMON idl_lmgrd
INCREMENT idl idl_lmgrd 8.200 1-jan-0000 12 B5ED924F5F29E2AF
VENDOR_STRING=705016TOHOKU ck=186 SIGN="0B28 D32E 6E90 74D9
A0BB F2ED AC90 F39D 318D F197 26FB B996 C8C4 B225 76C8 009A
52FD AB87 3FE1 06B9 1AA9 FD57 A46E 94A8 3764 9F97 D1F8 2653
D36D 7018"
INCREMENT idl_bridge_assist idl_lmgrd 8.200 1-jan-0000 2
F2004C85D332BFF5 VENDOR_STRING=705016TOHOKU ck=105 SIGN="08BA
CD27 8E25 5309 ED01 983C 59C6 183A EE24 A464 706F F499 3607
416A 0CE1 16D8 425F CC40 3C90 8BAB 9E1E ECFB D9C5 C9E4 3517
1D7E 1B8F 296C 3DC3 1AEB"
INCREMENT idl_video_write idl_lmgrd 8.200 1-jan-0000 2
F0A17234C4CCC039 VENDOR_STRING=705016TOHOKU ck=92 SIGN="08A2
A99F F7DB 7C58 9AF8 B52F D70F 3B6E F686 DE0F FDB7 CE79 BD82
3494 500F 0A12 5C97 8375 0AE0 E848 0B20 69CA AFA2 DE8D AC10
8173 DBFC B93E 574A DBB4"
INCREMENT idl_wavelet idl_lmgrd 8.200 1-jan-0000 2 20B1118017C42245
VENDOR_STRING=705016TOHOKU ck=41 SIGN="0DBC 606C 1E2D 3FD8
19FD 61DE F909 3BCD E7E4 5314 30BA 60CC 015D 0BD0 100D 1E33
CC5A 96F0 64C0 9B08 D033 E075 1DBA DE77 AE90 08A8 8AB7 C4C3
0037 C672"
FEATURESET idl_lmgrd D093522208F1C61A
##################### end of license file #######################
破解文件的 SERVER xxx bc305bd94286 1700 一行,提供了许可文件适用的用户名和Mac地址。
其中,红色字段(xxx)是主机名,需要将它替换为本机的主机名,它是bash命令hostname的返回值。
蓝色字段(bc305bd94286)是MAC地址,需要在本机上生成一个与它一致的MAC地址,可以采用参考资料[3]中的方法生成虚拟MAC地址,具体操作如下。
2.1 获取xxx
2.2 修改本机的MAC地址 (摘自资料[3])
新建一个虚拟网格eth1,要不然有的网络环境可能会导致您的计算机出现无法上网的情况,这需要安装tunctl工具。
2.2.1 确认内核是否支持tun/tap
确认内核是否有tun模块
[...] $ modinfo tun
filename: /lib/modules/3.10.0-957.el7.x86_64/kernel/drivers/net/tun.ko.xz
alias: devname:net/tun
alias: char-major-10-200
license: GPL
author: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
description: Universal TUN/TAP device driver
retpoline: Y
rhelversion: 7.6
srcversion: A215175F959FA6FE8B76ECD
depends:
intree: Y
vermagic: 3.10.0-957.el7.x86_64 SMP mod_unload modversions
signer: CentOS Linux kernel signing key
sig_key: B7:0D:CF:0D:F2:D9:B7:F2:91:59:24:82:49:FD:6F:E8:7B:78:14:27
sig_hashalgo: sha256
加载内核模块
[...] $ modprobe tun
[...] $ lsmod | grep tun
tun 27141 2
执行以上命令后,出现如上输出,说明模块加载成功。
2.2.2
创建和配置虚拟网卡
确认是否有tunctl命令,如果没有则安装它。
可直接装rpm包(参考的https://pkgs.org/centos-7/nux-misc-x86_64/tunctl-1.5-12.el7.nux.x86_64.rpm.html)
下载rpm源码,解压,并复制到相应的IDL安装目录内:
[xxx@del idl]$ wget http://li.nux.ro/download/nux/misc/el7/x86_64/tunctl-1.5-12.el7.nux.x86_64.rpm
[xxx@del idl]$ sudo rpm -ivh ./tunctl-1.5-.el7.nux.x86_64.rpm
注意,虚拟网卡的MAC地址,要与步骤2.0中的license文件中的蓝色字段(bc305bd94286)保持一致,即:
[xxx@del idl]$ tunctl -t eth1 -u root [xxx@del idl]$ sudo ifconfig eth1 hw ether bc:30:5b:d9:42:86 [xxx@del idl]$ ifconfig -a #查看你的虚拟网卡eth1的MAC地址是否已修改成功。
...
eth1: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether bc:30:5b:d9:42:86 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
...
(注:下载的license文件,有可能不能使用,这就需要在安装完IDL文件,重复2.0这一步,具体可参考后文中 Bug.2 一小节的内容)
至此,IDL安装前的准备工作,就做好了。接下来,开始IDL的安装过程。
3. 安装IDL
mkdir /opt/idl cp ./idl82sp2linux.x86_64.tar.gz /opt/idl sudo tar -xopf idl82sp2linux.x86_64.tar.gz sudo ./install.sh
安装过程,根据提示,有一个是要输入安装的目标路径,其余皆是yes/no的选项,一般yes即可。
在弹出的license对话框中,首先选择第三项Install a license you have received,点Next
然后找到并选中之前更改并保存过的license.dat,点OK
然后同时选择Install license manager以及Start license manager,点Next(这一步默认两者都是选种的状态,小方框凹进去,所以到这一步直接点Next)
再点击Finish,结束
4. 开机自动执行
以上操作,在重启或者断网之后,都会失效,需要重新进行license的相关操作才行。
将虚拟网卡的设置写入开机脚本,这样重启之后就不用重新进行license的相关操作就能使用idl了。
[xxx@del bin]$ sudo vi /etc/rc.local
在 /etc/rc.local 中,将以下代码加到 exit 0 (可能没有 "exit 0" 这一句)的前面,然后保存:
#create a vitual network card for activation of idl8.
ifconfig eth1 down
tunctl -t eth1 -u root
ifconfig eth1 hw ether bc::5b:d9::
ifconfig eth1 up
要让这个文件开机自动执行,还需要增加可执行权限: chmod +x /etc/rc.d/rc.local
同时,系统的 license 文件变量,也需要在~/.bashrc文件中同步更新,将idl的license文件一并添加到系统变量($LM_LICENSE_FILE)里:
[xxx@del bin]$ echo $LM_LICENSE_FILE # 查询已有的 license 文件列表
/opt/pgi/license.dat
[xxx@del bin]$ vi ~/.bashrc # 在文件内的 LM_LICENSE_FILE 字段,增加 IDL 的 license 文件(红色字段,就是新增的IDL的license文件)
...
export LM_LICENSE_FILE=$PGI/license.dat:/opt/idl/license/license.dat
...
[xxx@del bin]$ echo $LM_LICENSE_FILE # 再次查询 license 文件列表,看是否更新成功
/opt/pgi/license.dat:/opt/idl/license/license.dat
之后,执行 source ~/.bashrc ,使 ~/.bashrc 中所作的修改立即生效。
Bug:可能遇到的各种问题
Bug.1:找不到libXp.so.6动态链接库
在终端下输入 idl 并回车,很可能会出现如下错误信息:
… /opt/idl/idl82/bin/bin.linux.x86_64/: libXp.so.6: cannot open shared object file: No such file or directory
该信息是因为没有安装64位的libXp.so.6动态链接库。
解决办法是,到这里下载libXp-1.0.3-4.fc30.x86_64.rpm文件,然后双击打开,把里面的libXp.so.6和libXp.so.6.2.0拷贝出来,直接放到IDL的安装目录/opt/idl/idl82/bin/下面,命令如下:
wget https://rpmfind.net/linux/fedora/linux/releases/30/Everything/x86_64/os/Packages/l/libXp-1.0.3-4.fc30.x86_64.rpm rpm2cpio libXp-1.0.3-4.fc30.x86_64.rpm | cpio -idv # 解压rpm文件 sudo cp /mnt/Disk2T/L/software/LINUX/libXp/usr/lib64/libXp.so.6 /opt/idl/idl82/bin/bin.linux.x86_64/ sudo cp /mnt/Disk2T/L/software/LINUX/libXp/usr/lib64/libXp.so.6.2.0 /opt/idl/idl82/bin/bin.linux.x86_64/
再次运行 idl,则不会出现上述错误信息。
Bug.2:license文件没有生效
如果选择的license文件不可用,则打开 idl 的时候,会出现如下信息:
[xxx@del bin]$ idl
IDL Version 8.2.2 (linux x86_64 m64). (c) 2012, Exelis Visual Information Solutions, Inc.
% LICENSE MANAGER: No such feature exists.
Feature: idl
License path: /opt/pgi/license.dat:/opt/idl/license/license.dat:/opt/idl/license/*.lic:
FLEXnet Licensing error:-5,357
For further information, refer to the FLEXnet Licensing documentation,
available at "www.acresso.com"..
License file: /opt/pgi/license.dat:/opt/idl/license/license.dat:/opt/idl/license/*.lic
% Entering timed demo mode. Each session is limited to 7 minutes of operation. Printing and file saving
are disabled. To learn more about our license options for this product, please contact your account manager or
Exelis Visual Information Solutions, Inc. at info@exelisvis.com. IDL> exit
出现这个问题的原因是,license文件已经失效,需要重新寻找新的可用的license文件。
解决办法是,继续搜索可用的license文件,重复步骤 2.0,然后在 idl 的安装目录下,使用 exelislicense 程序手动安装license。
[xxx@del bin]$ vi license.dat [xxx@del bin]$ cd /opt/idl/idl82/bin
[xxx@del bin]$ sudo ./exelislicense
IDL Version 8.2.2 (linux x86_64 m64). (c) 2012, Exelis Visual Information Solutions, Inc. % Embedded IDL: ITTVIS IDL floating licenses, 99999-1.
% Embedded IDL: ITTVIS IDL floating licenses, 99999-1.
% Loaded DLM: XML.
% Loaded DLM: URL.
[xxx@del bin]$ idl
IDL Version 8.2.2 (linux x86_64 m64). (c) 2012, Exelis Visual Information Solutions, Inc.
Installation number: 705016.
Licensed for use by: TOHOKU IDL> exit
执行 exelislicense 程序,会弹出对话框,操作步骤如下:
(1)选择第三项Install a license you have received (小方框凹下表示选中),点Next;
(2)找到并选中用于激活的license.dat,点OK;
(3)同时选择Install license manager以及Start license manager,点Next(这一步,两者都默认已选中,所以到这一步直接点Next);
(4)点击Finish,结束。
Bug.3: TCP 端口1700,被占用
在执行 /opt/idl/idl82/bin/lmgrd 程序时,有时会遇到 “The TCP port number in the license, 1700, is already in use.”的报错。
解决办法:
(1)查看端口1700的进程 ,终端输入: lsof -i:1700
(2)杀死进程: kill pid
(3)查看包含lmgrd的进程: ps -aux|grep lmgrd
CentOS 7下安装IDL 8.2的更多相关文章
- CentOS linux下安装和配置Apache+SVN(用浏览器http方式访问SVN目录)
在CentOS linux下安装SVN,我们可以进行以下步骤: 第一步:安装CentOS Linux操作系统,并在CentOS安装进行的同时,自定义安装这一步,一定要勾选Subversion(在“开发 ...
- CentOS 6 下安装Python 3
可以下载各个版本的python:https://www.python.org/ftp/python/ 配置安装 下载最新的安装包(截止2013/11/05),还是3.3.2版本. #wget http ...
- CentOS 7 下安装 LEMP 服务(nginx、MariaDB/MySQL 和 php)
原文 CentOS 7 下安装 LEMP 服务(nginx.MariaDB/MySQL 和 php) LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作 ...
- Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因
原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...
- CentOS 7下安装vertica记录
CentOS 7下安装vertica记录 1. 安装好centeros 并更新 Centeros安装就不说了,安装完之后联网环境下 yum update.更新下,使得那些包都是新的.(要想用中文 ...
- CentOS系统下安装python3+Django
转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...
- CentOS 7下安装Python3.6
CentOS 7下安装Python3.6.4 CentOS 7下安装Python3.5 •安装python3.6可能使用的依赖 yum install openssl-devel bzip2-de ...
- CentOS 7下安装Python3.6.4
CentOS 7下安装Python3.5 •安装python3.6可能使用的依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-deve ...
- CentOS 7下安装Python3.5
CentOS 7下安装Python3.5 •安装python3.5可能使用的依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-deve ...
随机推荐
- web/服务器知识
一 PV 推到出 QPS 你想建设一个能承受500万PV/每天的网站吗? 500万PV是什么概念?服务器每秒要处理多少个请求才能应对?如果计算呢?? PV是什么:PV是page view的简写.PV是 ...
- Java实现AES对称加密算法
Java代码实现 import java.security.SecureRandom; import javax.crypto.Cipher; import javax.crypto.KeyGener ...
- drf的三大认证
目录 三大认证任务分析 auth组件的认证权限六表 自定义User表分析 源码分析 认证与权限工作原理 源码分析 认证模块工作原理 权限模块工作原理 admin关联自定义用户表 自定义认证.权限类 用 ...
- react 深度 循环嵌套对象渲染问题 map
查了一些资料貌似react的循环渲染对象只有map,但map只支持数组对象. 接到后台数据如下 { "list": { "A": [{ "image& ...
- Jmeter之梯度式加压(Stepping Thread Group)
1.添加线程组(Stepping Thread Group) 2.设置数据 学习参考网址:https://www.cnblogs.com/imyalost/p/7658816.html 这个大大的 ...
- 牛客 40F 珂朵莉的约数 (莫队)
珂朵莉给你一个长为n的序列,有m次查询 每次查询给两个数l,r 设s为区间[l,r]内所有数的乘积 求s的约数个数mod 1000000007 直接莫队暴力维护复杂度是$O(8m\sqrt{m})$. ...
- 浅读vuex源码,了解vuex基本原理
极简版vuex代码 class KVuex { constructor (options) { this.state = options.state this.mutations = options. ...
- 转:GitHub团队项目合作流程
转自:https://www.cnblogs.com/schaepher/p/4933873.html GitHub团队项目合作流程 已在另一篇博客中写出关于以下问题的解决,点此进入: 同步团队项 ...
- iframe标签(页面嵌套)
本文链接:https://blog.csdn.net/weixin_44540236/article/details/92760494 两个不同的页面但是它们的基本框架都是一样,每点击一次左边的导航栏 ...
- vue 编译警告 Compiled with 4 warnings
问题原因: windows下盘符的大小写导致的. 我在cmd里运行的时候,是切换到小写,改成大写的E盘符就没问题了