Linux基础,命令的使用以及环境的安装,jdk,mysql,tomcat

                                                                                          Linux基础


1. Linux简介
1.1 Linux的概述

林纳斯·托瓦兹 linux
1.2 Linux的发展史
Linux 操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU计划、POSIX 标准和Internet 网络。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。1991 年4 月13 日发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell软件了。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生(Freeminix-like kernel sources for 386-AT)。
1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。
1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。
1998年2月,以Eric Raymond为首的一批年轻的"老牛羚骨干分子"终于认识到GNU/Linux体系的产业化道路的本质,并非是什么自由哲学,而是市场竞争的驱动,创办了"Open Source Intiative"(开放源代码促进会)"复兴"的大旗,在互联网世界里展开了一场历史性的Linux产业化运动。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。
1.3 Linux的主要特征
1.3.1 基本思想
Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。
1.3.2 完全免费
Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。
1.3.3 多用户、多任务
Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。
1.3.4 支持多种平台
Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel 64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。
1.4 Linux的分类
1.4.1 根据原生程度来划分
Linux系统根据其原生程度不同分为,内核版本和发行版本。
1)内核版本:在Linus领导下的内核小组开发维护的系统内核的版本号
2)发行版本:一些组织或公司在内核版基础上进行二次开发而重新发行的版本
1.4.2 根据发行版本分支来划分
Linux的发行版本众多,一些组织或公司为许多不同的目的而制作, 包括对不同计算机结构的支持, 对一个具体区域或语言的本地化,实时应用,和嵌入式系统,甚至许多版本故意地只加入免费软件。已经有超过三百个发行版被积极的开发,最普遍被使用的发行版有大约十二个。
在这些发行版中主要可以分为两个系列:Redhat系列和Debian系列。


2. Linux的安装
2.1 虚拟机的安装
Linux是操作系统,它和我们使用的windows系统一样需要安装在一台电脑上进行使用,我们可以在一台真实的物理主机上安装Linux并进行使用,但是我们在学习时可以使用一种虚拟机软件,在我们现有的电脑上模拟一台虚拟的计算机,来方便地进行Linux的安装和学习。
目前市面上比较常见的虚拟机软件有两种:一种是VMware(威睿)公司的虚拟机软件(VMware workstation),功能强大,收费产品,另一种是Oracle公司的虚拟机软件(VitrualBox),免费商品。


由于市场上VMware使用率很高,所以我们安装VMware workstation,具体的安装步骤和流程参照《VMware-workstation安装手册》。
2.2 CentOS操作系统的安装
CentOS是一个Linux的发行版本,是目前企业中用来做应用服务器系统的主要版本,由社区支持的包,旨在100%地与Red Hat Linux企业版兼容。CentOS的安装,其实是将该系统安装到VMware虚拟机软件中,让VMware虚拟机软件模拟出一台Linux系统的电脑。我们选择的CentOS的版本为CentOS6.5,系统的安装步骤和流程参照《CentOS操作系统的安装手册》。
CentOS安装完成后,我们可以发现CentOS的文件目录结构如下,我们需要对CentOS的各个目录有一些了解。


/: 根目录
/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot: 放置linux系统启动时用到的一些文件。
/dev: 存放linux系统下的设备文件
/etc: 系统配置文件存放的目录
/home: 系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录
/lib: 系统使用的函数库的目录
/opt: 给主机额外安装软件所摆放的目录
/root: 系统管理员root的家目录
/tmp: 一般用户或正在执行的程序临时存放文件的目录
/usr: 应用程序存放目录
/var: 放置系统执行过程中经常变化的文件
2.3 使用远程工具连接CentOS
实际开发中,Linux服务器都在其他的地方,我们要通过远程的方式去连接Linux并操作它,Linux远程的操作工具有很多,企业中常用的有Puttty、secureCRT、SSH Secure等。
这里我们使用secureCRT来连接CentOS,secureCRT工具已经下载好位于资料的软件包中。具体工具的使用参照《CRT工具连接Linux操作手册》。


3. Linux的基本命令
Linux系统安装完成,但是我们没有安装图形界面程序,所以只能通过命令的方式进行操作和使用,在实际生产环境中,也很少会为Linux安装图形界面程序。Linux的命令很多,不能一一讲解,我们将从以下几个方面来进行学习。
3.1 目录的切换命令
在图形化界面的操作系统中,文件目录的切换可以使用鼠标点击来进行选择和切换,但是在Linux操作系统中,需要通过cd命令来进行切换。
pwd 查看当前路径
cd usr 切换到该目录下usr目录
cd ../ 切换到上一层目录
cd / 切换到系统根目录
cd ~ 切换到用户主目录
cd - 切换到上一个所在目录
3.2 目录的操作命令
3.2.1 创建目录
创建目录使用mkdir命令,语法:mkdir 文件名称
实例:在根目录下创建test目录。


3.2.2 查看目录
查看目录使用ls [-a|-l]命令,语法:ls 路径
实例:查看根路径下的文件


