- 博客(38)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 Docker基础(三)--网络
docker的网络模式docker的网络模式共有4种:bridge,即桥接模式,启动时用–net=bridge指定,不显示指定启动的容器,都会分配子网范围内的ip。运用veth-pair技术,每启动一个容器,就创建1对接口,一端连接宿主机,一端连接容器(eth0接口),通过这个方式,其中的容器可以相互通信,通信模式如下图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y1EpdYqu-1638104780942)(C:\Users\Administrator\App
2021-11-28 21:06:34
781
原创 docker基础(一)
docker入门docker和k8s一样基于go语言开发,为容器中的一种。什么是容器?一般说的容器指的是linux容器,指的是一组收到资源限制、彼此相互隔离的进程。多看官方文档:https://docs.docker.com/安装docker-cedocker组成:client、server、repository学习安装版本19.03.8,centos7,内核在3.10.以上安装安装指引:https://docs.docker.com/engine/install/centos/,跳转get
2021-11-27 17:38:30
837
原创 Docker基础(二)
容器数据卷出现的意义:数据持久化,因为容器删除后,保存在容器中的数据会丢失方便容器与宿主机数据交互docker数据类型:**数据卷 ** :相当于mount一块磁盘数据容器:将数据保存在容器上,用于容器间共享数据,这种容器一般不跑应用,只是挂载卷数据卷挂载分类具名挂载-v 卷名:容器路径[root@master ~]# docker run -d -P -v test_volume:/etc/nginx --name="nginx_name" nginx:lates
2021-11-27 17:36:54
1066
原创 利用stress-ng压测来理解linux平均负载
利用stress-ng压测load简介情景1:cpu使用率高情景2:iowait高情景3:大量进程load简介应用容器的linux监控面板load是经常关注的性能参数,或者在机器上执行uptime也能直观的看到平均负载情况:右边三个参数从左→右依次是1min、5min、15min的平均负载,所谓平均负载是指单位时间内的平均活跃进程数,和cpu使用率不是同一个概念,平均活跃进程数包括两个状态的进程数:可运行状态、不可中断状态。其中可运行状态的进程指的是正在使用cpu的进程或者等待cpu的进程,对应ps命
2021-08-29 17:20:16
1398
原创 rc.local加开机自启未执行
rc.local加开机自启未执行背景申请的一批新机器,部署了应用加了开机自启动到/etc/rc.d/rc.local中,但物理机宕机并恢复后,上面一台虚拟机上的应用未自启。OS版本:rh7.4排查思路:毕竟是主机组统一批量交付的机器,一般机器上软件和基础的环境变量无问题,所以优先检查自己加的脚本是否正确。操作是直接复制rc.local中的启动命令,就在终端执行,发现能正常启动,那脚本问题排除。去看rc.local的执行日志,rc.local的默认打印在/var/log/boot.log中,用关键
2020-11-25 20:30:58
1232
原创 linux叠加挂载磁盘卷能不能只卸载上层挂载点
linux叠加挂载磁盘卷能不能只卸载上层挂载点问题实验结论问题废话不多说,直接进入正题:/dev/sdb1和/dev/sdb2分别挂载在/guazai和/guazai/gua2,当我只需要卸载/guazai时,有必要连下层的/guazai/gua2一并卸载么?实验先挂载/guazai/gua2,再挂载/guazai(挂载点的目录要提前存在,直接mkdir -p /guazai/gua2就行)挂载/guazai/gua2时,注意看,盘里是有文件的,df -h也能看到挂载情况。再挂载/gu
2020-09-05 23:55:49
372
原创 mysql在linux上的备份脚本
记录一下备份mysql数据库的一个方法:部分备份+binlog的形式,这里部分备份也可以改成全备份,差不多。具体方案是:采用crontab定时调用脚本执行,比如说每天凌晨二点;脚本在这里分成两个部分,一个用来创建备份,另一个用来删除n天前的备份文件,毕竟太旧的数据占用着磁盘是浪费的。下面是创建复制的脚本#!/bin/bash##*****************************...
2019-07-15 22:18:17
626
原创 用docker搭建wordpress+php+mysql服务
总体思路:一台虚拟机当宿主机,上面装两个docker容器,分别都和宿主机建立存储关联关系,然后开放80端口和外部通信,而mysql仅在本地。如果需要在宿主机上也隔离的话,需另外创建一个null隔离网络,然后把php的地址加进该网络。环境:rhel7.4,+docker-ce18.09.6。第一步,pull下来mysql和php的镜像# systemctl start docker# doc...
2019-06-27 13:32:10
1711
原创 systemctl start wokd无提示但没有开启8001端口
最近试着安装kimchi+wok来用web界面管理kvm,环境是centos7.6,在安装wok和kimchi包后,执行[root@localhost ~]# systemctl daemon-reload[root@localhost ~]# systemctl start wokd后用https://ip:8001访问提示拒绝连接,用ss -ntl |grep 8001发现端口没开,查...
2019-06-25 21:26:43
764
原创 virt-manager打开img镜像卡在further output written to /dev/ttyS0
在centos7上运行virt-manager,加载一个img后缀的映像文件,每次加载都会在这里卡个十几分钟先后尝试了增加虚拟机的内存和修改/dev/ttyS0的权限为777,都不管用,后来无意中在宿主机上启动并用console连接时,看到了详细日志[root@kvm-master ~]# virsh start generic-2[root@kvm-master ~]# virsh co...
2019-06-23 22:30:24
2540
2
原创 利用cobbler自动安装linux系统
上一篇介绍了如何利用pxe安装linux,但需要手工操作的地方太对,也不方便日后维护,所以这一篇介绍如何用cobbler安装。cobbler可以理解为对pxe的二次封装,安装包是在epel源中的,所以要确保你的机器能联网(后面的配置也需要联网),支持cli和web两种管理模式。我这里用的是vm ware,配置的一个桥接网卡用来联网,一个仅主机模式的网卡用来搭配dhcp服务器。当然这里一样要检查se...
2019-06-10 20:52:01
307
原创 实现PXE无人值守自动安装CentOS 7
本文按照操作步骤一步一步教你如何制作可以在n台客户端直接安装linux CentOS 7: 首先来检查一下防火墙和selinux是否开启,如有开启需要关闭,不然会对接下来设置dhcp等服务产生影响。# getenforce# vim /etc/selinux/config# setenforce 0# firewall-cmd --state# systemctl stop fire...
2019-06-08 23:46:54
2353
原创 怎么自建一个Linux系统
如题,本文讲解如何自己制作一个小型Linux系统先贴一下大概步骤:准备一块硬盘fdisk给硬盘分区(/boot一个,/一个)、格式化挂载/boot分区grub-install安装grub文件生成vmlinuz、initramfs建grub.conf文件挂载根,创建文件系统复制其他脚本及依赖文件、驱动首先,在现有的centos6中添加一块虚拟硬盘(当然,你也可以用U盘代替),...
2019-05-29 19:59:58
1700
1
原创 /boot分区、/etc/fstab都被误删了怎么修复
上一篇文章讲了/boot分区删掉了如何修复,现在来讲一下更严重一点的破坏,不仅/boot被删了,连/etc/fstab也被删了。/etc/fstab中存放的一些挂载信息,我们先来看一下/etc/fstab中的内容在进入救援模式时,如果/etc/fstab没有被破坏,会默认将根目录/挂载到/mnt/sysimage下,现在我们删除/boot和/etc/fstab,重启,报错卡在这里了。再重启...
2019-05-29 13:23:01
2340
原创 /boot分区被误删了怎么修复
大家都知道/boot很重要,里面存放着内核和BootLoader的引导文件,如果这个目录被删除了,那系统肯定起不来,下图就是删除后的启动状态(此次以centos6为例):要修复/boot,就要修复里面最重要的几个文件:/boot/vmlinuz --内核文件/boot/initramfs --虚拟内存盘,/boot/grub/grub.conf --grub2 sta...
2019-05-29 12:28:52
5805
1
原创 利用expect传输命令到多台机器并执行
首先简单介绍一下expect: expect基于Tcl语言开发,主要应用于自动化交互式操作场合,借助Expect处理交互的命令,可以将交互 过程如:ssh登录,ftp登录等写在一个脚本上,使之自动化完。expect语法:expect [选项] [ -c cmds ] [ [ -[f|b] ] cmdfile ] [ args ]expect中常用命令:spawn:启动新的进程send...
2019-05-28 21:53:19
1803
原创 linux模拟无限重启
/etc/crontab文件中存放了周期性的计划任务,所以在此文件中增加一行:@reboot root reboot.退出保存,执行 # reboot立即重启系统,系统就会在重启后一直不断重启。此时解决方法有两种:一是进入救援模式,也就是下图中的第二行,带有“rescue”字眼的,进入此模式后进入相应文件,删除掉问题行,重启就ok,这里不做详细记录。主要记录一下第二种方式:在正常启动的那一行选...
2019-05-18 22:06:47
1030
原创 将Centos6两个dvd文件打包成一个带启动引导的ISO文件
Cenos6系列版本,官网提供的镜像文件都是两个,dvd1和dvd2,像下面这样,其中dvd1有大部分常用功能,dvd2可以说是一些扩展。但如果我们要安装一个everything的完整镜像,就需要将他们打包成一个了。此外,如果是制作本地ISO像YUM源,如果只挂载dvd1,就算yum repolist显示有六千多个,但是实际上只有三千多个, 另外三千多在dvd2中。以下记录一下步骤(制作6.9...
2019-05-02 22:44:30
1524
转载 一条sql执行很慢,是什么原因?
分两种情况,一种是平常执行块,偶尔很慢;二是一直都很慢。对于第一种,一般有以下两种原因:(1) 数据库在刷新脏页(flush)要往数据库中插入、更新一条数据时,数据库会先在内存中将这一条数据更新吗,但却不会立即持久化到磁盘中,而是把这些记录写入到redo log中,等到空闲的时候,再从redo log中把数据同步到磁盘中去。redo写满了:redo log的容量是有限的,当数据库一直很忙,...
2019-04-30 11:34:21
1346
转载 linux中awk指令
awk功能很强大,适用于文本处理和报表生成。格式为:awk {pattern + action} filenameawk对输入的流的每一行都会进行同样的处理,例:awk ‘{print $0}’ /etc/passwd,也支持BEGIN和END,在处理数据之前或者处理之后做一次性处理。详情参考https://www.cnblogs.com/ginvip/p/6352157.html...
2019-04-23 16:46:11
97
转载 oracle中的同义词SYNONYM
以前没接触过,直到有一次在数据库中查某个物化视图的时候,view sql进去看到的是另一个物化视图,就去网上查了查oracle的别名,才知道有这个机制,参考的以下链接:https://www.cnblogs.com/jxldjsn/p/9102334.html下面就记录一下我自己的理解(也是怕忘记了,之前注意到这个没太在意,结果忘记了导致这次又看不懂了。):SYNONYM是什么?用来干什么的...
2019-04-19 14:48:54
611
原创 Linux文件系统中主要目录结构和文件类型
Linux中磁盘划分和Windows不一样,Windows有C盘,D盘等,而Linux只有一个根目录"/",在根目录下再分区,以子文件夹的形式表现。其主要目录及其意义如下(做个笔记,以后翻起来方便):/ ###所有文件/文件夹的祖先/boot ###启动Linux启动引导文件存放目录/bin ###用户常用命令存放目录;/sbin ###系统管理员常用命令存放目录/lib ###存放系统...
2019-04-04 18:02:10
283
原创 Linux中poweroff、shutdown、init 0和halt的异同
几个命令的作用都是用来关机,但是又有细微区别:halt:关机但是不关闭电源,需要手动关闭电源(加p参数会关闭电源),halt被称为最简单的关机命令,它会通知硬件停止所有的CPU功能,执行时会杀死进程,执行sync系统调用文件系统写操作,完成后就会停止内核。若系统的run level在0-6中,则关闭系统,否则调用shutdown -h来取代。#halt -p相当于poweroff#halt ...
2019-04-02 23:36:17
12688
3
转载 linux入门:《Linux就该这么学》的知识点梳理
全书分为20章:第一章:部署虚拟环境安装Linux系统主要是虚拟机的安装,一般用到VM virtual box或者VM Ware这两个虚拟机软件,前者免费,目前6.0版本兼容性最佳,在安装时会出现鼠标“消失”的问题,需要把默认设置:设置–显示–显卡控制器 更改为“VBoxVGA”选项,再重新启动后鼠标就显示了。Linux中相关系统、软件配置文件一般存放在/etc/目录 下,对于刚安装的Linu...
2019-03-12 19:44:47
572
转载 禁用virtualbox自带的dhcp服务
在你安装虚拟机的系统上面,打开cmd:cd D:cd D:\softInstall\VMvirtualbox6D:\softInstall\VMvirtualbox6>VBoxManage list dhcpserversNetworkName: HostInterfaceNetworking-VirtualBox Host-Only Ethernet AdapterIP: ...
2019-03-07 17:14:02
2134
原创 配置DNS主从服务时/var/named/slaves/下没有复制过来两个配置文件
问题:在从服务器上执行cd /var/named/slaves/再ls,发现是空的。检查了几遍配置,发现过程未出错,于是执行cat /var/named/data/named.run和看日志cat /var/log/message,此错和ipv6有关,所以考虑禁用ipv6.下面又有failed to connect:host unreachable,猜测可能防火墙也阻挡了 。相继关闭ipv6和执行...
2019-03-07 09:20:23
2692
1
原创 linux配置正向解析,nslookup检验时出现connection timed out
环境:CentOS 7在配置DNS正向解析时,最后用nslookup来检验,一直提示连接超时。但是能ping通,就怀疑是不是DNS错了,遂执行cat /etc/resolv.conf查看DNS地址,果然不对劲(我的ip设置为192.168.10.10)。用vim修改为192.168.10.10,重启systemctl restart network,再试,OK。...
2019-03-06 11:01:41
19903
4
原创 a left join b 在where后加B表的过滤条件时,成了inner join
今天在写sql查询的时候,发现select * from A left join B on A.c=B.c where B.m>1竟然和select * from A inner join B on A.c=B.c where B.m>1等价,即left join 成了inner join,但是查询结果要求以A表为主表,在B表中未匹配到的也要返回,所以此处应把对B表的过滤加到on条件中...
2019-03-01 17:34:20
1133
原创 Oracle中查询某个字段是否全部为数字
背景:在table_x表中,有字段name,存储的是varchar2类型,存有abc23,12345f6等值,现需要根据name字段过滤以"A"(大写)开头且后面跟着3位数字的行,即过滤出类似“A000”的结果。思路:第一步,用通配符过滤出A开头的且后面跟着3个字符位的;第二步,将前面的A截取,把后面三位当成新字段,判断是否为数字。sql是这样的select * from table_x...
2019-02-26 15:28:38
7725
转载 oracle自定义数组类型
废话不多说,直接上代码 create type list_attrs as varray(10) of varchar2(80); --创建一个名为list_attrs的定长数组,元素个数最多为10 create table test_yiyu(id number,name list_attrs) --建表 insert into test_yiyu values(1,...
2019-02-25 15:33:25
2085
原创 select * from a,b where a.c=b.c实为内连接
仅作为记录用来翻阅提醒,因为老忘:select * from a,b为笛卡尔乘积,对笛卡尔乘积概念不熟的呢就自行搜索百科复习一下;select * from a,b where a.c=b.c 等价于select * from a inner join b on a.c=b.c;select * from a left join b on a.c=b.c,将a表查询的结果去b中做匹配,匹配不...
2019-02-25 14:37:47
8287
1
原创 firewall-cmd --permanent --get-zone-of-interface=ens33显示no zone
(操作系统为CentOS7)在学习firewall-cmd命令的时候,执行firewall-cmd --permanent --zone=internal --change-interface=ens33后提示成功,再执行firewall-cmd --get-zone-of-interface=ens33查看当前网卡的zone区域,立刻就更新过来了(此出并没有执行reload),而执行firew...
2019-02-15 14:00:58
2776
1
原创 rhel5.8的lvconvert --merge报错Can't process LV vo: snapshot-merge target support missing from kernel?
系统是红帽rhel5.8如题,创建一个闪回卷,依次执行lvcreate -L 120M -s -n SNAP /dev/storage/vodd if=/dev/zero of=/linuxprobe/files count=1 bs=100Mumount /linuxprobelvconvert --merge /dev/storage/SNAP创建的时候都很顺利,最后闪回的时候就...
2019-02-13 15:15:57
441
原创 oracle物化视图不能自动刷新,但是可以手动刷新
记录一下,是前几天的问题了:建表的时候写的是Fast on demand刷新模式,依靠oracle的job,每20分钟增量刷新,但是某天发现to_date中的日期小于当前sysdate,且user_jobs表中的next_date的时间也小于当前系统时间,也就说明这个任务在那个时间点就中断了。在sqlserver developer中执行show parameter job_queue_pr...
2019-02-13 14:50:29
6876
1
原创 解析Excel2016出现java.lang.ClassNotFoundException: org.apache.xmlbeans.XmlException
解决java.lang.NoClassDefFoundError: org/apache/xmlbeans/XmlException在写一个解析excel2016写的文件时,在实例化XSSFWorkbook wb = new XSSFWorkbook(new FileInputStream(file));时报错:java.lang.NoClassDefFoundError: org/apac...
2019-01-08 13:02:06
6829
原创 Python在for循环中直接修改列表元素值无效,需要用到索引
如题,想要修改magicians_existed,将其每个元素都加上一个“the Great”,开始是这么写得:发现打印后还是原来的值。然后试着在make_great()里面创建一个新数组,然后用存储修改后的值,用return返回新数组,如下,目的是达到了,但是这样就创建了多余的临时变量,每执行一次方法就创建一次,故又百度,发现需要根据索引才能修改元素值。就试着改成下面这样,发现修改成功:...
2018-11-21 14:28:16
16619
12
原创 sublime text2启动报错
sublime text2启动报错问题描述:在更改快捷键设置,即Preferences->Key Bindings – User时报错后报错,退出sublime 后无法启动,错误提示如下:思路:看提示内容是某个文件中有语法错误,缺少东西了,那就找到对应文件夹,更改内容。解决步骤:此时去找提示中的目录下的文件:Default (Windows).sublime-keymap(至于“A...
2018-11-12 15:29:57
586
原创 Sublime Text2/3配置python2/3开发环境
Sublime Text2/3配置python2/3开发环境windows7下配置sublime text的python环境windows7下配置sublime text的python环境安装好sublime text2/3和python2/3并且配置好环境变量后,打开软件,依次点击Tools–Build System-- New Build System…,如下图:然后用以下内容替换掉原...
2018-11-01 17:01:46
210
cms发生old gc时有新生代引用老年代对象时的GC roots
2021-08-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人