- 博客(171)
- 收藏
- 关注
原创 文件操作练习
/*将指定目录下的.txt后缀结尾的文件合并成一个大文件 travers_dir()、write_file()然后将大文件进行一个压缩(假如读文件都成功,不用判断err)*/package mainimport ( "bytes" "compress/zlib" "fmt" "io" "io/ioutil" "os" "strings")//将所有.txt后缀文件的字节数据合并到一个大的字节buffer中(定义的bs)func travers_dir(dir strin
2022-03-22 22:46:07
567
原创 kubeasz 3.11安装k8s 高可用集群
1、环境1.1、服务器统计类型服务器ip备注harbor(1台)10.10.99.26Master(2台)10.10.99.21/22Node(3台)10.10.99.23/24/25Haproxy(2台)10.10.99.18/191.2、主机名设置类型服务器ip主机名备注harbor10.10.99.26harbor.ldy.cnMaster1、ansible10.10.99.21k8s-mast
2021-11-15 10:15:03
2886
原创 kubeasz问题-FAILED - RETRYING: 轮询等待node达到Ready状态
TASK [kube-node : 轮询等待kubelet启动] ************************************************************************************************************************************changed: [10.10.99.21]FAILED - RETRYING: 轮询等待kubelet启动 (2 retries left).FAILED - RETRYI.
2021-11-14 16:50:48
2315
原创 用户管理练习
用户添加v1版本package mainimport ( "fmt" "strconv")var user []map[string]stringfunc getID() string { var id int = 0 for _, v := range user { if i, _ := strconv.Atoi(v["id"]); id < i { id = i } } return strconv.Itoa(id + 1)}func addUs
2021-11-10 22:26:36
313
原创 KVM桥接模式发现虚拟机与所有外界设备不通
1、问题使用KVM安装了一个桥接网络的虚拟机,结果发现虚拟机与宿主机不同。就更不用说网关什么的了2、问题的排查在宿主机操作:1、查看ip,发现里面一切正常2、brctl show,发现异常。br0桥接设备只有宿主机的eno1网卡,但是没有虚拟机的桥接网卡#brctl showbridge name bridge id STP enabled interfacesbr0 8000.0026b936ace0 no eno1virbr0
2021-11-10 20:18:48
4339
3
原创 KVM的安装与使用
一、安装root@ubuntu18:~#apt install qemu-kvm virt-manager libvirt-daemon-systemroot@ubuntu18:~# kvm-okKVM acceleration can be usedroot@ubuntu18:~# ip a //是否有虚拟桥接网络1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
2021-11-10 17:18:34
797
原创 Open Stack组件
文章目录组件说明horizonnova虚拟机说明虚拟机创建neutron网络说明实例运行建立网络cinder存储说明实例需求存储Keystoneglance说明镜像的提供镜像的存储swift对象存储组件说明horizon以图形化界面管理所有project。nova虚拟机说明Nova是OpenStack所有组件中最重要的一个模块,负责了云中虚拟机的创建、管理。就是对CPU、内存、磁盘的分配使用。Nova模块在云计算管理系统中,直接与底层虚拟化软件交互,管理着大量的虚拟机,以供上层服务使用
2021-11-09 16:08:35
3041
原创 tail -f的功能
实现一个tail -f的功能package mainimport ( "flag" "fmt" "io" "os")func main() { var content = make([]byte, 1024) var path string var help bool flag.StringVar(&path, "f", "", "打开的文件") flag.BoolVar(&help, "h", false, "help") flag.Parse() if
2021-11-09 14:39:51
303
原创 进入救援模式及忘记root密码
一、如何进入救援模式在最后面添加systemd.unit=rescue.target进入以下画面,输入密码就可以救援了。如果CTRL+D就开机了二、忘记root密码怎么办最后添加rd.break第一步回车,因为我们使用rd.break跳过了root密码,所以空密码就可以通过第二步,看一下真正的系统是ro模式第三步,只读重新挂载未读写第四步,切根第五步,修改root密码第六步,如果开selinux,需要这个,至于为什么,看鸟哥的说明...
2021-09-28 14:21:13
1071
原创 docker部署seafile
文章目录一、环境准备二、容器mysql数据库四、容器seafile一、环境准备主机:centos7.8工具:docker和docker-compose二、容器mysql数据库1、规划空间创建mysql目录。我这里直接在/下创建了mkdir /mysql2、mysql目录下创建一个docker-compose.ymlversion: "3"services: mysql: image: mysql:5.7 # 使用 mysql5.7 版本的镜像 container_na
2021-07-26 12:36:29
7333
原创 docker部署owncloud
文章目录一、环境准备二、容器mysql数据库三、容器owncloud一、环境准备主机:centos7.8工具:docker和docker-compose二、容器mysql数据库1、规划空间创建mysql目录。我这里直接在/下创建了mkdir /mysql2、mysql目录下创建一个docker-compose.ymlversion: "3"services: mysql: image: mysql:5.7 # 使用 mysql5.7 版本的镜像 container_n
2021-07-20 20:32:07
1984
1
原创 K8s集群介绍及kubeadm方法搭建
这个是我很早之前记录的,当时稀里糊涂的做了,以后有更深刻理解再修改目录一、docker三剑客二、K8s功能1、自动装箱2、自我修复3、水平扩展4、服务发现5、滚动更新6、版本回退7、密钥配置管理8、存储编排三、K8s集群介绍四、kubeadm集群搭建1、前期准备工作2、初始化部署五、问题1、主节点出现的问题:2、从节点加入时报错一、docker三剑客①、docker machine用于在虚拟机安装容器引擎以及管理主机②、docker compose能够通过yaml文件在容器主机上完成多个应
2021-07-04 13:28:17
374
1
原创 K8s系统基础
目录一、Docker简介1、3个核心概念2、镜像与可写层驱动3、Docker组件4、Kata Containers二、K8s系统基础1、容器编排1.1、定义1.2、为用户提供关键能力2、集群概述1、集群概括Pod2、集群架构1、主节点组件说明etcdcontroller-manager调度器2、工作节点组件说明kubelet容器运行时kebe-porxy3、核心组件及常用附件网络插件CoreDNSDashboard监控日志Ingress Controller3、应用的运行及互联互通1、service2、Po
2021-07-04 13:15:16
806
2
原创 计算机网络必备知识
目录导航一、概念1、OSI模型2、TCP/IP标准3、各层解释二、设备介绍1、中继器2、hub集线器3、网桥4、交换机5、路由器三、MAC结构四、传输层TCP/UDP1、TCP1、说明2、结构2、UDP1、说明2、结构一、概念1、OSI模型应用层表示层会话层传输层网络层数据链路层物理层2、TCP/IP标准应用层传输层网络层数据链路层物理层3、各层解释1、物理层:解决连接问题传输信号,比特流bit
2020-09-02 16:13:57
782
原创 DHCP服务器
目录导航一、搭建DHCP服务器二、tftp服务一、搭建DHCP服务器1、Centos7:安装dhcp Centos8:安装dhcp-server2、修改配置文件(修改完成注意重启服务):添加:域名DNS租期:如86400最大租期:106400网段及子网范围路由3、说明:服务器端口:67客户机端口:68(使用dhcpclient命令后开启)dhcp日志:/var/lib/dhcpd/dhcpd.leases二、tftp服务说明:服务端安装tftp-serve
2020-08-30 15:36:21
293
原创 Centos7应答文件kickstart制作
首先安装工具:system-config-kickstart时区太难找,一会自定义修改将本机yum仓库名称改为development
2020-07-20 20:56:03
660
原创 declare、eval小命令
文章目录一、定义数型declare二、二次执行eval一、定义数型declare-r 只读-i 整型-a 数组-A 关联数组-f 函数名及内容-F 函数名-x 环境变量 <=>export-l 变量为小写(lower)-u 变量为大写(upper)二、二次执行eval用法:先将所有可替换的替代,再次执行命令①、②、变量的简介调用假设如下,如和使得a=5a=bb=5法一(推荐)echo ${!a}=> eval tmp=${!
2020-06-11 12:29:49
344
1
原创 字符串的处理
文章目录一、截取二、匹配三、替换四、删除五、大小写转换一、截取假如str=abcdefg1、取长度${#str}2、跳过前n个${str:n}3、跳过n个再取m个${str:n:m}4、去掉前n个,去掉后m个${str:n:-m}5、取倒数n个(注意空格)${str: -n}6、取倒数n个,再去掉n个中的后m个(注意空格)${str: -n:-m}二、匹配假如file="data/ldy/sdy"1、从左到右匹配(非贪婪)${file#*/}
2020-06-11 12:05:21
263
原创 数组的使用及简单练习
文章目录一、声明二、赋值三、显示所有数组四、引用五、删除六、处理七、追加八、关联数组(必须先声明)一、声明普通数组:declare -a ARRAY (不必须声明,可直接使用)关联数组:declare -A ARRAY(必须声明后才可使用)二者不可相互转化二、赋值1、一次赋值一个元素a[0]=‘abc’a[1]='1232、一次赋值全部元素a=(“a” “b” “c”…)a=({1…10})a=(*.sh)3、只赋值特定元素a=([0]=“a” [3]=“c”)
2020-06-11 11:09:07
492
1
原创 trap、expect脚本练习
文章目录一、trap二、expect2、expect脚本shell脚本一、trap1、trap测试#!/bin/bashtrap 'echo "singal:Press Ctrl+c"' intfor i in {1..10};do sleep 1 echo $idonetrap '' intfor i in {11..20};do sleep 1 echo $idonetrap '-' intfor i in {21..30};do sleep 1
2020-06-08 20:27:26
522
原创 脚本工具:trap、mktemp、install、expect
文章目录1、信号捕捉trap2、mktemp3、install4、交互式转化及批处理:expect①、参数:-c (一行命令执行)②、相关命令③、命令行执行5、expect脚本6、bash脚本引用expect脚本1、信号捕捉trap用法:trap -l 列出所有信号trap ‘触发’ 信号trap ‘’ 信号trap ‘-’ 信号trap -p (列出自定义的信号)trap 函数名 exit (当脚本退出时,执行指定函数。只能执行一个,多个无效)2、mktemp用法:mkt
2020-06-08 20:06:35
563
原创 函数的使用
目录导航一、定义格式:3种①、②、③、二、查看函数三、调用四、使函数通用五、小功能六、函数返回:return 0七、函数传入参数八、函数与脚本变量同名若不引用目录,则只在当前终端shell生效一、定义格式:3种①、func_name(){ 函数体}②、function func_name{ 函数体}③、function func_name(){ 函数体}二、查看函数declare -F [func_name] 查看所有已定义的函数名declare -f
2020-06-08 19:14:01
342
原创 格式化输出printf
目录1、格式: printf "格式" 参数2、常见替换符①、%s 指定字符串②、%f 浮点格式(约定小数点后几位)3、常见转义符4、格式:默认为右对齐;-左对齐;还可指定宽度;也可指定一行几个字符串5、字符串为整体与非整体1、格式: printf “格式” 参数2、常见替换符①、%s 指定字符串②、%f 浮点格式(约定小数点后几位)约定小数点后2位3、常见转义符\n 换行\r 回车 \a 警告 \b 后退 \f 换页
2020-06-07 18:04:12
663
原创 while与read及selec循环(菜单)
导航一、while与read①、echo li |read x;echo $x ==》空②、禁止某ip连接③、专门逐行处理,如找出nologin的系统账户④、稍微详细点的报警二、select循环(菜单)一、while与read①、echo li |read x;echo $x ==》空原因:将li传给x,但x与$x不在同一个shell中echo li |( read x;echo $x )echo li |{ read x;echo $x;
2020-06-04 19:07:00
451
原创 Shell脚本进阶练习
例题:一、for①、找出UID大于1000的用户②、创建li,wang,zhang账户,并设置随机密码,下次登陆强制修改密码③、将YYYY-MM-DD目录内容移到对应的YYYY-MM/DD目录下④、创建99乘法表⑤、不管什么后缀,通通改为.bak后缀while①、报警邮件:(每1分钟检查一次)②、点菜shift创建任意账户一、for格式1:for 变量 in 范围; do 命令; done格式2:for ((i=1;i<=100;i++));do 命令; done①、找出UID大于1000
2020-06-03 21:46:12
439
原创 最详细的Next主题构造
目录导航一、下载next主题,及更改主题二、更改语言三、增加菜单的分类,及创建它们的页面四、换主题风格五、设置作者头像六、设置作者与站点描述七、增加社交链接八、打赏功能九、开启侧边友情链接十、增加本地搜索功能(未发现作用)十一、设置网站图标十二、统计全站及文章字数及阅读时长(目前有错)十三、增添加载条一、下载next主题,及更改主题下载zip压缩包点击这里解压后放入themes目录下,并改名为next修改根目录配置文件二、更改语言看主题的中文格式,去下面文件夹看发现中文格式为zh-C
2020-06-03 09:55:45
2510
2
原创 Gitee、Github同时配置ssh key
首先在根目录下创建.ssh文件进入.ssh,生成两个密钥ssh-keygen -t rsa -C "827931744@qq.com" -f "github_id_rsa"ssh-keygen -t rsa -C "827931744@qq.com" -f "gitee_id_rsa"在.ssh目录下创建文件并添加一下内容# giteeHost gitee.comHostName gitee.comPreferredAuthentications publickeyIdentit.
2020-05-26 13:46:37
621
原创 Git分支管理
首先了解详情请点击此处观看廖雪峰老师的官网我是按照廖雪峰老师写的,只为了做详细笔记参考,同时更清楚的学习目录导航一、创建分支二、合并分支三、删除分支一、创建分支1. 创建分支agit branch a2.切换到分支agit switch a3.创建并切换git switch -c a4.查看分支git branch二、合并分支切换到主支后1.合并某分支到当前分支git merge a三、删除分支1.删除分支agit branch -d a...
2020-05-25 16:44:09
239
原创 Git远程仓库的应用
首先了解详情请点击此处观看廖雪峰老师的官网我是安装廖雪峰老师写的,只为了做详细笔记参考,同时更清楚的学习目录导航二、Git远程仓库连接1.配置传输密钥2.创建Github远程仓库,及推送3.克隆远程库到本地二、Git远程仓库连接因为Github是一个免费的远程仓库,所以,我们就拿Github为例要先创建一个自己的Github账号1.配置传输密钥因为本地仓库要上传至Github仓库,需要标识,所有就要SSH来识别这是本人上传。首先看自己的用户目录下有没有隐藏文件.ssh。若有就跳过下面命
2020-05-25 15:31:05
606
原创 system information
#!/bin/bashecho -e "\033[$[$RANDOM%6+31];1mHostname: $(hostname)\033[0m"echo -e "\033[$[$RANDOM%6+31];1mIPv4 Address: $(ifconfig|sed -nr '2p'|tr -s " "|cut -d" " -f3)\033[0m"echo -e "\033[...
2020-05-25 12:19:29
1598
原创 逻辑卷管理器(LVM)
xfs:只能扩展,不能缩ext:能扩能缩一、实现过程: 逻辑卷对应 ①、设备名:/dev/dm-# ②、软链接:/dev/mapper/VG_name-LV_name /dev/VG_name/LV_name二、创建逻辑卷: ①、创建物理卷:●硬盘不需改类型,没有类型这一说 ●分区需要改类型:8e pvcreate /dev/sd{a6,d} pvs 简单查看 pvd...
2020-05-25 12:16:38
711
2
原创 初识Git
首先了解详情请点击此处观看廖雪峰老师的官网目前我还没太懂Git及Git的某些命令作用,只做笔记参考一、开始使用Git每个机器都必须自报家门:你的名字和Email地址$ git config --global user.name "ldy"$ git config --global user.email "827931744@qq.com"注:-g代表global,让所有Git仓库都用此配置.创建Git的仓库,说白了就是一个目录,在这里面可用Git管理$ git init #会
2020-05-24 22:42:02
298
原创 Markdown总结基础语法
##### 基础用法##### 1.##### 2.```此处敲代码-- **1**- *1*- ~~-123~~-- > 引用文本- ==标记文本==- [ ]- [x]##### 图片![](https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1590327310438&di=f2de55c...
2020-05-24 19:28:49
163
原创 HEXO 搭建自己的博客
一、准备工作安装所需要软件①、必装:node.js直接下载对应版本。点击此处进入官方下载界面注意:一定要点击Node.js and npm,添加至环境变量其次:Git提供shell环境。也可直接用Windows的cmd。感觉不方便,所以最好下载。点击此处进入官方下载界面测试是否安装成功以及更改淘宝的cnpm源node -v #查看node.js的版本git --version #查看git的版本npm -v #查看npm的版本npm
2020-05-21 23:27:49
497
2
原创 Centos7、8一键安装httpd.service
#!/bin/shecho -e "\033[1;31mstart install httpd.service\033[0m"sleep 3cd /usr/local/src/dnf install -y gcc make apr-devel apr-util-devel pcre-devel openssl-devel redhat-rpm-configwget https://mir...
2020-05-19 11:01:07
538
2
原创 基本设置
\[\e[1;35m\][\u@\h \W]\$\[\e[0m\]\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\ [\e[0m\]\\$
2020-05-16 11:17:44
238
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人