Ls命令能够查看指定路径下的非隐藏文件,如果要查看隐藏文件在内的所有文件可以添加一个参数-a。
实例:查看根路径下的所有文件。

以上以.开头的文件就是Linux系统中的隐藏文件。
使用ls命令可以看到文件以及文件目录的名称,但是如果需要查看文件以及目录的详细信息,我们就需要加上-l参数。
实例:查看根路径下的文件以及路径的详细信息。


加上-l参数后,我们看到了文件对应的详细信息,ls –l也可以直接使用ll命令。
实例:使用ll查看根路径下的所有文件以及目录的详细信息。


3.2.3 修改目录名称
修改目录使用mv命令,语法:mv 目录名称 新目录名称。
实例:修改根路径下的test目录名称为newTest。


需要注意的是,mv命令不仅可以修改文件目录的名称,也可以用来修改文件的名称。
实例:使用mv修改文件的名称。


3.2.4 移动(剪切)目录
使用mv命令对文件或者目录进行重命名时,如果源文件和重命名后的文件不在同一个目录下,则实际上是对文件或者目录的移动或者剪切操作。
命令:mv目录名称 目录的新位置
实例:讲根路径下的newTest目录剪切到用户home目录下。


需要注意的是,mv不仅可以剪切目录,也可以剪切文件。
实例:将根路径下的123.txt剪切到用户home目录下。


3.2.5 拷贝目录
要拷贝一个目录需要使用cp命令,语法:cp -r 目录名称 拷贝的目标位置。
实例:将用户目录下的newTest拷贝到系统根路径下。


需要注意的是,cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归。
3.2.6 删除目录
删除目录使用rm命令,删除目录时需要加上-r参数,语法:rm [-rf] 目录名称。
实例:删除用户目录下的newTest目录。


我们发现在进行删除操作时,需要用户手动进行确认,如果不希望系统给出提示,可以加上-rf参数。
实例:强制删除根路径下的newTest目录。


rm命令不仅可以删除目录,同时也可以删除文件,为了方便记忆,我们在进行删除操作时,默认加上-rf参数即可。
实例:删除用户目录下的123.txt文件


3.3 文件的操作命令
3.3.1 文件的创建
文件的创建可以使用touch命令,语法:touch 文件名。
实例:在用户目录下创建test.txt文件。


3.3.2 文件的查看
在Linux系统中查看文件可以使用cat,more,less.tail命令。
实例:使用cat查看etc下的sudo.conf文件


通过以上的实例发现cat命令默认是现实文件的最后一屏的内容。
实例:使用more查看/etc/sudo.conf文件,,可以显示百分比,回车可以向下一行, 空格可以向下一页,q可以退出查看。


实例:使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看。


示例:使用tail -10 查看/etc/sudo.conf文件的后10行。


3.3.3 文件内容的修改
在Linux操作系统中药修改文件的内容,可以使用系统自带的vi编辑器,也可以安装其他的文本编辑工具,这里我们使用最基本的vi编辑器进行文件内容的编辑。
Vi编辑器的详细使用参照《vi使用方法手册》,我们演示其基本的操作。
实例:使用vi打开用户目录下的test.txt文件


输入命令后出现文本的内容,因为这是新建的文件,所以内容为空白。


直接打开文件后出于命令模式,是无法对内容进行编辑的,如果要进行内容编辑需要切换到编辑模式下,只需要按一下i键即可。


进入编辑模式后就可以编辑文件的内容了。


编辑内容完成以后,需要将修改后的文件保存,此时需要首先切换到命令模式下进行命令操作,需要按下键盘的esc键,退出编辑模式进入命令模式。


在命令模式下,输入:wq,w表示保存,q表示退出,结束对文件的编辑。


此时文件内容的修改成功,我们可以查看一下当前的文件。


需要注意的是,如果在修改文件后,不希望保存,而直接退出的话,可以在命令模式下输入:q!表示强制退出。
3.4 压缩和解压缩文件的操作
3.4.1 打包并压缩文件
Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
进行文件的打包压缩使用命令tar,该命令可以添加的参数有一下几个:
z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
实例:将用户目录下的tar目录中的aaa.txt,bbb.txt和ccc.txt进行打包和压缩。


3.4.2 解压缩文件
解压缩文件依然使用tar命令,只是不再进行打包,而是进行解压操作,语法:tar –xvf 压缩文件名称
实例:将用户目录的tar目录中的files.tar.gz文件进行解压。


3.5 Linux的权限命令
权限是Linux中的重要概念,每个文件/目录等都具有权限,通过ls –l(ll)命令我们可以查看某个目录下的文件或目录的权限。
实例:查看用户目录下的文件权限


第一列的信息就是文件对应的权限,其意义如下。


