Linux基础

学习目标

1、了解Linux的简介与安装

2、掌握Linux常用的命令

3、掌握Linux系统上JDK、Mysql、Tomcat的安装

一、Linux的简介

1.Linux的概述

Linux是基于Unix的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。Linux是由Linus Torvalds(林纳斯·托瓦兹)起初开发的,由于源代码的开放性,现在已经衍生出了千上百种不同的Linux系统。

Linux系统的应用非常广泛,不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,比如手机、平板电脑、路由器等。尤其在这里提及一下,我们熟知是Android程序最底层就是运行在linux系统上的。

 

图1 林纳斯·托瓦兹                                          图2 linux的logo

2.Linux的分类

(1)Linux根据市场需求不同,基本分为两个方向:

1)图形化界面版:注重用户体验,类似window操作系统,但目前成熟度不够

2)服务器版:没有好看的界面,是以在控制台窗口中输入命令操作系统的,类似         于DOS,是我们假设服务器的最佳选择

(2)Linux根据原生程度,又分为两种:

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

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

(3)Linux发行版本不同,又可以分为n多种:

比较好的有ubuntu、centos(在redhat的基础上开发的)和redhat(收费)

今天我们使用centos。

想学习linux下面推荐几本书:(主攻服务端,又会前端和运维是很受欢迎滴!!)

二、Linux的安装

1.虚拟机的安装

因为Linux也是一个系统,本质上跟我们电脑的Window没有区别,所以我们要学习Linux就首先将我们电脑的Window系统换成Linux系统,或者在我们电脑上安装双系统,听上去是不是很可怕。其实我们可以在我们电脑上安装一个软件,这个软件可以模拟一台或多台虚拟的电脑机器,这就是虚拟机

虚拟器常用的有两种:

VMware(威睿)公司的虚拟机软件,功能强大,收费产品

VitrualBox 虚拟机软件  Oracle公司的虚拟机软件,免费商品

由于市场上VMware使用率很高,所以我们安装VMware 《VMware安装手册》

2.CentOS的安装

CentOS是一个Linux的发行版本,是目前企业中用来做应用服务器系统的主要版本,CentOS的安装,其实是将该系统安装到VMware虚拟机软件中,让VMware虚拟机软件模拟出一台Linux系统的电脑。CentOS6.5安装请见《CentOS安装手册》

三、Linux的基本命令

服务器版的Linux安装完毕了,但没有图形化界面,我们只能通过控制台去操作系统,我们就要使用类似DOS命令的Linux命令去操作系统,那么下面我们就进行Linux的命令的学习。Linux命令成百上千,课程不能一一涉及,也没有必要一一涉及,根据我们程序员在日常工作中的需求,总结出如下几种供学习。

1.目录切换命令

