您的位置:首页 > 运维架构 > Linux

一周学会Linux实战

2012-09-01 09:15 274 查看
为什么学习Linux?
1、Linux的性能卓越。
Linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中型,大型甚至是巨型项目都在使用Linux。很多软件公司考虑懂啊开发成本都首选Linux,在中国软件公司得到广泛的使用。
Linux内核:RedHat、红旗Linux、fedora、SUSE、ubuntu。
2、为工作
从目前看,软件公司迫切需要能熟练掌握Linux的程序员,主要有以下几个方向:
(1)Linux系统管理员:保证Linux系统的正常运行,安全、备份、配置等工作。
(2)Linux程序员(需C/C++、Java、php、jsp…)、Linux软件工程师(PC)、Linux嵌入式开发
Linux流程为:
第一阶段:Linux平台上的开发,包括vi,gcc,gdb,make,jdk,tomcat,mysql…和Linux基本操作;
第二阶段:加厚C语言功底《C专家编程》或是java语言;
第三阶段:学习unix环境高级编程《unix环境高级编程》;
第四阶段:Linux应用系统开发/Linux嵌入式开发
记住一点:成为一个Linux专家的秘诀就是:
思考——实践——再思考——再实践………
C函数库的查询
Linux常用命令的查询
对学习Linux学习方法的理解:
1、
高效而愉快的学习;
2、
先建立一个整体框架,然后细节;
3、
用的什么再学习什么;(Linux有3700多个命令)
4、
先know how,再know
why;
5、
计算机是一门“做中学”的学科,不是会了再做,而是做了才会;
6、
适当的囫囵吞枣;
7、
学习Linux系统是在琢磨别人怎么做,而不是我认为应该怎么做的过程。
内容介绍:
基础部分:Linux基础知识、Linux常用命令80个、Linux分区/vi/权限….;
实用部分:Samba安装与配置、Linux网络环境配置、crontab使用、jdk/apache/mysql/ssh/rpm安装与配置、Linux下java网络编程、Shell初步介绍。
《鸟哥的私房菜》基础学习篇、《Linux编程从入门到精通》、《Linux内核完全剖析》

一周学会Linux实战(第一天)
内容介绍:
1、
Linux的初步介绍;
2、
Linux的第一次接触;
3、
Linux用户管理;
4、
Linux常用命令;
5、
Linux下所有者、所在组合其他组的介绍;
6、
Linux下文件和目录权限机制。
一、Linux初步介绍
吉祥物:



微软反Linux广告:



Linux的特点:

1、
免费、开源的;

2、
支持多线程、多用户的;

3、
安全性好;

4、
对内存和文件管理优越。

谁支持Linux:

1999年,IBM宣布与Redhat公司建立伙伴关系,以确保Redhat在IBM机器上正确运行。

1999.3月IBM、Compaq和Novell宣布投资Redhat公司,以前一直对Linux持否定态度的Oracle公司也宣布投资。

2000年初始,Sun公司在Linux的压力下宣布Solaris8降低售价。事实上Linux对Sun造成的冲击远比Windows来得更大。

2001年IBM决定投入10亿美元扩大Linux系统的运用,此举犹如一针强心剂,令华尔街的投资者们闻风雨动。8月红色代码爆发,引得许多站点纷纷从windows操作系统转向Linux操作系统。

2002年是Linux企业化得一年。2月,微软公司迫于各洲政府的压力,宣布扩大公开代码行动,这可是Linux开源带来的深刻影响的结果。3月,内核开发者宣布新的Linux系统支持64位的计算机。

2003年1月,NEC宣布将在其手机中使用Linux操作系统,代表着Linux成功进军手机领域。

2004年六月的统计报告显示在世界500强超级计算机系统中,使用Linux操作系统的已经占了280席,抢占了原本属于各种Unix的份额。9月HP开始网罗Linux内核代码人员,以影响新版本的内核朝对HP有利的方式发展,而IBM则准备推出OpenPower服务器,仅运行Linux系统。

如今,这只可爱的小企鹅终于能独挡一面,在IBM、HP、Novell、Oracle等诸多厂商的支持下,迎着风雪傲然前行。

Linux最小只需要4M内存就可以跑起来。

嵌入式开发

Linux的故事

世界第一台计算机



1960时期,MIT[麻省理工大学] 30个人同时使用

1965年,mit、ge、bell实验室这三家公司
增长到300个人同时使用分时操作,这个计划叫multis计划[火星计划]

1969年,火星计划终于失败了,Ken在此基础上开发了一个file server system[文件系统],在bell受到了广泛的欢迎。

