Linux基础与安装


1 计算机系统

1.1 基本原则

硬件——CPU + 内存 + 外设

软件——系统软件 + 应用软件

冯诺依曼体系结构——运算器+控制器+存储器+输入+输出

其中CPU=运算器+控制器

8bit = 1byte(字节)

1.2 关于服务器

服务器server是计算机的一种!

服务器硬件组成=CPU + 主板 + 内存 + 硬盘 + 网卡 + 其他硬件

机架式Rack服务器(统一标准制作)宽度19英寸高度单位为U    

 1U=1.75英寸=44.45mm分为1U、2U、3U、4U、5U、7U(主流为2U、4U)

机架总高度一般为42U(约2m)

服务器的CPU一般使用Intel  Xeon(至强)       

手机CPU一般使用高通骁龙/华为麒麟

1.2.1 中央处理器CPU

按照CPU的体系架构可分为:

非x86服务器RISC:价格昂贵、体系封闭、稳定安全(精简指令集)

全世界超过95%的智能手机和平板电脑都采用ARM架构(典型的精简指令集微处理器)

x86服务器CISC:便宜、兼容性好、稳定性较差(复杂指令集)包括Intel、AMD

之所以称为X86,是因为最早Intel的CPU型号是8086,后来出现了80286,80386,80486,80586等,所以之后的Intel和其兼容的厂商的生产CPU都称为X86 CPU为了区别,一般将64位的CPU称为X86-64不同厂商称呼有所不同,AMD 64,x86-64,x64都指的是基于X86的64位CPU

主要性能指标

主频是CPU的时钟频率,是CPU运算时1秒内发生的同步脉冲数

高速缓存高速交换的存储器

内存总线速度

地址总线宽度

1.2.2 主板mainboard 

一般为矩形电路板,安装了组成计算机的主要电路系统

提供插槽——插入内存、硬盘、CPU

1.2.3 内存RAM

是CPU进行高速运算时存放数据的临时场所(一种高速集成电路)

CPU能够直接寻址的存储空间,特点是存取速度快

计算机中所有程序的运行都是在内存中进行的(关键性)

外存:硬盘、光盘、U盘内存(RAM)断电后数据丢失!外存(ROM)可以断电保存!

内存带宽:内存与芯片之间的数据传输率(基本单位为字节byte)

内存带宽 = 内存总线频率 x 数据总线位数 / 8

单通道DDR内存带宽计算:DDR4-4000  :  4000MHz x 64bit/8=32000Mb/s(理论值)双通道则为2倍!

出现多位错或物理故障时,保证系统仍然正常运行的办法:

在线备用内存技术(由备用内存接替工作)

内存镜像(数据同时写入两个镜像的内存区域)

1.2.4 硬盘

机械硬盘(损坏可恢复)信息存储在盘片中、读写头为磁头、高速马达、固定转速

容量——MB/GB/TB

转速——单位为rpm,每分钟转速

传输速率——读写速率,MB/s

缓存——为了解决系统前后级读写速度不匹配的问题(提速)

硬盘接口类型(家用)SATA接口——提高速率、支持热插拔(服务器)SAS接口——兼容SATA

固态硬盘(损坏不可恢复)泛指使用NAND flash组成的固态硬盘

无机械结构,以区块写入和抹除的方式来进行读写

读写速度快!性能稳定!价格高、容量小

改进思路:把数据放进缓存,大大提升处理速度(缓存为王)

1.2.5 网卡

服务器都在主板上集成了网卡,传输速率为1Gbps,即千兆网卡

特殊应用需要用到高端网卡,如光纤网卡。。。速度可达10Gpbs、20Gbps,即万兆网卡

1.2.6 阵列卡Raid

用来实现RAID的建立和重建,检测修复多位错误,错误磁盘自动检测

RAID芯片使得CPU的资源得以释放

把若干磁盘按照一定要求组成一个整体(一个由阵列控制器管理的系统)

此卡用来提高磁盘子系统的性能及可靠性

性能参数:

支持的RAID级别

阵列卡缓存

电池保护

1.2.7 各种硬件处理速度

总体性能短板的影响因素:综合CPU、网卡、内存、硬盘

各个处理能力取最低值(木桶效应)

因此硬盘读写速率成为性能瓶颈!

