01Linux快速入门

1.计算机组成原理

1.1什么是计算机

  • 计算机一般被称为"电脑",即通电的大脑

    • 电脑二字蕴含了人类对计算机的终极期望;
    • 希望它能像人脑一样为我们工作,从而取代人力,解放人类

1.2 为什么要有计算机

  • 为什么要有计算机,或者人类为什么要造计算机?

    • 其实是为了执行人类的程序,从而将人力解放出来;(因为

      人存在很多不可控因素)
    • 所以计算机在造的时候,它每一部分的设计都是在模仿人的

      某个器官或功能去设计的

1.3 计算机五大组成部分

  • 计算机由五大组件组成,我们完全可以把计算机的五大组件比喻成人类的各个器官

    • 控制器
    • 运算器
    • 存储器
    • 输入设备Input/I设备
    • 输出设备Output/O设备

1.3.1 CPU

  • 控制器:

    • 作用:是计算机的指挥系统,主要负责控制计算机其他所有

      组件如何工作的;
    • 比如:走路、跑、跳、说话都是谁在控制呢?
    • 类比:控制器-->人类大脑;
  • 运算器:
    • 作用:运算及字面含义,主要包含数学运算、逻辑运算;
    • 比如:1+1=数学运算;上车看见好看姑娘,追还是不追=逻

      辑运算;
    • 类比:运算器-->人类大脑
  • 小结:
    • 其实控制器和运算器压根就不是两个硬件
    • 控制器+运算器其实就是 CPU(芯片) --> 人类的大脑(前脑

      +后脑)
  • CPU 其他知识:
    • CPU 路数:服务器中有多少个 CPU ; 单路=1个CPU 双路=2个

      CPU
    • CPU 核数:决定来了服务器并行(同时 )处理任务的能力;

      1颗物理CPU,6个线程
    • CPU 超线程:所谓的超线程就是一项CPU的技术,原本CPU

      的核心和线程数量是对等的,利用了超线程的技术可以让一

      个核心对应多个线程:

      • i7 9700K :8核心 16线程 超线程
      • i7 9800X :8核心 8线程
    • 原生原生只能做8个核心同时工作,而超线程的能做16个核心同

      时工作;
    • 超线程CPU在同一时间能够开更多的程序,能够有效的利用

      资源,从而提高整体的运行效率

1.3.2 内存/硬盘

  • 存储器/IO:

    • 作用:负责程序数据的存取,对于计算机来说,有了存储

      器,才有记忆功能;
    • 分类:
      • 内存:内存基于电工作,通电就可以存储数据;

        • 优势:存取数据快;
        • 缺点:断电数据会丢失,仅能临时存储数据;
      • 外存:外置硬盘,基于磁工作;
        • 优势:断电数据不会丢失,可以永久保存数据;
        • 缺点:存取速度慢;
    • 类比:

      内存-->大脑的记忆功能(快、短期记忆);

      硬盘-->随身携带小本本(慢、长期记忆);
    • 举例:
      • 女朋友的生日假设是 (0921) ,我们一般记忆在哪最合

        适;

        • 1.可以记忆在大脑,快速响应,但如果搬砖敲你一

          下,失忆了怎么办;
        • 2.聪明的伙伴会说我记录在小本本上,忘了看一眼,

          然后延迟响应 (dsg) ;
      • 如果女朋友问她的生日是什么时间,怎么记忆最佳:
        • 第一步:单纯记录到脑子里可能会忘记,所以我将生

          日记录到小本本上;
        • 第二步:在女朋友每次询问我之前,将小本本拿出来

          看一眼,记到脑子中;
        • 第三步:在女朋友问我的时候,我直接从脑子记忆中

          提取她的生日日期即可;
    • 敲重点:如果程序的数据要快存快取:
      • 第一步:将应用程序存储至硬盘中,如果不用就放在那,

        也不占多少空间;
      • 第二步:一旦需要使用该程序,首先将程序存储在硬盘的

        数据加载到内存中;
      • 第三步:最后CPU读取内存中的指令,进行分析和处理;

        从而保证程序的执行速度;

1.3.3输入设备

  • 输入设备 Input :

    • 作用:往计算机里面输入内容;(键盘、鼠标)
    • 比如:眼睛看、耳朵听;
    • 类比:输入设备-->人类的(眼、耳);

1.3.4 输出设备

  • 输出设备 Output :

    • 作用:计算机向外输出数据的工具;(显示器、打印机)
    • 比如:人说话,人发布文章
    • 类比:输入设备--> xx ;