1973年,Ken和Dennis在文件系统之上,开发了Unix,开源的,源码内核共享,IBM推出了AIX(Unix的一种),Sun公司推出了Solaris,HP公司开发了hp
unix,办了,伯克利分校开发了bsd。还有一个操作系统minix出现了,非常小,

1991年,linus在芬兰读书,有一台pc 386的个人计算机,把minix移植到pc上。1994年发布了第一个版本1.0版本,linux[linus
is not unix],继承了unix的很多好的东西。

后天出现了Redhat红帽、S.U.S.E、红旗Linux。

自由软件基金会(FSF)和通用许可证(GPL),防止使用者生成专属的封闭源代码系统。

1991年芬兰的研究生linus,编写了操作系统内核,1995年几家公司把这个内核集成到GPL中形成linux的发行版。

GPL:提供源代码,文档清晰,不对软件提供担保

Linux的特点:成本/可靠性/灵活性/支持



二、Linux第一次接触

Login:root

Password:

Last Login:Wed Dec 3 22:40:02 on tty1

[root@daiyu root]# startx
进入Linux的图形界面

—关机命令

Shutdown –h now
立刻进行关机

Shutdown –r now
现在重新启动计算机

reboot
现在重新启动计算机

——用户登录

登录时尽量少用root账号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用“su -”命令来切换成系统管理员身份。

——用户注销

在提示符下输入logout即可

vi编辑器的使用

vi编辑器是Linux下最有名的编辑器,也是我们学习Linux必须掌握的工具,在Unix下也可以使用vi进行程序的开发。Vi编辑器的开发者,黑客水平世界无人能比,崇尚开源,还成了一个自己软件基金会机构,专门开发共享软件。

如何使用vi进行开发?

使用vi在linux下开发一个简单的java程序Hello.java,并且在Linux下运行成功。

开发步骤:

1、# vi Hello.java
回车;

2、点击’i’,进入到insert模式;

Public class Hello {

Public static void main(String []args) {

System.out.println(“Hello world”);

}

}

3、保存。点击“esc”键,进入到命令模式;输入’:wq’,表示保存并退出;输入’:q!’,表示退出不保存。

# ls 查看当前目录的所有文件

Hello.java anaconda-ks.cfg install.log install.log.syslog

# ls –l

Total 40

-rw-r—r-- 1 root root 105 Dec 4 10:12 Hello.java

-rw-r—r-- 1 root root 1472 Apr 6 2005 anaconda-ks.cfg

-rw-r—r-- 1 root root 24271 Apr 6 2005 install.log

-rw-r—r-- 1 root root 4307 Apr 6 2005 install.log.syslog

4、编译Hello.java程序。

# javac Hello.java //回车,编译成功(没有任何提示)

# ls –l //多了一个Hello.class

-rw-r—r-- 1 root root 415 Dec 4 10:14 Hello.class

# java Hello //运行Hello.class

Hello world

如何在Linux下开发C/C++程序(c/cpp):

# vi Hello.cpp

#include <stdio.h>

int main(){

printf(“Hello!”);

return 0;

}

# ls

Hello.cpp Hello.class Hello.java

# gcc –v //gcc类似于C的编译工具,查看版本

# gcc Hello.cpp //编译成功

# ls //多了一个a.out的程序

Hello.cpp
a.out

# ./a.out //运行a.out程序

Hello!

再重写一个C程序,再编译,a.out就会被覆盖。

# vi Hello2.cpp

#include <stdio.h>

int main(){

printf(“OKOKOOK!”);

return 0;

}

# gcc Hello2.cpp

# ls

Hello2.cpp
a.out

# ./a.out

OKOKOOK!

# gcc –o my1 Hello2.cpp //-o
输出,按my1输出

# ls

Hello2.cpp
a.out my1

# ./my1 # ./a.out

OKOKOOK! OKOKOOK!

《vi编辑器的使用》

last line code
:命令介绍:




三、Linux下的文件目录
Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录”/”,然后在此目录下再创建其他的目录。



[root@daiyu root] # cd
/
[root@daiyu /] #
ls
bin
dev home lib
misc opt root
tmp var
boot
etc initrd lost*found
mnt proc sbin
usr
[root@daiyu /] #
dir
bin
dev home lib
misc opt root
tmp var
boot
etc initrd lost*found
mnt proc sbin
usr
[root@daiyu /] #
cd bin/
[root@daiyu bin] #
ls -l
Usr
安装一个程序的默认安装目录、文件夹。
# pwd
显示当前在哪个路径下



1、
Linux的用户管理

useradd
用户名


案例:useradd xiaomng [添加用户 xiaoming]

passwd
用户名 [修改密码]

