• Debian安装Oracle Java步骤


    在Debian下安装OpenJDK使用apt命令非常方便的安装,但安装Oracle就需要手动了,这里需了解ln和update-alternatvies命令。

    ln链接

    首先我们来说说linux的链接,它分为两种:符号链接(symbolic link)和硬链接(hard link)。

    我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 Linux 中,元数据中的 inode 号(inode 是文件元数据的一部分但其并不包含文件名,inode 号即索引节点号)才是文件的唯一标识而非文件名。文件名仅是为了方便人们的记忆和使用,系统或程序通过 inode 号寻找正确的文件数据块。下图展示了程序通过文件名获取文件内容的过程。

    为解决文件的共享使用,Linux 系统引入了两种链接:硬链接 (hard link) 与软链接(又称符号链接,即 soft link 或 symbolic link)。链接为 Linux 系统解决了文件的共享使用,还带来了隐藏文件路径、增加权限安全及节省存储等好处。若一个 inode 号对应多个文件名,则称这些文件为硬链接。换言之,硬链接就是同一个文件使用了多个别名(下图hard link 就是 file 的一个别名,他们有共同的 inode)。而软链接与硬链接不同,若文件用户数据块中存放的内容是另一文件的路径名的指向,则该文件就是软连接。软链接就是一个普通文件,只是数据块内容有点特殊。软链接有着自己的 inode 号以及用户数据块。

    Alternatives机制

    Alternatives也称“替代品”机制,如下图

    • 在/etc/alternatives下存在一些符号链接(替代品),一个替代品链接可以链接一组文件,而这一组文件具有优先权,根据优先权可以选择替代品链接真实链接的文件;
    • 别的符号链接可以连接到替代品链接;

    它的应用场景是这样的:比如现在流行的编辑器有Vim、nano、Emacs等,而debian里还自带了vim.tiny。如果系统了安装了这些编辑器,如何能使用一个友好的(符号)链接如editor映射到你最喜欢的编辑器呢?

    使用Alternatives机制是这样的,在/etc/alternatives下建立一个editor符号链接指向Vim、nano、Emacs,当前的选择是vim;然后再在/usr/bin再建立一个符号链接editor链接到替代品链接editor,然后我们就可以使用editor来打开编辑器了,当想切换成Emacs的时候,使用命令update-alternatives --config editor可以选择别的编辑器。当然如果你不使用Alternatives机制也可以,只是想更换的时候手动做符号链接,这是我的理解。

    安装Java

    网上搜到的如何安装Java一般都是使用Alternatvies机制,其实手动直接创建符号链接我觉得也很方便,但可能考虑到多个Java版本吧。但不管怎么样,只要知道了上述理论就不能理解如何安装了。

    首先到官网下载你需要的Java版本,我下载的是Java7 Server JRE,并解压至“/usr/lib/jvm//jdk1.7.0_60”中,然后使用下面的命令安装Alternatives

    update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_60/bin/java 100

    如果Alternatives的java不只指向一个java,需要使用下面的命令进行配置

    update-alternatives --config java

    更多的update-alternateives命令选项可以使用使用--help查看。

    出处:http://www.zhaiqianfeng.com    
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Maven仓库是什么
    什么是Maven
    Shiro 的优点
    shiro有哪些组件
    Python偶斐波那契数
    Python求1000以内所有3或5的倍数的和。
    python"TypeError: 'NoneType' object is not iterable"错误解析
    python中列表常用的几个操作函数
    反射类的一些基本用法
    循环随机数短时间内大多都是重复的问题
  • 原文地址:https://www.cnblogs.com/zhaiqianfeng/p/4620414.html
Copyright © 2020-2023  润新知