由于最近在使用idea的时候激活到期,尝试使用 ilanyu 的激活服务器进行激活处理。
1. 本地启动 LicenseServer
先简单介绍下如何使用 IntelliJ IDEA License Server
于 http://blog.lanyus.com/archives/174.html 下载 server zip 包
本地启动后,idea 设置服务器激活地址为 http://127.0.0.1:1027 即可
2. linux 服务器端启动该服务
想到每次都需要在本地启动该服务,相对比较麻烦,而且自己这边有一台阿里云的云主机,故准备在阿里云上面部署一台 License Server 并将其设置为自启动
下载 server.zip 解压后可以查看到
IntelliJIDEALicenseServer_linux_386
文件
使用命令行
./IntelliJIDEALicenseServer_linux_386
执行可以看到运行成功
2.1 linux 服务器后台运行
由于 2.0 服务启动后退出时,进程也就停止了,要做到持续运行需要将该服务设置为后台启动,使用了
nohup
命令实现该功能。
nohup /home/yinaijie/IntelliJIDEALicenseServer/IntelliJIDEALicenseServer_linux_386 >> /home/yinaijie/IntelliJIDEALicenseServer/ideaLicenseServer.log &
nohup
跟 &
组合使用可以实现后台运行程序的功能
>>
是的输出的 nohup.out 直接写入到 /home/yinaijie/IntelliJIDEALicenseServer/ideaLicenseServer.log log 日志中
可以将该shell命令存入到shell文件中 idea_license_server_start.sh
chmod -R 777 ./idea_license_server_start.sh
修改文件权限后可以直接使用
可以得出效果跟 图1
一致
/home/yinaijie/IntelliJIDEALicenseServer/idea_license_server_start.sh
3 将服务设置为自启动
使用 centos 系统,设置服务自启动的方式一般为两种,第一种为 修改 /etc/rc.d/rc.local
文件实现自定义shell自启动,第二种为 systemctl 的方式
3.1 /etc/rc.d/rc.local
# 赋予文件可执行权限
chmod -R 777 /etc/rc.d/rc.local
# 修改 /etc/rc.d/rc.local 文件,增加执行计划
vi /etc/rc.d/rc.local
/etc/rc.d/rc.local
文件如下
将 license server start shell 启动脚本执行计划写入即可
touch /var/lock/subsys/local
# 添加 license server start shell
/home/yinaijie/IntelliJIDEALicenseServer/idea_license_server_start.sh
接下来就是 reboot 系统,重启完成后可以使用ps查看服务是否启动成功,查询命令如下
ps -ef | grep IDEA
3.2 systemctl 方式
进入到 /etc/init.d
文件夹后新建启动服务 idea_register_server_start,即新建文件 idea_register_server_start 其中文件信息如下,创建成功后保存,并将文件设置为可执行
#!/bin/sh
#chkconfig: 2345 80 90
#description:idea_register_server_start
start() {
echo -n "mystart serive ..."
/home/yinaijie/IntelliJIDEALicenseServer/idea_license_server_start.sh
}
case $1 in
start) start ;;
stop) echo "stop" ;;
status) echo "status" ;;
restart) echo "restart" ;;
*) echo "require start|stop|status|restart" ;;
esac
第二步,将 idea_register_server_start 增加到启动服务中
并尝试使用 service 或者 systemctl 进行启动尝试
chkconfig --list
chkconfig --add idea_register_server_start
service idea_register_server_start start
systemctl start idea_register_server_start.service
重启服务后查看进程是否存在
也可以使用 systemctl 查看服务是否启动成功
systemctl list-units --type=service
或者使用 is-active 查看是否为 active
systemctl is-active idea_register_server_start.service
使用 lsof -i:1027 查看端口占用情况