案例:[root@daiyu home]# passwd xiaoming [修改xiaoming的密码]

一定要指定用户名,否则默认是修改当前用户的密码。

[root@daiyu home]# ls

xiaoming

userdel
用户名 [删除用户]

1、userdel xiaoming [删除用户xiaoming]

xiaoming的用户名没有了,但是xiaoming的文件夹还存在。

2、userdel -r xiaoming [删除用户以及用户主目录]

四、指定运行级别

命令: init[012356]

运行级别

0:关机

1:单用户

2:多用户状态没有网络服务

3:多用户状态有网络服务

4:系统未使用保留给用户

5:图形界面

6:系统重启

常用运行级别是3和5,要修改默认的运行级别可改文件/etc/inittab的id:5:initdefault:这一行的数字。

若设为6,则不断重启,在进入grub引导界面时,输入e,

选择第二项,kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
,再输入e:

grub edit> kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ 1
输入1

1代表运行级别,即单用户运行级别。

因为在Linux启动快要进入的时候,会读/etc/inittab这个文件,只有单用户级别不会去读这个文件。因此可以进入到单用户模式,再去修改这个文件,单用户模式还可以修改密码。

回车后,按’b’,重新启动,就会按1号运行级别启动,进入单用户模式。

sh-2.05b# vi /etc/inittab

sh-2.05b# reboot

pwd [显示当前工作目录]

cd [改变目录]

ls [列出文件和目录]

ls -a
显示隐藏文件


ls -l
显示长列表格式


mkdir [建立目录]

rmdir [删除空目录]

touch [建立空文件]

cp [复制命令]

cp –r dir1 dir2
递归复制命令(复制子目录信息)

mv [移动文件和改文件名]

rm [删除文件和目录]

rm -r * [删除所有内容(包括目录和文件)] r递归 f强制

ln [建立符号连接]

ln -s
源目标


ln -s /etc/inittab inittab [inittab指向实际文件/etc/inittab]

more
显示文件内容,带分页


less
显示文件内容带分页


grep
在文本中查询内容


|
管道命令:把上一个命令的结果交个|后面的那个命令处理

man(manual手册)相当于dos下的help

# more install.log

按下空格键,转到下一页;按下’PgUp键+Enter键’,转到上一页。

# ls –l /etc/ | more

# grep “shunping” aaa.java

ksafd;laskshunping

fsashunping

# grep –n “shunping” aaa.java
显示出现的行数


3:ksafd;laskshunping

16:fsashunping

find
搜索文件及目录


在Linux中,因为文件系统是以级别式的结构来组成的,所以要在整个系统中找到特定的文件和目录并不是件容易的事。而’find’命令可以解决上述问题。

1、
在特定的目录下搜索并显示指定名称的文件和目录。


find / -name man :意思是说从根目录开始搜索名称为man的文件或目录。

2、
搜索一段时间内被存取/变更的文件或目录。

find /home –amin -10:十分钟内存取的文件或目录

find /home –atime -10:十小时内存取的文件或目录

find /home –cmin -10:十分钟内更改过的文件或目录

find /home –ctime +10:十小时前更改过的文件或目录

3、
搜索指定大小的文件。


Find /home –size +10K:意思是说查找/home目录下大小为10k的文件

# find / -name aaa.java

# find /root/ -name aaa.java

重定向命令:

ls –l > a.txt
列表的内容写入文件a.txt中(覆盖写)

ls –al >> aa.txt
列表的内容追加到文件aa.txt的末尾

从文件中输入信息 database_program < database_data

# grep –n “shunping” aaa.java > kkk.bak

#ls

kkk.bak

# vi kkk.bak

ksafd;laskshunping

fsashunping

文件所有者、所在组和其它组

在Linux中的每个用户必须属于一个组,不能独立于组外。在Linux中每个文件有所有者、所在组、其它组的概念。

(1)
文件所有者


一般是文件的创建者,谁创建了该文件,就天然的成为了该文件的所有者。

用[ls -ahl]命令可以看到文件的所有者

你也可以用[chown
用户名文件名]来修改文件的所有者

(2)
文件所在组


当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组。

用[ls -ahl]命令可以看到文件的所有组

你可以通过[chgrp
组名文件名]来修改文件所在的组。

(3)
其它组


除开文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组。

(4)
改变用户所在的组


在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组:

Usermod –g 组名用户名

你可以用

Usermod –d 目录名用户名改变该用户登陆的初始目录

# groupadd policeman

# vi /etc/group # cat /etc/group | more
查看Linux系统中的所有组

policman:x:503:

创建用户,并分配组

# useradd –g
组名用户名


# useradd –g policeman along

