Python脚本接受参数
完善一下 python 脚本,让它支持更完善的参数(长参数、短参数) 12345678910111213141516171819202122232425262728293031323334import getopt, sysdef parse_args(args=sys.argv[1:]): try: opts, args = getopt.getopt(args, "hvc:w:", ["help", "short", "verbose", "critical_num=", "warning_num="]) except getopt.GetoptError as err: print("Input parameter error") sys.exit() verbose = False short = False for opt, arg in opts: ...
使用mimikatz读取windows密码
github地址 mimikatz 是一个小工具,可以查看到 windows 加载进内存的密码数据,首先最起码要使用 Administrator 权限启动 依次执行: 从 administrator 提升到 system 1privilege::debug 获取明文密码 1sekurlsa::logonpasswords
Puppet遍历hash生成array
公司的 nagios 监控是使用 puppet 来进行自动部署的,但是需要手动修改 puppet 配置才能生效,现在的问题是添加一个新机器得先在 puppet 上添加机器,然后添加到相对应的组,我们想能否让它自动添加到对应的组里面。 vim nagios_server.pp 1234567891011121314151617181920212223242526272829nagios::nagios::add_linux_remote { 'guangzhou.localhost.com' : addr => '10.0.0.9', services => [{'name' => 'check_load', 'desc' => 'Current Load', 'notify' => 1}, ...
Hugo博客添加live2d看板娘
看板娘就是网页上面漂浮的小人,可以随着鼠标的移动而做出反应,在 hexo 上面是有现成的 npm module,在 hugo 上面只能自己引入 js 啦。 我用的是 hugo v0.84.1-4BD65E22+extended, LoveIt 版本是 0.2.10 方法 1: 使用 html 模板,引入 js 文件编辑 themes/LoveIt/layouts/partials/footer.html , 在 {{- end -}} 的上一行添加 1234567891011121314151617181920212223242526272829303132<!-- Live2D,网页上的小人,可以修改live2d_config.js来修改模型,模型都在static/live2d_models里面 --><!-- 你也可以把js文件下载下来,放到static/js/目录下,就不依赖别人的服务了 --><script type="text/javascript"...
Shell脚本接受参数
直接传参一般情况下直接传参,比如 test.sh 12#!/bin/bashecho hello $1 ./test.sh worldhello world 使用 getopts 解析参数这种方法可以忽略参数位置,使脚本更完善 test.sh 123456789101112131415161718while getopts "a:b:c" arg #选项后面的冒号表示该选项需要参数do case $arg in a) echo "a $OPTARG" #参数存在$OPTARG中 ;; b) echo "b $OPTARG" ;; c) echo "c" ;; ?) #当有不认识的选项的时候arg为? echo "unkonw...
Nginx负载均衡(反向代理)
7 层负载均衡 7 层就是用域名来进行转发 类似配置文件: vim /etc/nginx/conf.d/xxx.conf 1234567891011121314upstream wordpress { server 192.168.1.20:8000 weight=5 max_fails=3 fail_timeout=30s; server 192.168.1.21:8000 weight=5 max_fails=3 fail_timeout=30s;}server { listen 80 ; server_name wordpress.zahui.fan; location / { proxy_pass http://wordpress; }} 反代到虚拟主机的另一台 Nginx比如现在有一台服务器,部署了 a、b 两个服务,比如 a.com 到 a 服务,b.com 到 b 服务,这种情况我的 Nginx 想要代理 b 服务,就需要指定反代 header...
Linux网络之Bridge和Bond
网桥相当于一台虚拟交换机,你可以把自己的网卡绑定在虚拟交换机上,并把其他接口(比如虚拟机的网络)桥接到这个网卡上面来,相当于大家都是在一个内网里面。 创建网桥方法, 以 Redhat 系为例。 使用 nmtui 创建网桥 删除网卡配置文件可以到 /etc/sysconfig/network-scripts/ 里面删除 ifcfg- 开头的配置 使用 nmtui 创建网桥,并将网卡设备绑定到网桥, 一般关闭生成树协议(STP) 检查 /etc/sysconfig/network-scripts/ 里面有没有多余的配置文件,有的话需要删除以免冲突 网卡和网桥都需要开机自启动 使用配置文件创建网桥 生成 uuid cat /proc/sys/kernel/random/uuid 或者 uuidgen 12345678910111213141516171819202122232425262728293031#!/bin/bashset -euf -o...
notepad++宏功能自动操作文档
notepad++ 是一款 windows 平台的文本编辑器, 比较轻量和功能强大宏功能类似于录像回放, 将自己的操作录制下来, 并进行重复执行, 解放双手 简单操作先看个例子, 我要删除所有的奇数行, 我的操作是: 点击录制, 光标放在第一行, 按下 home 键, 按住 shift 键,再按 end 键 (选中整行), 按一下 delete 键, 为了方便重复执行, 再按两下 ↓, 停止录制 结合搜索功能比如这个文件有几千行, 我要在每个 service 里面添加一条数据 可以这样操作
Linux定时执行任务crontab
crontab 常见的故障处理 常用操作启动停止服务12systemctl start cronsystemctl stop cron 查看所有用户 crontab1cat /etc/passwd | cut -f 1 -d : |xargs -I {} crontab -l -u {} 配置全局配置crontab 在/etc 目录下面存在 cron.hourly、cron.daily、cron.weekly、cron.monthly、cron.d 五个目录, 这些相当于快捷方式, 直接将你的脚本扔进去就可以和 crontab、cron.deny 二个文件。 目录 作用 cron.daily 每天执行 cron.weekly 每周执行 cron.monthly 每月执行 cron.hourly 每小时执行 crontab 系统级任务, 在这里面调用了上面几个 用户配置文件直接使用 crontab -e 编辑就行, -e 使用的编辑器可以通过 select-editor 来指定或者使用...
Linux使用nologin用户执行命令
我们知道可以通过编辑 /etc/passwd 给某些用户设置 shell 为 nologin 或 false 可以阻止这些用户登录但某些时候需要特定的用户来执行命令,可以使用 sudo 或 su 来临时切换用户执行 使用 susu -s 是指定 shell,这里 www 用户默认 shell 是 nologin 这里指定使用 /bin/bash, -c 后面接需要运行的命令 1su www -s /bin/bash -c "mkdir /tmp/111" 使用 sudo使用 www 用户来执行 mkdir /tmp/111 1sudo -u www mkdir /tmp/111