1.3.5 五大组件总结

  • 老师讲课,学生听课,老师是程序员,学生是计算机;(学生的

    器官都是计算机各部分组成)

    • 1.学生通过自己耳朵听、眼睛看,接收老师讲的知识;这个

      就是-->输入
    • 2.学生通过自己的神经、将接收的信息存入自己的短期记忆

      中;这个就是-->内存
    • 3.学生光听不行,还需要理解老师讲的知识,于是你的大脑

      从短期记忆里取出知识/指令,分析知识/指令,然后学习知

      识/执行指令 -->这就是cpu(取指、分析、执行)
    • 4.学生通过作业、给其他学生讲解、将学到的东西表达出来-->这就是输出
    • 5.学生想要永久将知识保存下来,进行长期记忆、需要将内

      容写到本子上;-->这就是硬盘

1.4 计算机三大核心硬件

  • 我们将五大组成部分,进一步提炼出其中的三大核心硬件:

    (CPU、内存、磁盘)

    • 因为一个程序的运行与计算机三大核心硬件存在着特定的联

      系;
    • 前提: 人 --通过--> 语言 --控制--> 计算机(即人)
    • 举例:我通过语言编写一段程序,控制计算机(人)做如下

      几件事:

      • 1.买烟;
      • 2.掏钱;
      • 3.回家;
      • 目的:控制人的身体去运转、替我们工作;
  • 问题1:我们编写的程序没有详细描述他应该如何工作,那到底

    是计算机的哪个组件下发的控制指令;

    • 其实计算机的所有组件都受计算机的 CPU 控制;
    • 也就是程序是直接控制大脑 (CPU) ,由大脑 (CPU) 间接支

      配人的肉体(组件),从而实现程序支配肉体工作
  • 问题2:如果我不想每次反复描述这件事,希望这个任务反复运

    行怎么办;

    • 计算机具备存储的就是内存和硬盘;

      • 如果直接存储在内存丢失了怎么办,难道在描述一次;所

        以这个程序是需要存储在硬盘上;
      • 也就是编写好的程序或者软件一定是存储在硬盘上的;
  • 问题3:如果只有 CPU 和硬盘,能否将这段程序运行起来;
    • 其实是可以运行起来的, CPU 从硬盘中取出指令进行运行即

      可,但是存在问题;

      • CPU 的速度要远高于硬盘;如果每次都需要从硬盘数据

        中读取一条数据,然后CPU处理一条;然后继续读取、继

        续处理,一直反复这个过程,那么大量的时间都会浪费在

        数据的读取上;
      • 那我们该如何提升程序运行的速度呢,此时就需要内存的介

        入(人脑的记忆);

        • 第一步:我们将要操作的步骤存储至磁盘(小本本);
        • 第二步:将硬盘的数据加载进内存中(大脑的记忆);
        • 第三步:CPU从内存中读取指令运行,效率非常高;

1.5 操作系统基本概念

1.5.1 操由来作系统

  • 需求:

    • 开发一个编辑工具,该软件的一个核心业务就是文本编辑,

      编辑内容就牵扯到要操作计算机硬件;
  • 问题:
    • 1.不管我们编写什么软件,最终的目的是为了控制硬件;
    • 2.但对于计算机而言,它是死的,它不可能自行运行,所有

      的硬件运行都需要软件进行支配;
  • 实现:
    • 第一步:我们必须先开发一个 ”控制系统“ 来控制计算机的硬

      件基本运行;
    • 第二步:然后在开发编辑工具的业务功能,但凡涉及到要操

      作硬件,则调用控制系统;
    • 第三步:最后由控制系统来控制计算机硬件进行运行;

1.5.2 什么是操作系统

  • 其实前面所所的控制系统有一个更好听的名称,操作系统

    Operation System, OS

    • 1.操作系统是”应用软件“与”硬件“之间的一个桥梁;
    • 2.同时也是一个协调、管理、“控制计算机硬件资源”、“软件

      资源”的一个控制程序;

1.5.3 为什么需要操作系统

  • 1.控制计算机的基本运行;
  • 2.将硬件的复杂操作简单化,供上层应用程序使用;
  • 3.为用户与计算机硬件之间提供 ”图形/命令行“ 工具;

2. Linux系统基本介绍

2.1 什么是Linux

  • Linux 和我们常见的 Windows 一样,都是操作系统,但

    linux 有两种含义;

    • 一种是 Linus 编写的开源操作系统的内核
    • 另一种是广义上的操作系统
  • Linux 与 Windows 系统不同的是;
    • Windows 收费,不开源,主要用于日常办公、游戏、娱乐多

      一些。
    • Linux 免费,开源,主要用于服务器领域,性能稳定,安

      全,更新频次高。
  • 例如: 淘宝、百度、腾讯等互联网公司,他们使用的服务器全都

    是 Linux 系统;

2.2Linux系统发展史

既然是历史,那就让他成为历史吧,因为我根本记不住历史。(因为

我不是导游,不靠记历史赚钱)。

虽然历史不重要,但是还是需要了解 Linux 在发展过程中的一些重

要人物

