阿里云ECS服务器安装java环境相关软件

当前服务器版本为:Alibaba Cloud Linux 3.2104 LTS 64位

# lsb_release -a
LSB Version:	:core-4.1-amd64:core-4.1-noarch
Distributor ID:	AlibabaCloud
Description:	Alibaba Cloud Linux release 3 (Soaring Falcon) 
Release:	3
Codename:	SoaringFalcon

# cat /proc/version
Linux version 5.10.134-16.1.al8.x86_64 (mockbuild@a12i03132.na61) (gcc (GCC) 10.2.1 20200825 (Alibaba 10.2.1-3.5 2.32), GNU ld version 2.35-12.2.al8) #1 SMP Thu Dec 7 14:11:24 UTC 2023

前置步骤

先更新所有已安装的软件以及软件源中的软件包列表,不然可能安装比较老的包

yum -y update

一、安装Redis

查看下yum仓库里有哪些版本的Redis包

# yum search redis --showduplicates
Last metadata expiration check: 0:28:18 ago on Mon 18 Mar 2024 10:04:01 PM CST.
============================== Name Exactly Matched: redis ==============================
redis-6.2.7-1.0.2.al8.x86_64 : A persistent key-value database
redis-6.0.5-1.9.al8.x86_64 : A persistent key-value database
redis-6.0.5-1.10.al8.x86_64 : A persistent key-value database
redis-6.0.5-1.11.al8.x86_64 : A persistent key-value database
redis-6.0.9-5.0.1.al8.x86_64 : A persistent key-value database

可以看到仓库里最新的版本是6.2.7,如果不指定版本默认就是安装最新版本

centos还可以使用这个命令查看yum list available redis

1、安装

yum install -y redis

2、安装完成后,执行以下命令来启动Redis服务:

systemctl start redis

3、设置Redis开机自启动

systemctl enable redis

4、安装和启动完成后,可以通过执行以下命令来验证Redis是否成功安装并运行

redis-cli ping
如果返回PONG,则说明Redis服务正在运行,且redis-cli(Redis命令行界面)已成功安装

# redis-cli ping
PONG
# redis-cli -v
redis-cli 6.2.7

yum安装的redis的配置文件在/etc/redis.conf。可以使用find / -name redis.conf来搜索

# find / -name redis.conf
/etc/redis.conf
附:卸载redis
1、停止正在运行的Redis服务

systemctl stop redis

2、禁用在系统启动时自动运行

systemctl disable redis

3、使用yum命令卸载Redis软件包

yum remove redis

二、安装nodejs

1、安装

yum install -y nodejs

2、安装完成后,运行以下命令来验证Node.js和npm是否已成功安装

node -v
npm -v
这些命令将分别输出Node.js和npm的版本号

# node -v
v14.21.3
# npm -v
6.14.18

三、安装nginx

先检查下是否已经安装了nginx,用下面的命令

a、which nginx命令

b、使用systemctl status nginx查看服务

c、使用ps -ef | grep nginx查看进程

#这是已经安装nginx
# which nginx
/usr/sbin/nginx
# ps -ef | grep nginx
root       48512       1  0 Mar15 ?        00:00:00 nginx: master process /usr/sbin/ngin
nginx      48513   48512  0 Mar15 ?        00:00:00 nginx: worker process

1、安装

yum install -y nginx

2、安装完成后,启动Nginx服务

systemctl start nginx

3、让Nginx在系统启动时自动运行

systemctl enable nginx
可以通过访问你的服务器的IP地址来验证Nginx是否正常运行

nginx安装后配置文件在/etc/nginx/nginx.conf

# nginx -version
nginx version: nginx/1.20.1

四、安装jdk

先检查一下是否已经安装了jdk

a、which java

b、yum list installed | grep java

c、java -version

d、rpm -qa | grep java

由于并不需要安装最新版本的jdk,所以要先查下仓库里有哪些版本的jdk
# yum search java | grep --color jdk
..........
java-11-openjdk.x86_64 : OpenJDK 11 Runtime Environment
java-11-openjdk-demo.x86_64 : OpenJDK 11 Demos
java-11-openjdk-demo-fastdebug.x86_64 : OpenJDK 11 Demos optimised with full debugging on
java-11-openjdk-demo-slowdebug.x86_64 : OpenJDK 11 Demos unoptimised with full debugging on
java-11-openjdk-devel.x86_64 : OpenJDK 11 Development Environment
..........

主要列出了3个版本1.8、11、17,但是会有很长很长的记录

要注意这两个包的区别

java-11-openjdk-devel.x86_64 如果需要编译则安装这个(有java和javac命令)

java-11-openjdk.x86_64 只包含运行所需要的环境(没有javac命令)

1、安装

yum install -y java-11-openjdk-devel.x86_64

yum install -y java-11-openjdk-devel.x86_64
Last metadata expiration check: 1:52:13 ago on Wed 20 Mar 2024 01:55:06 PM CST.
Dependencies resolved.
=========================================================================================
 Package                   Arch   Version                          Repository       Size
=========================================================================================
Installing:
 java-11-openjdk-devel     x86_64 1:11.0.21.0.9-2.0.3.al8          alinux3-updates 3.4 M
Installing dependencies:
 ModemManager-glib         x86_64 1.20.2-1.al8                     alinux3-updates 336 k
 adobe-source-code-pro-fonts
                           noarch 2.030.1.050-12.al8.1             alinux3-updates 820 k
 adwaita-cursor-theme      noarch 40.1.1-3.al8                     alinux3-updates 656 k
 adwaita-icon-theme        noarch 40.1.1-3.al8                     alinux3-updates  11 M
 alsa-lib                  x86_64 1.2.8-3.al8                      alinux3-updates 496 k
 .....
 .....
 Transaction Summary
=========================================================================================
Install  150 Packages

Total download size: 137 M
Installed size: 511 M
Downloading Packages:
(1/150): jbigkit-libs-2.1-14.2.al8.x86_64.rpm            788 kB/s |  55 kB     00:00    
(2/150): glib-networking-2.56.1-1.1.2.al8.x86_64.rpm     1.7 MB/s | 156 kB     00:00    
(3/150): libXfixes-5.0.3-7.2.al8.x86_64.rpm              1.5 MB/s |  25 kB     00:00    
(4/150): libXi-1.7.10-1.1.al8.x86_64.rpm                 2.9 MB/s |  49 kB     00:00    
(5/150): lcms2-2.9-2.2.al8.x86_64.rpm                    2.9 MB/s | 165 kB     00:00    
(6/150): libXinerama-1.1.4-1.2.al8.x86_64.rpm            979 kB/s |  16 kB     00:00 
.....
Verifying        : webrtc-audio-processing-0.3.1-8.al8.x86_64                  147/150 
  Verifying        : xdg-desktop-portal-1.8.1-1.al8.x86_64                       148/150 
  Verifying        : xdg-desktop-portal-gtk-1.12.0-3.al8.x86_64                  149/150 
  Verifying        : xorg-x11-font-utils-1:7.5-41.0.2.al8.x86_64                 150/150 
post-transaction-actions: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory


Installed:
  ModemManager-glib-1.20.2-1.al8.x86_64                                                  
  abattis-cantarell-fonts-0.301-4.al8.noarch                                             
  adobe-source-code-pro-fonts-2.030.1.050-12.al8.1.noarch    
  .....
  xml-common-0.6.3-50.1.al8.noarch                                                       
  xorg-x11-font-utils-1:7.5-41.0.2.al8.x86_64                                            
  xorg-x11-fonts-Type1-7.5-19.1.al8.noarch                                               

Complete!
2、验证是否安装成功

java -version
javac -version
这些命令将分别输出java和javac的版本号

# java -version
openjdk version "11.0.21" 2023-10-17 LTS
OpenJDK Runtime Environment (Red_Hat-11.0.21.0.9-1) (build 11.0.21+9-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-11.0.21.0.9-1) (build 11.0.21+9-LTS, mixed mode, sharing)
3、配置JAVA_HOME

不是必须的,根据需要和环境情况配置。

要配置环境变量就必须先知道 jdk的安装目录

可以使用which java命令找到它,
然后通过ls -l查看其链接或指向的目录来确定JDK的安装路径

# which java
/usr/bin/java
# ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 Mar 16 11:36 /usr/bin/java -> /etc/alternatives/java
# ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 66 Mar 16 11:36 /etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-11.0.21.0.9-2.0.3.al8.x86_64/bin/java

jdk实际安装目录是/usr/lib/jvm/(JDK通常会被安装到/usr/java/或/usr/lib/jvm/目录下

a、使用root权限编辑/etc/profile文件:
# vi /etc/profile
b、在文件的末尾添加以下行来导出JAVA_HOME环境变量:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.21.0.9-2.0.3.al8.x86_64  
export PATH=$PATH:$JAVA_HOME/bin

$PATH:$JAVA_HOME/bin是指把$JAVA_HOME放到$PATH环境变量的后面

c、为了使更改立即生效,你可以运行以下命令:
# source /etc/profile
附:卸载jdk

yum remove java-11-openjdk
这条命令会卸载 java-11-openjdk 软件包及其未被其他软件包依赖的组件。

# yum remove java-11-openjdk
Dependencies resolved.
=========================================================================================
 Package                     Arch   Version                       Repository        Size
=========================================================================================
Removing:
 java-11-openjdk             x86_64 1:11.0.21.0.9-2.0.3.al8       @alinux3-updates 1.3 M
Removing dependent packages:
 java-11-openjdk-devel       x86_64 1:11.0.21.0.9-2.0.3.al8       @alinux3-updates 5.3 M
Removing unused dependencies:
 ModemManager-glib           x86_64 1.20.2-1.al8                  @alinux3-updates 1.5 M
 abattis-cantarell-fonts     noarch 0.301-4.al8                   @alinux3-updates 705 k
 adobe-source-code-pro-fonts noarch 2.030.1.050-12.al8.1          @alinux3-updates 1.8 M
 adwaita-cursor-theme        noarch 40.1.1-3.al8                  @alinux3-updates  12 M
 adwaita-icon-theme          noarch 40.1.1-3.al8                  @alinux3-updates  11 M
 ......
 ......

Transaction Summary
=========================================================================================
Remove  150 Packages

Freed space: 511 M
Is this ok [y/N]: y

输入y后

Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                 1/1 
  Running scriptlet: flatpak-1.10.7-1.al8.x86_64                                     1/1 
  Erasing          : flatpak-1.10.7-1.al8.x86_64                                   1/150 
  Running scriptlet: flatpak-1.10.7-1.al8.x86_64                                   1/150 
  Erasing          : librsvg2-2.50.7-1.0.2.al8.x86_64                              2/150 
  Erasing          : libappstream-glib-0.7.18-4.0.1.al8.x86_64                     3/150 
  Erasing          : java-11-openjdk-devel-1:11.0.21.0.9-2.0.3.al8.x86_64          4/150 
  Running scriptlet: java-11-openjdk-devel-1:11.0.21.0.9-2.0.3.al8.x86_64          4/150 
  ......
  Verifying        : xorg-x11-font-utils-1:7.5-41.0.2.al8.x86_64                 149/150 
  Verifying        : xorg-x11-fonts-Type1-7.5-19.1.al8.noarch                    150/150 

Removed:
  ModemManager-glib-1.20.2-1.al8.x86_64                                                  
  abattis-cantarell-fonts-0.301-4.al8.noarch                                             
  adobe-source-code-pro-fonts-2.030.1.050-12.al8.1.noarch 
  ......
  Complete!

然后验证一下

# java -version
-bash: /usr/bin/java: No such file or directory
# cd /usr/lib/jvm
-bash: cd: /usr/lib/jvm: No such file or directory

可以看到连jdk安装目录都一并删除了

或者可以使用yum list installed | grep java命令来查找已安装的Java相关软件包

# yum list installed |grep java
java-11-openjdk.x86_64                             1:11.0.21.0.9-2.0.3.al8             @alinux3-updates
java-11-openjdk-headless.x86_64                    1:11.0.21.0.9-2.0.3.al8             @alinux3-updates
javapackages-filesystem.noarch                     5.3.1-7.3.al8                       @alinux3-updates
tzdata-java.noarch           

执行yum remove java-11-openjdk.x86_64,在卸载过程中,yum可能会询问你是否确定要删除该软件包及其依赖项。请仔细阅读提示,并确认是否要继续卸载。

五、自定义安装

如果仓库里没有我们想要的软件或者版本,这个时候就得换种方式了

1、安装jdk

i、先下载自己想要的openjdk

可以从清华大学这个镜像站下载:https://mirrors.tuna.tsinghua.edu.cn/Adoptium/11/jdk/x64/

假设下载的是jdk-8u211-linux-x64.tar.gz,把它放到/usr/local目录下

ii、解压
tar -zxvf jdk-8u211-linux-x64.tar.gz
iii、配置环境变量

为了让系统能够找到JDK,你需要配置环境变量。编辑/etc/profile文件,在末尾添加以下内容:

export JAVA_HOME=/path/to/your/jdk  
export PATH=$JAVA_HOME/bin:$PATH

请将/path/to/your/jdk替换为你解压JDK的实际路径。

iv、重新加载profile文件

为了让新的环境变量生效,你需要重新加载/etc/profile文件。使用以下命令

source /etc/profile

检查是否安装成功:输入java -version命令,如果返回JDK的版本信息,说明安装成功。

2、在线安装高版本nodejs

现在nodejs在yum仓库里的最新版本是V14.21.3(有点低 _),而目前最新的版本已经是node-v20.11.1 LTS。假设想安装V16.x

i、添加NodeSource仓库

可以运行以下命令来添加NodeSource仓库

curl -sL https://rpm.nodesource.com/setup_16.x | bash -

这个命令的意思是下载一个脚本,然后静默执行这个脚本,这个脚本会把nodejs的仓库配置为16版本

ii、安装刚刚配置的nodejs版本

安装的过程和之前yum安装无异

yum install -y nodejs

3、离线安装任意版本nodejs

i、下载指定版本(node-v12.22.12-linux-x64.tar.gz)

可以从这个镜像站下载:https://registry.npmmirror.com/binary.html?path=node/

ii、把文件移动到/usr/local目录
iii、解压
tar -xzvf node-v12.22.12-linux-x64.tar.gz

(如果是解压tar.xz,那么使用tar -xJvf node-xxx-x64.tar.xz)

iv、配置环境变量

通过编辑/etc/profile文件,添加Node.js的路径到环境变量中(在文件最后)。使用vi或你喜欢的文本编辑器打开该文件,并添加类似以下内容:

export PATH=/usr/local/node-v12.22.12-linux-x64/bin:$PATH
v、让profile文件生效

通过运行source /etc/profile命令,使刚刚添加的环境变量立即生效。

vi、测试验证
node -v
v12.22.12
npm -v
6.14.16
附:第4步也可以使用软链接的方式

解压完成后,可能需要创建一个指向Node.js可执行文件的软链接,以便在全局范围内使用它。
这可以通过
ln -s /usr/local/node-vXX.XX.XX-linux-x64/bin/node /usr/local/bin/node
ln -s /usr/local/node-vXX.XX.XX-linux-x64/bin/npm /usr/local/bin/npm
(其中vXX.XX.XX应替换为你的Node.js版本号)这两个命令完成。[听说最后的node和npm可以省去]
ls -l 软链接 可以查看软链接的指向

  • 18
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值