Linux基础—vmvare安装及centos7安装

发布时间 2023-07-27 16:35:03作者: 抱紧小洪

Linux基础

# https://zhuanlan.zhihu.com/p/429509333


# 一 什么是操作系统
Operating System(操作系统) 简称OS
Windows,MacOS,Linux都是操作系统


# 二 什么是BootLoader
在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境
一般在计算机启动的时候,选择启动Linux还是Windows的BootLoader是GRUB
如果没有选择,GRUB会在几秒后启动默认的操作系统
双操作系统启动流程如下图


# 三 Linux和Windows的软件
windows系统下的软件,不能在Linux上运行,Linux上的软件不能在windows上运行
Linux上的软件,基本上都是免费的
Linux上软件,更新更频繁,且免费
Linux上软件,效率更高


# 四 操作系统发展
# 1984年,微软发布了第一个操作系统-->MS-DOS
    -1980年,西雅图电脑产品公司(Seattle Computer Products)的一名24岁的程序员蒂姆·帕特森(Tim Paterson)花费了四个月时间编写出了86-DOS操作系统
    -在1981年7月27日,比尔盖茨完全获得了一个叫做Seattle Computer Systems(西雅图计算机系统公司)的“Quick and Dirty Operating System”,简称QDOS的授权,花费5w美元。后来该操作系统被称作MS-DOS


# 同时代,1969年(1970年,计算机元年)起,也有一款比较出名的操作系统叫Unix
    -1968年 Multics项目
    -MIT、Bell实验室、美国通用电气有限公司走到了一起,致力于开发Multics项目。到后期由于开发进度不是很好,MIT和Bell实验室相继离开这个项目的开发,最终导致项目搁浅。
    -1970年(Unix元年,时间戳) Unix诞生
    -当时在开发Multics项目的时候,实验室中有一个开发成员开发了一款游戏(travel space:遨游太空),因为两个实验室相继离开项目开发,导致这名开发人员没法玩游戏,后来他提议组织人员重新在Multics项目之上重新的开发,也就出现了1970年的Unix。当时Unix操作系统是使用的汇编语言(机器语言)开发的。
    -1973年 用C语言重写Unix
    -因为汇编语言有一个最大的局限性:对于计算机硬件过于依赖。导致移植性不好,所以后期在1973年使用了C语言对其进行重新开发。
    -1975年 Bell实验室允许大学使用Unix。
    -1975年,bell实验室允许大学使用Unix操作系统用于教学作用,而不允许用于商业用途。

# 在1984年,微软发布DOS的同时,理查德·马修·斯托曼(Richard Matthew Stallman, RMS)创立了GUN项目 
     -GNU项目 (牛羚),GNU is not Unix的缩写,目的是创建一个类Unix的操作系统,因为unix不是免费的,商业收费,刚开始学校教学免费使用,后来不免费了,价格比较贵(MacOS是类Unix操作系统)
   -理查德·马修·斯托曼:1953年出生,自由软件运动的精神领袖、GNU计划以及自由软件基金会(Free Software Foundation)的创立者、著名黑客,代表作:Emacs编辑器,GCC编译器,GDB调试器

 # 自由的和免费的
    -自由的意味着源代码必须公开(windows和macos是私有的)
    -自由软件大部分是免费的,但是可以复制,修改,出售

# 1991年 Linux的开发作者,Linux之父,李纳斯·托瓦兹。Linux诞生时是荷兰在校大学生。
    -1991年 0.0.1版本
    -李纳斯当时学校使用的就是Unix操作系统,然后其对系统的底层代码进行了修改,放到了学校为学生开放的网站上,原先他把文件命名写成了Linus’s Unix,后期网络管理发现之后觉得这个名字不好,自己手动的将名字改成Linux。随后其他同学下载之后发现这个版本还是挺好用的,随后都把自己代码贡献给李纳斯。
    -1992年 0.0.2版本
    -1994年 1.0版本
    -2003年 2.6版本
# Linux吉祥物企鹅
    -李纳斯以前在澳大利亚被一只企鹅咬过
    
    
    
 # 6 Linux和GNU的联系
    这两个项目是互补的,Linus其实就写了一个类Unix内核
    1991年GNU项目已经创建了不少操作系统外网软件,比如cp命令,rm命令,GCC,GDB等--》好比Linux就是人的骨骼,GUN就是血肉
    # 后来完善Linux的工作就由Linus和广大开源社区的黑客们
    # GNU项目+Linux内核=完整的操作系统,我们现在叫的Linux一般都是指GUN项目+Linux内核
    
    
 # 7 Linux内核