window中通过图形化界面和鼠标可以任意切换需要进入的目录,但Linux必须通过cd命令切换目录。但在学习cd命令之前,我们有必要分清Linux的目录结构(linux目录结构详细说明

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

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

cd /           切换到系统根目录

cd ~          切换到用户主目录

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

2.目录的操作命令(增删改查)

(1)增加目录操作(增)

命令:mkdir 目录名称

示例:在根目录 / 下 mkdir test,就会在根目录 / 下产生一个test问目录

(2)查看目录(查)

命令:ls [-al] 父目录

示例:在根目录 / 下使用ls,可以看到该目录下的所有的目录和文件

示例:在根目录 / 下使用ls -a,可以看到该目录下的所有文件和目录,包括隐藏的

示例:在根目录 / 下使用ls -l,可以看到该目录下的所有目录和文件的详细信息

注意:ls -l 可以缩写成ll

(3)寻找目录(查)

命令:find 目录 参数

示例:查找/root下的与test相关的目录(文件)  find
/root -name ‘test*’

(4)修改目录的名称(改)

命令:mv 目录名称 新目录名称

示例:test目录下有一个oldTest目录,使用mv oldTest newTest命令修改

注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作

(5)移动目录的位置---剪切(改)

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

示例:在test下将newTest目录剪切到
/usr下面,使用mv newTest /usr

注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作

(6)拷贝目录(改)

命令:cp -r 目录名称 目录拷贝的目标位置 -----r代表递归拷贝

示例:将/usr下的newTest拷贝到根目录下的test中,使用cp -r /usr/newTest /test

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

(7)删除目录(删)

命令:rm [-rf] 目录

示例:删除/usr下的newTest,进入/usr下使用rm -r newTest

示例:删除/test下的newTest而不需要询问强制删除,在/test下使用rm -rf newTest

注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了增强大家的记忆,   无论删除任何目录或文件,都直接使用rm
-rf 目录/文件/压缩包

3.文件的操作命令(增删改查)

(1)文件的创建(增)

命令:touch 文件名称 
----- 空文件

示例:在test目录下创建一个空文件 touch aaa.txt

(2)文件的查看(查)

命令:cat/more/less/tail 文件

示例:使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容

示例:使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行,    空格可以向下一页,q可以退出查看

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

示例:使用tail -10 查看/etc/sudo.conf文件的后10行,Ctrl+C结束

注意:命令 tail -f 文件 可以对某个文件进行动态监控,例如tomcat的日志文件,   会随着程序的运行,日志会变化,可以使用tail -f catalina-2016-11-11.log 监控 文  件的变化

(3)修改文件的内容(改)

命令:vim 文件

示例:编辑/test下的aaa.txt文件,使用vim
aaa.txt

但此时并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式,可以   编辑文件

编辑完成后,按下Esc,退回命令模式

此时文件虽然已经编辑完成,但是没有保存,需输入冒号:进入底行模式,在底行模     式下输入wq代表写入内容并退出,即保存;输入q!代表强制退出不保存。

总结:

vim编辑器是Linux中的强大组件,是vi编辑器的加强版,vim编辑器的命令和快捷方式有很多,但此处不一一阐述,大家也无需研究的很透彻,使用vim编辑修改文件的方式基本会使用就可以了。附:《vi使用方法介绍》《vim命令合集》

关于vim使用过程:

在实际开发中,使用vim编辑器主要作用就是修改配置文件

vim 文件------>进入文件----->命令模式------>按i进入编辑模式----->编辑文件     ------->按Esc进入底行模式----->输入:wq/q!

(4)删除文件(删)

同目录删除:熟记 rm -rf 文件 即可

4.压缩文件的操作命令

(1)打包并压缩文件

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。

而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。

命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件

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

c:打包文件

v:显示运行过程

f:指定文件名

示例:打包并压缩/test下的所有文件 压缩后的压缩包指定名称为xxx.tar.gz

tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt

或:tar -zcvf xxx.tar.gz /test/*

(2)解压压缩包(重点)

命令:tar [-xvf] 压缩文件

其中:x:代表解压

示例:将/test下的xxx.tar.gz解压到当前目录下

tar -xvf xxx.tar.gz

示例:将/test下的xxx.tar.gz解压到根目录/usr下

tar -xvf xxx.tar.gz -C /usr------C代表指定解压的位置

5.其他命令

(1)显示当前所在位置

pwd

(2)搜索命令

命令:grep 要搜索的字符串 要搜索的文件

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

示例:搜索/usr/sudu.conf文件中包含字符串to的行 to要高亮显示

(3)管道命令

命令:|   将前一个命令的输出作为本次目录的输入

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

(4)查看进程

命令:ps -ef

示例:查看当前系统中运行的进程

(5)杀死进程

命令:kill -9 进程的pid

(6)网络通信命令

查看当前系统的网卡信息:ifconfig

查看与某台机器的连接情况:ping

查看当前系统的端口使用:netstat -an

6.Linux的权限命令

权限是Linux中的重要概念,每个文件/目录等都具有权限,通过ls -l命令我们可以 查看某个目录下的文件或目录的权限

示例:在随意某个目录下ls -l

第一列的内容的信息解释如下:

文件的类型:

d:代表目录

-:代表文件

l:代表链接(可以认为是window中的快捷方式)

后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的     用户的权限,其他用户的权限

r:代表权限是可读,r也可以用数字4表示

w:代表权限是可写,w也可以用数字2表示

x:代表权限是可执行,x也可以用数字1表示

属主(user

属组(group

其他用户

r

w

x

r

w

x

r

w

x

4

2

1

4

2

1

4

2

1

修改文件/目录的权限的命令:chmod

示例:修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,

其他用户只有读的权限

chmod u=rwx,g=rw,o=r aaa.txt

上述示例还可以使用数字表示:

chmod 764 aaa.txt

四、远程连接工具的使用

实际开发中,Linux服务器都在其他的地方,我们要通过远程的方式去连接Linux并操作它,Linux远程的操作工具有很多,企业中常用的有Puttty、secureCRT、SSH Secure等。课程中我们使用SSH Secure工具进行远程连接,该工具是免费的图形化界面及命令行窗口集一身的远程工具。安装包如下:

安装后,会出现两个图标:

点击图形化界面图标:

进入界面:

关于远程工具乱码的解决:

使用远程工具进行连接时,如果linux有中文文件或目录,显示时会出现乱码,原因是linux编码是UTF-8,而远程工具默认是当前系统本地编码即GBK。所以解决方案是统一两者编码就OK了,但是该SSH Secure工具不能设置编码,所以通过修改linux的系统编码的方式进行统一编码。

在linux的/etc/sysconfig目录下有一个i18n的文件代表linux的系统编码

将其从UTF-8修改成GBK重现连接linux即可:

五、Linux的软件安装

1.JDK安装

注意:rpm与软件相关命令 相当于window下的软件助手 管理软件

步骤:

1)查看当前Linux系统是否已经安装java

输入 rpm -qa | grep java

2)卸载两个openJDK

输入rpm -e --nodeps 要卸载的软件

3)上传jdk到linux

4)安装jdk运行需要的插件yum install glibc.i686(选做)

5)解压jdk到/usr/local下 tar –xvf jdk-7u71-linux-i586.tar.gz –C /usr/local

6)配置jdk环境变量,打开/etc/profile配置文件,将下面配置拷贝进去

#set java environment

JAVA_HOME=/usr/local/jdk1.7.0_71

CLASSPATH=.:$JAVA_HOME/lib.tools.jar

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME CLASSPATH PATH

7)重新加载/etc/profile配置文件
source /etc/profile

2.Mysql安装

步骤:

1)查看CentOS自带的mysql

输入 rpm -qa | grep mysql

2)将自带的mysql卸载

3)上传Mysql到linux

4)安装mysql的依赖(选做)

yum -y install
libaio.so.1 libgcc_s.so.1 libstdc++.so.6

yum  update libstdc++-4.4.7-4.el6.x86_64

5)解压Mysql到/usr/local/下的mysql目录(mysql目录需要手动创建)内

cd /usr/local

mkdir mysql

tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql

6)在/usr/local/mysql下安装mysql

安装服务器端:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm

安装客户端:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm

7)启动mysql

service mysql start

8)将mysql加到系统服务中并设置开机启动

加入到系统服务:chkconfig --add mysql

自动启动:chkconfig mysql on

9)登录mysql

mysql安装好后会生成一个临时随机密码,存储位置在/root/.mysql_secret

msyql –u root -p

10)修改mysql的密码

set password = password('root');

11)开启mysql的远程登录

默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启     远程登录mysql的权限

登录mysql后输入如下命令:

grant all privileges on *.* to 'root' @'%'
identified by 'root';

flush privileges;

12)开放Linux的对外访问的端口3306

/sbin/iptables
-I INPUT -p tcp --dport 3306 -j ACCEPT

/etc/rc.d/init.d/iptables save ---将修改永久保存到防火墙中

3.Tomcat安装

步骤:

1)上传Tomcat到linux上

2)解压Tomcat到/usr/local下

3)开放Linux的对外访问的端口8080

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

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

4)启动关闭Tomcat

进入tomcat的bin下启动:./startup.sh

进入tomcat的bin下关闭:./shutdown.sh

六、网络配置

1.VIM命令配置

2.setup设置

【JAVAWEB学习笔记】26_Linux基础:简介安装、常用命令和JDK、Mysql、Tomcat的安装的更多相关文章

  1. Linux 下安装 java 环境(jdk + mysql + tomcat)

    Linux选用的是 centOS 6.8 64位 ,最先要将 centOS 中自带的 jdk 和 myqsql 卸载掉. 首先安装 了 SSH,通过 SSH 将 jdk,mysql,tomcat 的压 ...

  2. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

  3. Linux学习笔记(一):常用命令(1)

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

  4. Linux学习笔记(5)Linux常用命令之文件搜索命令

    (1)find find命令用于文件搜索,所在路径/bin/find,其语法格式为: find [搜索范围] [匹配条件] 1)-name:根据文件名搜索,如搜索/etc下的init文件 [root@ ...

  5. Linux学习笔记(二)Linux常用命令:权限、目录操作以及常见目录作用

    一.Linux命令格式 命令 [选项] [参数] 注:(1)简化选项和完整选项 -a --all (2)当有多个选项是可以写在一起 -l -a 可以写为-la 二.权限 -rw-r--r--.&quo ...

  6. Linux学习笔记 - Linux快捷操作及常用命令

    一.快捷键 剪切光标前的内容 Ctrl + u 剪切光标至行末的内容 Ctrl + k 粘贴 Ctrl + u 或 Ctrl +k 的内容 Ctrl + y 移动光标到行末 Ctrl + e 移动光标 ...

  7. JavaWeb学习笔记——jsp基础语法

    1.JSP注释 显式注释 <!-- 注释内容 --> 隐式注释,隐式注释在客户端无法看见 // /* */ <% 注释内容 %> 2.Scriptlet(小脚本程序) 所有嵌入 ...

  8. JavaWeb学习笔记——JavaEE基础知识

  9. docker学习笔记(2)——docker常用命令

    参考博客: 1.官网教程:https://docs.docker.com/reference/ 可以一边敲命令一边对照官网学习,也可以通过阅读docker --help来学习 2..视频教程:http ...

  10. Linux学习笔记(一):常用命令(2)

    3.帮助命令 A,帮助命令:man    B,其他帮助命令 3.1,格式:man [命令名] 查看命令拥有哪个级别的帮助:                                       ...

随机推荐

  1. VC6完整项目代码升级到VS2010

    VC6完整项目代码升级到VS2010,有需要请联系我,专业C++开发,邮箱153786575@qq.com

  2. CF745 D 交互题 思维 二进制分解

    现有一矩阵你可以做出不超过20个询问 每个询问 要求输入列号,可以询问矩阵上每行上你给的列之中的最小值让你最后输出该矩阵每行的不包括对角线位置上的最小值考虑询问如何分组,考虑二分,以二进制位来分组 那 ...

  3. Python学习笔记(八)sorted

    摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431823058 ...

  4. 【洛谷】3375 KMP字符串匹配

    [算法]KMP [题解][算法]字符串 #include<cstdio> #include<algorithm> #include<cstring> using n ...

  5. SDUT 3928

    Description C~K 和 PBH 经常玩一个游戏.游戏规则如下:现给定一个 n*n 的棋盘,一个石头被放在棋盘的左上角. 他们轮流移动石头.每一回合,两个人只能把石头向上,下,左,右四个方向 ...

  6. Android 搭建Linux系统

    本文精心从网上搜罗出相关资料并整理,含有大量外部链接 安卓手机上安装linux大致分为两种方案 一.使用Linux Deploy 二.使用 Linux on Android 本文对Linux Depl ...

  7. 黑色的cms商城网站后台管理模板——后台

    链接:http://pan.baidu.com/s/1hst6Lbm 密码:9ad7

  8. Linux下帮助命令

    帮助命令(各种命令区别)   最常用的帮助命令   help --help help cd 查看内置命令的使用 info man   help cd 查看内置命令的使用   获得帮助的途径:   ma ...

  9. PyCharm 自定义文件和代码模板

    PyCharm提供了文件和代码模板功能,可以利用此模板来快捷新建代码或文件.比如在PyCharm中新建一个html文件,新的文件并不是空的,而是会自动填充了一些基础的必备的内容,就像这样: <! ...

  10. ERROR in vc 6.0 (LINK : fatal error LNK1561: entry point must be defined)

    导致错误 LINK : fatal error LNK1561: entry point must be defined 的原因有很多种, 网上可以搜到很多, 一般是函数入口没定义, 或者修改为/su ...