- 博客(63)
- 收藏
- 关注
原创 Docker容器——基本操作
Docker基本操作查询Docker版本镜像搜索镜像查看镜像列表获取镜像信息ID TAG 详细信息添加镜像标签删除镜像镜像导出容器容器运行创建容器查看容器信息容器导入导出删除容器查询Docker版本docker version && docker info 镜像搜索镜像docker search 镜像名 (搜索镜像) docker pull 镜像:版本号 (获取固定版本镜像)docker pull 镜像名 (不加版本号默认为latest 获取
2021-05-31 19:48:55
241
原创 Docker容器——安装
Docker安装什么是Docker小结:Docker的使用场景Docker引擎(Docker Engine )Docker核心概念镜像容器仓库Docker容易和VM虚拟机的区别Docker的安装安装依赖包设置阿里云镜像源安装Docker引擎,关闭防火墙增强型服务并启动Docker镜像加速和网络优化安装完成验证版本信息重点:什么是DockerDocker是一个用于开发,交付和运行应用程序的开放平台。Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件Docker是一种轻量级的“虚拟机”,
2021-05-31 19:08:08
411
原创 OpenStack(T版)传统公司部署——glance组件部署
创建数据库实例和用户mysql -u root -pCREATE DATABASE GLANCE;GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'GLANCE_DBPASS';GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'GLANCE_DBPASS';flush privileges;exit创建用户并修改配置文
2021-05-31 08:52:40
194
原创 OpenStack(T版)简易介绍——传统公司环境部署
OpenStack传统公司环境部署资源分配控制节点 CT计算节点C1C2基础环境配置(三台均配置)1、修改NAT网卡配置2、安装基础环境依赖包包名解释包名解释3、免交互+时间同步以及周期性计划任务配置系统环境配置控制节点安装配置MariaDB安装RabbitMQ安装memcached资源分配控制节点 CTCPU:双核双线程-CPU虚拟化开启内存:8G 硬盘:300G双网卡:VMnet1(局域网)192.168.100.101 NAT-192.168.243.101操作系统 Centos 7.
2021-05-31 08:52:23
326
原创 OpenStack(T版)传统公司部署——keystone组件部署
keystone组件部署创建数据库实例和用户(控制节点)安装配置keystone、apache、数据库创建OpenStack域、项目、角色和用户OpenStack组件安装顺序出现问题总结:创建数据库实例和用户(控制节点)mysql -u root -pcreate database keystone;GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'KEYSTONE_DBPASS';GRANT A
2021-05-31 08:52:02
147
原创 Mysql数据库----日志的备份与恢复
日志概述备份的主要目的是灾难恢复,备份还可以测试应用、回滚数据修改、查询历史数据、审计等。而备份、恢复中,目志起到了很重要的作用日志类型mysgl日志文件常用的自志文件(在/etc/my.cnf中[mysqld]客户端配置中修改)认在/usr/ local/ mysql/data/中错误日志用于记录Mysql 启动、停止、或运行时产生的错误信息,默认开启可通过以下字段进行修改log-error=/usr/ local/mysal/data/mysql_erlor.log#指定日志的保存位
2021-04-24 14:16:58
663
原创 Mysql数据库----数据库基本操作语句|索引|事务|存储引擎
Mysql数据库----数据库基本操作语句|索引|事务|存储引擎数据库基本语句常用数据类型基本操作命令数据库登录查看当前服务器中的数据库查看数据库中包含的表查看表的结构(字段)创建新的数据库创建新的表删除指定的数据表删除指定的数据库向数据表中插入新的数据记录查询数据记录修改、更新数据表中的数据记录在数据表中删除指定的数据记录修改表名扩展表结构(增加字段)修改字段(列)名,添加唯一键删除字段清空表,删除表内所有数据创建临时表克隆表外键约束Mysql常见约束创建外键约束数据库用户管理新建用户查看用户信息重命名用
2021-04-19 16:57:50
130
原创 Mysql数据库----数据库基本概念
Mysql数据库----数据库基本概念数据库基本概念数据表数据库数据库类型关系型数据库和非关系型数据库的区别关系数据库三要素实体属性联系二维表格非关系数据库优点Mysql数据库特点日志数据库基本概念数据描述事物的符号记录,包括数字,文字、图形、图像、声音、档案记录等以记录的形式存储。例如文字存在文档当中数据是使用一些介质进行存储的。表将不同的记录组织在一起用来存储具体数据以行(记录)+列(字段)的形式组成表数据库表的集合,是存储数据的仓库,以一定的组织方式存储的数据集合数据库可
2021-04-19 14:20:42
335
1
原创 LAMP架构及服务编译安装
编译安装mysqld 服务一、 将安装mysql 所需软件包传到/opt目录下mysql-5.7.17.tar.gzboost_1_59_0.tar.gz #支持c++的运行库二、安装环境依赖包yum -y install \gcc \gcc-c++ \ncurses \ #字符终端下图形互动功能的动态库ncurses-devel \ #ncurses开发包bison \ #语法分析器cmake #mysql需要用cmake编译安装yum -y ins
2021-04-13 18:47:03
241
原创 Web服务之Apache的配置和应用
Apache的配置和应用构建虚拟web主机虚拟web主机指的是在同一台服务器中运行多个web站点,其中每一个站点实际上并不独立占用整个服务器,因此被称为"虚拟"Teb 主机。通过虚拟web主机服务可以充分利用服务器的硬件资源,从而大大降低网站构建及运行成本。使用httpd服务可以非常方便地构建虚拟主机服务器,只需要运行一个httpd服务就能够同时支撑大量的web站点。httpd股务支持的虚拟主机类型包摇以下三种:基于域名:为每个虚拟主机使用不同的域名,但是其对应的IP地址是相同的。例如,w.ben
2021-04-01 19:55:53
384
原创 Shell脚本之awk编辑器
Shell脚本之awk编辑器工作原理命令格式常见的内建变量按行输出文本按字段输出文本通过管道符、双引号调用Shell命令工作原理逐行读取文本,默认以空格或tab键为分隔符进行分隔,将分隔所得的各个字段保存到内建变量中,并按模式或者条件执行编辑命令。sed命令常用于一整行的处理,而awk比较倾向于将一行分成多个“字段”然后再进行处理。awk信息的读入也是逐行读取的,执行结果可以通过print的功能将字段数据打印显示。在使用awk命令的过程中,可以使用逻辑操作符“&&”表示“与”、“||”
2021-03-22 12:12:31
113
原创 Shell脚本之Sed编辑器
Shell脚本之Sed编辑器Sed编辑器工作流程命令格式常用选项常用操作打印内容使用地址进行修改删除行替换4种替换标记插入Sed编辑器sed是一种流编辑器,流编辑器会在编辑器处理数据之前基于预先提供的一组规则来编辑数据流。可以根据命令来处理数据流中的数据,这些命令要么从命令行中输入,要么存储在一个命令文本文件中。工作流程主要包括读取、执行和显示三个过程。读取:sed 从输入流(文件、管道、标准输入)中读取一行内容并存储到临时的缓冲区中(又称模式空间,pattern space)。执行:默认情
2021-03-22 11:19:56
198
原创 Shell脚本之数组(二)|冒泡排序|直接选择排序|反转排序
冒泡排序|直接选择排序|反转排序冒泡排序基本思想算法思路示例直接选择排序基本思想示例反转排序基本思想示例冒泡排序冒泡排序就是类似气泡上涌的动作,将数据在数组中从小到大或者从大到小不断地向前移动基本思想是对比相邻的两个元素值,如果满足条件就交换元素值,把较小的元素移动到数组的前面,把大的元素移动到数组后面,也就是交换两个元素的位置,这样较小的元素就像气泡一样从底部上升到顶部算法思路由双层循环实现,其中外部循环用于控制排序轮数,一般为要排序的数组长度减1次,因为最后一次循环只剩下一个数组元素,不需要
2021-03-18 11:49:23
170
原创 Shell脚本之数组(一)
数组数组的定义方法方法一方法二方法三方法四数组包括的数据类型获取数组的长度获取数组列表读取某下标赋值数组遍历数组切片数组替换数组删除 unset数组追加元素方法一方法二方法三方法四向函数传数组参数数组的定义方法方法一数组名=(value0 value1 value2 …)方法二数组名=([0]=value [1]=value [2]=value …)方法三列表名=“value0 value1 value2 …”数组名=($列表名)方法四数组名[0]=“value”数组名1]=“v
2021-03-18 10:18:17
939
原创 免交互的实现----Expect
什么是Expect是建立在tcl语言基础上的一个工具,常被用于进行自动化控制和测试,解决shell脚本中交互相关的问题需要安装的软件包tcl expectrpm -q expectrpm -q tclyum install -y expect基本命令(1)脚本解释器expect脚本中首先引入文件,表明使用的是哪一个shell#!/usr/bin/expect(2)spawnspwayn后面通常跟一个Linux执行命令,表示开启一个会话、启动进程,并跟踪后续交互信息(3)expect
2021-03-18 09:30:16
189
原创 实现免交互----Here Document
免交互的实现----Here Document 免交互的实现----Here Document什么是Here Document?语法格式注意事项示例免交互方式实现对行数的统计,将要统计的内容置于标记“EOF”之家,直接将内容传给wc -l来统计通过read命令接受输入并打印,输入值是两个EOF标记之间的部分,作为变量i的值通过passwd给用户输入密码支持变量替换整体赋值给变量,然后通过echo命令将变量值打印出来去掉每行之前的TAB字符多行注释什么是Here Document?使用I/O重定向的方式
2021-03-17 12:03:49
90
原创 Shell函数的定义与库
函数什么是函数?函数的定义第一种第二种函数返回值return使用原则result使用方法函数传参函数变量的作用范围☢递归阶乘递归查询目录函数库什么是函数?函数就是将命令序列按格式写在一起,可方便重复使用命令序列函数的定义第一种function 函数名{ 命令序列}第二种函数名() { 命令序列}函数返回值returnreturn表示退出函数并返回一个退出值,脚本中可以用$?变量显示该值使用原则 函数已结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码 退
2021-03-12 09:50:52
196
原创 Shell循环----菱形
代码#!/bin/bashfor ((i=1;i<=9;i++))do a=$[($i*2)-1] for ((j=10;j>=$i;j--)) do echo -n " " done for ((k=1;k<=$a;k++)) do echo -n "*" done echo ""donefor ((i=1;i<=10;i++)) doa=$[($i*
2021-03-12 08:46:35
143
原创 Shell循环----六芒星
代码#!/bin/bashfor ((i=1;i<=5;i++)) #顶头部分 do for ((j=1;j<=19-$i;j++)) do echo -n " " done for ((k=1;k<=$[$i*2-1];k++))
2021-03-11 12:12:13
129
原创 Shell循环----五角星
代码#!/bin/bashfor ((i=1;i<=5;i++)) #顶头部分 do for ((j=1;j<=19-$i;j++)) do echo -n " " done for ((k=1;k<=$[$i*2-1];k++))
2021-03-11 12:07:10
493
原创 Shell循环----九九乘法表
代码#!/bin/bashfor ((i=1;i<=9;i++ )) do for ((j=1;j<=i; j++ )) do let a=$i*$j echo -n -e "${j}*${i}=${a}\t" done echo ""done结果
2021-03-11 11:56:14
129
原创 Shell循环练习(一)
题目一:输入一个整数判断它是奇数还是偶数脚本#!/bin/bashread -p "请输入一个数:" ZSif [ "$ZS" = 0 ] then echo "0是一个整数,也是一个偶数" else expr "$ZS" \* "$ZS" &> /dev/null if [ "$?" = 0 ] then let a="$ZS
2021-03-11 11:52:22
195
原创 IFS字段分隔符的修改与还原
IFS字段分隔符默认包含空格、制表符、换行符查看IFS set | grep IFS修改IFS为只换行还原默认包含空格、制表符、换行符查看IFS set | grep IFS修改IFS为只换行OLDIFS=$IFSIFS=$’\n’还原IFS=$OLDIFS
2021-03-11 11:26:47
561
原创 Shell脚本循环语句之while语句和until语句
Shell脚本循环语句之while语句和until语句while语句格式:流程示例until语句格式流程示例小实验while语句重复测试某个条件,只要条件成立则反复执行格式:while 条件测试操作do 命令done流程示例until语句重复测试某个条件,只要条件不成立则反复执行格式util 条件测试操作do 命令done流程示例小实验做一个猜商品价格的游戏通过遍历RANDOM获得随机数提示用户猜测并记录次数,猜中后退出循环结果...
2021-03-11 11:14:13
144
原创 Shell脚本循环语句之for语句
Shell脚本循环语句之for语句格式:流程三种写法第一种第二种第三种示例格式: for 变量名 in 取值列表 do 命令 done流程三种写法第一种第二种第三种示例遍历1-100中的所有奇数和还有偶数和...
2021-03-11 10:35:41
204
原创 常用转义符
echo -n表示不换行输出echo -e输出转义字符,将转义后的内容输出到屏幕上格式: echo -e " 字符\转义符"常用的转义字符如下:\b 转义后相当于按退格键(backspace),但前提是"\b"后面存在字符; "\b"表示删除前一个字符, "'blb"表示删除前两个字符。\c 不换行输出,在"\c"后面不存在字符的情况下,作用相当于echo -n;但是当"\c"后面仍然存在字符 时,"\c"后面的字符将不会被输出。\n 换行,被输出的字符从"\n"处开始另起一行。\f
2021-03-11 10:17:01
869
原创 Shell脚本循环语句之if语句
Shell循环语句之if语句单分支结构格式: if 条件测试操作 then 命令序列 fi流程三种写法第一种第二种第三种双分支语句格式:if 条件测试操作then命令1else命令2fi流程示例多分支结构格式:if 条件测试操作then命令1elif 条件测试操作2then命令2 else命令3fi...
2021-03-11 10:07:26
460
原创 Shell脚本的五种基本条件测试
SHELL脚本循环语句五类条件测试test命令格式:test 条件表达式格式2:[ 条件表达式 ]测试表达式是否成立 echo =$?,若成立则返回0,否则返回其他数值文件测试格式:[ 操作符 文件或目录 ]常用的测试操作符...
2021-03-11 08:53:42
211
1
原创 小实验----Cobbler自动化部署装机
Cobbler自动化部署装机目录Cobbler自动化部署装机导入epel源下载后epel包然后导入安装相关服务软件包修改Cobbler主配置文件 vim /etc/cobbler/settings启动服务并关闭防火墙和selinux使用cobbler check命令对cobbler做检查设置开启ftp、rsync服务修改/etc/xinetd.d/tftp开启服务下载引导操作系统文件设置Cobbler用户初始密码用加密方式生成秘钥并加入cobbler配
2021-03-09 11:48:21
147
原创 Kickstart无人值守
Kickstart无人值守目录Kickstart无人值守打开虚拟机找到应用程序-系统工具-kickstart基本配置安装方法FTP服务器为刚才配置的根服务器引导选项选择安装新的引导配置分区网络配置禁用防火墙安装后脚本,这里配置的是本地Yum源脚本其他均保持默认设置,保存进入虚拟机配置需要安装的软件包打开虚拟机找到应用程序-系统工具-kickstart基本配置安装方法FTP服务器为刚才配置的根服务器引导选项选择安装新的引导配置
2021-03-09 11:04:37
68
原创 NFS共享服务小实验
NFS共享服务目录NFS共享服务NFS原理配置文件为:/etc/exports启动服务注意关闭防火墙和增强型服务实验创建一个zp文件用来共享并赋予777最大权限启动Nfs服务使用客户机访问手动挂载NFS共享目录NFS网络文件系统,英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样,,多用于共享一些静态文件,但
2021-03-09 10:43:14
259
1
原创 拧动shell脚本的门把手-编程规范与变量
shell脚本的编程规范与变量shell脚本,是将要执行的命令按顺序保存到一个文本文件中,然后赋予该文件可执行权限,结合各种Shell控制语句以完成更复杂的操作。应用场景:重复性操作交互性任务批量处理事务服务运行状态监控定时任务执行Shell的作用:命令解释器,"翻译官",介于系统内核与用户之间, 负责解释命令行用户登录Shell...
2021-03-03 16:11:20
130
原创 Linux网络配置--DHCP实验
Linux网络配置--DHCP实验DHCP在Linux中的相关配置首先配置DHCP服务器yum -y install dhcpcd /etc/dhcp/cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.confvim /etc/dhcp/dhcpd.conf然后进入dhcp.conf进行全局参数配置option domain-name "zp.com"; option domai...
2021-03-01 08:30:30
215
原创 远程访问及控制(SSH远程管理及TCP Wrappers 访问控制)
远程访问及控制(SSH远程管理及TCP Wrappers 访问控制)目录远程访问及控制(SSH远程管理及TCP Wrappers 访问控制)SSH远程管理定义客户端和服务端OpenSSH服务端的配置SSHD服务支持两种验证方式一、密码验证二、秘钥对验证实验在客户机创建秘钥对将公钥对上传至服务器在服务器中导入公钥文本TCP Wrappers 访问控制TCP wrapper 保护机制的两种实现方式TCP Wrappers 的访问策略TCP Wr
2021-03-01 08:30:14
265
1
原创 DNS域名解析实验三部曲第一部(下部)——反向解析
DNS反向解析配置安装BIND服务找到需要修改的主配置文件、区域配置文件、区域数据配置文件位置进入主配置文件修改修改53监听地址为本地地址修改区域配置文件需要注意的是因为我们配置的是反向解析,所以使用的是反向的IP地址 243.168.192,file对应的文件名是自己设置的,只需要前后对应就行接着修改区域数据配置文件最后开启服务关闭防火墙...
2021-03-01 08:29:54
98
原创 DNS域名解析实验三部曲第三步——分离解析
DNS分离解析分离解析的域名服务器其实就是主域名服务器,主要是根据不同的客户端提供不同的域名解析记录,比如来自内网和外网的不同网段地址区域的客户机请求解析同一域名时,为其提供不同的解析结果,得到不同的IP地址。(这里主域名服务器其就是相当于我们以前学过的NAT网关)实验(注意所有模拟实验的虚拟机必须使用主机模式)双网卡配置首先给其中一台虚拟机配置双网卡来充当网关服务器的两个端口这里VMnet1用来做内网,VMnet2用来做外网对两个网卡进行配置因为这里是把虚拟机1
2021-03-01 08:29:16
331
原创 DNS域名解析实验三部曲第二部——DNS主从域名服务器
DNS主从域名服务器主服务器配置修改主域名服务器的区域配置文件vim /etc/named.conf修改区域配置文件vim /etc/named.rfc1912.zones注意一定要修改下DNS指向地址vim /etc/resolv.conf上面是主服务器下面的是从服务器从服务器配置修改主区域配置vim /etc/named.conf修改区域配置文件vim /etc/named.rfc1912.zones修改下DNS指向地址vim /etc/resol
2021-03-01 08:28:15
126
原创 DNS域名解析实验三部曲第一部——正向解析
DNS正向解析冲目录DNS正向解析冲DNS系统的作用DNS系统的分布式数据结构DNS服务器类型BIND服务BIND服务器端程序BIND服务控制构建DNS域名解析服务器步骤安装BIND软件包配置正向解析DNS系统的作用正向解析:根据域名查找对应的IP地址反向解析:根据IP地址查找对应的域名DNS系统的分布式数据结构例如: http://www.qq.com.cn.树状结构最顶层成为根域,用"."表示,相应服务器称为根服务器,整个域名空间解
2021-02-23 11:11:03
167
原创 Linux操作系统引导过程
Linux操作系统引导过程目录Linux操作系统引导过程开机自检MBR 引导GRUB 菜单加载 Linux 内核init 进程初始化系统初始化进程init进程Systemd单元类型排除启动类故障修复MBR扇区故障修复GRUB引导故障遗忘root用户的密码开机自检服务器主机开机以后,将根据主板BIOS中的设置对CPU、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多时候会移交给本机硬盘。总结:检测出第一.
2021-02-22 12:07:07
170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人