# vi /etc/passwd # cat /etc/passwd
查看Linux中所有用户信息

Along:x:503:503::/home/along:/bin/bash

/bin/bash 该用户所使用的那个shell解析器

# passwd along

New password:

[along@daiyu along]$ ls –l

-rw-r—r-- 1 along policeman 11 Dec 9 09:32 mytest1.java

第一个字符代表文件(-),目录(d),链接(l)

1代表如果是文件,就显示1;如果是文件夹,就显示这个文件夹下共几个文件。

权限分为三种:

r 可读
用4表示;

w 可写
用2表示;

x 可执行用1表示

[panpan@daiyu panpan]$ cd ..

[panpan@daiyu home]$ ls

along
ashuai panpan xiaohong xiaoming

[panpan@daiyu home]$ cd along

-bash: cd : along: Permission denied

[panpan@daiyu home]$ ls –l

drwx------ 3 along policeman 4096 Dec 9 09:42
along

drwx------ 3 panpan policeman 4096 Dec 9 09:24
panpan

[panpan@daiyu home]$ who am i

panpan tty1 Dec 9 09:51

[along@daiyu home]$ chmod 777 along

[along@daiyu home]$ ls –l

drwxrwxrwx 3 along policeman 4096 Dec 9 09:42
along

[panpan@daiyu home]$ cd along/

[panpan@daiyu along]$ dir

mytest1.java

[panpan@daiyu along]$ ls –l

-rw-r—r-- 1 along policeman 11 Dec 9 09:32 mytest1.java

[panpan@daiyu along]$ vi mytest1.java

I am along

[root@daiyu root]# usermod –g policeman ashuai

[root@daiyu root]# cat /etc/passwd

ashuai:x:505:503::/home/ashuai:/bin/bash

如何修改文件和目录的访问权限

改变权限的命令:

chmod 改变文件或目录的权限

chmod 755 abc
:赋予abc权限rwxr-xr-x

chmod u=rwx,g=rx,o=rx abc
:同上 u=用户权限 g=组权限 o=不同组其他用户权限

chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限

chmod a+r abc:给所有用户添加读的权限

改变拥有者(chown)和用户组(chgrp)命令:

chown xiaoming abc:改变abc的拥有者为xiaoming

chgrp root abc:改变abc所属的组为root

chown root ./abc:改变abc这个目录的所有者是root

chown –R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root

上机练习:

1、
用root登录,建立用户myredhat,自己设定密码

2、
用myredhat登录,在主目录下建立目录test/t11/t1

3、
在t1中建立一个文本文件aa,用vi编辑器内容为ls –al

4、
改变aa的权限为可执行文件,运行该文件./aa或者修改PATH的值,用aa运行

5、
删除新建立的目录test/t11/t1

6、
删除用户myredhat及其主目录中的内容

7、
用vi编写一个Hello.java文件打印出Hello,World!用vi编写hello.cpp文件打印出hello,world!

8、
用vi编写一个count.java文件,可以接受两个数和一个运算符号,并在控制台输出结果

9、
用vi编写一个Count.c文件,可以接受两个数和一个运算符号,并在控制台输出结果

10、
将Linux设置成进入到图形界面的

11、
重新启动Linux或关机

一周学会Linux实战(第二天)
Linux安装上QQ——毛毛虫 QQ for Linux im_qq_com

Javaee开发环境搭建——jdk的安装

概述:要在Linux下开发java程序,则需要安装jdk。实际上目前有很多java后台程序就是在Linux环境下运行的,也是将来的发展趋势。

jdk的安装步骤:

1、把mypackage.iso挂载到Linux系统上,在vm中做好配置。

[root@daiyu root]#
mount /mnt/cdrom/
挂载光驱,把光驱启动

[root@daiyu root]#
cd /mnt/cdrom/
光驱默认是挂载在/mnt/cdrom/


[root@daiyu cdrom]# ls

Daemon Tools

EnterpriseWorkbenchInstaller_4.0.3GA_E3.1.bin

RealPlayer10GOLD.bin

apache_1.3.28.tar.gz

eclipse-SDK-3.1.1-linux-motif.tar.gz

fcitx-3.0.3-1.i386.rpm

fcitx-3.1.1.tar.tar

j2sdk-1_4_2_07-linux-i586.bin

jakarta-tomcat-5.0.30.tar.gz

jakarta-tomcat-5.5.9.tar.gz

jdk-1_5_0_04-linux-i586-rpm.bin

mysql-connector-java-3.1.10-bin.jar

mysql-standard-4.0.26-pc-linux-gnu-i686.tar.gz

samba-2.2.7a-7.9.0.i386.rpm

