安装Sun JDK
1. 从Oracle官方网站下载最新的Linux版本JDK二进制包。对于Java 6来说,文件名是 jdk-6u23-linux-i586.bin
2. 复制下载好的文件到你准备安装JDK的文件目录下。这里我将其放在:
/home/<username>/java/jdk-6u23-linux-i586.bin
3. 打开 Terminal,
$ cd /home/<username>/java
$ sudo sh jdk-6u23-linux-i586.bin
应该也可以
$ sudo chmod 755 jdk-6u23-linux-i586.bin,然后$ ./jdk-6u23-linux-i586.bin
4. JDK会被安装在二进制包所在的同一目录内
设置JAVA环境变量
方法1:修改/etc/profile文件
所有用户都会使用这些环境变量
<1>在 shell终端执行命令:gedit /etc/profile
<2>在 profile文件末尾加入:
JAVA_HOME=/home/<username>/java/jdk1.6.0_23
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME,PATH,CLASSPATH
<3>重启系统
/etc/profile这个文件,是系统启动是要自动执行的文件,任何一个用户登录系统都会执行这个文件。
所以尽量不要去修改这个配置文件。
而且如果修改出错,系统可能就起不来了,见"修改了ubuntu的etc/profile文件,系统不能进入了“(http://www.ctochina.net/forum/show/106)
/etc/profile会首先执行/etc/profile.d/目录下的所有*.sh文件
这也就给我们一个可扩展的思路。
如果我们需要配置JDK,那么就在/etc/profile.d/下创建jdk.sh文件
如果需要配置oracle,那么就在/etc/profile.d/下创建oracle.sh文件
来源:http://www.blogjava.net/zhyiwww/archive/2010/01/29/311240.html
方法2:修改.bashrc文件
如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bashrc就可以了,而不像第一种方法给所有用户权限。
<1>在 shell终端执行命令:gedit /home/<username>/.bashrc
<2>在.bashrc文件末尾加入:
export
JAVA_HOME=/home/<username>/java/jdk1.6.0_23
export
PATH=$JAVA_HOME/bin:
/var/lib/gems/1.8/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
<3>重新登录
方法3:直接在shell下修改
用于在Shell下临时使用,换个Shell即无效
export JAVA_HOME=/home/<username>/java/jdk1.6.0_23
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar: $JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
注意:
<1>Linux下环境变量使用:(冒号)分隔路径,不同于Windows下的;
<2>Linux使用($+环境变量名)来引用原来变量的值,Windows则是使用%+环境变量名+%.比如$PATH和%PATH%
<3>CLASSPATH中不能存在空格,如Windows下的C:\Documents and Settings\seagar\jdk1.5将是不合法的路径名
<4>CLASSPATH中的当前目录"."不能忽略
<5>export把环境变量导出为全局变量
<6>大小写严格区分
测试安装情况
1.java -version查看版本号
2.使用 编辑器编写一个Java程序
(1)#root > gedit Hello.java
(2)编写程序
public class Hello
{
public static void main(String[] args)
{
System.out.println("Hello");
}
}
3.编译:javac Hello.java
4.执行:java Hello
与环境变量相关的文件可能还会有/etc/bashrc等,不过这是shell变量,是局部的,对于特定的shell器作用。/etc/profile是全局的,适用于所有的shell。出处
没搞明白,如果JAVAHOME配置在.bashrc里,那么安装的eclipse使用的是哪个jdk
我也没搞明白什么时候用export,什么时候不用
查看当前用户的环境变量的命令:env
在Ubuntu中有如下几个文件可以设置环境变量
1、/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
2、/etc/environment:在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量。
3、~/.bash_profile:在登录时用到的第三个文件是.profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该 文件仅仅执行一次!默认情况下,他设置一些环境变游戏量,执行用户的.bashrc文件。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
4、~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
几个环境变量的优先级1>2>3。此段摘自这里
还有/etc/bash.bashrc呢
参考:
http://blog.csdn.net/jeffygn2006/archive/2010/12/17/6081918.aspx
http://hwhhyh25.javaeye.com/blog/512410
http://flysnow.javaeye.com/blog/810083
http://konglx.javaeye.com/blog/702965
/etc/profile改错了,系统起不来怎么办?
在启动时按F2,选择recovery mode(一般是第二个选项)
,然后用root登录
执行sudo vi /etc/profile系统提示是修改(E)还是恢复(R)(Recover)等,按R键,系统执行后发现该文档没有变化,暂不管。
重新执行
sudo vi /etc/profile然后按E键,
一路确认到文档最后面
按"dd"键删除自己加的那几行,然后按ESC回到命令状态,输入“:wq!”,按Enter键保存退出。
最后reboot
另外一个
办法:又新建了一个虚拟机,把原来破坏了的虚拟机的硬盘挂载到新建的虚拟机上,把数据倒过来了。
用LIVECD启动后也可以改
另外可能SSH进去后SU ROOT 再改动
开机狂按ESC进入grub,grub是什么意思
启动时按住shift键可出现grub的菜单,再进入recovery mode
进恢复模式,进入命令行,用vi/vim把你的改动搞回去。如果你原来的的profile文件有备份就简单的cp就可以了。要sudo提权。
教训:
1、修改配置前先备份;
2、一定要学一点纯终端的vi/vim的简单操作;
gedit前最好先 sudo cp 一下 把原文件加上.bak后缀
gedit好办,会留下~尾巴做备份的。
ls /etc #显示etc文件所有的文件。如果有profile~的话旧执行
或者是whereis profile~ #这个事查找profile~文件
sudo cp /etc/profile~ /etc/profile #注意空格
exit #退出。
[江湖救急]修改/etc/profile重启后无法进入系统Vista和Ubuntu双系统引导 – 修改默认启动的操作系统vi编辑器常用的命令及快捷键系统修复 修改/etc/profile后无法进入系统 且所有命令都无法使用