各种硬件处理速度CPU > 缓存 > 内存 > 固态硬盘 > 机械硬盘


2 操作系统(operating system)

2.1 基本概念

操作系统本质是一个软件,为了实现一些通用的目的

包括:硬件驱动/进程/内存/网络/安全/文件的管理

2.1.1 OS分类

服务器OS——windows server,centOS,RHEL,AIX

桌面OS——Windows 10,Mac OS,Fedora

移动设备OS——Andriod,IOS,AliOS

2.1.2 接口(interface)

用来连接两个东西、信号转换、屏蔽细节

用户——应用软件——操作系统——硬件

两部分之间的交互通过不同的接口(interface)来实现

操作系统一般提供两个重要接口来满足用户基本使用需求

1.命令行:由一个名为shell的终端程序提供,底层实质是调用一些OS提供的函数

2.窗口界面:通过编写的窗口程序接收来自操作系统消息队列的一些键鼠动作,进而做出一些响应

开发接口标准:

ABI=应用程序二进制接口——描述app与OS之间的底层接口,允许编译好的目标代码在使用兼容ABI的系统中无需改动就能运行

API=应用程序开发接口——定义了源代码和库之间的接口,表示在调用某个特定功能时需要遵守的规范

运行程序的格式(在不同OS中不一样)Windows:.exe,.dii,.libLinux:ELF,.so,.a

POSIX(可移植的操作系统接口)IEEE在操作系统上定义的一系列API标准

2.1.3 用户态/内核态

计算机硬件资源都是由OS内核进行管理,为保证OS的安全与稳定,将程序执行的状态分为不同级别,为0~3

0是内核态,具有最高权限,能访问所有数据

3为用户态,只能执行一些特定的指令

2.1.4 系统调用(system call)

由OS内核提供的一系列函数,让开发者实现非一般性使用需求。属于一种特殊的函数调用

2.1.5 用户空间/内核空间

用户空间:User space用户程序的运行空间,处在隔离区,用户程序崩溃不会影响内核只能执行简单运算,不能直接调用系统资源,必须通过系统调用向内核发出指令

内核空间:Kernel space是Linux内核的运行空间可以执行任何命令、调用一切系统资源

2.1.6 编程语言

低级语言机器语言:0  1

汇编语言:与机器语言一一对应,与硬件相关的特有代码、驱动程序开发

中级语言(C语言)系统级应用、驱动程序

高级语言java,python,go,php,C#,objective-C应用级程序开发

2.2 服务器操作系统

三大主流:Windows、Linux、Unix

Linux操作系统是什么:

完整的类UNIX操作系统: Linux内核 + GNU工具 = Linux/GNU

比如:CentOS,Ubuntu,Android

Linux是一个开源内核,套上不同的外壳可以有许多不同的版本在此主要学习CentOS(redhat公司社区版),Ubuntu(debian公司)

2.2.1 Linux内核

Linux内核版本组成部分:主 . 次 . 末 - 打包 . 厂商

打包版本号:表示编译次数

厂商版本号:表示适用于哪个OS

2.2.2 Linux发行版本

发行版的名称和版本号由该发行版的维护者决定

RedHat Enterprise Linux 7.5(Enterprise表示企业版)由红帽公司发布

2.2.3 开源 Open Source

表示软件和源代码提供给所有人,能修改和创建衍生作品

世界上有上百种开源许可证,如copyleft。。。反之对应copyright表示版权所有

2.2.4 Linux哲学思想

一切皆为文件(包括硬件)

小型、用途单一的程序

链接各个程序共同完成复杂的任务

避免复杂的用户界面

配置数据存储在文本中

 Linux安装与基本操作

1 Linux安装前准备

打开虚拟化功能(有些品牌CPU默认关闭此功能)

在很多家用台式机和笔记本电脑上,虚拟化功能默认是关闭的,再要打开后才能使用Vmware等虚拟化软件,否则会报错

2 Linux目录结构

只有一个根目录  /        至少有一个分区与根目录关联

/Users 用户

/home

/boot  启动相关

/proc  内存(虚拟目录)

/var/log  日志信息

/tem 临时

/etc  注册表

/dev  设备

硬盘分区在/dev目录之下,按顺序命名为sda、sdb、sdc...

