- 博客(56)
- 收藏
- 关注
原创 一分钟了解git全局配置
等命令的结果)中会以正常的、可读的形式呈现,而不是被编码为类似 URL 编码的格式。这样可以更直观地查看和处理包含特殊字符的文件名。时,Git 会尝试以原始字符形式显示文件名。这意味着包含中文、日文、韩文等非 ASCII 字符的文件名,在 Git 的输出(如。配置中“user”部分会在提交代码的时候作出不同user的标识。分别针对文件名显示和行尾换行符处理进行了特定的设置,以满足特定的开发和协作需求。配置项用于控制 Git 如何显示文件名中的非 ASCII 字符。在 Git 的配置文件中,
2025-01-10 18:03:53
813
原创 如何快速又安全的实现端口转发【Windows MAC linux通用】
有很多程序是在虚拟机上运行的,返回的url 又是127.0.0.1。3.在个人电脑上用本文的脚本,快速开机一个端口转发。把访问127.0.0.1的流量转发到虚拟机上(本文)4.windows linux MAC 通用,国产系统国产CPU也能用。1.修改程序,返回虚拟机的ip (要改代码,换虚拟机还要再改代码)3.只依赖python3 ,无python三方包依赖。Windows,MAC,linux都通用。1.快速,转发的目的ip和端口方便修改。2.本脚本只实现了tcp,未实现udp。
2024-12-25 17:35:50
623
原创 怎么避免在pod产生-派生炸弹(Fork Bomb)? k8s(kubernetes)
1.【kubelet节点】 /var/lib/kubelet/config.yaml文件中添加如下的内容。2.【kubelet节点】容器kubelet:systemctl restart kubelet。3.【kubectl节点】开启kubectl的proxy: kubectl proxy。通过修改kubelet的配置,限制每个pod能用的pid数量即可解决此问题。参数来限制每个容器内的进程数量。kubelet 可以通过设置。
2024-10-05 19:40:46
575
原创 使用webhook禁止k8s创建顶级域名的命名空间
通过创建与同名的名字空间, 这些名字空间中的服务可以拥有与公共 DNS 记录重叠的、较短的 DNS 名称。所有名字空间中的负载在执行 DNS 查找时, 如果查找的名称没有尾部句点, 就会被重定向到这些服务上,因此呈现出比公共 DNS 更高的优先序。为了缓解这类问题,需要将创建名字空间的权限授予可信的用户。或者额外部署第三方的安全控制机制, 例如以准入 Webhook 的形式,阻止用户创建与公共 TLD 同名的名字空间,也就是本文的内容。
2024-09-09 15:00:00
533
原创 快速找到nginx用的是哪个配置文件
Nginx的主配置文件有的在/etc/nginx/nginx.conf而有的在/usr/local/nginx/conf/nginx.conf,还有很多情况配置文件在很多自定义的位置。ps -ef | grep nginx中master process后面的就是启动命令。找到主配置文件和子配置文件后,就可以愉快的查看和修改配置文件,愉快的板砖啦!在工作中会碰到一台服务器安装了多个nginx的服务的情况。1.当前nginx服务的主配置文件具体是哪个呢?是优雅停止(等待工作进程完成当前请求后停止)
2024-04-19 15:34:01
3349
原创 python多版本工具miniconda的配置优化
conda比较重,所以我用了miniconda,切换python版本也足够方便。本文提供miniconda优化的内容。
2024-01-11 23:54:47
680
原创 coredns智能解析view插件实现一个视图多网段配置的方法
写作时间:20230526环境:centos-7.9.2009 coredns-1.10.1DNS的视图功能可实现不同的客户端(不同的IP),同样的域名,可得到不同的解析值。coredns实现此功能是通过自带的view插件来实现的。在官方文档https://coredns.io/plugins/view/中查看了view的配置,如下。
2023-05-26 17:50:11
1252
原创 windows开机不自动挂载磁盘的方法
开机不挂载某块磁盘的理由1.本人电脑上有个仓库盘是机械硬盘,并不是每次开机都要用到,开机不挂载有利于增加数据盘的寿命2.挂载了数据盘,有时候打开文件页面会比较慢,不够丝滑3.通过本文的方法实现了:开机不自动挂载,使用中挂载和卸载足够方便
2023-04-30 14:34:38
3568
2
原创 k8s-service-CNAME的用法
某各业务有dev/sit/uat/prd四套环境,两套k8s集群dev,sit,uat共用一个k8s集群,生产单独一套。每套环境有三各命名空间,举例为:test-dev test-broker-dev test-dmzout-dev。场景一:通过service访问集群外的域名,集群外的域名调整时直接修改service文件即可。场景二:本命名空间的service CNAME到其它命名空间的(同名)service。,这样dev,sit,uat,prd访问同一个服务的url就不同了,非常不方便。
2023-04-12 18:39:00
419
原创 根据公网IP查询出公网IP的网段和所属单位
1.当通过百度查询出自己电脑的公网IP时,想知道这个公网IP所在的公网IP网段是哪些?2.给一个公网IP,想查询对应的公网IP的网段是哪些?想知道对应IP是哪个公司的?方法二:直接调用接口查看返回结果(如下链接把IP或网段输入进去)参考:《DNS与BIND》第五版 52页。的搜索栏即可查看结果(可能会较慢)当碰到如下2个问题时,该怎么办呢?方法一:把对应的公网IP输入到。
2023-04-11 23:44:29
5413
原创 PTR反向解析原理详解
PTR 反向解析是从 IP 地址到域名的映射,相对于将域名映射到 IP 地址的正向解析。因为一个 IP 可能被多个域名使用,所以在进行反向解析时要先验证一个 IP 地址是否对应一个或者多个域名。若从 IP 出发遍历整个 DNS 系统来验证,将会因工程浩大而无法实现。因此,RFC1035 定义了 PTR(Pointer Record)记录。PTR 记录将 IP 地址指向域名。
2023-04-09 22:11:57
2502
原创 找到nginx服务用的是哪个配置文件
背景在工作中会碰到一台服务器安装了多个nginx的服务的情况。Nginx的主配置文件有的在/etc/nginx/nginx.conf而有的在/usr/local/nginx/conf/nginx.conf,还有很多情况配置文件在很多自定义的位置。找到主配置文件后,通过查看主配置文件的内容就可以找到子配置文件了。问题点当前nginx服务的主配置文件具体是哪个呢?一.nginx进程用的哪个主配置文件的方法方法1适合找到没有用默认配置文件的情况发,方法2适合找到默认配置文件的情况方法1:部分情况通过
2022-04-30 21:18:27
9948
1
原创 电脑连接virtualbox虚拟机的方法
virtualbox中通过NAT+端口转发的方式可实现:单张网卡;IP不会变;能上外网;个人电脑能够直接连。
2022-03-05 11:24:29
2721
原创 ansible笔记汇总
写作时间:2022年2月 系统:centos 7.9 ansible版本:2.9.27推荐ansible使用方法1.不要只用一组秘钥对,多主机按模块用几组ssh秘钥对(保障安全)2.ssh秘钥对的key进行加密,不同的key设置不同的密码,防止别人登录ansible主机能操作所有服务器可参考下面的链接做配置。在满足上面推荐的使用方法下,能像所有主机只用一个秘钥对而且key不加密一样方便。利用ssh-agent提升ansible使用的方便及安全性_sinat_24354307的
2022-02-19 15:39:47
1304
原创 tmpfs详解
tmpfs是一种基于内存的文件系统,不像其他的文件系统需要格式化后才可以挂载,而是直接使用,由于是在内存中存储数据,那么在断电后会导致数据丢失。在使用到tmpfs文件系统存储数据效率会得到一定的提升。一、特点:1.基于内存的文件系统2.没有持久性,重启服务器后文件就会丢失3.能够动态地使用虚拟内存4.不需要格式化文件系统二、应用场景:1.需要动态空间使用和动态变化;2.php session;3.存放socket;4.自定义缓存,比如存放临时文件等等;5.降低开发人员代码编写难度;6
2022-02-16 10:18:32
7787
1
原创 利用ssh-agent提升ansible使用的方便及安全性
利用ssh-agent提升ansible使用的方便及安全性本文写作时间:2022-02-15背景ansible作为运维主机能够管理多台服务器,原理是通过ssh。ssh链接有2种方式:密码和秘钥对。因用到了ssh所以也带来了一定的风险。一、用密码的弊端1.需要把服务器的密码明文写到ansible配置文件中。有一定的安全风险,不应采用二、 用秘钥对的情况1、如果秘钥对的私钥没有设置密码。有一定的安全风险,不应采用2、如果管理的所有服务器都用的是同一个秘钥对。有一定的安全风险,不应采用3、如果
2022-02-15 18:17:06
981
原创 查询mysql各个库和表的大小并按大小输出
查询每个库的总大小并由大到小排序:输出(库名,行数,数据容量,索引容量)selecttable_schema as '数据库',sum(table_rows) as '总行数',sum(truncate(data_length/1024/1024/1024, 2)) as '数据容量(GB)',sum(truncate(index_length/1024/1024/1024, 2)) as '索引容量(GB)'from information_schema.tablesgroup by ta
2021-11-11 10:30:15
1277
原创 go语言sleep一纳秒不准的思考--CPU时间片
package mainimport ( "fmt" "time")func main(){ t:=time.Now() for i:=0;i<1000;i++{ time.Sleep(time.Nanosecond) // sleep一纳秒 } fmt.Println(time.Since(t)) // 输出15秒}为什么会输出15秒这么久,每次sleep时CPU会把时间片让出来,其它任务会用占用时间片,CPU的时间片在几毫秒-几十毫秒之间(大概是这个数量级
2021-10-26 12:34:13
1283
2
原创 go语言一个包含nil指针的接口不是nil接口的理解
结合《go语言圣经》书中7.5.1节的说明和下面的代码,认真分析理解package mainimport ( "bytes" "fmt" "io")func hh(aa *bytes.Buffer) { if aa != nil { fmt.Println(300000) }}func ii(aa io.Writer) { if aa != nil { fmt.Println(400000) }}func main() { var buf *bytes.Buf
2021-10-12 15:52:20
179
原创 除了ssh外也可以开启telnet服务连接服务器
在修改ssh配置重启sshd服务时,担心ssh连不上,为了保险起见可以临时开启telnet服务端。使得该服务器既可以通过ssh来连接也可以通过telnet来连接。这样即便ssh有问题了,也可以通过telnet登录服务器,还原ssh的配置重启ssh的服务。安装服务端以centos7为例,开启telnet server的过程如下:yum install telnet-server -y # 安装telnet服务端systemctl start telnet.socket # 启动telnet
2021-09-09 10:37:25
1493
原创 centos7安装bcc-tools的步骤
前言:bcc-tools最好安装在64位系统上,因为后面安装bcc-tools时,需要用到的cmake好像是只有64位的bcc-tools 需要内核版本为 4.1 或者更新的版本使用方法# 使用该包的命令时,先执行下面的命令source scl_source enable devtoolset-9 llvm-toolset-7.0安装如果低于4.1就需要升级版本升级系统yum update -y安装 ELReporpm --import https://www.elrepo.org
2021-08-27 14:48:08
654
转载 ulimit详解
语法-H: 设置硬资源限制,一旦设置不能增加。如,ulimit -Hs 64;限制硬资源,线程栈大小为64K。-S: 设置软资源限制,设置后可以增加,但是不能超过硬资源设置。如,ulimit -Sn 32;限制软资源,32个文件描述符。-a: 显示当前所有的limit信息。如,ulimit -a;显示当前所有的limit信息。-c: 最大的core文件的大小, 以blocks为单位。如,ulimit -c unlimited;对生成的core文件的大小不进行限制。-d: 进程最大的数据段的大小,以
2021-08-11 11:05:43
5534
原创 rsync常用参数组合
个人常用的参数组合如下:rsync -avzXSH --partial --delete 源路径 目标主机:目标主机路径#解读-a 等价于 -rlptgoD -r 对子目录以递归模式处理 -l 保持符号链接文件 -p 保持文件权限 -t 保持文件时间信息 -g 保持文件属组信息 -o 保持文件属主信息 (super-user only) -D 保持设备文件和特殊文件 (super-user
2021-07-06 11:07:46
664
原创 2台主机的docker互相通信的方法
主机清单:192.168.6.132 主机名 vm132 系统centos7192.168.6.132 主机名 vm132 系统centos7安装dockerwget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.reposed -i 's+download.docker.com+mirrors.cloud.tencent.com/docker-ce+' /etc/
2021-07-04 17:52:59
1716
2
原创 sar看历史负载
查看历史负载//查看指定文件CPU使用记录#sar -f /var/log/sa/sa0300:00:01 CPU %user %nice %system %iowait %idle00:10:01 all 52.32 0.00 30.92 1.40 15.3700:20:01 all 50.11 0.00 28.97 0.82 20.1000:30:01 all 45.94 0.00 26.23 0.88 26.9500:40:02 all 44.92 0.00 25.54 0.81 28.
2021-06-29 17:07:13
1330
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人