2.3 自动软件之父

  • 自由软件之父 Richard M. Stallman 1984 发起了 GNU 组织

  • GUN 组织中有几个项目:

    • copyleft :代表无版权。 copyright :则代表有版权。
    • opensource :开放源代码、软件谁都可以使用、谁都可以

      传播、谁都可以二次开发
    • free :免费
    • GPL :通用版权许可证协议,如果软件被打上GPL,那么任

      何人都可以对这个软件进行修改,但是修改完之后必须将源

      码发布出来,以便更好的传承下去。
  • 总结:

    • Linux 中的软件百分之八十都是 GPL 提供;
    • 自由软件运动的口号是:“团结就是力量”;

2.4 Linux系统之父

  • Linux 之父 Linus Torvalds 林纳斯.托瓦兹 1991 年 Linux 内

    核;
  • 操作系统的核心称为“内核”,但内核并不就等于操作系统;
  • 内核提供系统服务,比如文件管理、虚拟内存、设备I/O等还

    包含一些基本的程序、编译器、shell等;所以单独的Linux核

    没办法工作,须要有GNU项目的众多应用程序;
  • 其实 Linux 官方叫法是 GNU/Linux 使用 GNU 的软件加上

    Linux 内核,一般简称 Linux

2.5 Linux系统发行版

我们现在说的 Linux 其实都是指的是发行版 Distribution

version ;就是使用 Linux 内核加上各种 GNU 的库文件、应用程

序,构造而成的操作系统。

Linux发行版介绍 RHEL/Centos/Ubuntu/Suse

  • Redhat 企业级操作系统, Linux 的内核进行编译安装相应软

    件,进行专业的测试,然后进行发行;
  • CentOS 社区企业级操作系统,改与 Redhat 完全开源(没有售后);
  • Ubuntu 社区维护, 现在主要做手机系统和电脑桌面系统;
  • Debian 等等.........