samba-client-2.2.7a-7.9.0.i386.rpm

samba-common-2.2.7a-7.9.0.i386.rpm

telnet-0.17-25.i386.rpm

vsftpd-1.1.3-8.i386.rpm

[root@daiyu root]#
cd /


[root@daiyu /]#
umonut /mnt/cdrom/
取消挂载

[root@daiyu root]# cd /mnt/cdrom/
此目录下为空

[root@daiyu cdrom]#
ls


[root@daiyu cdrom]#

还有其他方法让Linux系统使用windows系统的文件呢?

虚拟机—>设置—>选项—>共享文件夹,把windows的文件夹共享给虚拟机,点击“添加”。

2、把安装文件拷贝到/home目录下去,因为现在文件是挂载在光驱上的,光驱是不可写的。

# cp 文件 /home

[root@daiyu cdrom]# cp j2sdk-1_4_2_07-linux-i586.bin /home

[root@daiyu cdrom]#
cd /home/


[root@daiyu home]#
ls


along ashuai
j2sdk-1_4_2_07-linux-i586.bin panpan xiaohong xiaoming

3、安装 # ./文件.bin

[root@daiyu home]#
./ j2sdk-1_4_2_07-linux-i586.bin


Do you agree to the above license terms? [yes or no]

yes 回车,开始安装

[root@daiyu home]#
ls


along
j2sdk-1_4_2_07-linux-i586.bin panpan xiaoming

ashuai
j2sdk1.4.2_07 xiaohong 解压缩后的文件

[root@daiyu home]# cd j2sdk1.4.2_07/

[root@daiyu j2sdk1.4.2_07]#
ls

COPYRIGHT README THIRDPARTYLICENSEREADME.txt
demo jre man

LICENSE README.html
bin include
lib src.zip

[root@daiyu j2sdk1.4.2_07]# cd bin/

[root@daiyu bin]# ls

htmlConverter
jarsigner javah klist rmic tnameserv

appleviewer
java javap ktab rmid

extcheck
java-rmi.cgi jdb native2ascii rmiregistry

idlj
javac keytool orbd serialver

jar
javadoc kinit policytool servertool

4、
看看这个文件/etc/profile (环境配置文件)

[root@daiyu bin]#
vi /etc/profile


JAVA_HOME=/usr/java/j2sdk1.4.2_07

PATH=$PATH:/usr/java/j2sdk1.4.2_07/bin //把以前的path不要破坏,追加一个路径

CLASSPATH=.:/usr/java/j2sdk1.4.2_07/jre/lib/rt.jar

CATALINA_HOME=/usr/local/Jakarta-tomcat-5.0.30
//tomcat

exportJAVA_HOME PATH CLASSPATH CATALINA_HOME

//export命令是把上面的配置引入到环境变量中去

把他们注释掉,用“#”;注销logout后重新登录

[root@daiyu root]#
javac


-bash: javac:command not found

5、
配置刚才自己安装的jdk

[root@daiyu bin]#
vi /etc/profile


JAVA_HOME=/home/j2sdk1.4.2_07

PATH=$PATH:/home/j2sdk1.4.2_07/bin

CLASSPATH=.:/home/j2sdk1.4.2_07/jre/lib/rt.jar

exportJAVA_HOME PATH CLASSPATH

保存”:wq”后,重新注销logout登录

[root@daiyu root]#
javac


[root@daiyu root]#
java


Javaee开发环境搭建——eclipse的安装

概述:要在Linux下开发java程序,则需要安装jdk,如果要在集成开发工具(ide)下开发,可以安装eclipse软件。

Eclipse的安装步骤:

1、
挂载iso文件到Linux系统上 mount /mnt/cdrom/

2、
把安装文件拷贝到home目录 cp
文件 /home

[root@daiyu root]#
cd /mnt/cdrom
/

[root@daiyu cdrom]# ls

Daemon Tools

eclipse-SDK-3.1.1-linux-motif.tar.gz

[root@daiyu cdrom]#
cp eclipse-SDK-3.1.1-linux-motif.tar.gz /home/


[root@daiyu cdrom]#
cd /home/


[root@daiyu home]# ls

along
eclipse-SDK-3.1.1-linux-motif.tar.gz j2sdk1.4.2_07
xiaohong

ashuai
j2sdk-1_4_2_07-linux-i586.bin panpan xiaoming

3、
安装 tar -zxvf 文件.tar.gz

[root@daiyu home]# tar –zxvf eclipse-SDK-3.1.1-linux-motif.tar.gz
解压缩

[root@daiyu home]#
dir


eclipse-SDK-3.1.1-linux-motif.tar.gz
eclipse

4、
启动eclipse

