openSUSE常用配置
安装 vscode12345sudo rpm --import https://packages.microsoft.com/keys/microsoft.ascsudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/zypp/repos.d/vscode.repo'sudo zypper refreshsudo zypper install code 安装 vmware workstation1sudo zypper install gcc gcc-c++ kernel-source kernel-syms 然后正常安装...
通过inode删除文件
有时候会有一些文件名是乱码的文件无法删除,这时候可以通过 inode 来删除。 获取文件的 inode1ls -ali 第一列就是文件的 inode 通过 inode 删除1find -inum 527084 -exec rm -rf {} \;
Bash中双横线的作用
看个例子: 假设有个文件叫 -f, 我想把这个文件删除假设我要用 rm -f -f 来删除,会发现无法删除,bash 把第二个 -f 当作参数了 这个时候可以使用 --(当然有其他方法,这里先不讨论) 1rm -f -- -f 这里的 -- 表示这个程序的参数已经结束了,后面所有的内容都是参数的值了,比如第二个 -f 就不会认为它是 rm 的参数了 现在使用 kubectl exec 也会推荐你用 – 后面再接上命令
Unix口令生成与使用
这个密码有什么用:/etc/shadow linux 用户密码就是通过这种方法 hash 的http basic auth 的密码也是通过这种方式生成的 通过 openssl 生成执行 1234567891011# ubuntuopenssl passwd -6 123456参数的含义: -6 SHA512-based password algorithm -5 SHA256-based password algorithm -apr1 MD5-based password algorithm, Apache variant -1 MD5-based password algorithm# centosopenssl passwd -1 123456 就能生成一串字符串,其中参数 6 是最长的,1 是最短的,后面 123456 是要加密的密码仔细观察会发现每次生成的密码都是不同的,那是因为每次执行 openssl...
在没有密码的情况下给Windows植入恶意软件(离线攻击)
什么是离线攻击,通俗点说就是电脑主人离开了电脑,黑客跑到电脑面前进行破解的方法🤣。这种破解方式主要是通过修改 Windows 的 SAM 文件来达到获取权限的目的。 Windows 的 SAM 文件Windows 的 SAM 文件(Security Accounts Manager)是一个用于存储本地用户账户和密码散列值的数据库文件。它在 Windows 操作系统中扮演着至关重要的角色,用于管理本地安全和账户信息。SAM 文件通常位于 C:\Windows\System32\config 目录中。 SAM 文件的原理 账户信息存储:SAM 文件包含了本地用户账户的信息,包括用户名和相关的安全标识符(SID)。每个用户都有一个唯一的 SID,用于标识用户和控制访问权限。 密码存储:为了安全起见,SAM 文件不直接存储用户的明文密码,而是存储密码的散列值。Windows 使用 NTLM(NT LAN Manager)协议生成这些散列值。具体而言,NTLM 采用 MD4 散列算法对用户密码进行散列。 加密保护:为了进一步保护 SAM 文件中的数据,Windows...
Shell数学运算
bash 自带的数学运算 不依赖其他包,只要你的 shell 是 bash 1234echo $(( 1 + 1 ))echo $(( 1 - 3 ))echo $(( 10 * 3 ))echo $(( 10 / 3 )) expr expr 可以当计算器用不过它主要还是个计数器 字符串操作12345678# 计算字符串长度expr length "hello world"# 抓取字符串,3表示从第3个字符开始,5表示抓取的字符串长度expr substr "hello world" 3 5# 抓取第一个字符串出现的位置expr index "hello world" o 四则运算1234expr 10 % 3expr 10 + 10expr 30 / 3 / 2expr 30 \* 3 # 使用乘号时,必须用反斜线屏蔽其特定含义。 bc bc 是一个命令行的计算器工具,有些过于精简的发行版没有自带。 支持浮点数四则运算 123456789101112131415161718echo...
Centos7升级到RHEL8
本文依照 redhat 官方文档制作,总共分为两步,先将 centos7 转换为 rhel7,然后再将 rhel7 升级为 rhel8 参考文档:CentOS转换为rhel7rhel7升级为rhel8 centos7 升级为 rhel7升级到 centos7 最新版1yum update -y && reboot 安装 convert2rhel1234567curl -o /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release https://www.redhat.com/security/data/fd431d51.txtcurl -o /etc/yum.repos.d/convert2rhel.repo https://ftp.redhat.com/redhat/convert2rhel/7/convert2rhel.repoyum install -y convert2rhel 开始转换12convert2rhel --username <替换为你的用户名> --password...
内核级负载均衡 LVS DR模式 部署记录
DR 模式,Director 和 realserver 都在一个内网里面,他们都绑定上同一个 VIP, 原理是通过 Director Server 修改数据包的 MAC 地址, 所以得让 realserver 不响应 arp,不然肯定会造成内网 IP 冲突 规划: 机器 IP VIP 10.0.0.8 director 10.0.0.41 realserver1 10.0.0.42 realserver2 10.0.0.43 网卡 interface eth0 RealServer 设置创建虚拟网卡个人习惯,可选,可以绑定在任何网卡上面 1ip link add ipvs0 type dummy 配置不响应 ARP 请求方法1: 调整内核参数方法2: 采用arptables12345# 不响应ARP请求, 修改内核参数echo "1" > /proc/sys/net/ipv4/conf/ipvs0/arp_ignoreecho "1" >...
Shell指定分隔符
为什么要指定换行符,我们看一个例子 1234567891011#!/bin/bashdata="a b cd e f"for i in $datado echo $idone 输出的结果是: 123456abcdef 因为系统默认把空格和换行都当作了分隔符。为了避免这种情况,我们可以手动指定分隔符: 123456789101112#!/bin/bashdata="a b cd e f"IFS=$'\n' # 指定分隔符为换行for i in $datado echo $idone 这样打印出来的就是: 12a b cd e f 再看一个例子: 123456#!/bin/basha="aa,bb,cc,dd,ee"for i in $ado echo $idone 输出为:aa,bb,cc,dd,ee 我们想要的输出结果可能是这样 12345aabbccddee 可以修改成这样: 123456789#!/bin/basholdIFS=$IFS ...
Github Actions自动发布博客
偶然发现 github actions 可以执行一些命令,这下可以把我的 crontab 停掉了,也不用占用一台机器专门用来发布博客了,并且完全免费!! 首先我的 GitHub pages 和博客原始文件是分为两个仓库的,在 GitHub Pages 仓库里添加了一个 Actions 用来钉钉发通知: GitHub 仓库配置 Secret需要先将环境变量配置在 Settings –> Secrets and Variables –> Actions 里面 配置后,可以在 actions 里面通过 ${{ secrets.dingtalk_secret }} 调用到对应的数据 针对 Hexo 博客的构建123456789101112131415161718192021222324252627282930313233343536name: Deploy GitHub Pageson: push: branches: - masterjobs: deploy_github_pages: ...