1. Linux简介

    1. Linux的概述

林纳斯·托瓦兹                                  linux

  1. 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. Linux的主要特征

    1. 基本思想

Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。

  1. 完全免费

Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。

  1. 多用户、多任务

Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。

  1. 支持多种平台

Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel 64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。

  1. Linux的分类

    1. 根据原生程度来划分

Linux系统根据其原生程度不同分为,内核版本和发行版本。

1)内核版本:在Linus领导下的内核小组开发维护的系统内核的版本号

2)发行版本:一些组织或公司在内核版基础上进行二次开发而重新发行的版本

  1. 根据发行版本分支来划分

Linux的发行版本众多,一些组织或公司为许多不同的目的而制作, 包括对不同计算机结构的支持, 对一个具体区域或语言的本地化,实时应用,和嵌入式系统,甚至许多版本故意地只加入免费软件。已经有超过三百个发行版被积极的开发,最普遍被使用的发行版有大约十二个。

在这些发行版中主要可以分为两个系列:Redhat系列和Debian系列。

  1. Linux的安装

    1. 虚拟机的安装

Linux是操作系统,它和我们使用的windows系统一样需要安装在一台电脑上进行使用,我们可以在一台真实的物理主机上安装Linux并进行使用,但是我们在学习时可以使用一种虚拟机软件,在我们现有的电脑上模拟一台虚拟的计算机,来方便地进行Linux的安装和学习。

目前市面上比较常见的虚拟机软件有两种:一种是VMware(威睿)公司的虚拟机软件(VMware workstation),功能强大,收费产品,另一种是Oracle公司的虚拟机软件(VitrualBox),免费商品。

由于市场上VMware使用率很高,所以我们安装VMware workstation,具体的安装步骤和流程参照《VMware-workstation安装手册》。

  1. 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: 放置系统执行过程中经常变化的文件

  1. 使用远程工具连接CentOS

实际开发中,Linux服务器都在其他的地方,我们要通过远程的方式去连接Linux并操作它,Linux远程的操作工具有很多,企业中常用的有Puttty、secureCRT、SSH Secure等。

这里我们使用secureCRT来连接CentOS,secureCRT工具已经下载好位于资料的软件包中。具体工具的使用参照《CRT工具连接Linux操作手册》。

  1. Linux的基本命令

Linux系统安装完成,但是我们没有安装图形界面程序,所以只能通过命令的方式进行操作和使用,在实际生产环境中,也很少会为Linux安装图形界面程序。Linux的命令很多,不能一一讲解,我们将从以下几个方面来进行学习。

  1. 目录的切换命令

在图形化界面的操作系统中,文件目录的切换可以使用鼠标点击来进行选择和切换,但是在Linux操作系统中,需要通过cd命令来进行切换。

pwd      查看当前路径

cd usr 切换到该目录下usr目录

cd ../ 切换到上一层目录

cd / 切换到系统根目录

cd ~ 切换到用户主目录

cd - 切换到上一个所在目录

  1. 目录的操作命令

    1. 创建目录

创建目录使用mkdir命令,语法:mkdir 文件名称

实例:在根目录下创建test目录。

  1. 查看目录

查看目录使用ls [-a|-l]命令,语法:ls 路径

实例:查看根路径下的文件

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

实例:查看根路径下的所有文件。

以上以.开头的文件就是Linux系统中的隐藏文件。

使用ls命令可以看到文件以及文件目录的名称,但是如果需要查看文件以及目录的详细信息,我们就需要加上-l参数。

实例:查看根路径下的文件以及路径的详细信息。

加上-l参数后,我们看到了文件对应的详细信息,ls –l也可以直接使用ll命令。

实例:使用ll查看根路径下的所有文件以及目录的详细信息。

  1. 修改目录名称

修改目录使用mv命令,语法:mv 目录名称 新目录名称。

实例:修改根路径下的test目录名称为newTest。

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

实例:使用mv修改文件的名称。

  1. 移动(剪切)目录

使用mv命令对文件或者目录进行重命名时,如果源文件和重命名后的文件不在同一个目录下,则实际上是对文件或者目录的移动或者剪切操作。

命令:mv目录名称 目录的新位置

实例:讲根路径下的newTest目录剪切到用户home目录下。

需要注意的是,mv不仅可以剪切目录,也可以剪切文件。

实例:将根路径下的123.txt剪切到用户home目录下。

  1. 拷贝目录

要拷贝一个目录需要使用cp命令,语法:cp -r 目录名称 拷贝的目标位置。

实例:将用户目录下的newTest拷贝到系统根路径下。

需要注意的是,cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归。

  1. 删除目录

删除目录使用rm命令,删除目录时需要加上-r参数,语法:rm [-rf] 目录名称。