[root@daiyu home]#
cd eclipse


[root@daiyu eclipse]#
ls //绿色的eclipse是可执行文件

about.html
eclipse features
libcario.so.1 readme

about_files eclipse.ini
icon.xpm notice.html startup.jar

configuration ep1-v10.html
libXm.so.2 plugins

[root@daiyu eclipse]#
./eclipse //启动eclipse

Error: Conldn’t find per display information

Eclipse: JVM terminated.
没有图形化界面

先进入图形界面:

[root@daiyu eclipse]#
startx

[root@daiyu eclipse]#
./eclipse 成功启动eclipse

想回到刚才的非图形界面,直接logout注销后就会回去

[root@daiyu eclipse]#

Javaee开发环境搭建
——myeclipse的安装


概述:eclipse只能开发java se,如果要开发java ee,则需要安装myeclipse。

[root@daiyu root]# cd /mnt/cdrom/

[root@daiyu cdrom]#
ls


EnterpriseWorkbenchInstaller_4.0.3GA_E3.1.bin

[root@daiyu cdrom]# cp EnterpriseWorkbenchInstaller_4.0.3GA_E3.1.bin /home/

[root@daiyu cdrom]#
cd /home/


[root@daiyu home]#
ls


EnterpriseWorkbenchInstaller_4.0.3GA_E3.1.bin

[root@daiyu home]#
./ EnterpriseWorkbenchInstaller_4.0.3GA_E3.1.bin


进入图形界面

Please Choose Existing Eclipse Installation Folder:/home/eclipse

(先安装jdk,再安装Eclipse,最后安装myeclipse,顺序不能变)

Where Would You Like to Install MyEclipse Enterprise Workbench…..

/home/MyEclipse
把MyEclipse安装在哪里

[root@daiyu home]#
ls


EnterpriseWorkbenchInstaller_4.0.3GA_E3.1.bin
myeclipse

[root@daiyu home]#
cd eclipse


[root@daiyu eclipse]#
ls

about.html
eclipse features
libcario.so.1 readme

about_files eclipse.ini
icon.xpm notice.html startup.jar

configuration
ep1-v10.html libXm.so.2
plugins links

[root@daiyu eclipse]#
./eclipse 当再启动eclipse的时候,会发现多了一样东西,多了MyEclipse。

Javaee开发环境搭建
——tomcat的安装


概述:我们知道java ee的服务器有tomcat、jboss、weblogic、websphere、resin….这些都是可以安装到Linux下。

安装tomcat软件:

1、挂载iso文件到Linux系统上 mount /mnt/cdrom/

2、把安装文件拷贝到home目录 cp
文件 /home

[root@daiyu root]# cd /mnt/cdrom/

[root@daiyu cdrom]# ls

jakarta-tomcat-5.0.30.tar.gz

[root@daiyu cdrom]#
cp jakarta-tomcat-5.0.30.tar.gz /home/


[root@daiyu cdrom]# cd /home/

[root@daiyu home]# ls

jakarta-tomcat-5.0.30.tar.gz

[root@daiyu home]#
tar –zxvf jakarta-tomcat-5.0.30.tar.gz


[root@daiyu home]# ls

jakarta-tomcat-5.0.30.tar.gz
jakarta-tomcat-5.0.30

[root@daiyu home]# cd jakarta-tomcat-5.0.30

[root@daiyu jakarta-tomcat-5.0.30]# ls

LICENSE RELEASE-NOTES
bin conf server temp work

NOTICE RUNNING.txt
common logs shared webapps

[root@daiyu home]#
cd eclipse


[root@daiyu eclipse]#
ls

[root@daiyu eclipse]#
./eclipse &

[1] 8740

[root@daiyu eclipse]#

&表示要以后台方式运行,会把控制台的输入权立刻释放给用户。如果不打”&”,则控制台不能干任何其他的事情,要占据整个控制台的输入界面。8740代表eclipse启动后的进程号。

Select a workspace :
/root/workspace

开发一个jsp文件,并配置tomcat:

New—>Project—>MyEclipse—>J2EE Projects—>Web
Project,Next,

Project Name : Test,确定。

在左边右击Test,New—>JSP,新建一个Hello.jsp文件。

发布到tomcat:Window—>Preferences—>MyEclipse—>Application
server—>tomcat 5,

Tomcat Server,选择”enable”;配置Tomcat JDK。

毫无疑问,没有数据库,JAVAEE项目将会暗淡无光,所以必须掌握如何在Linux下安装和使用数据库。在Linux下除了Microsoft的
SQL Server不能安装外,其它主流的数据库都可以安装,比如MySQL、Oracle、DB2…..

