Skip to content

Instantly share code, notes, and snippets.

View pandada8's full-sized avatar
🐟
摸鱼

pandada8 pandada8

🐟
摸鱼
View GitHub Profile
@pandada8
pandada8 / snippet.py
Created January 11, 2023 07:21
PymongoInstrumentor with query detail
def request_hook(span: Span, event: monitoring.CommandStartedEvent):
# add detail query info to span
if span.is_recording():
match event.command_name:
case "find":
span.set_attribute("filter", dumps(event.command.get("filter")))
case "update":
updates = event.command.get("updates")
span.set_attribute("filter", dumps(updates.get('q')))
span.set_attribute("update", dumps(updates.get('u')))
@pandada8
pandada8 / sync.py
Created July 6, 2015 17:08
Rsync with aria2c
import subprocess
import tempfile
import os
import sys
def getUpdateList(rsync_source, target_source):
files = subprocess.check_output(['/usr/bin/rsync', '--no-motd', '-havn', '--exclude=Sources', rsync_source, target_source]).decode()
print(files)
ret = []
@pandada8
pandada8 / readme.md
Last active August 26, 2022 10:01
完全使用 Yubikey 进行密码管理

完全使用 Yubikey 进行密码管理

目标:不依赖第三方服务

密码存储和管理

使用 gopass 管理密码,gopass 是 https://www.passwordstore.org/ 的 go 语言实现。密码会被加密之后存储到 git repo 里,多个设备间使用 git 进行同步。

Chrome && Firefox

@pandada8
pandada8 / etcd
Created August 26, 2022 09:32
etcd on tmpfs
ETCD_LISTEN_CLIENT_URLS=https://0.0.0.0:2379
ETCD_ADVERTISE_CLIENT_URLS=https://<replace-with-your-own>
ETCD_CERT_FILE=<replace-with-your-own>
ETCD_KEY_FILE=<replace-with-your-own>
ETCD_CA_FILE=<replace-with-your-own>
@pandada8
pandada8 / readme.md
Created August 7, 2022 12:48
Configure Proxmox Node for ZFS over iSCSI

Proxmox provided ZFS over iSCSI for storage. Most tutorials/guides are about using FreeNAS. But you can using an normal proxmox host for ZFS over iSCSI.

On Storage Node:

  1. Install disks, create zpool
  2. Install targetcli via apt install targetcli-fb
  3. Create default tpg via targetcli /iscsi create

On Every Proxmox Node

  1. get client InitiatorNames from /etc/iscsi/initiatorname.iscsi
  2. On Storage Node, run targetcli /iscsi/iqn.2003-01.org.linux-iscsi.pve-2.x8664:sn.71fbbfad3c47/tpg1/acls create
@pandada8
pandada8 / code
Created April 15, 2022 08:54
Launch code from ssh
#!/bin/env python3
from proc.tree import get_process_tree
import os
from pathlib import Path
import sys
import subprocess
ssh_connection = os.getenv('SSH_CONNECTION')
client_ip = ssh_connection.split(" ")[0]
init = get_process_tree()
for i in init.find_all(recursive=True, exe_name="node"):
@pandada8
pandada8 / authy.py
Last active February 17, 2022 14:28
Migrate from authy to pass-otp
import xml.etree.ElementTree as ET
import json
import sys
import re
def load(name):
root = ET.parse(name)
return json.loads(root.findtext('./string'))
def normalize(record):
@pandada8
pandada8 / rx580.txt
Created February 14, 2022 05:18
hashcat --benchmark
C:\Users\pan\scoop\apps\hashcat\6.2.5>hashcat --benchmark
hashcat (v6.2.5) starting in benchmark mode
Benchmarking uses hand-optimized kernel code by default.
You can use it in your cracking session by setting the -O option.
Note: Using optimized kernel code limits the maximum supported password length.
To disable the optimized kernel code in benchmark mode, use the -w option.
hipDeviceGetAttribute(): 1
@pandada8
pandada8 / convert.sh
Created August 23, 2021 16:11
Convert A ZFS root proxmox to btrfs
#!/bin/bash
from=sda
to=sdb
set -ex
apt -y install parted
sgdisk /dev/${from} -R /dev/${to}
sgdisk -G /dev/${to}
mkfs.btrfs -f /dev/${to}3
mkfs.vfat /dev/${to}2
@pandada8
pandada8 / fix.sh
Created April 29, 2018 14:47
captival_fix.sh
adb shell settings put global captive_portal_http_url http://www.google.cn/generate_204
adb shell settings put global captive_portal_https_url https://www.google.cn/generate_204
adb shell settings put global captive_portal_fallback_url http://www.google.cn/generate_204
adb shell settings put global captive_portal_other_fallback_urls http://www.qualcomm.cn/generate_204