1-8|1-8 day
day01 2019.2.27
运维人员的核心职责
企业数据安全(不丢失、不泄露),
企业业务7*24小时运行(永不停机)
3,企业业务服务效率高(用户体验好)
,
day022019.2.28
服务器的主流型号
2010年以前 1U的主流型号:1850,1950。2U的主流型号:2850,2950
2010年-2013年 1U的主流型号:R410,R610。2U的主流型号:R710
2014年-2016年 1U的主流型号R420,R430,R620,R630。2U的主流型号:R720,R730
IBM服务器
1U服务器的型号:3550/M3,3550/M5。
1U服务器的型号:3450/M3,3450/M4,3450/M5,
1U服务器的型号:3850
1U服务器的型号:3950
电源
电源相当于人的心脏。
若单个服务器核心业务,最好使用双电源,分别接机房A、B线路,如果服务器是集群中的一台,那么可以不用双电源。
CPU处理器
Cpu处理器相当于人体大脑,负责整个计算机的运算和控制,是服务器性能效率的最核心部件。
Cpu一般通过频率GHz表示性能的好坏,频率越高速度越快,简单说,cpu频率是用来表示CPU每秒钟工作次数的
企业级常见物理服务器配置:
一般企业里的服务器,CPU个(颗)数为2-4颗,单个(颗)CPU是四核。内存总量一般是16~256GB(32GB、64GB较常见)。
做虚拟化得宿主机(eg应用vmware(虚拟化软件)、kvm的主机),CPU颗数可达4~8颗,内存总量一般是48GB~128GB,常规企业可同时启动6~10个虚拟机,甚至更多,主要是根据业务需求决定虚拟机的配置大小。
内存
内存是一个临时存储数据(进程)的地方(存储器)。
程序运行时会被调度到内存中执行,当程序关闭时,会从内存中释放掉。
电脑关机时候,内存都被清空。
内存是计算机运行中间一个的介质
内存的速度比磁盘快。内存是电子的,磁盘机械的
高并发写入
程序
是存放在电脑上的文件,存储于磁盘里。 大片 影片
进程
是正在运行的程序,存储于内存里。 播放中的大片。
守护进程
为了处理一项任务或者提供服务,而持续运行的程序。
操作系统中buffer和cache什么区别
写入缓冲区
数据====》内存(buffer)====》磁盘
读取缓存区
读取《===内存(cache)《==磁盘
磁盘的接口包括IDE、SCSI、SAS、SATA等种类,其中IDE、SCSI已退出历史舞台。
磁盘的类型又分为机械磁盘和SSD固态硬盘两种。
早期IDE硬盘 2010年退出历史。2006以前使用。
早期服务器级别硬盘SCSI,2006以前使用。
现在个人电脑:SATA,SSD固态盘。
现在服务器:SAS,SSD固态盘,偶尔用SATA
性能|价格:SSD>SAS>SATA
不差钱、需要高性能企业选SSD更
IO:输入输出
I INPUT 输入
O OUTPUT 输出
iops,即input/output per second(每秒的输入输出)
磁盘
磁盘的种类
磁盘的接口包括IDE、SCSI、SAS、SATA等种类,其中IDE、SCSI已退出历史舞台。
磁盘的类型又分为机械磁盘和SSD固态硬盘两种。
早期IDE硬盘 2010年退出历史。2006以前使用。
早期服务器级别硬盘SCSI,2006以前使用。
现在个人电脑:SATA,SSD固态盘。
现在服务器:SAS,SSD固态盘,偶尔用SATA
性能|价格:SSD>SAS>SATA
不差钱、需要高性能企业选SSD更多
性价比的企业,SSD和SAS搭配。
规格:
300GB、600GB、1TB、3TB、4TB、8TB
工业级(企业级)硬盘计算:以1000为单位换算。即1TB=1000GB。
500G=500*1000M/1024
热插拔:
带电正在工作的时候进行插拔
企业级服务器支持硬盘热插拔
随机存储和顺序存储
随机存储随意任意写入和读取
顺序存储按一定的顺序写入和读取
谁的使用效率更高:顺序存储更高
顺序存取对介质的压力小,随机存取对介质的压力大。
让随机变成顺序,技术思想:
消息队列:简单说就是排队。
早期的买票,火车站排队、票点排队,顺序存取。
现在买票,现在去12306买票,一堆人任意时间任意地点任意车次随时购票,随机存取。
12306网站怎么能满足大家买票的体验呢?
把随机变成顺序。
消息队列软件。大家上网购买行为就是一条消息,把消息当成排队的人一样,
放在一些内存里,把这些消息排队,网站慢慢处理这些消息,相当于给你卖票了
raid
Raid卡(阵列卡)磁盘冗余阵列
1、把多块盘合成一块盘。
2、实现冗余(备份)
3、提升性能
冗余:多余
多余真的是多余。
冗余是多余,但是有价值的多
RAID0
原理
1、把多块盘合成一块盘,可用容量是所有盘之和。优点
2、没有冗余,即坏一块盘,整个RAID就坏,数据都会丢失。缺点
3、性能是所有盘之和 优点
RAID0工作中放在什么情况下用。
1、不太重要的数据。
2、性能要求高的。
3、容量要求高。
如何规避RAID0缺点?
最好对整个RAID0数据做实时备份。这是一个RAID级别叫RAID10RAID1原理:
RAID1
原理:
1、只能是两块盘整合到一起,容量还是一块盘容量。
2、冗余100%,即坏一块数据不丢失。
3、性能减半,只是一块盘性能。
RAID1工作中放在什么情况下用。
1、很重要的数据。
2、性能要求不高。
容量要求不高。
day032019.3.1
Dell服务器的远程控制
作用
通过网络远程(异地)开关服务器,并且可以查看服务器开关的过程等信息。
远程管理卡有服务器自带和独立两类
Bios
Bios芯片负责主板通电后各部件的自检、设置和保存,一切正常后才能启动操作系统。他记录了电脑最基本的信息,是软件与硬件打交道的最基础的桥梁,没有它,电脑就不能工作。
冯·诺依曼计算机结构有3条重要的设计思路:
计算机应用由运算器、控制器、存储器、输入设备和输出设备5大部分组成。
以二进制的形式表示数据和指令。
程序预先存入存储器中,使计算机在工作中能自动的从存储器中取出程序指令并加以执行。
计算机数据记录单位
bit(比特)
计算机通过电位记录信息,仅识别0和1所以用二进制存储和运算
计算机存储单位最小为bit(比特) 用的较少
一个基本单位以8位二进制组成
网络带宽速度一般用Mbit/s表示
正常下载速度1Mbit/s=128KBytes
字节(Byte)
计算机处理的基本单位字节(Byte)
一个字节为8位1B=8bit一个字节由8个二进制组成
一个ASCLL码占用一个字节一个汉字占用2-4个字节
换算关系
1ZB=1024EB1EB=1024PB1PB=1024TB1TB=1024GB
1GB=1024MB1MB=1024KB1KB=1024Byte1Byte=8bit
ZB>EB>PB>TB>GB>MB>KB>B
常用计数制
数码:几进制就有几个数码
基数:数码的个数就是基数
位权:例;八进制(8X)
十进制
10个数码
基数为10
逢十进一,借一当十
二进制
2个数码0,1
基数为2
逢二进一,借一当二
十六进制
有16个数码
基数为16
逢十六进一,借一当十六
操作系统
操作系统简称OS,程序运行以及用户操作必备的基础环境支撑——计算机的核心
作用:管理和控制计算机系统的硬件和软件资源。连接计算机系统(硬件)与使用者之间的接口
Linux
Linux的优点
Linux是一款操作系统软件,它是一套开放源代码程序的、可以自由传播的类Unix操作系统软件
主要应用于服务器端、嵌入式开发和个人pc桌面
开放源代码,可自由修改
几乎具备所有Unix的优秀特性
可自由传播,无任何版权制约
适合Intel等x86CPU系列架构的计算机
发展史
技术成熟,可靠性高
使用Unix系统,即使连续运行若干年也无需重启,只要硬件不坏,Unix就很难出现问题
极高的可伸缩性
Unix支持的CPU处理器体系架构非常多,包括PowerPC、uitrasparc
强大的数据支持能力
Oracle、DB2、Sybase、informix等大型数据库,都把Unix作为主要数据库开发平台
强大的开发功能
不论目的为何,有运行该软件的自由
有研究该软件如何运行,以及按需改写该软件的自由
有重新发布拷贝的自由
发行的主要版本
Linux内核(kernel)版本有四个系列
Linux kernel2.2、Linux kernel2.4、Linux kernel2.6Linux kernel3.x、Linux kernel4.x
主要发行商:Redhat、centos、Ubuntu
day042019.3.4
Centos7.6的安装
有关 ISO 镜像的使用
扩展名为“.iso”格式的—— 一般是用来刻录光盘的,文件个头比较大,单个 DVD 文件可能会高达 4GB 大小, 必须要用刻录程序的镜像刻录功能,将 iso 文件以“镜像文件格式”刻录成 CD/DVD 盘才行。
单机物理服务器装系统,需要购买空白 DVD 光盘刻录成 DVD。不过,制作 U 盘镜像引导安装是目前推荐的选择。
? 在 VMware/virtualbox 等虚拟软件环境下学习,则不需要刻录成 DVD 光盘
或制作成 U 盘。在 创建完虚拟机后,直接指定 ISO 镜像文件路径到虚拟机的光驱,
即可实现引导安装系统。
? 如果是服务器数量比较多的工作环境,一般也不需要刻录成 DVD 光盘或制作 U
盘,大多数都会通过 ISO 镜像部署无人值守网络批量安装系统服务。
安装系统方法:
1、U盘
2、网络安装,无人值守安装。
3、光盘(淘汰)(linuxs使用光盘镜像。)
32 位与 64 位系统到底有什么不同
一:当初设计时的定位不同。
64 位大量的系统内存和浮点性能。为高科技人员使用本行业特殊软件的运行平台而设计的
32 位32 位操作系统是为普通用户设计的
二: 安装要求配置不同。
64 位操作系统只能安装在 64 位电脑上(CPU 必须是 64 位的)
32 位操作系统既可以安装在 32 位(32 位 CPU)电脑上,也可以安装在 64 位(64 位 CPU)电脑上
三:运算速度不同
64 位 CPU GPRs(寄存器)的数据宽度为 64 位处理器一次可提取 64位数据,比 32 位提高了一倍性能会相应提升
四:寻址能力不同
64 位处理器的优势还体现在操作系统对内存的控制上。一个 ALU(算术逻辑运算器)和寄存器可以处理更大的整数,更大的地址,支持多达 128 GB 的物理内存和16 TB 的虚拟内存
32 位的 CPU 和操作系统理论上最大只可支持 4GB 的内存,扩展所采用的是 PAE 技术。
总结:64 位的系统其 CPU 运算速度更快,支持使用更大的内存,可以发挥更大更好的硬件性能,提升业务工作效率
在 Linux 系统中查看系统版本为 32 位还是 64 位的方法
[root@www ~]# uname -m
x86_64
上述输出结果中带有 x86_64 字样,说明该系统为 64 位。
[oldboy@web ~]$ uname -a
Linux web 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686
i686 i386 GNU/Linux
输出结果中带有 i386/i686 字样,说明该系统为 32 位。
在学习与工作中如何选择操作系统
(1)工作场景绝大多数 IT 人员的笔记本电脑安装的 Windows 系统都是 64 位系统了
(2)学习场景是建议尽可能地用 64 位的系统,和企业应用环境保持一致,这样才能提升学习效率与学习效果
安装centos7.6
安装 CentOS7.6 系统之前,通常会在 Windows 系统上事先安装好虚拟
机软件,例如 VMware,然后打开运行安装的虚拟机软件,选择创建一个虚拟机,并配置
好硬件,最后找到创建的这个虚拟机对应的虚拟光盘驱动器。准备就绪,就可以将 CentOS
系统的 ISO 镜像文件加载进来了。图 2-1 即为 VMware 虚拟机加载 CentOS7.6 ISO 镜像文
件的界面。在该界面右侧,将默认的物理光驱“使用物理驱动器”,改为使用 ISO 镜像文
件“使用 ISO 映像文件”,然后点击右边的“浏览...”找到事先下载好的 CentOS7.6 镜像
文件加载进来即可。
加载完 CentOS7.6 的 ISO 镜像文件后,开启/重启电脑或虚拟机,此时,系统会进行自检,自检完毕就会出现安装系统时的引导界面,60 秒后自动启动
序号CentOS7.6的引导方式解释说明
1InstallCentOS7安装CentOS7
2Test Media and Install CentOS7测试安装媒体,并安装CentOS7
3Troublesshooting故障修复
这其中,第一种(安装 CentOS 7)和第三种(系统故障恢复)引导方式比较有用。
修改网卡名为 eth0 的形式(和 CentOS7 以前保持一致)
安装过程为英语的“English”,然后点击“Continue”继续。
配置系统时区和时间
选择额外的语言支持
系统软件包选择
配置网络和主机名
选择磁盘设备,配置分区
Linux磁盘命名
IDEhd开头, 第一块盘hda,第二块盘 hdb........
SAS/SATA/SSD sd开头, 第一块盘sda,第二块盘 sdb
Windows c d e这样的分区。分区是独立的。
Linux目录结构 有一个顶点 根即斜线/
Linux里每个目录都可能是一个分区。
普通Linux分区方式:
/根分区 Linux系统必须要有的,相当于 Windows的C盘,系统程序相关的。
/boot分区 存放内核相关程序是可选的 5 6给200M,7给256M(工作中1-2G)
swap分区 虚拟分区作用内存不够的时候 系统就会把swap当做内存用。
防止因为内存不够死机。物理内存在8G以上,一般就给8G(可以给1.5倍)。
物理内存小于8G,就按1.5倍内存来给,例如:2G内给3G swap大小。
内存不够,swap分区来凑。
更多的分区方法 下节来讲。
智商不够,勤奋来凑。
LVM 逻辑卷管理 作用动态分配主机磁盘大小的工具。
LVM从功能上讲很好,但是他是一个软件实现的动态调整。
硬盘的上面增加了一层软件管理功能,问题在于高并发
性能下降了5-10%。
/boot分区 256M 永远没有需求调整。
swap分区 内存1.5倍,没有需求调整,有调整也不用LVM.
/根分区所有都给。
点击“Begin Installation”进入开始安装的过程在安装过程中我们可以为管理员 root 设置安全密码,当然也可以设置普通用户
课后题
32位和64位系统的区别是什么?
64 位的系统其 CPU 运算速度更快,支持使用更大的内存,可以发挥更大更好的硬件性能,提升业务工作效率
请描述Linux分区的知识(包括设备名、主分区、扩展分区、文件系统类型等)。
Linux 系统对分区的基本要求
1) 最少要有一个根(/)分区,用来存放系统文件及程序。其大小至少在 5GB 以上。
2) 要有一个 swap(交换)分区,它的作用相当于 Windows 里的虚拟内存,swap 分区的
大小一般为物理内存容量的 1.5 倍(内存<8GB) 。但当系统物理内存大于 8GB 时,则
swap 分区配置 8~16GB 即可,太大无用,浪费磁盘空间。swap 分区不是必须的,但
是大多数情况还是设置比较好,个别企业的数据库应用场景不分 swap。
/boot 分区,这是 Linux 系统的引导分区,用于存放系统引导文件,如 Linux 内核等。CentOS7 而言,要比以前的版本大一些。因此,该分区可以设置为 1024MB,这个分区也不是必须的?
系统的第一块 IDE 接口硬盘的第 1 个分区称为 /dev/hda1。
系统的第一块 IDE 接口硬盘的第 5 个分区称为 /dev/hda5。
? 系统的第二块 SCSI 接口硬盘的第 1 个分区称为 /dev/sdb1。
? 系统的第二块 SCSI 接口硬盘的第 5 个分区称为 /dev/sdb5
什么是挂载点,挂载点的作用是什么?
一个挂载点就是一个文件夹,
作用:将分区挂载到一个挂载点,挂载点就成了分区的入口。没有挂载分区的挂载点将使用根目录的空间,没有挂载到挂载点的分区是无法访问的
企业场景如何针对不同的业务服务器规划分区方案?
服务器角色分区建议优点
RAID方案
单机服务器
如8G内存,300G硬盘
/boot 100-200M
swap 16G,内存大小8G*2
/ 80G
/var 20G(也可不分)
/data 180G(存放web及db数据)
数据盘和系统盘分开,有利于出问题时维护。视数据及性能要求,一般可采用raid5折中。
负载均衡器(如LVS等)/boot 100-200M
swap 内存的1-2倍
/
简单方便,只做转发数据量很少。数据量小,重要性高,可采用RAID1
负载均衡下的RS server/boot 100-200M
swap 内存的1-2倍
/
简单方便,因为有多机,对数据要求低。数据量大,重要性不高,有性能要求,数据要求低,可采用RAID0
数据库服务器
mysql及oracle
如16/32G内存
/boot 100-200M
swap 16G,内存的1倍
/ 100G
/data 剩余(存放db数据)
数据盘和系统盘分开,有利于出问题时维护,及保持数据完整。视数据及性能要求主库可采取raid10/raid5,从库可采用raid0提高性能(读写分离的情况下。)
存储服务器/boot 100-200M
swap 内存的1-2倍
/ 100G
/data(存放数据)
此服务器不要分区太多。只做备份,性能要求低。容量要大。可采取sata盘,raid5
共享存储服务器(如NFS)/boot 100-200M
swap 内存的1-2倍
/ 100G
/data(存放数据)
此服务器不要分区太多。NFS共享比存储多的要求就是性能要求。视性能及访问要求可以raid5,raid10,甚至raid0(要有高可用或双写方案)
监控服务器
cacti,nagios
/boot 100-200M
swap 内存的1-2倍
/
重要性一般,数据要求也一般。单盘或双盘raid1即可。三盘就RAID5,看容量要求加盘即可。
企业场景下Linux系统安装如何尽可能地最小化选包?
系统定制的不同的系统安装类型选择项,默认是“Desktop”,这里我们选择“Minimal”,即最小化安装,下半部分是在上面系统安装类型确定后,额外想添加的软件包组选择项,我们选择“Customize now”即立即自定义。
企业场景下若线上运行的系统缺少部分包组或命令,如何补救?
安装这个个补丁,如果不能装,先用360修复下系统补丁再装上驱动
如何将网卡设置为传统的eth0、eth1形式?
首先在vim /etc/sysconfig/grub中添加“net.ifnames=0 biosdevname=0”GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/swap vconsole.font=latarcyrheb-sun16
net.ifnames=0 biosdevname=0 rd.lvm.lv=centos/root crashkernel=autovconsole.keymap=us rhgb quiet"
然后执行grub2-mkconfig -o /boot/grub2/grub.cfg命令
最后重启机器,使用ifconfig查看网卡名称就变成了eth0,eth1
day052019.3.5
下载,上传
下载工具软件:lrzsz
安装方法:yum install lrzsz -y
下载命令就是 sz
上传命令就是 rz
下载例子:sz anaconda-ks.cfg
上传 执行rz回车,然后选择上传的文件。 直接拖拽文件(依赖lrzsz工具)。
企业生产场景中服务器硬盘如何分区?
(1)普通分区形式
boot 引导分区 256M
swap 交换分区内存大于8G,给8G。内存小于8G,给到1.5倍的内存。
/给所有空间
使用条件:
1、数据不那么重要。
2、必须必须要有备份策略:就是实时的。
内部人员发布数据,同时发布到两台以上生产服务器里。是三个备份,GIT上,代码。
外部用户写入数据(图片、视频 文字),
同时发布到两台服务器后面共享的服务器上(对这个共享服务器做备份),
两个备份。
存储服务器(含数据库)的分区方式:
/boot 引导分区 256M
swap 交换分区内存大于8G,给8G。内存小于8G,给到1.5倍的内存。
/给100G
/data剩余给数据分区 ,data可以是任意名称。
门户网站的分区方案
/boot 引导分区 256M
swap 交换分区内存大于8G,给8G。内存小于8G,给到1.5倍的内存。
/给100G
剩余保留,将来哪个部门使用,使用部门自己分剩余的分区。
不少网友错误分区方案
/boot 引导分区 256M
swap 交换分区内存大于8G,给8G。内存小于8G,给到1.5倍的内存。
/home 家目录
/var
/usr
ip
唯一的32位地址,即IP地址,这个IP地址就相当于服务器的所在位置。
10.0.0.200 IP地址 32位,每8位最大的数字为255
11111111 10进制255
公网IP地址:
私网:办公室局域网内使用的地址,不能在互联网上使用。
192.168.
172.16.
10.0.0
IP地址:唯一标识一台计算机(身份证)
端口: 不同软件运行的服务用端口区分
一台计算机里唯一标识一个服务的数字。
我们要访问一台计算机拿到IP地址,找到对应的服务就需要端口。
协议: 计算机之间的通信方式(语言),采用相同的协议沟通。
远程连接
linux的连接
服务SSH服务 Security Shell服务
包含客户端(男人)和服务端(女人)
服务端(女人): 软件openssh
[root@oldboyedu ~]# rpm -qa openssh openssl
openssh-7.4p1-16.el7.x86_64#SSH服务端软件。
openssl-1.0.2k-16.el7.x86_64 #连接和传输过程中加密
服务的运行的ssh服务
ps -ef|grep ssh
root681310 08:53 ?00:00:00 /usr/sbin/sshd -D
协议:SSH
端口:22#<==ss -lntup|grep ssh
连接xshell5
1 协议2主机3端口号
用户名root和密码
终端类型和缓冲区大小
根据个人喜好修改外观
更改日志文件目录
文件传输下载与加载目录
接受连接许可
老男孩Linux远程连接Linux故障排查思路:
Connecting to 10.0.0.201:22...
1、检查服务端:网卡、IP是不是启动和正确的
ip add或者ifconfig
2、检查服务端:端口和进程
查端口:ss -lntup| netstat -lntup
查进程:ps -ef|grep ssh
想让他提供服务
systemctl start sshd 在检查。
3、客户端:IP、端口、协议是不是对的。
眼睛查。
都是对的,就是连不上,咋办?
A、ping 10.0.0.200检查物理连接能否到达。
[c:\~]$ ping 10.0.0.200
正在 Ping 10.0.0.200 具有 32 字节的数据:
来自 10.0.0.200 的回复: 字节=32 时间=2ms TTL=64
来自 10.0.0.200 的回复: 字节=32 时间<1ms TTL=64
如果不可达:1、连接的IP输入错了。2、物理链路有问题(VM环境调虚拟网络编辑器)
B、telnet 10.0.0.200 22检查对方有没有提供服务,开启服务。
[c:\~]$ telnet 10.0.0.200 22
Connecting to 10.0.0.200:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
SSH-2.0-OpenSSH_7.4
连不上的状态:
[c:\~]$ telnet 10.0.0.200 333
Connecting to 10.0.0.200:333...
1、服务端今天休息,没有提供服务(在此不成立)。2、防火墙(6是iptables,7是firewalld)。
查看状态:systemctl status firewalld.service
#active (running)活着的状态
#Active: inactive (dead) 死的状态。
关闭:systemctl stop firewalld.service
启动:systemctl start firewalld.service
开机不自动启动:systemctl disable firewalld.service
月薪1W 最低经济基础。
意识上看经济基础。
潜意识上看帅不帅、对她好不好。无微不至。80%起作用,感性。
适合工作:能力、态度
xshell5的连接和报错
报错
尝试方法:
1,重新启动CentOS
2,重启VMWare
3,防火墙问题:
解决方案:
(1)查看防火墙:service iptables status
(2)先关闭防火墙:/etc/init.d/iptables stop
(3)打开防火墙: service iptables start
4,可能没有安装ssh-server服务器
先检查确认有没有安装ssh-server服务器,输入命令:ps –e|grep ssh
在CentOS命令区输入:yum install openssh-server
5,安装了ssh-server服务器,没有开启?
解决:开启ssh-server服务器
在VMWare中输入命令:service sshd start
(1)但是你会发现命令无效?
进入root 权限之后才能开启。Su
(2)直接输入正确的密码之后按:Enter 会自动进入root权限。
接下来再次输入命令:service sshd start
6,服务器防火墙关闭了22 端口?
解决方案:
(1)检查端口开启否?输入命令:首先要进入root权限,输入命令: ss -lnt
(2)开启端口,开启ssh-server服务之后,在检查输入命令:ss –lnt
开启ssh服务:service sshd start
关闭ssh服务:service sshd stop
重启ssh服务:servcie sshd restart
SSH服务开机自动启动:chkconfigsshd on
取消开机自启动:chkconfig sshd off
开启服务后,检查服务状态:service sshd status
解决原因2:安装ssh:
yum install openssh-server
day062019.3.6
快捷键
tab 至少两次 快速输入找到想使用的命令。
Ctrl+a 光标回到命令行首*
Ctrl+e 光标回到命令行尾*
Ctrl+f 光标向右移动一个字符(相当于方向键右键)
Ctrl+b 光标向左移动一个字符(相当于方向键左键)
Ctrl+k 复制剪切(删除)光标处到行尾的字符*
Ctrl+u 复制剪切(删除)光标处到行首的字符*
Ctrl+y 粘贴Ctrl+u,Ctrl+k,Ctrl+w删除的文本
Ctrl+Insert复制命令行内容*
Shift+Insert粘贴命令行内容*
Ctrl+c 中断终端正在执行的任务或者删除整行*
Ctrl+d 退出当前Shell命令行,还可以关闭xshell*
Ctrl+r 搜索命令行使用过的历史命令记录*
Esc+.(点) 获取上一条命令的最后的部分(空格分隔)*
Ctrl+l 清除屏幕所有内容,并在屏幕最上面开始一个新行,等同clear命令*
Ctrl+s 锁定终端,使之无法输入内容
Ctrl+q 解锁执行Ctrl+s的锁定状态
Ctrl+z 暂停执行在终端运行的任务*
!! 执行上一条命令
!pw 执行最近以pw开头的命令*
命令
帮助命令man 和help
man 男人,查找命令的功能 参数 等等帮助信息的工具。
man 命令
help 查内置命令的帮助
help 命令
关机和重启
关机;halt、poweroff、shutdown -h now推荐halt
重启;rebootshutdown –r now 推荐reboot
pwd 显示当前目录
cd 改变目录
cd - 去上一次所在的目录
cd ~或cd 去当前用户的家目录,~表示家目录
cd .去当前目录, .表示当前目录
cd .. 去上一级目录。..表示上一级目录
tree 以树形结构显示目录
-L(level)指定层数 例如 tree -L 1 /
-d(directory) 只显示目录※
mkdir 创建目录
-p 根据需要创建所有目录 包括父目录子目录,递归创建。
touch创建文件
touch {1..5}.txt 等价touch 1.txt 2.txt 3.txt 4.txt 5.txt
{}生成数字序列,字母序列。
day072019.3.7
命令
ls显示目录下的文件
-l,(long)以长格式显示目录下的内容
-a,显示所有文件,包含隐藏文件(以.开头的文件)
-d,directory显示目录
cp复制文件和目录
-r (递归 recursive) 复制目录
-p保持文件属性(人的身高、体重就是人的属性)
文件大小、创建时间、权限、属主这都是文件的属性。
-a保持文件属性和链接。
-i确认
alias查看或设置别名
设置别名alias cp='cp -i'
unalias 取消别名
rm删除目录或文件
-f (force)强制删除
-r (recusive)递归删除,删除目录和文件
-i 确认
mv移动文件或目录
-i 确认
echo输出和打印
-n 不换行输出
-e 支持转义字符
printf格式化打印
考题
1,考题:切换到/tmp目录下,查看当前的工作位置,同时创建data1、data2、data3共3个目录,
[root@oldboyedu ~]#cd /tmp/ #切换到系统已知目录要用tab补全来找,不要完全手敲。
[root@oldboyedu /tmp]#pwd
/tmp
[root@oldboyedu /tmp]#mkdir data{1..3}
[root@oldboyedu /tmp]#ls
data1data2data3
[root@oldboyedu /tmp]#tree -d
.
├── data1
├── data2
└── data3
2,考题:接上一节的考题,分别在data1、data2、data3目录下创建3个文件,名字为oldboy1、oldboy2、oldboy3,然后查看/tmp目录的整个目录结构情况,最后检查下data1和oldboy1两个对象的属性。
[root@oldboyedu /tmp]#touch data{1..3}/oldboy{1..3}
[root@oldboyedu /tmp]#tree /tmp
/tmp
├── data1
│?? ├── oldboy1
│?? ├── oldboy2
│?? └── oldboy3
├── data2
│?? ├── oldboy1
│?? ├── oldboy2
│?? └── oldboy3
└── data3
├── oldboy1
├── oldboy2
└── oldboy3
3 directories, 9 files
[root@oldboyedu /tmp]#ls -ld data1#*
drwxr-xr-x. 2 root root 51 Mar7 11:51 data1
[root@oldboyedu /tmp]#ls -l data1/oldboy1 data2/oldboy1 data3/oldboy1#*
-rw-r--r--. 1 root root 0 Mar7 11:52 data1/oldboy1
-rw-r--r--. 1 root root 0 Mar7 11:52 data2/oldboy1
-rw-r--r--. 1 root root 0 Mar7 11:52 data3/oldboy1
说明:
touch data1/oldboy1data1/oldboy2data1/oldboy3
touch data2/oldboy1data2/oldboy2data2/oldboy3
touch data3/oldboy1data3/oldboy2data3/oldboy3
touch data{1..3}/oldboy{1..3}
touch data1/oldboy1
相当于
cd data1
touch oldboy1
3,考题:把/etc/hosts文件复制到/tmp/data1下,然后把data1目录复制到/opt下。
[root@oldboyedu ~]#cp /etc/hosts /tmp/data1
[root@oldboyedu ~]#cp -a /tmp/data1 /opt
[root@oldboyedu ~]#
[root@oldboyedu ~]#
[root@oldboyedu ~]#tree /opt/data1
/opt/data1
├── hosts
├── oldboy1
├── oldboy2
└── oldboy3
day082019.3.8
磁盘分区与目录关系
windows里分区和目录一一对应。
Linux里的目录和分区是分离的。
IDE盘: 不同的磁盘使用字母表示的hda hdb
不同分区是用数字表示:hda1 hda2
SAS/SATA/SCSI sda sdb,sda1 sda2
/dev/sda1
==============================================
/etc 对应 sda1
/data 对应 sda2
挂载
linux里的分区默认是不能访问的,监狱,黑盒访问不了。
有一个功能把目录/etc ===========/dev/sda1进行了链接,称为挂载。
挂载:为分区找到一个入口,为分区开一个门或者窗户。
挂载点:分区入口的目录名,/etc就是分区/dev/sda1的挂载点。
[root@oldboyedu ~]#ls /dev/cdrom
/dev/cdrom
[root@oldboyedu ~]#cd /dev/cdrom
-bash: cd: /dev/cdrom: Not a directory
[root@oldboyedu ~]#cd /dev/cdrom
-bash: cd: /dev/cdrom: Not a directory
[root@oldboyedu ~]#mount /dev/cdrom /mnt #<==挂载:将/mnt作为/dev/cdrom的入口。
mount: /dev/sr0 is write-protected, mounting read-only
[root@oldboyedu ~]#cd /mnt
[root@oldboyedu /mnt]#ls
[root@oldboyedu /mnt]#cd .. #<==退到上一级目录卸载。
[root@oldboyedu /]#umount /mnt #<==取消挂载:取消将/mnt作为/dev/cdrom的入口。
[root@oldboyedu /]#ls /mnt
挂载命令mount
卸载命令umount
临时挂载点/mnt
根目录"/"挂载在第一块盘上 系统相关的内容
"/usr"目录挂载在第二块盘上 用户相关的内容
/home用于存放用户的数据
根下目录结构
[root@oldboyedu /]#tree -L 1 /
/
├──*****bin -> usr/bin binaries二进制 命令相关*****
├── *****boot 引导分区,系统内核及引导程序
├── *****dev Device设备文件所在目录
├── *****etc 二进制软件包配置文件所在路径
├── *****home 普通用户的家目录
├── lib -> usr/lib library 库文件目录
├── lib64 -> usr/lib64 64库library 库文件目录
├── media 媒体
├──*****mnt (mount)临时挂载点
├── opt 英文option的缩写,表示的意思是可选择,
有些软件包也会被安装在这里,也就是自定义的软件包。
├──*****proc 虚拟的文件系统,存放进程和内核信息的目录。
├── *****root 管理的家目录
├── run 正在运行进程相关信息的文件
├──*****sbin -> usr/sbin system binaries 管理员命令所在目录,普通用户执行不了。
├── srv 为用户提供服务的数据所在目录
├── sys 虚拟的文件系统,存放进程和内核信息的目录。
├──*****tmp 临时文件所在目录
├── *****usr 系统软件和用户相关程序所在目录,第二层次目录
└── *****var 可变化的数据
*****为需要记住的。
/etc系统初始化及设置相关重要文件
/etc/sysconfig/network-scripts/ifcfg-eth0:网卡配置文件
用途:用于配置上网的文件
ens33
eth0 eth1
c7:nmtui 图形化配置上网 本质就是修改上述文件。
c6:setup
可以不用图形工具,而是直接改文件也是可以的
/etc/resolv.conf:Linux系统 DNS客户端的配置文件
DNS Domain Name System 域名系统
作用:简单说就是把浏览器里输入的域名,解析为服务器的IP地址,然后才能找到服务器,提供内容。
早期上网 直接IP,10.0.0.200 记不住。。。。。
吃水:自来水
用电:公共电
解析:公共服务DNS,IP,你告诉他域名,他给你IP。
/etc/hosts:系统本地的DNS解析文件
10.0.0.200 www.oldboyedu.com
10.0.0.201 www.baidu.com
每个人的电脑必须要有一个HOSTS做解析。
吃水:打井,测试。
用一个文件解析域名和IP
最后就发明了DNS,公网公共解析服务资源,谁想解析谁就请求他的IP。
重要功能:把浏览器里输入的域名,解析为服务器的IP地址,还有很多别的功能。
DNS的/etc/resolv.conf配置文件已经基本废弃了,由
/etc/sysconfig/network-scripts/ifcfg-eth0里面的DNS设置替代了。
只要在 网卡配置里面设置,自动更新到/etc/resolv.conf里。
但是如果先更新/etc/resolv.conf文件,网卡如果重启就会自动清除
/etc/resolv.conf文件,放入网卡的DNS配置。
/etc/hosts:系统本地的DNS解析文件
10.0.0.200 www.oldboyedu.com
10.0.0.201 www.baidu.com
每个人的电脑必须要有一个HOSTS做解析。
浏览器再输入www.baidu.com时候,优先找hosts解析。
本地DNS配置文件hosts,优先于公网的DNS解析。
局域网开发人员测试解析。
/etc/fstab:配置开机设备自动挂载的文件
设备要挂载才能用,我们挂载过根 /boot么?
系统已经在开机的时候帮我们自动挂载了我们安装系统时的分区。
自动挂载的文件就是/etc/fstab
比如插入一个U盘,希望下次开机能够直接访问。就需要在/etc/fstab里配置。
[root@oldboyedu /]#cat /etc/fstab
# /etc/fstab
# Created by anaconda on Mon Mar 4 11:15:16 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=3a3a295f-88f8-456d-94dc-1a3eeb517c02 / xfs defaults 0 0
UUID=fd2e0ca7-32be-425f-86a2-85c02b9ec5ea /boot xfs defaults 0 0
UUID=79a3924b-739e-48dc-ab0c-0444b9ac6591 swap swap defaults 0 0
设备名(UUID) 挂载点 文件系统类型 挂载参数 是否备份 是否开机检查
/dev/sda1
查看设备UUID
[root@oldboyedu /]#blkid
/dev/sda1: UUID="fd2e0ca7-32be-425f-86a2-85c02b9ec5ea" TYPE="xfs"
/dev/sda2: UUID="79a3924b-739e-48dc-ab0c-0444b9ac6591" TYPE="swap"
/dev/sda3: UUID="3a3a295f-88f8-456d-94dc-1a3eeb517c02" TYPE="xfs"
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
[root@oldboyedu ~]#ls /media/
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
[root@oldboyedu ~]#df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 1.7G 18G 9% /
devtmpfs 980M 0 980M 0% /dev
tmpfs 991M 0 991M 0% /dev/shm
tmpfs 991M 9.5M 981M 1% /run
tmpfs 991M 0 991M 0% /sys/fs/cgroup
/dev/sr0 4.2G 4.2G 0 100% /media
/dev/sda1 253M 136M 118M 54% /boot
tmpfs 199M 0 199M 0% /run/user/0
/etc/rc.local:存放开机自启动程序命令的文件
[root@oldboyedu ~]#ls -l /etc/rc.local
lrwxrwxrwx. 1 root root 13 Mar 4 12:48 /etc/rc.local -> rc.d/rc.local
真实链接 /etc/rc.d/rc.local
CentOS7的特殊:
chmod +x /etc/rc.d/rc.local 先使得此文件能够运行,加执行权限。
/etc/profile及/etc/bashrc:配置系统的环境变量/别名等的文件
各种配置的永久配置文件。
export PS1="[\[\e[34;
1m\]\u@\[\e[0m\]\[\e[32;
1m\]\H\[\e[0m\]\[\e[31;
1m\] \w\[\e[0m\]]\\$"
生效条件二选一:1、退出重新登录。2、source /etc/profile
例如:系统下面别名永久生效,
alias rm='echo 不允许使用rm'
就放到上述配置文件里。
/etc/issue和/etc/issue.net:
[root@oldboyedu ~]#cat /etc/issue
\S
Kernel \r on an \m
[root@oldboyedu ~]#cat /etc/issue.net
\S
Kernel \r on an \m
[root@oldboyedu ~]#>/etc/issue #清空文件。
[root@oldboyedu ~]#>/etc/issue.net
/etc/motd:配置用户登录系统之后显示提示内容的文件
编辑:
[root@oldboyedu ~]#vim /etc/motd
Wecomle to oldboy training 58期。
保存退出。
重新登录。
Wecomle to oldboy training 58期。
[root@oldboyedu ~]#
/etc/redhat-release 查看系统版本
[root@oldboyedu ~]#uname -r
3.10.0-957.5.1.el7.x86_64
[root@oldboyedu ~]#cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
/etc/sysctl.conf:Linux内核参数设置文件
Linux系统内核的配置和优化
/etc/init.d:软件启动程序所在的目录(CentOS7以前)
/etc/inittab 设置开机运行级别以及启动相应级别脚本的文件(CentOS7以前)
七个模式
定义:Linux系统运行级别当前所处于的状态。
Linux系统运行级别的说明如下:
# 0 关机(请不要把系统运行级别设置为0)
# 1 单用户模式 (root用户密码忘记,可用此模式找回)
# 2 没有NFS,多用户模式
# 3 命令行模式 文本模式(企业级服务器核心运行状态)
# 4 未使用
# 5 图形化模式 桌面模式 X11(桌面个人版系统运行状态)
# 6 重启(不要把系统运行级别设置为6)
[root@oldboyedu ~]# systemctl get-default
multi-user.target
[root@oldboyedu ~]# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.
[root@oldboyedu ~]# systemctl get-default
graphical.target
[root@oldboyedu ~]# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
[root@oldboyedu ~]# systemctl get-default
【1-8|1-8 day】multi-user.targe
推荐阅读
- 赢在人生六项精进二阶Day3复盘
- 继续努力,自主学习家庭Day135(20181015)
- 2019-01-17-晨读7期-直子Day25
- 21天|21天|M&M《见识》04
- 阿菘的ScalersTalk第五轮新概念朗读持续力训练Day15|阿菘的ScalersTalk第五轮新概念朗读持续力训练Day15 20191025
- 桂妃研读社|桂妃研读社|D124|如何有效阅读一本书 Day1
- 【70号】Day26朋友日
- 齐帆齐微课打卡DAY54——靠工资,普通人能实现财务自由吗((1731字))
- 【挑战日更】Day6.《终身学习.10个你必须掌握的未来生存法则》摘录之三
- 第九期Day8—浮生暂寄梦中梦,梦中说梦两重虚!