实例:删除用户目录下的newTest目录。

我们发现在进行删除操作时,需要用户手动进行确认,如果不希望系统给出提示,可以加上-rf参数。

实例:强制删除根路径下的newTest目录。

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

实例:删除用户目录下的123.txt文件

  1. 文件的操作命令

    1. 文件的创建

文件的创建可以使用touch命令,语法:touch 文件名。

实例:在用户目录下创建test.txt文件。

  1. 文件的查看

在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行。

  1. 文件内容的修改

在Linux操作系统中药修改文件的内容,可以使用系统自带的vi编辑器,也可以安装其他的文本编辑工具,这里我们使用最基本的vi编辑器进行文件内容的编辑。

Vi编辑器的详细使用参照《vi使用方法手册》,我们演示其基本的操作。

实例:使用vi打开用户目录下的test.txt文件

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

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

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

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

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

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

需要注意的是,如果在修改文件后,不希望保存,而直接退出的话,可以在命令模式下输入:q!表示强制退出。

  1. 压缩和解压缩文件的操作

    1. 打包并压缩文件

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。

进行文件的打包压缩使用命令tar,该命令可以添加的参数有一下几个:

z:调用gzip压缩命令进行压缩

c:打包文件

v:显示运行过程

f:指定文件名

实例:将用户目录下的tar目录中的aaa.txt,bbb.txt和ccc.txt进行打包和压缩。

  1. 解压缩文件

解压缩文件依然使用tar命令,只是不再进行打包,而是进行解压操作,语法:tar –xvf 压缩文件名称

实例:将用户目录的tar目录中的files.tar.gz文件进行解压。

  1. 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来实现。

  1. Linux的其他命令

    1. 查看网络信息

在Linux中要查看网络信息,可以使用ifconfig命令。

实例:查看Linux网络信息。

  1. 搜索命令

在Linux中药进行搜索操作可以使用grep命令来完成,语法:grep 要搜索的字符串 要搜索的文件。

实例:搜索/usr/sudu.conf文件中包含字符串to的行。

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

  1. 查看进行命令

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

实例:查看当前系统中运行的进程信息

  1. 管道命令

管道命令可以将前一个命令的输出作为本次目录的输入来使用。

实例:查看当前系统中所有的进程中包括system字符串的进程

  1. 杀死进程

在Linux中要杀死进程可以通过进程号来杀死进程,语法:kill -9 进程号

实例:杀死系统进程中的iptable进程

如果要根据进程的名称杀掉进程,可以使用pkill -9 进程名称

实例:杀掉进程

  1. Linux中软件的安装

    1. JDK的安装

CentOS中JDK的安装方式有很多种,这里我们使用已经下载的jdk来进行安装。我们安装的版本为:jdk-7u71-linux-x64.tar.gz。

要进行软件的安装首先需要上传软件包,我们使用lrzsz工具来进行上传。需要我们的机器首先已经安装了该工具,如果没有安装,可以使用yum源来进行安装,命令为yum install lrzsz。

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

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

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

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

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

  1. Mysql的安装

注意:安装mysql时先处理以下

1. 查询是否安mysql ; rpm -qa | grep mysql

2. 删除mysql ; yum remove mysql mysql-server mysql-libs compat-mysql51

; rm -rf /var/lib/mysql ;rm –rf /etc/my.cnf

3. 加载依赖  yum install libaio yum install perl

4. 安装mysql ;rpm -ivh Mysql-server .....;  rpm -ivh Mysql-client .....

yum remove mysql mysql-server mysql-libs compat-mysql51

rm -rf /var/lib/mysql

rm -rf /etc/my.cnf

yum install libaio

yum install perl

rpm -ivh Mysql-server .....

rpm -ivh Mysql-client .....

Mysql是实际开发中经常使用的数据库产品,接下来我们需要安装Mysql数据库。在我们安装的CentOS系统中已经默认安装了一个Mysql数据库了,我们需要首先将默认的Mysql卸载,然后重新安装。

查看当前系统中是否已经安装了mysql使用命令:rpm -qa | grep mysql。

以上就是系统中默认安装的Mysql数据库,我们要先将其卸载。使用命令:<rpm -e --nodeps mysql-libs-5.1.71-1.el6.i686。过时用后面一个命令删除>;;;;yum remove mysql mysql-server mysql-libs compat-mysql51

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

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

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

首先我们安装服务器,使用命令: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的安装成功完成。

  1. Tomcat的安装

Tomcat服务器是web项目开发和部署中经常使用的服务器,它的安装比较容易,首先还是要上传软件压缩包。

使用rz命令上传软件到/usr/local目录下。

接下来解压缩tomcat服务器。

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

/sbin/iptables -I INPUT -p tcp –dport 8080 -j ACCEPT

