admin管理员组

文章数量:1651833

文章目录

    • 1. 计算机硬件软件体系
      • 1.1. 冯·诺依曼体系结构
      • 1.2. 计算机硬件组成
      • 1.3. 硬盘的分类
      • 1.4. 顺序读写与随机读写
      • 1.5. 网络连接概念
      • 1.6. 网络连接模式
      • 1.7. 软件分类
      • 1.8. Linux分支
      • 1.9. Linux下载
    • 2. 虚拟化安装与配置
      • 2.1. 虚拟化技术
      • 2.2. 创建虚拟主机
      • 2.3. 安装操作系统
      • 2.4. 配置常见参数
        • 2.4.1. 配置网络参数
        • 2.4.2. 配置防火墙参数
        • 2.4.3. 安装软件限制
        • 2.4.4. 关机
      • 2.5. 虚拟机常见操作
      • 2.6. 修改克隆机配置
      • 2.7. 连接Linux服务器
    • ==3. Linux的命令==
      • 3.1. 命令学习法
      • 3.2. 常用的命令
      • 3.3.特殊字符
    • 4. Linux的文件系统
      • 4.1. 万事万物皆文件
      • 4.2. Linux文件目录
      • 4.3. Linux文件操作
        • ① cd
        • ② ll
        • ③ mkdir
        • ④ rmdir
        • ⑤ cp
        • ⑥ mv
        • ⑦ rm
        • ⑧ touch
        • ⑨ stat
        • ⑩ ln
      • 4.4. 读取文件信息
        • ① cat
        • ② tac
        • ③ more
        • ④ less
        • ⑤ head
        • ⑥ tail
        • ⑦ fing
      • 4.5. VI和VIM编辑器
        • 4.5.1. 打开文件
        • 4.5.2. 三种模式及其切换
        • 4.5.3. 一般指令模式
        • 4.5.4. 编辑模式
        • 4.5.5. 末行模式
        • 4.5.6. VIM编辑器
      • 4.6. 计算机间的数据传输
        • 4.6.1. Windows——Linux
        • 4.6.2. Linux——Linux
      • 4.7. 文件大小
      • 4.8. 文件压缩
        • 4.8.1. tar
        • 4.8.2. zip和unzip
    • 5.Linux的网络信息
      • 5.1. 主机名称
      • 5.2. DNS解析
      • 5.3. 网络相关命令
      • 5.4. 防火墙
      • 5.5. 加密算法
        • 5.5.1. 不可逆加密算法
        • 5.5.2. 对称加密算法
        • 5.5.3. 非对称加密算法
      • 5.6. 主机间的相互免密钥
      • 5.7. 主机名与Host校验
    • 6. 日期与时间
      • 6.1. 时间命令
      • 6.2. 日期自动同步
    • 7. 用户-组-权限
      • 7.1. 用户
      • 7.2. 组
      • 7.3. 权限
      • 7.4. 权限赋予
    • 8. 管道与重定向
      • 8.1. 管道
      • 8.2. 重定向
    • 9. Linux的系统进程
      • 9.1. 进程信息
      • 9.2. 后台进程
      • 9.3. 杀死进程
    • 10. Linux的软件安装
      • 10.1. 环境变量
      • 10.2. 软件安装
      • 10.3. RPM安装
      • 10.4. 压缩包解压安装
      • 10.5. yum安装
        • 10.5.1. yum的作用
        • 10.5.2. yum命令
        • 10.5.3. 更换yum源
      • 10.6. 安装MySQL数据库
    • 11. Linux的三剑客
      • 11.1. 普通剑客
      • 11.2. 剑客1号:grep
      • 11.3. 剑客2号:sed
      • 11.4. 剑客3号:awk

1. 计算机硬件软件体系

1.1. 冯·诺依曼体系结构

  • 计算机处理的数据和指令一律用二进制数表示
  • 顺序执行程序
  • 计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成

1.2. 计算机硬件组成

  • 输入设备
    • 输入设备用来将人们熟悉的信息形式转换为机器能够识别的信息形式
      • 常见的有键盘,鼠标等
  • 输出设备
    • 输出设备可以将机器运算结果转换为人们熟悉的信息形式
    • 打印机输出,显示器输出等
  • 存储器
    • 存储器用来存放数据和程序
    • RAM(random access memory)即随机存储 内存:
      • 速度快,容量小
      • 掉电易失
      • 逻辑IO
    • ROM(Read-Onboy Memory)即只读内存 硬盘:
      • 容量大,速度相对较慢
      • 长久保存
      • 物理IO
  • CPU(中央处理器)
    • 控制器
      • 控制器主要用来控制和指挥程序和数据的输入运行,以及处理运算结果
    • 运算器
      • 运算器主要运行算数运算和逻辑运算,并将中间结果暂存到运算器中