为了访问其中存放的文件,需要将每个分区关联到某个确定的文件夹(即为挂载mount),以此获得一个路径

磁盘分区类型:

GPT:只支持主分区(安装OS)

MBR:

主分区:多个主分区只会有一个处于激活(安装OS时系统自动寻找激活的主分区)

扩展分区:一个硬盘最多一个,不能直接存数据逻辑分区(扩展分区内的小块):可存放数据

主分区加上扩展分区最多只能有4个,扩展分区细分成逻辑分区数目不限

多个主分区的命名:/dev/sda1、/dev/sda2(数字1/2不需要强制排序)

扩展之下的逻辑分区命名:/dev/sda5、/dev/sda6 (强制从5开始,因为主分区+扩展最多排到4)

3.1.2 分区策略(推荐)

/dev/sda    200G(磁盘总空间)

/dev/sda1 mount  /boot  1G  (主分区1挂载到boot目录,分配1G空间)

挂载的目标文件夹称为挂载点mount  point

/dev/sda2 mount  /    100G(根目录分配100G)

/dev/sda3 mount  /data  50G  (测试与练习分配50G)

/dev/sda4              extend  50G (只剩一个,先分为扩展分区,再分逻辑分区用于其他)

在Windows中可以在磁盘上划分一块储存空间,在RAM不足时临时应急使用,称之为虚拟内存
同理,在Linux中也存在类似的思路,不同之处在于Linux使用一个分区来实现,称之为swap分区
与设备挂载不同,swap是一个特殊分区,用于实现虚拟内存,但swap也需要一个分区序号,
为了不占用主分区名额,先将剩余空间全部分配给扩展分区,然后使用/dev/sda5 作为swap的使用空间(这是人的思路)

实际安装向导中,直接分配swap的大小,然后系统会自动将其分配为sda5!!!

/dev/sda5              swap    4G      此处不是挂载,不需要  / 

swap一般情况取值为自身物理内存的1.5或2倍(内存不足时的思路)

3 使用虚拟机进行安装

在C盘新建VMs文件夹,子目录分别建好对应的不同版本OS

VMware开始创建虚拟机:

向导安装来源:选择稍后安装(若选择映像文件就直接默认自动安装了)

选择所需的OS版本

名称改为对应版本名,位置存放在第一步设置的文件夹

设置磁盘大小,此处选择200G勾选,将虚拟磁盘存储为单个文件

完成

调整硬件设置:

点击CD/DVD,使用ISO映像文件,选择下载好的文件进行关联

CentOS6.10内存分配1G

CentOS7.6内存分配2G

Ubuntu内存分配2G

各个CPU核心数量也可适当增加,设置为双核

4 各系统安装详细步骤

CentOS 6.10

开机,进入光盘加载页面

选择第一行进入,进入安装界面,等待

提示:是否需要测试,OK > Test  等待  > 显示Success > OK

提示光盘是否插入,右下角光盘图标,右击选择连接  > OK > continue

进入安装向导界面 > Next  > 选择语言(English) > 选择键盘布局(默认U.S. English)

what type of devices will you installation involve? > 默认第一行(Basic storage devices本地硬盘)

弹出Warning,检测到200G硬盘,选择yes,discard any data(初始化所有数据)

设定主机名 Hostname:centos6.localdomain左下角configure network点击进入,点击默认网卡eth0,右侧点击Edit编辑,勾选自动连接 > apply

按ctrl+alt+F2切换到命令行界面, 输入ifconfig查看Internet是否已经连接(if=interface接口)若已经连接,在Windows的cmd界面用ping命令检测可用性按ctrl+alt+F6回到安装界面

选择时区,下拉选择上海Asia/Shanghai,左下角的勾选需要取消掉!不使用UTC时区

为root用户设置密码

which type of installation would you like?此处我们选择自定义分区策略,为最后一项,Creat custom layout

选择sda硬盘,单击create,选择standard partition(标准分区),文件系统默认ext4选择mount point挂载点:首先给根目录100G,默认单位是MB,因此填写102400, >  OK

重复操作,设置好/boot、/data

