JDK-6186146 : Linux installation docs and RPM installation process disagree
  • Type: Bug
  • Component: docs
  • Sub-Component: guides
  • Affected Version: 5.0
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: linux
  • CPU: x86
  • Submitted: 2004-10-28
  • Updated: 2011-02-16
  • Resolved: 2006-09-26
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6
6 b99Fixed
Related Reports
Relates :  
Relates :  
Description
FULL PRODUCT VERSION :
Java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
Java HotSpot(TM) Client VM (build 1.5.0-b64, mixed mode, sharing)


ADDITIONAL OS VERSION INFORMATION :
Linux crisp4 2.6.5-7.108-default #1 Wed Aug 25 13:34:40 UTC 2004 i686 i686 i386 GNU/Linux


A DESCRIPTION OF THE PROBLEM :
JDK 5 Installation notes are at:

http://java.sun.com/j2se/1.5.0/install-linux.html#install-pkg

The documented steps in brief are:

1. Download and check the file size.

2. Extract the contents of the downloaded file.

3. Become root by running the su command and entering the super-user password.

4. Run the rpm command to install the packages that comprise the JDK:

rpm -iv jdk-1_5_0_<version>-linux-i586.rpm

5. Delete the bin and rpm file if you want to save disk space.

6. Exit the root shell.


The principal issue is that the actual extraction script also runs the "rpm -iv ... ".
This means there is one less step, and it means you must be root when you extract the rpm file.

This is related to the issue of installing the FCS version where a beta version has been already installed.  The installation notes define no extra required steps, yet the actual installation fails in this case until the sysadmin applies a workaround.


STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Install JDK 1.5 beta 2, then follow the installation instructions for JDK 1.5.0.


EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Was expecting successful installation.

ACTUAL -
Installation failure.

There were many "file conflict" messages, and the install removed all
files in the /usr/java directory while reporting that jdk-1.5.0 was installed.

REPRODUCIBILITY :
This bug can be reproduced always.

---------- BEGIN SOURCE ----------
Sorry, not available.
---------- END SOURCE ----------

CUSTOMER SUBMITTED WORKAROUND :
Follow the initial installation with:

rpm -U --replacepkgs jdk-1_5_0-linux-i586.rpm
###@###.### 10/28/04 18:19 GMT
Updated the Java SE 6.0 installation docs with the latest instructions.

Comments
WORK AROUND Just be sure to uninstall pre-FCS releases of 1.5.0, and become super-user before running the binary. ###@###.### 11/1/04 18:04 GMT
01-11-2004

EVALUATION The <release>-linux-i586-rpm.bin files for JRE/JDK 5.0 now include code to automatically install the RPM, instead of simply extracting the RPM files. The Linux installation notes on http://java.sun.com/ should be updated to reflect this. It is also important to document the need to uninstall any pre-FCS releases of 1.5.0 prior to installation of the FCS pacakges. I have provided the correct steps to document in the suggested fix, and am re-assigning this to the Docs team. ###@###.### 11/1/04 18:04 GMT
01-11-2004

SUGGESTED FIX Use these instructions if you want to install JRE or JDK in the form of RPM packages. To install an RPM you need root access. If you want to extract the RPM file without installing the package, see the note following these instructions. If you want to use the self-extracting binary file instead, see Installation of Self-Extracting Binary. 1. Download and check the file size. You can download to any directory you choose. Before you download the file, notice its byte size provided on the download page on the web site. Once the download has completed, compare that file size to the size of the downloaded file to make sure they are equal. 2. Login to the root account from the console, or become root by running the su command and entering the super-user password. 3. Previous installations of the 1.5.0 pre-FCS releases (i.e. Beta1, Beta2, RC1, etc...) must be removed prior to installing 1.5.0 FCS. (See release note http://java.sun.com/j2se/1.5.0/relnotes.html#linux.) 3.a. Run the following command to determine if there is a previous installation of 1.5.0: rpm -q jre-1.5.0 jdk-1.5.0 j2re-1.5.0 j2sdk-1.5.0 3.b If the above command lists one or more installed packages, then remove them with the following command: rpm -e <package-name> Where <package-name> is the name of a package listed by the command in step 3.a. 4. Run the self-extracting RPM installation. Change directory to where the downloaded file is located and run these commands to first set the executable permissions and then run the binary to extract and install the RPM file: chmod a+x <java>-1_5_0-linux-i586-rpm.bin ./<java>-1_5_0-linux-i586-rpm.bin Where <java> can be either jre or jdk, depending on which package you have downloaded to install. The script displays a binary license agreement, which you are asked to agree to before installation can proceed. Once you have agreed to the license, the install script extracts the file <java>-1_5_0-linux-i586.rpm in the current directory. Finally the script installs the package using the command `rpm -ivh <java>-1_5_0-linux-i586.rpm`. Note that the initial "./" is required if you do not have "." in your PATH environment variable. 5. Delete the bin and rpm file if you want to save disk space. 6. Exit the root shell. Note: You can extract the RPM file from the download without automatically installing the package. This does not require root privileges, and can be run by any user that has write access to the destination directory. Enter the following commands to extract the RPM file into the current working directory: chmod a+x <java>-1_5_0-linux-i586-rpm.bin ./<java>-1_5_0-linux-i586-rpm.bin -x ###@###.### 11/1/04 18:04 GMT
01-11-2004