1.3. 硬盘的分类

  • 机械硬盘HDD
    • 机械硬盘采用磁性碟片来存储数据
    • 用显微镜把盘片放大,会看见盘片表面凹凸不平,凸起的地方被磁化,凹的地方是没有被磁化
    • 凸起的地方代表数字1,凹的地方代表数字0
    • 硬盘可以以二进制来存储表示文字、图片等信息。
    • 硬盘可以根据转速来判断硬盘的好坏,7200转/分,100-200M/s
  • 固态硬盘SSD

    • 固态硬盘通过闪存颗粒(固态电子存储芯片阵列)来存储数据

      • SLC ,每个存储单元仅能够存储1bit数据,速度快、寿命长、价格昂贵
      • MLC,每个存储单元仅能够存储2bit数据,速度较快、寿命较长、价格较贵
      • TLC ,每个存储单元仅能够存储3bit数据,速度一般、寿命一般、价格一般
    • 读写速度的区别

      • 固态硬盘的读取速度普遍可以达到400M/s,写入速度也可以达到130M/s以上
      • 其读写速度是普通机械硬盘的3-5倍
    • 机械硬盘的数据读写

      • 主流的硬盘半机械半电子硬盘(机械硬盘)
        • 硬盘的转速(转速越快读取越快)
        • 寻道时间
        • 数据传输时间

1.4. 顺序读写与随机读写

  • 机械硬盘一般随机读写,速度一般,但是用于顺序读写的话速度非常快

1.5. 网络连接概念

  • IP地址IPADDR

    • IP地址是一种逻辑地址,用来标识网络中一个个主机
      • IP地址=网络地址+主机地址
      • IP地址是一个32bit的数字串
  • 子网掩码NETMASK

    • 子网掩码用来判断任意两台计算机的IP地址是否在同一个子网中的根据
  • 默认网关GATEWAY

    • 网关的作用就是实现两个网络之间进行通讯与控制
  • 域名服务器DNS

    • DNS用来解析域名

    • C:\Windows\System32\drivers\etc\hosts

      • 去掉“只读”属性,在hosts文件中输入IP地址和对应的域名,电脑就会自动将域名解析到设置的IP地址

      • 将百度域名解析到知乎的IP地址:(域名劫持)
        180.153.100.156   www.baidu
        这时候ping www.baidu,就会解析到知乎的IP地址,但是现在的浏览器一般会进行判断
        

1.6. 网络连接模式

  • host-only(仅主机模式)
    • 在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时你就可采用host-only模式。
    • 在host-only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。
    • 在host-only模式下,虚拟系统的TCP/IP配置信息都是由VMnet1(host-only)虚拟网络的DHCP服务器来动态分配的。
  • bridge(桥接模式)
    • VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。
    • 使用桥接模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。
    • 当前主机IP为192.168.8.100,虚拟机192.168.8.XXX
      • 学习期间为了防止IP冲突,所以不选择这种模式
  • NAT(网络地址转换模式)
    • 使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。
    • NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的
    • 虚拟系统也就无法和本局域网中的其他真实主机进行通讯

1.7. 软件分类

  • 应用软件

    • 应用软件要基于对应的系统软件
    • 不同的操作系统要安装不同的软件
  • 系统软件

    • 就是为了和硬件打交道
    • 屏蔽应用软件与硬件的差异
  • 系统软件的分类

    • 操作系统
      • Windows
        • 用户量全球最大
        • 收费、不开源,民用比较多
        • 各种软件比较齐全
      • GNU/Linux
        • GNU是一个开源软件组织,认为世界上所有的软件(包括应用和系统软件)都应该开源免费
        • 拖瓦兹·林纳斯——Linux内核
      • Mac OS
        • 只限定与某些苹果的品牌机
        • iOS自成一家

1.8. Linux分支

  • ReaHat

    • CentOS
      • 完全开源免费
      • 不要使用最新版的CentOS,可能有bug,不够稳定(版本年份用双不用单,单一般都是测试版)
      • 主要用于服务器版本
  • Debian

    • Ubuntu
      • 视窗界面良好的Linux系统
      • 一些主流的软件都支持Ubuntu系统

1.9. Linux下载

  • 官网
  • CentOS 7 2018年10月
  • CentOS-7_2018年10月-iso镜像
    • DVD版:家用版,正常安装使用,工作后可以使用
    • Everything版:包含所有组件
    • NetInsatll版:通过网络安装
    • Minimal版:包含具有功能系统所需的最少软件包,学习可以使用,这里我们选择这个版本就好了

2. 虚拟化安装与配置

2.1. 虚拟化技术

  • 可以更好的利用计算机闲置的资源
  • 我们可以在计算机中虚拟出多台虚拟机帮助我们执行程序或者业务
  • 虚拟机的各种组成理论上和真实主机是一样的
  • 如果要使用这种技术只需要安装对应的软件即可
    • VirualBox
    • VirtualMachine

2.2. 创建虚拟主机

2.3. 安装操作系统

  • CentOS7分区的简单配置

    • /boot:256M
    • swap:一般分配内存的两倍,2G
    • /:不用输入数值,默认剩下全部分配

2.4. 配置常见参数