Linux下娱乐软件—— realplay

Linux下一样有很多娱乐软件,比如播放影音的软件之王—realplay,用.bin安装文件。

安装realplay:

1、
把安装文件拷贝到/home下:cp
文件 /home

2、
安装.bin文件。

[root@daiyu eclipse]# cd /mnt/cdrom/

[root@daiyu cdrom]# ls

RealPlayer10GOLD.bin

[root@daiyu cdrom]# cp RealPlayer10GOLD.bin /home/

[root@daiyu cdrom]# cd /home/

[root@daiyu home]# ls

RealPlayer10GOLD.bin

[root@daiyu home]# ./RealPlayer10GOLD.bin

[root@daiyu home]# ls

RealPlayer10GOLD.bin
RealPlayer

[root@daiyu home]# cd RealPlayer

[root@daiyu RealPlayer]# ls

Bin README install.log
mozilla postinst
realplay.bak share

LICENSE
doc lib plugins
realplay realplay.bin

[root@daiyu RealPlayer]# ./realplay
启动RealPlayer程序,绿色的可执行文件

把文件做成iso镜像文件,首先要安装一个WinISO软件,先卸载现有的光驱,

unmount /mnt/cdrom/。点击”虚拟机”——>”设置”。

再次挂载,

[root@daiyu root]# mount /mnt/cdrom/

Linux分区

首先我们要对硬盘分区的基本概念进行一些初步的了解,硬盘的分区主要分为基本分区(Primary Partion)和扩展分区(Extension Partion)两种。基本分区和扩展分区的数目之和不能大于四个。且基本分区可以马上被使用但不能再分区。扩展分区必须再进行分区后才能使用,也就是说它必须还要进行二次分区。那么由扩展分区再分下去是什么呢?它就是逻辑分区(Logical
Partion),而且逻辑分区没有数量上的限制。

对于Windows的用户来说,有几个分区就有几个驱动器,并且每个分区都会获得一个字母标识符,然后就可以选用这个字母来指定在这个分区上的文件和目录,它们的文件结构都是独立的,非常好理解。但是对于Red Hat Linux用户来说无论有几个分区,分给哪一个目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构。Red
Hat Linux中每个分区都是用来组成整个文件系统的一部分。因为采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这是要载入的一个分区将使它的存储空间在一个目录下活动。看下Red Hat Linux的驱动器是如何标识的。

对于IDE硬盘,驱动器标识符为”hdx~”。其中”hd”表明分区所在设备的类型。这里是指IDE硬盘。”x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),”~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。对于SCSI硬盘则标识为”sdx~”。SCSI硬盘是用”sd”来表示分区所在设备的类型,其余则和IDE硬盘的表示方法一样。

几个重要的命令

挂载命令

mount [—参数] [设备名称] [挂载点]

特别说明:在挂载光驱时,可直接使用 mount /mnt/cdrom

卸载命令

unmount [设备名称]

查看磁盘使用情况

df [—参数]

比如: df -l

查看某个目录是在哪个分区

df [目录全路径]

查看Linux系统分区具体情况

fdisk -l

[root@daiyu root]#
fdisk –l


[root@daiyu root]# df /boot/

Filesystem 1K-blocks Used Availbale Use% Mounted on

/dev/sda1 101089 9126 86444 10% /boot

Boot分区是挂载了一个磁盘的,是与sda1相关联的,也就是说sda1是挂载到/boot目录上的。

[root@daiyu root]# cd /boot/

[root@daiyu boot]#
ls


可以看到/boot目录下很多的文件。

[root@daiyu boot]# cd /

[root@daiyu /]#
umount /boot/
卸载

[root@daiyu /]#
cd /boot/


[root@daiyu boot]#
ls


发现/boot目录下什么都没有了。

可见,Linux系统是使用挂载和卸载的方式来使用分区里面的东西。

[root@daiyu boot]# cd /

[root@daiyu /]#
mkdir test


[root@daiyu /]#
ls


test

[root@daiyu /]#
mount /dev/sda1 /test/
把/sda1挂载到/test/目录下

[root@daiyu /]#
cd /test/


[root@daiyu test]# ls

会发现,/test下面的文件和原来/boot上的文件一模一样。

[root@daiyu test]#
cd /


[root@daiyu /]#
umount /test/


[root@daiyu /]#

[root@daiyu /]#
df
有多少剩余空间

Filesystem 1K-blocks Used Availbale Use% Mounted on

/dev/sda2 3771316 2983184 596560 84% /

/dev/cdrom 842706 842706 0 100% /mnt/cdrom

[root@daiyu /]#
df –h


Filesystem Size Used Avail Use% Mounted on