/etc/rc.d/init.d/iptables save

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

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

Linux安装与基本操作命令与JDK的安装,Mysql的安装,Tomcat的安装相关推荐

  1. linux jdk1.7 tomcat mysql_RedHat Linux 下安装JDK 1.7+MySQL 5.0+Tomcat 7.0.27过程

    RedHat Linux 下安装JDK 1.7+MySQL 5.0+Tomcat 7.0.27过程记录: tar -zxvf jdk-7u3-linux-i586.tar.gz /解压gz文件 rpm ...

  2. dpf linux安装db2_值得一看!数据库及Mysql入门,附详细安装教程

    #什么是数据 用来描述事物的符号记录.可以是数字.文字.图形等,有多种形式,经过数字化之后存入计算机 #什么是数据库 数据库(Database)就是一个用来存放数据库的仓库,是按照一定的数据结构来组织 ...

  3. mysql tomocat vs2005_C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装

    要求: JDK.Mysql.Tomcat三者制作成一个安装包, 不能单独安装,安装过程不显示三者的界面, 安装完成要配置好JDK环境.Mysql服务.Tomcat 服务 目的: 解决客户在安装软件的复 ...

  4. java jdk 环境不一致_jdk(多版本)安装注意!

    4.第二步,开始安装Jdk的运行环境,我将它安装在..../java_jdk1.8/jre8下: 5.安装完JDK后配置环境变量  计算机→属性→高级系统设置→高级→环境变量 系统变量→新建 JAVA ...

  5. centos 6.7 mysql 5.6_CentOS 6.7 安装 MySQL 5.6 思路整理

    源代码及兼容包 源代码包下载:官网 > Downloads > MySQL Community Edition (GPL) > MySQL Community Server (GPL ...

  6. Tomcat下载安装教程

    Tomcat下载安装教程 目录 Tomcat下载安装教程 一.下载地址 ​二.具体的安装步骤如下: 三.其他问题 本文默认已安装并配置好 Java 环境,关于 java 环境的配置可参考: https ...

  7. Tomcat的安装与环境变量配置(图文详解)

    Tomcat的安装与环境变量配置 首先说明一下我的电脑配置: Windows 7 专业版 64位操作系统 安装内存8G 四核处理器 一.Tomcat的下载与安装 1.进入Tomcat官网: https ...

  8. linux java tar 卸载_linux下jdk的卸载与安装

    JDK的卸载 1.检查jdk的是否安装,显示如下表示安装: [root@localhost ~]# rpm -aq|grep java tzdata-java-2010l-1.el6.noarch j ...

  9. linux安装toncat环境变量,linux下JDK,tomcat的安装与环境变量配置

    先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,下载后放在/home目录中,当然其它地方也行. 进入安装目录 #cd /home #cp jdk-1_5_0_02-li ...

最新文章

  1. 1-jQuery - AJAX load() 方法【基础篇】
  2. 武大计算机几天出录取结果,录取大概要几天 多久录取结果出来
  3. swagger默认访问路径_swagger 如何配置项目访问路径
  4. iPhone 11办理联通5G套餐后,上网速度变快?网友:发广告翻车了?
  5. 使用TypeScript正确键入Vuex
  6. Ubuntu 16.04 利用Sakurafrp工具管理多节点多隧道ID 实现 ssh 内网穿透
  7. C++实现Rhino中画准均匀B样条曲线功能
  8. 计算机word基本知识配图,用Word 2016快速制作思维导图
  9. 瑞安java,​温州瑞安JAVA 培训班
  10. 使用urjtag了解WRV54G
  11. kanzi学习第二天-----创建一个状态机
  12. Navicat Premium 用于增强您的数据库管理系统
  13. Scratch编程-画图模块13【寿光市青少年创意编程大赛真题】
  14. 决策树及输出结果解释
  15. Inline Hook 钩子编写技巧
  16. map什么意思java_map的意思是什么,java中Maplt;?,?gt;是什么意思
  17. Python 爬取周杰伦歌曲信息,爬取豆瓣top250的电影,并保存至excel中
  18. 企业微信_H5应用如何真机调试_host配置及代理相关
  19. Scrapy通用爬虫
  20. html+css+js+Hbuilder开发一款安卓APP,根本不用学Android开发!

热门文章

  1. 三个版本Eclipse区别
  2. react与微信小程序
  3. 事务是什么?事务的4个特点(ACID),事务的开启与结束
  4. Java常用api和操作必背
  5. splay详解(三)
  6. 百度前端技术学院-task1.8源代码
  7. VS2013搭建wxWidgets开发环境
  8. 关于如何在Android、Java等非微软平台上建立高信任的SharePoint应用程序
  9. H - A Shooting Game
  10. sql server 2005 几个常用的存储过程或函数