2.4.1. 配置网络参数
  • 查看自己虚拟网卡地址

    • 编辑–>虚拟机网络编辑器–>vmnet8
  • 修改网络配置信息

    • vi /etc/sysconfig/network-scripts/ifcfg-ens33

    • vi编辑器简单使用
      操作文档
      光标位置
      dd 删除一行
      i 将文档变成可修改模式
      esc 退出编辑
      :wq 保存并退出
      
    • --修改
      ONBOOT=yes
      BOOTPROTO=static //静态网络IP dhcp 动态获取网络IP
      --添加
      IPADDR=192.168.58.100
      NETMASK=255.255.255.0
      GATEWAY=192.168.58.2
      DNS1=114.114.114.114
      删除------
      UUID
      
  • 重启网卡重新加载配置文件

    • ip addr(本机IP:192.168.222.100
    • systemctl restart network.service
    • ping www.baidu
    • ctrl+c终止执行命令
2.4.2. 配置防火墙参数
  • 保护本机的端口不被别人访问
  • 如果端口需要被别人访问到,需要添加端口的防火墙例外
  • 关闭防火墙
    • 本次开机状态下防火墙关闭
      • systemctl stop firewalld(本次服务内关闭防火墙)
    • 服务器重启后防火墙禁用
      • systemctl disable firewalld(今后都禁用防火墙服务)
  • 查看防火墙开启/关闭状态
    • systemctl status firewalld
2.4.3. 安装软件限制
  • 操作系统对未知软件的安装有可能拒绝或者警告,我们需要禁用这个功能
  • vi /etc/selinux/config
    • SELINUX=disabled
2.4.4. 关机
  • poweroff
    • 直接关闭机器,但是有可能当前虚拟机其他人在使用
  • halt
    • 直接拔掉电源
  • shutdown -h now
    • 马上关闭计算机,但是可以给其他用户发送信息
  • reboot
    • 重启虚拟机

2.5. 虚拟机常见操作

  • 拍摄快照
    • 记录当前虚拟机的状态
    • 拍摄快照的时候一定要关机
  • 转到
    • 回到某一个历史快照的节点
  • 克隆
    • 复制某一个历史快照节点
    • 克隆的方式
      • 链接克隆
        • 当前节点文件夹只存储差异性数据
        • 相同数据存放在原始节点上
        • 优点:节省硬盘空间 缺点:耦合性大
      • 完整克隆
        • 就是基于原始节点完全拷贝到新节点的文件夹中
        • 优点:耦合性抵 缺点:硬盘空间使用大
        • 推荐使用完整克隆
        • 复制这个文件,其他虚拟机打开其中的.vmx文件即可使用

2.6. 修改克隆机配置

  • 改网络配置(同上)
  • 改主机名
    • hostname 主机名
      • 本次启动中有效,重启虚拟机还是使用原来的名字
    • vi /etc/hostname
      • 修改完成后需要重启生效

2.7. 连接Linux服务器

  • putty download
  • Xshell:连接虚拟机——ssh IP地址
    • 负责向虚拟机输入命令
  • Xftp
    • 向虚拟机传输文件

3. Linux的命令

3.1. 命令学习法

  • Linux命令与参数之间必须用空格隔开
  • Linux命令是区分大小写的
  • 如果输入了错误的命令
    • command not found原因
      • 命令敲错了
      • 命令未安装
  • type查看命令的类型
    • cd is a shell builtin
    • ping is /bin/ping
    • ll is aliased to `ls -l --color=auto’
    • for is a shell keyword
  • 命令的帮助文档
    • help
      • 内置命令的帮助文档
      • eg:help cd
    • man
      • 外部命令的帮助文档
      • 因为当前系统为Minima版,very basic没有man包
      • 需要手动安装man
        • yum install man man-pages -y
    • 将来工作中如果遇到生疏的命令,直接百度
      • 如果不是为了装X,完全没有必要查看命令手册
      • eg:man ping

3.2. 常用的命令

  • whereis:查询命令文件的位置
  • file:查看文件类型
  • who:查看当前在线的用户
    • useradd libai
    • passwd libai
  • whoami:我是谁
  • pwd:我在哪
  • uname -a:查看内核信息
  • echo类似于sout syso:打印语句
  • clear:清屏
  • history:查看敲过的历史命令
    • history -c:清除敲过的历史命令

3.3.特殊字符

    • 如果文件的开始是.说明当前文件是一个隐藏文件
    • ·指向当前目录
    • ..指向当前目录的上级目录
  • $
    • 说明这是一个变量
    • - $PATH Linux的环境变量
  • *星号
    • 通配符
    • 当前用户的家目录
    • 每个用户的家目录是不同的
    • root用户家目录在系统根目录下
    • 其他用户的家目录:/home/用户名
  • 空格
    • Linux的命令与参数用空格隔开
  • /
    • 整个Linux的文件根目录
  • 命令的参数
    • 如果是单词,一般加--
    • 如果是字母或者缩写,一般加-

4. Linux的文件系统

  • 一级目录:/
    二级目录:/etc,/boot,/sbin,/usr,/opt
    三级目录:一般在三级目录才开始创建自己的目录
    ...
    
  • 如果磁盘空间不够用,可以挂载文件mount

本文标签: 学习笔记完美Linux