文件的类型:
d:代表目录
-:代表文件
l:代表链接(类似于window中的快捷方式)
后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的用户的权限,其他用户的权限。
r:代表权限是可读,r也可以用数字4表示
w:代表权限是可写,w也可以用数字2表示
x:代表权限是可执行,x也可以用数字1表示
修改文件/目录的权限的命令:chmod命令
实例:修改用户目录下的test.txt的权限为属主有全部权限,属主所在的组
有读写权限,其他用户只有读的权限。


需要注意的是,对于文件权限的修改也可以通过对应的数值来完成,以上的操作也可以通过chmod 764 test.txt来实现。
3.6 Linux的其他命令
3.6.1 查看网络信息
在Linux中要查看网络信息,可以使用ifconfig命令。
实例:查看Linux网络信息。


3.6.2 搜索命令
在Linux中药进行搜索操作可以使用grep命令来完成,语法:grep 要搜索的字符串 要搜索的文件。
实例:搜索/usr/sudu.conf文件中包含字符串to的行。


如果需要加上颜色标记,可以添加—color参数。


3.6.3 查看进行命令
查看系统进程使用ps –ef命令。


实例:查看当前系统中运行的进程信息
3.6.4 管道命令
管道命令可以将前一个命令的输出作为本次目录的输入来使用。
实例:查看当前系统中所有的进程中包括system字符串的进程


3.6.5 杀死进程
在Linux中要杀死进程可以通过进程号来杀死进程,语法:kill -9 进程号
实例:杀死系统进程中的iptable进程
如果要根据进程的名称杀掉进程,可以使用pkill -9 进程名称
实例:杀掉进程
4. Linux中软件的安装
4.1 JDK的安装
CentOS中JDK的安装方式有很多种,这里我们使用已经下载的jdk来进行安装。我们安装的版本为:jdk-7u71-linux-x64.tar.gz。
要进行软件的安装首先需要上传软件包,我们使用lrzsz工具来进行上传。需要我们的机器首先已经安装了该工具,如果没有安装,可以使用yum源来进行安装,命令为yum install lrzsz。


安装完成之后可以使用rz命令来上传文件,我们将文件上传到/usr/local目录下,所以先切换到该目录下。


接下来我们使用tar命令解压文件。


解压完成后需要配置Java的环境变量,我们需要修改/etc/profile文件,添加JAVA_HOME变量,同时在path中加上Java的配置。

添加了环境变量之后,还需要使当前的配置文件生效,重新加载/etc/profile配置文件。


接下来测试Java是否已经安装成功,当看到以下信息表上jdk安装成功。


4.2 Mysql的安装
Mysql是实际开发中经常使用的数据库产品,接下来我们需要安装Mysql数据库。在我们安装的CentOS系统中已经默认安装了一个Mysql数据库了,我们需要首先将默认的Mysql卸载,然后重新安装。
查看当前系统中是否已经安装了mysql使用命令:rpm -qa | grep mysql。


以上就是系统中默认安装的Mysql数据库,我们要先将其卸载。使用命令:
rpm -e --nodeps mysql-libs-5.1.71-1.el6.i686。


执行以上命令后系统中的Mysql被删除,接下来需要安装我们自己的Mysql,首先上传我们的Mysql软件包。


上传成功后进行解压到mysql目录中。


进入mysql目录中进行安装操作,我们要安装Mysql的server和client。


在安装前需要安装一些需要的依赖:
yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6
yum update libstdc++-4.4.7-4.el6.x86_64
接下来我们安装服务器,使用命令:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm


Mysql服务器安装完成,接下来安装mysql客户端,使用命令:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm


安装完成后,就可以启动Mysql服务器了,使用命令:service mysql start。


为了方便以后的使用,我们将mysql服务加入到系统服务中,并设置为自动启动。使用命令如下:
加入到系统服务:chkconfig --add mysql
自动启动:chkconfig mysql on


安装Mysql服务器时,系统自动生成了一个登陆密码,我们可以从/root/.mysql_secret中获取。


接下来我们进行登陆操作。


默认生成的密码不便于记忆,因此我们需要修改默认的密码,使用命令:set password = password('root');


默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启 远程登录mysql的权限,使用命令:
grant all privileges on *.* to 'root' @'%' identified by 'root';
flush privileges;
接下来我们需要开放Linux的对外访问的端口3306,并让设置生效。命令如下:
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save


到此Mysql的安装成功完成。
4.3 Tomcat的安装
Tomcat服务器是web项目开发和部署中经常使用的服务器,它的安装比较容易,首先还是要上传软件压缩包。
使用rz命令上传软件到/usr/local目录下。


接下来解压缩tomcat服务器。


Tomcat默认使用的端口为8080端口,因此我们需要设置防火墙开放8080
端口,防火墙的设置前面已经使用过,这里直接设置了。


接下来启动tomcat,我们进入tomcat的bin目录启动服务。


接下来我们远程访问以下Tomcat服务器,此时看到了我们熟悉的Tomcat页面,Tomcat安装完成。

猜你喜欢

转载自blog.csdn.net/qq_15204179/article/details/83987198
今日推荐