设置虚拟内存:直接选择文件系统为swap,分配内存即可
1=若想查看当前系统的RAM,如何查看?
直接右击VMware标签页查看属性即可
2=如果是物理电脑又应该如何查看?
按ctrl+alt+F2切换到命令行界面,输入 cat /proc/meminfo执行(centos7直接用free,此处mem=memory,info=information)

然后shift+pgup向上翻页可看到MemTotal=即为内存总大小

按ctrl+alt+F6回到安装界面,设置好swap的大小  >  next

设置之后发现系统自动设置 swap 为 sda5  > next

格式化警告 Format warning ,点击format确定格式化弹窗点击write changes to disk >  真正开始分区输入 cat  /proc/partitions执行,查看分区状态

分区完成之后  > next  > 选择工作场合  > 默认选择desktop(工作中选择最小化minimal)最下面选择右边customize now(定制)  > next

选择desktops  > 右侧勾选KDE desktop  > next

开始安装,时间等待 >  >  >  >  > 安装完成 > 点击重启reboot

重启完成 > 初次启动的初始化设置 > forward >  license> forward

创建用户 > 输入用户名和密码 > 提示密码太简单 > YES > 时间设置 >  forward

提示kdump无法启用 > 继续 > finish  > 安装完成!

!!!!!!!刚装好的系统,设置快照作为备份


CentOS 7.6(安装之前确保内存足够)

开机 > 选择第二项,测试并安装(默认值)。。。等待

进入向导 > 选择语言和键盘 > 默认值English

设置日期东八区上海

安装资源选择默认值

软件选项选择GNOME Desktop(默认值最小化,用于实际工作)

选择安装目标(分区)先在下方勾选 I will configure partitioning >  Done > 下拉框选择标准分区点击 + 开始挂载 各个文件夹并分配内存(默认格式xfs)

swap可直接选择分配 ,若不知道物理内存,centos7可直接使用 free 命令查看mem空间,

设置完成后单击Done > accept > 设置KDUMP取消勾选(禁用内核分析)

network设置 > 默认OFF禁用网卡,点击打开ON,即可显示IP,左下角设置主机名 > apply > done

检查无误 >  >  > 右下角begin installation开始安装

设置root密码 > done  > 创建普通用户 > 起名 > 不设置管理员 > 密码 > done  > 等待 >  >  >  >  >

安装完成 > 点击重启reboot  >  >  >  >  >  >  >

设置license  > 下方勾选接受  > done  >  设置network  > 前期已完成 ,无需修改 > done  > finish

等待完成    >  >  > 设置快照


Ubuntu1804(全程键盘操作)

开启虚拟机向导,选择典型  >  稍后按照操作系统  > 选择下拉框ubuntu64位  > 修改名字与安装路径

设置硬盘200G,单个文件  > 自定义硬件

选择DVD设置映像文件路径  > 完成

确定光盘映像文件已经选择好

工具栏绿色三角开机  > 选择语言English  > 版本选择第一项  > 语言English  > 国家选择other  > 地区选择Asia  > China  > 选择locales(语言字符集)united states  > 是否检测键盘 NO  > 键盘English  >English(US)

设置hostname  > Ubuntu1804

设置新的用户(root默认不允许登录)> 输入密码  > 确认密码  > 简单密码确认  >  >  > 等待设置clock

选择时区

磁盘管理  > 选择最下方manual  > 选择设置好的硬盘  > 下一步yes  > 选择sda  > yes  > 选择free space

开始分区  > create a new partition  > 填写分配的内存  >  选择primary(主分区)  > begin  > 选择第二行挂载点  > done setting  > 完成一个盘的挂载 

依次完成  /  /boot  /data (100+1+50),其中/data需要手动输入目录名

最后swap也是先输入内存大小  > 选择logical  > 选择第一行swap  area  >  done setting  > finish partitioning在Ubuntu中进入命令行是C+A+F2,返回界面是C+A+F1

写入修改 左下角yes  >  >  >  >  > 配置package manager  直接continue  >  >  >  >

选择更新选项  > 拒绝自动更新  >  软件选项  勾选最下方Open SSH server  按空格键确定>  >

是否安装GRUB 引导程序  >  yes  >  >  > 安装结束,是否重启 yes  >  >  > 设置快照


备份很重要!

退出VMware,进行各个OS的彻底备份:

将各个文件夹直接复制到另一个盘!!!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342