上述所提及的版本号并不是分支版本,而是指Linux的内核版本。
Linux内核网站(现在最新5.x版本,3.x多一些,原来2.x多,现在docker要跑在3上)
https://www.kernel.org/


# 8 各个操作系统的关系
# MacOS和Linux是基于Unix的意思是复刻了Unix的运行模式,源代码是不通的
# 目前Windows的版本是基于革命性的Windows NT内核


# 9 Linux发行版和区别
# 因为Linux是开源自由软件,所以基于开源的代码可以定制属于自己的Linux系统,所以Linux的版本特别多

# Linux不同发行版的区别(centos  乌班图 麒麟。。)
  -安装方式不一样,有的简单,有的复杂
  -安装应用程序的方式也不一样 (yum    apt-get)
  -预装的应用程序不一样 ()

# 不同发行版使用的Linux内核一样
    -我们现在说的Linux其实都是指的是发行版(Distribution version),就是使用Linux内核加上各种GNU的库文件、应用程序,构造而成的操作系统
    -可以想象成同一个人(Linux内核),穿不通的衣服裙子羽绒服(软件)

# 不同发行版有的免费,有的收费


# 不同发行版
    -Red Hat:性能稳定,老牌的Linux发行版,RHEL收费,是red hat的企业版,源代码是开放的,收费是因为长期升级更新服务
  -现在Red Hat分两个系列:一个是red hat公司提供收费技术支持的RHEL,另一个是社区开放的免费版Fedora,每半年发行一次,由于发行频繁导致性能不太稳定,企业一般不选用Fedora
  -Centos:算是RHEL的克隆版,社区企业级操作系统, 改与Redhat, 完全开源,兼具社区和企业特性,融合了Fedora和redhat优点,长期支持,大规模使用稳定,企业普遍使用,特别适合做服务器
  -Deepin:深度,中国发行
  -Debian:迄今为止,最遵循GUN规范的Linux系统
  -Ubuntu :Debian一个后继或分支,社区维护, 现在主要做手机系统和电脑桌面系统。
graph TD;

    Linux--> Debian
    Linux--> RedHat
    Linux--> Deepin深度
    
    RedHat--> RHEL
    RedHat--> CentOS
    RedHat--> Fedora

Linux学习环境搭建

虚拟化介绍

# win 机器----》装一个虚拟化软件----》虚拟化出linux操作系统

# kvm   vmware   openstack   docker  k8s
# kvm   vmware 虚拟化软件
-运行在linux上,做虚拟化的软件
-vmware运行在win,linux,商业软件,收费

# openstack 
	kvm 虚拟化很多机器,需要使用软件管理,对虚拟机进行管理
    阿里云买服务器

# docker  容器管理 

# k8s  多机容器编排

# https://www.cnblogs.com/liuqingzheng/p/16271895.html

# 一 IaaS基础设施服务
IaaS: Infrastructure-as-a-Service(基础设施即服务)

第一层叫做IaaS,有时候也叫做Hardware-as-a-Service,几年前如果你想在办公室或者公司的网站上运行一些企业应用,你需要去买服务器,或者别的高昂的硬件来控制本地应用,让你的业务运行起来。

但是现在有IaaS,你可以将硬件外包到别的地方去。IaaS公司会提供场外服务器,存储和网络硬件,你可以租用。节省了维护成本和办公场地,公司可以在任何时候利用这些硬件来运行其应用。

一些大的IaaS公司包括Amazon, Microsoft, VMWare, Rackspace和Red Hat,阿里,腾讯,华为
# 不是咱们买的阿里云----》租的机房---》租硬件(硬件,电,网)---》操作系统,虚拟化软件自己来
# 私有云

# 二 paas平台即服务
第二层就是所谓的PaaS,某些时候也叫做中间件。你公司所有的开发都可以在这一层进行,节省了时间和资源。

PaaS公司在网上提供各种开发和分发应用的解决方案,比如虚拟服务器和操作系统。这节省了你在硬件上的费用,也让分散的工作室之间的合作变得更加容易。网页应用管理,应用设计,应用虚拟主机,存储,安全以及应用开发协作工具等。

一些大的PaaS提供者有Google App Engine,Microsoft Azure,Force.com,Heroku,Engine Yard。最近兴起的公司有AppFog, Mendix 和 Standing Cloud
# 硬件+软件(操作系统,mysql,redis)
# 买台服务器:操作系统+软件+python环境+mysql