/dev/sda2 3.6G 2.9G 583M 84% /

/dev/cdrom 823M 823M 0 100% /mnt/cdrom

[root@daiyu /]#
find –size +1000000K


发现有多少个文件是超过1G的。

Linux的安装有两种方式:

1、
独立安装。


2、
虚拟机安装。


一周学会Linux实战(第三天)
1、
Linux下的Shell

2、
TCP/IP基础

3、
Linux网络环境配置

4、
rpm包管理

5、
samba安装和配置

Linux下Shell介绍

Shell的概念

概述:每个人在成功登录Linux后,系统会出现不同的提示符号,例如$、~、#等,然后你就可以开始输入需要的命令,若是命令正确,系统就会依据命令的要求来执行,直到注销系统为止,在登录到注销期间,输入的每个命令都会经常解译及执行。而这个负责的机制就是shell(把命令解释成内核可以执行的代码)。

Shell编程

概述:其实作为命令语言互动式地解释和执行用户输入的命令只是Shell功能的一个方面,Shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用Shell编程类似于DOS中的批处理文件(系统的管理和维护),称为Shell
script,又叫Shell程序或Shell命令文件。

批处理文件如.bat文件。

《Linux命令、编辑器和Shell编程》《Linux与Unix shell编程指南》

Shell的分类

概述:Shell有很多,但常用的就几种:

Shell名称
开发者 命令名称

Bourne S.R.Bourne
/bin/sh

C Bill Joy
/bin/csh

Kom David
/bin/ksh

[root@daiyu root]# ls –l /bin/*sh
查看装了几种shell,都是以sh结尾的文件

-rwxr-xr-x 1 root root 92444 Feb 6 2003 /bin/ash

-rwxr-xr-x 1 root root 626028 Feb 11 2003
/bin/bash

lrwxrwxrwx 1 root root 3 Apr 6 2005
/bin/bsh -> ash

lrwxrwxrwx 1 root root 4 Apr 6 2005 /bin/csh
-> tcsh

lrwxrwxrwx 1 root root 4 Apr 6 2005
/bin/sh -> bash

-rwxr-xr-x 1 root root 316276 Jan 25 2003
/bin/tcsh

中国比较喜欢/bin/sh这个Shell,而欧洲比较喜欢/bin/ksh这个Shell。

1、
查看目前使用的是哪种Shell


# env
[全称是enviroment,该命令可以显示当前操作系统的环境变量]

[root@daiyu root]#
env | more
分页显示

TERM=linux

SHELL=/bin/bash

USER=root

PWD=/root

JAVA_HOME=/home/j2sdk1.4.2_07

2、
Shell
的修改

[root@daiyu root]#
chsh –s /bin/csh


Changing shell for root.

Shell changed.

[root@daiyu root]#
logout
要使Shell生效,就要先注销一下。

Login: root

Password:

[root@daiyu ~]#
发现变成了”~”符号,有些命令失效了。

不同的Shell,对命令的解释是不一样的。

[root@daiyu ~]# ls –l /bin/*sh

[root@daiyu ~]#
chsh –s /bin/bash


Changing shell for root.

Shell changed.

Login: root

Password:

# 只出现了”#”

# who am i

Root tty1 Dec 11 00:19

# logout
注销一下

logout: not found
发现bash不支持”logout”命令。

# exit
成功注销,退出

3、
Shell
的命令补全功能

概述:是指用户输入命令时,并不需要输入完整的命令,而系统自动会找出最符合的名称。这种功能可以节省经常输入命令的时间。

直接输入”mk”——再按两下”tab”键——出现两头两个字母为”mk”的命令。Cat
p 再按两下”tab”键会出现开头字母为”p”的所有文件或目录。

4、查询历史记录命令:history

概述:在Linux下,我们有时可能希望知道或是使用最近执行的命令,history可能会帮上大忙。

(1)
history 5:此项说明会显示最近使用的5个命令。

(2)
!5:此项说明执行历史编号为5的命令。

(3)
!ls:此项说明执行最后一次以”ls”开头的命令。

TCP/IP基础


——tcp/ip的由来

概述:Linux/unix的世界就是网络的世界。而网络的基础就是tcp/ip,所以一个优秀的Linux/Unix程序员必须了解并掌握tcp/ip。12

在某种意义上,Unix网络就是TCP/IP,而且TCP/IP就是网络互联的标准。它不是一个独立的协议,而是一组协议(tcp,ip,udp,arp,rarp等协议)。

《TCP/IP详解》卷一_协议;卷二_实现;卷三_TCP事务协议(HTTP、NNTP和UNIX域协议)

思想的萨芬

士大夫
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: