本文经过我的亲手实践,完全通过,但是参考了大量网上他人共享的知识,在此说声谢谢,写的过程中我没有留下他们的url,抱歉!
centos7 jdk(java)安装步骤:
1.检查系统原有版本
java -version
2.rpm -qa |grep java 或者 rpm -qa *java*
3.若有openjak,卸载:
rpm -e --nodeps package_name_n(n表示有几个相关的java包名)
4.下载最新sun版本的最新jdk
5.mkdir /usr/java
6.将下载的jdk包cp到 上述目录中
7.安装 rpm -ivh jdk_package_name
8.验证安装,执行以下操作是否正常
9.配置环境变量
执行命令:vi /etc/profile
向文件添加如下内容:
JAVA_HOME=/usr/java/jdk1.8.0_45
JRE_HOME=/usr/java/jdk1.8.0_45/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/rt.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
10.echo $PASH 查看结果生效之前PATH的信息
12.echo $PASH 查看结果生效之后PATH的信息
13.jdk安装成功,可以开发基本的java程序了
14.删除/usr/java 中的jdk安装包,免得占用空间
相关知识介绍:
1.rpm(不会考虑包安装的依赖性,可能会因为缺乏依赖包而安装出错)
rpm -qa 查询Linux下所有安装包程序
rpm -qa |grep java 或者rpm -qa *java*查询当前Linux下所有关于java的安装包程序
rpm -e package_name (若有相关依赖则删除不掉) 卸载
rpm -e --nodeps package_name(忽略相关依赖)
rpm -ivh --relocate /=/usr/java --badrelac packagename 安装到指定目录/usr/java中
可能用到文件查询路径命令
which filename
which -a filename
-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
-e:删除包
rpm -q samba //查询程序是否安装
rpm -ivh /media/cdrom/RedHat/RPMS/samba-3.0.10-1.4E.i386.rpm //按路径安装并显示进度
rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm //指定安装目录
rpm -ivh --test gaim-1.3.0-1.fc4.i386.rpm //用来检查依赖关系;并不是真正的安装;
rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降级为旧版本
rpm -qa | grep httpd #[搜索指定rpm包是否安装]--all搜索*httpd*
rpm -ql httpd #[搜索rpm包]--list所有文件安装目录
rpm -qpi Linux-1.4-6.i368.rpm #[查看rpm包]--query--package--install package信息
rpm -qpf Linux-1.4-6.i368.rpm #[查看rpm包]--file
rpm -qpR file.rpm #[查看包]依赖关系
rpm2cpio file.rpm |cpio -div #[抽出文件]
rpm -ivh file.rpm #[安装新的rpm]--install--verbose--hash
2.yum(会自动解决包安装的依赖性)
2.1安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2.2更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包
2.4删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况
2.5清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers
3.源代码安装(手动安装比较繁琐,但是让你可以了解整个安装过程)
3.1、Linux平台下的软件大多数都是免费的,你可以从网上下载(可以用wegt命令下载),下载的软件一般都被打包并压缩,因此在安装之前你需要将其拷贝到一个临时目录下,并对其进行解压缩和解包:
gzip -d .tar.gz (或uncompress .tar.Z)
tar xvf .tar
或
tar xzvf .tar.gz
注:
gzip -d命令用于解压缩,tar xvf命令用于解包,tar xzvf命令用于先解压缩再解包,解压缩和解包后将在该目录下建立一个目录。
3.2、进入第1步生成的目录:
cd
3.3、Linux平台下的软件大多数都带源程序,在安装前需要编译,编译的一般步骤如下:
a、配置:
./configure --prefix= --localstatedir=
注:用安装目录代替,用数据目录代替。
b、编译:
make
3.4、安装:
make install
3.5、配置:
a、安装后一般会在 目录下建立下列子目录:
可执行文件目录:bin
头文件目录: include
库文件目录: lib
帮助目录: man
b、在/etc/profile文件中设置环境变量:
PATH=$PATH: /bin
CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH: /include
LD_LIBRARY_PATH=$LD_LIBRARY_PATH: /lib
LIBRARY_PATH=$LIBRARY_PATH: /lib
MANPATH=$MANPATH: /man
export PATH CPLUS_INCLUDE_PATH LD_LIBRARY_PATH LIBRARY_PATH MANPATH
注:用安装目录代替。
3.6.source /etc/profile让配置文件生效
4.source命令用法:
source FileName
作用:在当前bash环境下读取并执行FileName中的命令。
注:该命令通常用命令“.”来替代。
如:source .bash_rc 与 . .bash_rc 是等效的。
注意:
source命令与shell scripts的区别是,source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环境变量(或alias等等)的命令写进scripts中,就只会影响子shell,无法改变当前的BASH,所以通过文件(命令列)设置环境变量时,要用source 命令。
source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是个点符号,(从Bourne Shell而来)是source的另一名称。同样的,当前脚本中配置的变量也将作为脚本的环境,source(或点)命令通常用于重新执行刚修改的初始化文档,如 .bash_profile 和 .profile 等
5.Linux export 命令
功能说明:设置或显示环境变量。(比如我们要用一个命令,但这个命令的执行文件不在当前目录,这样我们每次用的时候必须指定执行文件的目录,麻烦,在代码中先执行export,这个相当于告诉程序,执行某某东西时,需要的文件或什么东东在这些目录里)
语 法:export [-fnp][变量名称]=[变量设置值]
补充说明:在shell中执行程序时,shell会提供一组环境变量。 export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。
一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export命令可以用于传递一个或多个变量的值到任何后继脚本
6.查看文件内容前十行head filename;查看文件内容后十行 tail filename.
less/more filename 翻页查看文件内容