三 saas软件即服务
第三层也就是所谓SaaS。这一层是和你的生活每天接触的一层,大多是通过网页浏览器来接入。任何一个远程服务器上的应用都可以通过网络来运行,就是SaaS了。

你消费的服务完全是从网页如Netflix, MOG, Google Apps, Box.net, Dropbox或者苹果的iCloud那里进入这些分类。尽管这些网页服务是用作商务和娱乐或者两者都有,但这也算是云技术的一部分。

一些用作商务的SaaS应用包括Citrix的GoToMeeting,Cisco的WebEx,Salesforce的CRM,ADP,Workday和SuccessFactors
# 我们做saas平台

四 FAAS 函数即服务,Function as a Service  



四 总结
iass基础设施服务(组装机):你买了一大堆电脑配件,cpu 主板..然后组装完成后 装上系统就可以上网。还要自己提供场地 环境
paas平台即服务(品牌机):买回来开机就行。需要自己提供场地,和环境(电源)
saas软件即服务(去网吧):电脑,场地,环境(电源,网线,饮料)都是网吧提供的服务

vmvare安装

# VMware-workstation-full-17.0.0-20800274.exe 一路下一步

# 打开软件 --->创建虚拟机----》组装一台电脑

centos7安装

# 挂载光驱----》把cento7镜像链接上

# 照图安装

# 进入系统,重启网卡

# 使用finalshell链接

# 做个快照---》拍个照片,以后可以恢复到这个位置

远程链接

# 远程链接软件(centos虚拟机开启ssh服务的,监听了22端口)
	-win:
	    -finalshell
        -xshell :收费的,个人版免费
        -cmd
        
# 快照
	-保存这一时刻,后期恢复到这里
    -可以拍摄多个快照

网络

### 网络
# 网络配置
	-子网掩码
	-dhcp
    -网关
    -dns
# mac网络配置
    # https://blog.csdn.net/hadues/article/details/129214087
    # https://blog.51cto.com/u_15687422/5389794

#  win 上有网络模式
	-桥接:跟宿主机在同一个网段
    -Nat地址转换:虚拟机自有一套网络
    	-win上直接选它
        -mac上选新建 vmnet3
        -pd:host-only
    -仅主机
# DHCP
### 2.1 DHCP协议用途

动态主机设置协议(Dynamic Host Configuration Protocol, 缩写:DHCP),是一个用于IP网络的网络协议,位于OSI模型的应用层,包括两个主要用途:

用于内部网络或网络服务提供商自动分配IP地址给用户
用于内部网络管理员对所有电脑做中间管理

### 2.2 DHCP工作原理

DHCP是一种使网络管理员能够集中管理和自动分配IP网络地址的通信协议。在IP网络中,每个链接Internet的设备都需要分配唯一的IP地址,DHCP使网络管理员可以从中心节点监控和分配IP地址。

DHCP使用了租约的概念,称为计算机IP地址的有效期,租期时间的长短取决于连接Internet时间的长短,透过较短的租期,DHCP能够在一个计算机比IP地址多的环境中动态地重新配置网络。

DHCP支持为计算机分配静态地址,如需要永久性IP地址的Web服务器。




# 如果之前装机没配好---》后期可以再配置
	-vmware网段设置好
    -虚拟机选用了这个nat地址转换
    -虚拟机中,使用命令和修改文件
    	-/etc/sysconfig/network-scripts
        -ifcfg-ens32  #ifcfg开头的文件,如果有多个网卡,有多个ifcfg-ensxx文件
        -vi ifcfg-ens32
        TYPE=Ethernet
        DEFROUTE=yes
        NAME=ens32
        UUID=cc56788f-4d01-4848-82d1-f8c4dab9aa86
        DEVICE=ens32
        ----------------------------------------
        ONBOOT=yes
        BOOTPROTO=static
        IPADDR=10.0.0.100
        GATEWAY=10.0.0.254
        DNS1=119.29.29.29
        DNS2=114.114.114
	-修改完后重启网卡
     systemctl restart network #重启网卡
     ip addr # 查看ip地址
    
# 保存一个模板机
	-shutdown now  #关机
    - 克隆一个虚拟机(完整克隆)
    - 开启,进入,修改ip  10.0.0.100
    -关机
    -以后想再复制一个虚拟机,直接基于模板机克隆即可