zoukankan      html  css  js  c++  java
  • 4.3 Linux操作系统_Unix操作系统

    1. Linux介绍

    1.1 引言

    在学习Linux之前,大家先了解开发环境、生产,测试环境。

    1. 开发环境:平时大家大多是在Windows或者Mac操作系统下去编写代码进行开发,在开发环境中安装大量的软件,这样会导致环境的稳定性和安全性降低。
    2. 生产环境:是将程序运行在此环境中,供用户去使用。这个环境是由专业的人员去维护,一般人是没有权限去操作生产环境的。
    3. 测试环境:一般克隆一份生产环境,会将开发环境中的程序部署到测试环境中,这个环境的主要目的是去程序进程检测,收集程序中的各种问题,并交给开发人员进行修改。

    生产环境,常用的操作系统比如由windows 2003 service,Linux,Unix等等。

    Linux操作系统,在生产环境中占据了大量的市场份额,Linux主要以稳定,可靠,免费的特点称为全球使用最多的服务器操作系统。

    Linux操作系统现在已经成为后台开发人员必备的技能,并且后期学习的各种知识都会涉及到Linux操作系统。

    1.2 Linux介绍

    在Linux操作系统出现之前,还有一个操作系统叫Minux,Minux操作系统是由Andrew的大学教授研发出来的,当时大学教授是为了给学生上课,买了一套Unix操作系统(但是学生不能使用),参考Unix自己写了一个操作系统,并且命名为Minix。同时将Minix开源,供学校内部的研究和教学,到了2000年,Andrew将Minix操作系统完全对外开源。

    Minix由于完全对外开源之后,在互联网上讯息的传播,但是大家在使用时,发展Minux不是非常完美,内部存在各种各种问题。用户将问题解决后,编写了一个补丁,将补丁以右键的方式发给Anfrew,但是Andrew教授最初的目的只是为了教学和研究。

    与此同时,一位芬兰的大学生出现了,叫Linus,在Minix操作系统基础上,自己添加了一些补丁和插件,并将其命名为Linux操作系统,并且完全对外开源,而且开始维护Linux操作系统。

    之前学习的Git也是Linus研发的。

    1.3 Linux的版本

    Linux的版本分为两种,一种是Linus团队正在维护的开源内核版本,另一种是一些厂商基于内核版本封装的发行版本。

    • Linux的内核版本官网:https://www.kernel.org/,但是我们一般不用这个。
    • Linux的发型版本(是一些厂商基于Linux开源的部分进行设计的),咱们需要学习的发行版本就是CentOS。

    1.4 Linux和Windows区别

    • Linux是严格区分大小写的,Windows无所谓。
    • Linux中一切皆是文件。
    • Linux中文件是没有后缀的,但是他有一些约定俗成的后缀。
    • Windows下的软件一般是无法直接运行的Linux中。

    2. Linux安装

     安装Linux有三种方式:1:舍弃Windows系统,安装Windows系统(不推荐);2:安装双系统(但是没法随便进行系统切换,通信);3:虚拟机

    安装Linux,我们需要一个虚拟机(方便系统切换和通信),为了安装虚拟机环境:VMware或者Virtual Box(采用VMware)

    为了安装Linux,我们需要一个Linux的镜像文件:CentOS7版本

    安装一个链接Linux的图形化界面:Xterm,SSH,XShell(这里用Xterm)

     2.1 安装VMware

    傻瓜式安装,下一步即可,但要修改安装位置。

    这里需要说下:增强勾上,更新和用户体验关闭,先不重启,等下个软件安装完了再重启。

    NM我这里怎么没有选择安装位置。忘修改了。

    2.2 安装Xterm

    其实这里也不是安装,解压即可。解压后出现一个.exe文件,直接运行即可使用。

    2.3 在VMware中安装Linux

    这里注意要先重启电脑。

    1.点开桌面的VMware;选择创建新的虚拟机;选择典型(推荐);下一步;

     

     2.指定镜像方式,这里选择稍后安装操作系统;

     

     3.选择操作系统类型,这里选择Linux(L),版本是CentOS 7 64位;

     

     4.指定虚拟机名称及安装位置,名称位Centos7;

     

     5.磁盘存储方式,这里最大磁盘大小默认20G即可,因为上面已经写了会随着程序、文件和数据而主键变大;下面的选择将虚拟机磁盘拆分成多个文件,其实这两个都可以,但这样选的好处是,有些U盘copy的时候单个文件不能超过4G,但是虚拟机大小可能超过4个G,我们的虚拟机是可以Copy给别人使用的,这样选择更加方便。下面点击完成。

     

     6. 指定虚拟机配置,点击编辑虚拟机设置,内存最小要给2G;处理器要根据自己电脑硬件设施去分配,这里的每个处理器的内核数量统一选位2;网络适配器选择桥接模式并构中复制物理网络连接状态;最后,在CD/DVD位置构中使用ISO映射文件,找到当时下载的镜像。

     

     7. 开始安装CentOS

    点击开启此虚拟机,点进去,通过上下光标去选择内容,直接选择Instal(第一个选项)即可;稍等一会即可;选择语言,第一栏光标拉到最下面,选择中文,第二栏选择简体中文;在安装信息摘要处,最下方出现一个注意标志,拉到最下面,点击安装位置,再点击完成即可(这里什么都不需要操作,只是看下安装位置)。

     8. 配置虚拟机网络连接

    点击网络和主机名,开启以太网连接,等一会会自动分配IP地址。

     9. 开始安装

    点击安装,给Root用户设置密码,这里不要设置太麻烦,防止忘记。如果密码太短,需要点击两次确定才可以。

     10. 安装成功

    安装成功后,点击重启即可,然后进入重启后的界面,输入用户名root和密码登录即可。

     2.4 使用Xterm连接Linux

    对于上面已经安装好了Centos,但是如果直接在登录窗口中输入命令,很麻烦,不能复制,查看历史命令等,因此我们用刚刚安装或者说解压好的软件Xterm来操作。

    直接在VMware中操作Linux有很多限制,我们可以在图形化界面中操作Linux操作系统。

    具体步骤如下......

     1.查看ip地址

    在虚拟机中的liunx操作窗口输入ip a(address的简写)

     2.通过Xterm连接

    打开软件,OK后输入密码,

    3. Linux基本操作

    3.1 Linux的目录结构

     Windows的目录结构是带有盘符的。D:E:C:,而Linux中是没有盘符的,只有一个根目录/。

    在Xterm中输入ls /查看Linux的顶级目录。

     Linux的常用目录......

    • root:该目录位系统管理员HOME目录
    • bin:这个目录下放着经常使用的命令,比如上面的ls命令。bin是binary的简写
    • boot:这里存放的是启动Linux时的一些核心文件
    • etc:存放系统管理所需要的配置文件和子目录
    • home:普通用户的HOME目录
    • usr:默认安装软件的目录,类似weindows中的Program Files目录
    • opt:时主机额外安装软件拜访的目录

     3.2 获取Linux中的信息

    Linux中命令的基本格式:命令【选项】 【参数】

    需要注意,个别命令是不遵循这个格式

    当命令中有多个选项时,可以写在一起的,并且选项也是有简写方式的 命令-选项A选项B

    Linux的基本操作命令,不遵循上述格式,但是后期会经常使用......

    # 1. 我是谁

    who am i

    # 2. 我在哪

    pwd

    # 3. 查看ip地址

    ip a或者ip address

     # 4. 清屏

    clear

    # 5. ping域名或者ip

    ping www.baidu.com

    # 6.强制停止(上面的ping无法自动结束,会一直ping下去)

    ctrl + C

    4. Linux命令【重点】

    Linux中命令的基本格式:命令【选项】 【参数】

    需要注意,个别命令是不遵循这个格式

    当命令中有多个选项时,可以写在一起的,并且选项也是有简写方式的 命令-选项A选项B

    4.1 目录的命令

    1. 列出目录

    查看hiding目录下的内容,默认查看当前目录下内容

    Linux中的隐藏文件是以.开头的,当前目录使用.表示,上一级目录使用..表示

    ls [-ald] [目录名]

    #目录名不能空,默认为当前目录

     ls是列举当前目录,ls /是列举根目录下的目录。

    # -a:列出的全部的文件,包括隐藏文件

    # -l:列举出全部的信息

    # -d:仅查看目录本身

    2. 切换目录

    实现目录间切换,使用绝对路径、相对路径、特殊符号

    cd 具体路径 | 特殊符号

    特殊符号 表达的路径
    . 当前目录
    .. 上一级目录
    / 根目录
    ~ 当前登录用户的HOME目录
    - 返回到上次操作的目录

    3. 创建目录

    创建目录,以及创建多级目录方式

    mkdir [-p] 目录名

    -p:代表创建多级目录时,使用

    4. 删除目录

    删除非空目录或者包含内容的目录

    # 只能删除空目录

    rmdir 目录名

    # 删除非空目录

    rm [-rf] 目录名

    # -r:代表递归删除目录下的全部内容

    # -f:不询问,直接删除

    5. 复制目录

    复制目录下的全部内容

    cp -r 来源目录 目标目录

    # -r:递归复制全部内容,必填项

    比如:cp -r a b就是将a目录下的内容复制到b目录下,那如果a是空的呢?那复制过去自然b中还是什么都没有。

    6. 移动、重命名目录

    移动、重命名目录,会根据第二个参数指定具体操作逻辑。

    mv 目录名 新目录名 | 路径

    # 如果第二个参数指定的路径不存在,就是重命名,如果第二个参数路径存在,就是移动,如果第二个参数是存在的路径并且后面加一个不存在的名字,就是移动+重命名。

    4.2 文件的命令【重点】

     1.创建文件

     touch 文件名1 文件名2 ... (可以一次性创建多个文件,也可以创建一个,如果是多个,中间是空格分开)

    我们可以发现,文件是白色的,而文件夹(目录)是蓝色的。

    2.编辑文件

    编辑文件,是后期最常用的命令之一。

    vi 文件名    # 查看文件。(查看模式,此时只能查看,不能编辑)

    i | a | o     # 进入编辑模式。(编辑模式,此时就可以编辑了)

    # i:在当前光标处,进入编辑模式。a:在当前光标后一格,进入编辑模式。o:在当前光标下一行,进入编辑模式。

    esc      # 退出编辑模式,回到查看模式。(因为上一步还在编辑模式,你输入的任何内容都会被编辑,因此要先退出到查看模式)

    :      # 从查看模式进入到底行命令模式。此时,我们可以输入命令选择保存退出和不保存退出。

    # 在底行命令模式下,输入wq:保存并退出。输入q!:不保存并退出。

    # 在查看模式下,按着Shift + ZZ,可以快速保存并退出。

    演示如下(步骤有点多,但是后续经常用,很好记,其实就是查看文件,进入编辑模式,输入内容(这个不用命令),返回查看模式,进入底部命令行模式,保存退出或不保存退出):

    到这里就已经结束了,你可以再次进入查看一下刚刚编辑的内容;也可以试试:q!命令,不保存退出;也可以试试Shift+ZZ尝试一下。

    3.vi文件时,其他操作

    编辑文件时,常用的快捷键,方便操作。

    # 在vi文件时,在底部命令行模式下可以输入一下常用内容

    # 行号操作

    set nu      # 查看文件的行号

    to 行号      # 快速的跳转到指定行

    set nonu       # 取消行号

    # 搜索操作

    /具体内容      # 类似Windows的Ctrl + F搜送文件中的具体内容所在位置,查看下一个可以输入字母n

    # 快速定位

    G        # 快速跳转到最后一行

    gg        # 快速跳转到第一行 

    这里自己尝试一下,我不截图了。

    4.查看文件

     根据不同的业务,可以选择不同的查看方式(这样就不是只能用上面的vi 文件名查看了)

    cat 文件名

    # 从第一行开始查看文件内容,展示全部

    tac 文件名

    # 从最后一行开始展示

    nl 文件名

    # 显示文件的用时,展示行号

    more 文件名

    # 查看大文件时,可以一页一页的向下翻,按space向下翻页,退出时按q(如果文件非常非常大,按这个快速退出)

    less 文件名

    # 查看大文件时,可以任意的向上或者向下翻,向上或向下翻页按PageUp和PageDown,一行一行查看,按光标的↑↓,和more很相似,但功能更加强大。如果不想看了,也是按q退出。

    head 文件名

    # 只查看前几行

    tail 文件名

    # 只查看后几行,这个tail还有妙用,后面我们会用tail -f 日志文件查看日志文件的最后几行,就像控制台查看日志一样。

    5.移动、重命名文件

     移动、重命名目录,会根据第二个参数指定具体操作逻辑

    mv 文件名 新文件名 | 路径

    # 如果第二个参数指定的路径不存在,就是重命名,如果第二个参数的路径存在,就是移动

    同目录操作。

    6.复制文件

     复制文件到指定目录下

    cp 文件名 目录

    同目录操作

    7.删除文件

     删除文件方式

    rm [-f] 文件名

    # -f:是否询问

    同目录操作

    4.3 针对压缩包的操作

    Linux中常用的压缩包,大多是.tar,.tar.gz,tgz的(虽然Linux没有后缀名,但是这些是约定俗成的)

    但是Linux不仅仅针对tar类型的压缩包,也支持zip,rar这种Windows下的压缩包。

    4.3.1 针对tar命令

    1.1 解压压缩包

    针对压缩包后缀的情况,采用不同的参数,否则可能会损坏文件

    tar [-zxvf] 压缩包名称 [-C 路径]

    # -z:  代表压缩包后缀是.gz的(.tar.gz和tgz这两种格式需要这个参数,.tar这种不需要这个参数)

    # -x:  代表解压(这个必须加)

    # -v:  解压时,打印详细信息

    # -f:  -f选项必须放在所有选项的最后,代表指定文件名称

    # -C 路径:代表将压缩包内容解压到指定路径(如果不加就算当前路径下)

    1.2 打包成压缩包

    可以将多个文件以及目录打包哼压缩包,根据选择的参数指定压缩包

    tar [-zcvf] 压缩包名称 文件1 文件2 目录1 目录2 ...

    # -c:代表打包

    # 其他参数同上

    4.3.2 针对zip类型压缩包

    Linux默认是不支持zip,rar这种压缩包格式的。

    不过可以通过安装软件进行支持:zip,unzip(这是两个软件,安装非常非常简单)

    2.1 安装软件

    输入命令后会自动联网下载安装。输入命令稍等即可安装完成。(这两个软件安装不再截图,输入命令回车并等待即可。)

    yum -y install zip # 打包程序

    yum -y install unzip # 解压程序

    2.2 解压以及打包

    # 解压

    unzip 压缩包名称

    打包

    zip 压缩包名称 文件1 文件2 目录1 目录2 ...

     提示:其实Linux里面有很多第三方的命令,下载即可使用。

    4.4 用户&用户组的操作

    Linux是一个多用户的操作系统,任何一个用户想要操作Linux操作系统,必须向系统管理员(root用户)申请一个账号才可以,以这个账号的身份去操作Linux。(我们Windows系统一般自己用,当然也可以设置多个用户,而Linux作为服务器,肯定是很多人用的)

    用户的账号一方面可以帮助系统管理员追踪当前用户的操作。另一方面可以控制当前用户对系统资源访问。

    4.4.1 用户的操作

    # 1. 创建用户

    useradd [-cgd] [选项指定的具体内容] 用户名(但一般我们不会用这些,我们创建一个普通用户即可)

    # -c: 代表comment,给用户添加一段注释

    # -g:代表group,可以修改用户的所在组

    # -d:代表指定用户的HOME目录

    # 2.设置密码

    passwd 用户名

    # 3.切换用户

    su 用户名

    # [root@localhost ~]#    -> root用户在本地登录,并且当前在~目录下,#代表是超级管理员

    # [qf@localhost ~]$     -> qf用户在本地登录,并且当前在~目录下,$代表是普通用户

    # 4.删除用户

    userdel [-r] 用户名

    # -r:代表删除用户的同事,删除该用户的HOME目录

     # 5.修改用户(了解即可,这个我们一般不会做,是系统管理员做的,配合下面的用户组操作使用)

    usermod [-cgd] [选项指定的具体内容] 用户名

    # -c: 代表comment,给用户添加一段注释

    # -g:代表group,可以修改用户的所在组

    # -d:代表指定用户的HOME目录

     4.4.2 用户组的操作

     # 1. 创建用户组

    groupadd 用户组名

    # 2. 修改用户组

    groupmod [-n] [选项指定的具体内容] 用户组名

    # -n 修改用户组名称

    # 3. 删除用户组

    groupdel 用户组名

    #只能删除不存在用户的用户组。

    删除组

     4.5 文件权限的修改

     在Linux中输入ls -l或者ll查看文件和目录的详细信息。

    实例中,a目录的第一个属性用"d"标识这个a是一个目录。

    anacinda-ks.cfg第一个属性用"-"标识他是一个文件。

     在Linux文件详情的后面属性需要分为三组查看

    • rwx:代表文件拥有者的权限
    • rwx:代表文件所属组用户的权限
    • rwx:代表其他用户对当前文件的操作权限
    • r:代表read,读的权限
    • w:代表write,写的权限
    • x:代表execute,代表执行权限

    后续的第一个root:代表当前文件的拥有者

    后续的第二个root:代表当前文件的所属组

    后续分别为:文件的大小和最后修改时间

    4.5.1 对文件的权限修改

    # 1.数字方式

    chmod [-R] 777 文件|目录

    # rwx在这三个权限中r:4,w:2,x:1

    # -R:当修改一个目录权限时,可以添加-R,将目录下的全部内容,都修改权限。(这个我们用的很少,比如你可能会把一个目录下的全部内容,都修改权限。)

    # 2.符号方式

    # user:u,group:g,other:o,all:a

    # read:r,write:w,execute:x

    # 赋予权限的方式

        # 添加:+,减掉:-,设定:=

    chmod [-R] a=rw 文件|目录    赋予所有用户读和写的权限

    4.5.2 对文件的拥有者和所属组修改

    # 修改文件的拥有者和所属组

    chown [-R] 拥有者:所属组 文件|目录

    # 修改文件的拥有者

    chown [-R] 拥有者 文件|目录

    # 修改文件的所属组

    chgrp [-R] 所属组 文件|目录

    4.6 Linux的其他操作命令

    # 1.进程的操作

    ps -ef    查看全部正在进行的进程(用的少,因为出来很多)

    ps -ef | grep  搜索的内容  这里添加了管道操作,相当于搜索。管道操作不单单针对进程操作,其它操作也可以用。

    kill -9 pid   杀死进程

    # 2. 服务的操作

    # 针对服务的启动,停止,重启,开机自动启动,禁止开机自动启动,查看服务状态。

    systemctl start|stop|restart|enable|disable|status 服务名称

     # 3. 查看端口号占用情况

    # 想使用指定的命令需要事先下载netstart

    yum -y install net-tools

    # 查看端口号占用情况

    netstat -naop | grep 端口号(这里还是用管道如果只是netstat -naop命令出来的结果很多)

    # 4.访问地址(用的不多)

    类似浏览器访问路径,无法图形化显示,一般用于测试

    curl 访问地址

    # 5.查找文件

    在Linux中查找指定文件,参数较多,如下为根据文件名查询

    find 路径 -type f | grep profile

    5. Linux下安装软件【重点】

    5.1 安装JDK

    # 1. 下载JDK的压缩包

     此后需要Oracl登录账号密码,我尝试注册了没有成功(但是我们可以百度搜索Oracl公共账号,网上好多好心人提供了,我就用公共账号下载了)

    # 2. 将下载好的jdk压缩包拉取到Linux操作系统中

    # 通过Xterm携带的Sftp将jdk压缩包拖拽到Linux操作系统

     拖拽后有进度条,稍等片刻即可成功。

     # 3. 将jdk的压缩包解压到/usr/local

    tar -zxvf ... -C /usr/local

     

     提示:这里输入jdk后,可以用键补全名字。

     # 4. 将jdk的目录名修改一下(方便配置环境变量)

     

     # 5. 配置环境变量

    # Linux提供了两种环境变量的文件(Windows也是)

    # 第一个是用户级别的环境变量,存放在:~/.bashrc

    # 第二个是系统级别的环境变量,存放在:/etc/profile(我们现在就是系统用户,用这个)

    # 如果想运行当前目录下的可执行文件,需要输入:./可执行文件名

     下面开始配置

    # 在环境变量文件中,添加如下内容(我们的就是在/etc/profile文件下)

    export JAVA_HOME=/usr/local/jdk

    export PATH=$JAVA_HOME/bin:$PATH

    这里具体如何修改:先vi /etc/profile进入该文件;按大写G定位到最后一行;按o进入编辑模式(当前文字下一行);回车空一行;输入上面的两个命令;esc回到查看模式;:wq保存并退出;重新加载环境变量;测试。

    # 重新加载环境变量文件

    source /etc/profile

    # 最终测试

    java -version

     这是修改该文件(添加内容),重新加载该文件(如果不加载,配置不会生效),然后在任一地方都可以使用jdk命令,这里用java -version测试。

    5.2 安装MySQL

     在Linux下用yum的方式安装MySQL......

    我们先到官网看看MySQL的下载地址,以及晚装步骤(操作步骤较多,官网可以查看)

     这是复制的链接:https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

    下面在哪里看到安装文档呢? (打开后翻译成中文)

     

     安装步骤:

     1. 安装MySQL的YUM存储库

    使用wget下载即可,不过需要先下载wget,再通过wget下载rpm包

    # 首先通过yum下载wget命令

    yum -y install wget

    # 通过wget下载MySQL存储库

    wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm(这是上面右键得到的链接)

    2. 安装下载好的rpm包

     使用rpm包的命令直接安装

    # 安装rpm包 

    命令是:rpm -Uvh mysql80-community-release-el7-3.noarch.rpm

     # 查看rpm包

    命令是:rpm -qa | grep 内容

    安装好可以查看一下所有的rpm包:

     但是此时有许多rpm包,下翻才能找到mysql的rpm包。因此要用管道,看下面的命令。(rpm -qa | grep mysql)

    # 卸载rpm (不需要指定当前命令)

    命令:rpm -e --nodeps rpm名称

     该图片包含查看rpm包,卸载rpm包,再次查看,再次安装,再次查看命令。

    3. 选择发行版本

    由于默认安装8.0版本的MySQL,我们需要修改为5.7版本(常用这个版本)

    #查看一下默认选择的发行版本

    yum repolist all | grep mysql

     # 通过编辑/etc/yum.repos.d/mysql-commity.repo文件,去修改发行版本:vi /etc/yum.repos.d/mysql-community.repo

    修改前:

     将5.7修改为1,8.0修改为0.

     #再次通过yum repolist all | grep mysql查看,效果如下:

     4.安装MySQL社区版服务

    开始安装,这一步需要下载一段时间,下载失败就是网络太差。

    yum -y install mysql-community-server

    安装需要时间,请耐心等待,安装成功后如下:

    5.启动MySQL服务,并连接。

    安装成功后,手动启动,并使用日志中的密码登录,而且第一个操作必须是修改密码,才可后续正常操作

    # 启动MySQL服务

    systemctl start mysqld.service

    # 查看初始化密码

    grep 'temporary password' /var/log/mysqld.log

    # 连接MySQL服务

    mysql -u root -p

    Enter password:随机密码(是上面查看得到的)

    # 修改密码

    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@ssw0rd'; (这里mysql>是代表在mysql登录后显示内容,不是命令本身)

    # 要求密码,必须携带大写字母,小写字母,数字,特殊符号

    此时已经可以操作mysql了,如查看数据库

     6. 开启远程连接

    我们不会在Xterm中使用数据库,更不会在Linux命令行系统里面使用,肯定是用用MySQL图形化界面的。因此要开启MySQL远程链接(默认是关闭的)

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'eric'@'%' IDENTIFIED BY 'P@ssw0rd' WITH GRANT OPTION; (注意:mysql>是登录MySQL后的本身显示)

    此时就创建了一个远程登录用户:其可以通过用户名eric和密码P@ssw0rd登录。

    此外,开启远程登录后,还要刷新一下:mysql> FLUSH PRIVILEGES;

     下面我们远程链接一下数据库操作试试(这里通过SQLyog):

     登录后我们操作一把:show databases;

    5.3 安装Tomcat

    在Linux下安装Tomcat,以便部署工程到Linux操作系统 

    这里安装Tomcat就非常简单了。

     1.下载Tomcat的压缩包

    网址是怎么找到的,直接在浏览器地址栏输入tomcat.apache.org,

     复制的链接为:https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.60/bin/apache-tomcat-8.5.60.tar.gz(注意:上面复制链接的位置,即右键位置)

    通过wget直接下载即可

    wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.60/bin/apache-tomcat-8.5.60.tar.gz

     这里说证书不安全,我不知道原因,不管按提示添加了命令。

    下载好后,你是不是很好奇,他下载到哪里了??

     原来是下载在根目录下。

    2.解压压缩包

    一样解压到/usr/local目录下(我们软件统一解压到这个目录下,解压即安装)

    tar -zxvf apache-tomcat-8.5.60.tar.gz -C /usr/local

    3.启动Tomcat并监听日志

    通过./执行可运行文件,并使用tail监控日志信息

    # 跳转到tomcat的bin目录

    cd /usr/local/apache-tomcat-8.5.60/bin

    # 启动

    ./startup.sh

    # 监控日志

    cd ../logs

    tail -f catalina.out

    # 浏览器中访问

     下面是查看日志

     下面是浏览器页面访问:

    6. 部署SSM工程

    部署项目到Linux中需要注意一下内容:

    1.项目要保证在Windows下是没有问题的,再考虑部署到Linux。

    2.将开发环境中的内容梗概为测试环境:

    1. 链接数据库的信息。(本来可能还是localhost)
    2. 存放文件的路径。(原本可能是写死的,比如D盘下某某某)
    3. 日志文件存放的位置。(原本可能是写死的,比如D盘下某某某)
    4. 项目路径问题。

    3.将Maven项目打包。

    4.根据项目路径的不同,将项目部署到Tomcat中。

    5.在部署到Linux操作系统中后,一定要查看日志。(不然你不知道项目是否部署成功)

    首先我们本地用debug运行一下:我这里运行报错了,不清楚为什么,后续补充!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!可能是本地Tomcat等问题吧。还是部署到Linux吧。

     第一步:修改数据库信息

     第二部:我们看看存放文件路径,我们这里又上传文件的操作,可以看到这里路径不是写死的,所以没有问题。

     第三步:日志存放位置;我们这里使用的是logback,所以可以在ligback中找到。而且部署项目,日志级别不需要用DEBUG了,要换成ERROR。

     第四步:最后是项目路径问题,项目路径主要是项目中设计的路径,很多同学喜欢吧路径设置成死的。加了项目路径就可以打包了。

    下面就是打包:在terminal下输入:mvn clean package -DskipTests并回车,清空,打包并跳过测试。

    在打包的过程中,在Linux系统的mysql数据库添加ssm数据库(当然是通过sqlYog)。

    打包好后,通过Xterm拖拽到/root目录下:

    之后将这个war包该一个名字为ssm.war。

    然后将ssm.war丢到tmocat/webapps下即可。

    然后查看日志(注意一定要查看一下)。然后最后看到加载war包结束。现在我们再次访问,注意已经不能用Localhost了。我输入地址是IP:8080/ssm.

     访问成功:功能也可以访问。

    课程到此结束。

  • 相关阅读:
    设计模式学习——代理模式(Proxy Pattern)之 强制代理(强校验,防绕过)
    设计模式学习——代理模式(Proxy Pattern)
    设计模式学习——抽象工厂模式(Abstract Factory Pattern)
    最长字符串系列汇总
    窗口的最大值与最小值更新结构(滑动窗口)
    归并排序和归并排序应用(逆序对+小和)
    位运算在编程题的一些作用
    链表的排序(归并排序+快慢指针)
    Manacher算法解决最长回文子串长度问题
    回文数字的验证
  • 原文地址:https://www.cnblogs.com/G-JT/p/13945126.html
Copyright © 2011-2022 走看看