2.6 为什么使用CentOS

  • CentOS 是 Community Enterprise Operating System 的缩写表示 "社区企业操作系统"
  • CentOS 兼具 Community (社区)和 Enterprise (企业的

    特性
  • CentOS 稳定、长期支持(10年)大规模使用稳定;

2.7 Linux认证是否需要考

Linux相关认证介绍 RHCSA/RHCE/RHCA

  • RHCE: 中级工程师 --》两个模块(片面)

  • RHCA:高级工程师

  • 常见问题:老师我到底要不要考一个红帽证书,学完咱们这个

    Linux 云计算课程能不能考?

3.Linux系统安装

3.1安装配置VM虚拟机

VMware WorkStation 虚拟机软件是一款桌面计算机虚拟软件,让

用户能够在单一主机上同时运行多个不同的操作系统。

3.2 安装Linux操作系统

CentOS

安装 RHEL/CentOS7 系统时需要注意:您电脑的 CPU 需要支持VT(Virtualization Technology虚拟化技术) 所谓VT,指的是让单台计算机能够分割出多个独立资源区,并让每个资源区按照需要模拟出系统的一项技术,其本质就是通过中间层实现计算机资源的

管理和再分配,让系统资源的利用率最大化

注意:如果开启虚拟机后依然提示 CPU 不支持 VT 技术”报错信息,

请重启电脑并进入到 BIOS 中把 CPU 的 VT 虚拟化功能开启即可。

第1步:在虚拟机管理界面中单击“开启此虚拟机”按钮后数秒就看到

RHEL 7 系统安装界面,如图1-所示。

描述 含义

Install Red Hat Enterprise Linux 7 安装Redhat Linux7系统

Test this media & install Red Hat

Enterprise Linux 7 校验光盘完整性后再装

Troubleshooting 启动救援模式

  • 第2步:接下来按回车键后开始加载安装镜像,所需时间大约在30~60秒,请耐心等待,如图1-27所示。

3.3 安装Ubuntu操作系统

3.3.1 下载Ubuntu

ubuntu 中文下载网: https://cn.ubuntu.com/

第三方镜像站点:

https://mirror.tuna.tsinghua.edu.cn/ubuntu-releases/

3.3.2 选择系统语言

3.3.3 选择键盘语言

3.3.4 配置网络地址

配置自定义网络

3.3.5 调整仓库地址

将原本国外的仓库地址修改为国内阿里云地址

http://mirror.aliyun.com

3.3.6 调整分区策略

3.3.7 设定登录用户

ubuntu默认拒绝root直接登录,需要创建一个普通用户进行登录

3.3.8 启用远程连接

勾选 Install OpenSSH Server 否则通过远程连接服务器

3.3.9 完成安装

安装完成后,选择 Reboot Now 重启完成系统安装

Linux基础 -01的更多相关文章

  1. Linux基础01 学会使用命令帮助

    Linux基础01 学会使用命令帮助 概述 在linux终端,面对命令不知道怎么用,或不记得命令的拼写及参数时,我们需要求助于系统的帮助文档:linux系统内置的帮助文档很详细,通常能解决我们的问题, ...

  2. 大数据学习之Linux基础01

    大数据学习之Linux基础 01:Linux简介 linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹 在1991年10月5日首次发布.,在加上用户空间的应用程序之后 ...

  3. Linux基础01

    ** 一些老生常谈的问题 一提起Linux,行业内无人不知<鸟哥私房菜>,就是放在胸口可以防弹的那种书,虽说经典.全面,但对于初学者而言,确实过于厚重,而且容易学着后边忘了前边,毕竟实际操 ...

  4. Linux基础(01)开发环境的搭建

    内核源码下载 : https://blog.csdn.net/u011375704/article/details/81866427 1.在虚拟机安装Ubuntu 14.04版本 (安装时设置好用户名 ...

  5. Linux基础命令层级图-01

    Linux基础命令层级图-01:

  6. 还是不想改报告,伊阿忆啊哟-Linux基础继续

    hi 虽然今天是最最美好的周六(前不着工作日后不着工作日),但老子还要来改报告,但额就是不想改,你拿我有啥办法啊... 争取完结Linux基础 一.Linux常用命令(三) 4.帮助命令 4.1 帮助 ...

  7. Linux江湖01:玩转Linux系统的方法论 (转载)

    http://www.blogjava.net/youxia/archive/2015/01/08/linux001.html 2014年上半年,我是在写RCP系列.然后,由于要准备研究生毕业论文和答 ...

  8. Linux基础 - 系统优化及常用命令

    目录 Linux基础系统优化及常用命令 Linux基础系统优化 网卡配置文件详解 ifup,ifdown命令 ifconfig命令 ifup,ifdown命令 ip命令 用户管理与文件权限篇 创建普通 ...

  9. Linux基础系统优化及常用命令

    # Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ...

随机推荐

  1. 【例 3】 修改 bols 文件的 atime 和 mtime。 [root@localhost ~]# touch -d "2017-05-04 15:44" bols

    Linux touch命令:创建文件及修改文件时间戳 < Linux删除空目录(rmdir命令)Linux在文件之间建立软/硬链接(ln命令) > <Linux就该这么学>是一 ...

  2. Java 单例模式:懒加载(延迟加载)和即时加载

    引言 在开发中,如果某个实例的创建需要消耗很多系统资源,那么我们通常会使用惰性加载机制(或懒加载.延时加载),也就是说只有当使用到这个实例的时候才会创建这个实例,这个好处在单例模式中得到了广泛应用.这 ...

  3. Centos7 vsftpd虚拟用户权限控制(vsftpd虚拟用户限制IP访问)

    实验目标:(新增限制虚拟机用户登陆的IP) 实现在同一跟目录下对admin,upload,download三个虚拟用户的不同权限的控制.具体权限控制列表如下: 用户名 权限说明 admin 管理员,可 ...

  4. 为鸿蒙OS说两句公道话(我对鸿蒙OS的一些看法)

    为鸿蒙说两句公道话 今天看了鸿蒙系统的评测,看完后我感觉很欣慰,为什么这么说 ? 不是很多人吐槽鸿蒙是 Android 套壳吗 ?或者叫鸿蒙 UI 吗?说鸿蒙没有自己的核心技术.看了鸿蒙系统的设计,底 ...

  5. Zabbix企业分布式监控工具

    前言:在工作中常常需要对服务器进行监控,但是要选择一款合适监控软件可不容易,今天介绍下zabbix这款监控软件 一.Zabbix介绍1.Zabbix是一个企业级的.开源的.分布式的监控套件2.Zabb ...

  6. docker部署node.js

    1.dockerfile FROM node:14.16.0 RUN mkdir -p /var/log/lily/ RUN mkdir -p /opt/node # 工作目录 WORKDIR /op ...

  7. NVIDIA GPU的神经网络自动调度

    NVIDIA GPU的神经网络自动调度 针对特定设备和工作负载的自动调整对于获得最佳性能至关重要.这是一个关于如何使用自动调度器为NVIDIA GPU调整整个神经网络的资料. 为了自动调整一个神经网络 ...

  8. 记 Ant Designer Vue 2.0.1 layout 丢失样式类名问题分析

    现象 <a-layout-sider /> 渲染到页面上会变成 <section class="undefined-has-sider"> 丢失了 layo ...

  9. eclipse解决中文乱码

    参考链接:https://blog.csdn.net/lzc2644481789/article/details/97244261

  10. Qt中的内存回收机制

    Qt中的内存回收机制 在Qt中创建对象的时候会提供一个 Parent对象指针(可以查看类的构造函数),下面来解释这个parent到底是干什么的. QObject是以对象树的形式组织起来的.当你创建一个 ...