zoukankan      html  css  js  c++  java
  • Liunx

    Linux

    1.1 Linux概述

    1.1.1 Linux介绍

    Linux是一套免费使用和自由传播的Unix操作系统,是一个基于POSIXUNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持3264硬件。Linux继承了Unix网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    Linux操作系统诞生于1991 10 5 (这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核Linux可安装在各种计算机硬件设备中,比如手机平板电脑路由器、视频游戏控制台、台式计算机、大型机和超级计算机。

    严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。

    1.1.2 Linux发展史

    1.1965 年,Bell 实验室、MITGE(通用电气公司)准备开发 Multics 系统,为了同时支持 300 个终端访问主机,但是 1969 年失败了;

    (刚开始并没有鼠标、键盘,输入设备只有卡片机,因此如果要测试某个程序,则需要将读卡纸插入卡片机,如果有错误,还需要重新来过; MulticsMultiplexed Information and Computing Service

    2. 1969 年,Ken ThompsonB语言之父)利用汇编语言开发了 FIle Server SystemUnics,即 UNIX 的原型)

    (因为汇编语言对于硬件的依赖性,因此只能针对特定硬件; 只是为了移植一款“太空旅游”的游戏;)

    3. 1973 年,Dennis Ritchie Ken Thompson 发明了 C 语言,而后写出了 UNIX 的内核

    B 语言改成 C 语言,由此产生了 C 语言之父; 90% 的代码是 C 语言写的,10% 的代码用汇编写的,因此移植时只要修改那 10% 的代码即可;)

    4. 1977 年,Berkeley 大学的 Bill Joy 针对他的机器修改 UNIX 源码,称为BSDBerkeley Software Distribution

    5. 1979 年,UNIX 发布 System V,用于个人计算机;

    1984 年,因为 UNIX 规定:“不能对学生提供源码”,Tanenbaum 老师自己编写兼容于 UNIX Minix,用于教学;

    6. 1984 年,Stallman 开始 GNUGNU's Not Unix)项目,创办 FSFFree Software Foundation)基金会;

    (产品:GCCEmacsBash ShellGLIBC; 倡导“自由软件”; GNU 的软件缺乏一个开放的平台运行,只能在 UNIX 上运行; 自由软件指用户可以对软件做任何修改,甚至再发行,但是始终要挂着 GPL 的版权; 自由软件是可以卖的,但是不能只卖软件,而是卖服务、手册等;)

    7. 1985 年,为了避免 GNU 开发的自由软件被其他人用作专利软件,因此创建 GPLGeneral Public License)版权声明;

    1988 年,MIT 为了开发 GUI,成立了 XFree86 的组织;

    1991 年,芬兰赫尔辛基大学的研究生 Linus Torvalds 基于 gccbash 开发了针对 386 机器的 Linux 内核;

    8. 1994 年,Torvalds 发布 Linux-v1.0

    1996 年,Torvalds 发布 Linux-v2.0,确定了 Linux 的吉祥物:企鹅;

                  如图-9所示

    1.1.3 Linux系统层级结构

     

    1.1.4 Linux特点

    1. 系统开源并且免费
    2. 对硬件要求很低 800M  3-4
    3. 系统稳定性强
    4. 系统安全性更好  (军工企业 断网)

    1.1.5 Linux系统主流产品

                    如图-10所示 

    1.2 Linux命令

    说明:Linux全部都是基于文件的. 并且Linux中的目录都是树形结构

    1.2.1 cd命令集

    ifconfig/ip addr  检查IP地址

    pwd    检查当前的位置

    tab 自动补齐(注意唯一性)

    cd命令是linux中最基本的命令语句,必须熟练掌握

    cd / 返回根目录

    cd ~ 用户主目录

    cd . 当前目录

    cd ..返回到上一级目录

    cd /usr/ 进入到usr目录

    cd – 返回上一个目录

    cd 直接回家

    1.2.2 ls目录和文件

    ls l 详细格式,文件权限,时间

    ll ls l作用相同

    ls *.txt 查看所有的txt类型文档

    1.2.3 目录操作

    mkdir 创建目录

    mkdir a 创建 a目录

    mkdir -p a/b 创建 a目录,并在a目录里创建b目录

    mkdir -m 777 c 创建一个权限为777C目录

    rmdir  删除目录(如果目录里有文件,则不能用此命令)

      

    1.2.4Vi/vim创建/查看/编辑文件

    命令行:Esc切换到命令行模式。

    编辑模式:

    i,在光标前开始编辑

    按a,在光标后开始编辑

    o,在当前行的下一行开始编辑

    u, 撤销之前的操作

    底行模式:按  shift+:冒号。

    :q! 不保存退出

    :wq 保存退出

    :/world 从当前光标处,向上查找world关键字

    :?world 从当前光标处,向后查找world关键字

    (编辑完------->esc键---------->:-------->wq/q!)

    1.2.5 删除文件

    rm 删除文件

    rm n.txt 提示y删除n放弃

    rm f n.txt 不提示

    rm rf dirname 不提示递归删除目录下所以内容

    rm rf * 删除所有文件

    rm rf /* 删除所有子目录所有和文件(慎用)

    1.2.6 复制和移动文件

    cp复制文件

    cp nginx.conf n.txt

    cp R tomcat1 tomcat2                #复制整个目录

    mv 修改文件名,移动文件

    mv n.txt m.txt  修改文件名称

    1.2.7 浏览文件

    cat 输出文件所有的内容

    more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出

    less 用法和more相同,只是通过PgUpPgOn键来控制

    tail 用于显示文件后几号,使用频繁

    tail -10 nginx.conf 查看nginx.conf的最后10

    tail f nginx.conf 动态查看日志,方便查看日志新增的信息

    ctrl+c 结束查看

    1.2.8 打包命令

    tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成name.tar.gz的文件。

    -c 创建一个新的tar文件

    -v 显示运行过程的信息

    -f 指定文件名

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

    -t 查看压缩文件的内容

    -x 解开tar文件

    tar cvf n.tar ./* 压缩当前目录下的所有文件和目录,文件名为n.tar

    tar xvf n.tar 解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C推出)

    tar cvzf m.tar.gz ./* 压缩文件

    tar -zxvf m.tar.gz 解压m.tar文件到当前目录

    1.2.9 grep命令

    grep root  /etc/passwd   在文件中查找关键字root

    grep root  /etc/passwd  -color         高亮显示

    grep root  /etc/passwd  A5 B5         高亮显示,A5行,B5

    grep -n root /etc/passwd  查找并显示行数

    grep -v root /etc/passwd   取反,查出不含root的数据

    2.Linux 环境配置

    2.1 配置JDK

    2.1.1 定位工作目录

    说明:Linux中程序的安装目录 在 /usr/local/src
    在这里插入图片描述

    2.1.2 定位JDK文件目录

    在这里插入图片描述

    2.1.3 解压JDK

    在这里插入图片描述

    2.1.4 修改文件名称

    在这里插入图片描述

    2.1.5 修改环境变量配置文件

    在这里插入图片描述
    配置JDK
    在这里插入图片描述

    2.1.6 重启环境变量

    在这里插入图片描述

    2.2 Linux系统项目部署流程图

    在这里插入图片描述

    2.3 安装MariaDB数据库

    2.3.1 检验Linux系统是否有网

    PING www.baidu.com 校验是否有网. ctrl + c 表示进程结束.
    在这里插入图片描述

    2.3.2 安装MariaDB数据库

    1)安装命令: yum install mariadb-server
    在这里插入图片描述
    2).安装成功之后的提示
    在这里插入图片描述

    2.3.3 数据库常规命令

    1.启动数据库 [root@localhost jdk1.8]# systemctl start mariadb
    2.重启数据库 [root@localhost jdk1.8]# systemctl restart mariadb
    3.关闭数据库 [root@localhost jdk1.8]# systemctl stop mariadb

    2.3.4 初始化数据库配置

    说明:刚开始数据库中并没有设定用户名和密码.所以需要进行设定.
    命令:

    mysql_secore_insatllation

    在这里插入图片描述

    2.3.5 修改数据库权限

    1).进入数据库
    在这里插入图片描述
    2).检查数据库是否正常
    1.show databases; 

    2.use mysql;

    3.show tables;
    在这里插入图片描述
    在这里插入图片描述
    3).查询数据库权限表

    select host ,user from user where user=‘root’;


    在这里插入图片描述
    4).修改数据库权限
    在这里插入图片描述
    命令:

    1.update user  set host='%' where host="localhost";
    2.select host,user from user where user='root';

    在这里插入图片描述
    5).刷新数据库权限
    命令: flush privileges;
    在这里插入图片描述
    操作成功之后: 利用 exit 或者 ctrl + c的方式退出

    2.4 Linux防火墙命令(必须掌握)

    2.4.1 防火墙配置

    说明:配置指防火墙的全局的变量. 如果操作了全局的(变量)开关,则影响的是下一次的防火墙操作.

    1).永久关闭防火墙配置

    systemctl  disable firewalld.service

    2).永久开启防火墙配置

    systemctl  enable  firewalld.service

    2.4.2 防火墙开关

    说明:如果需要对现有防火墙进行操作,则执行如下命令

    [root@localhost jdk1.8]# systemctl  stop firewalld.service
    [root@localhost jdk1.8]# systemctl  start firewalld.service

    2.4.3 检查防火墙的状态

    [root@localhost jdk1.8]# firewall-cmd --start

    在这里插入图片描述

    2.4.4 检查防火墙的状态

        firewall-cmd --zone=public --add-port=3306/tcp --permanent
    
    命令含义:
                        –zone #作用域
                        –add-port=80/tcp #添加端口,格式为:端口/通讯协议
                        –permanent #永久生效,没有此参数重启后失效

    2 关闭tomcat服务器

    命令1: jps
    在这里插入图片描述
    命令2:杀死进程:
    kill -9 PID号 强制杀死
    kill -15 PID号 友好的关闭

    nginx命令

    说明: 跳入到Nginx的工作目录 /usr/local/nginx
    在这里插入图片描述

     
  • 相关阅读:
    mybatis中一直获取xml配置文件输入流值为空的类似解决方法
    switch中能有的值都有哪些
    length,length(),size()
    Spring中IOC的基本原理
    ajax中的一些小问题
    Servlet简单业务流程
    推荐用字节流处理文件拷贝
    更有效率的数据交换
    1.7版本处理io流自动关闭流的写法
    集合中的简单知识
  • 原文地址:https://www.cnblogs.com/wangjincai/p/13458964.html
Copyright © 2011-2022 走看看