Skip to content

Instantly share code, notes, and snippets.

@oko
oko / mkpool.py
Created July 15, 2023 20:43
Scripts for creating ZFS pool w/ mirror vdevs on QNAP TS-673A
#!/usr/bin/env python3
import argparse
import itertools
import os
import subprocess
import sys
parser = argparse.ArgumentParser(description="set up zfs pool")
parser.add_argument("--mirror-size", type=int, default="2")
parser.add_argument("--disk-name-filter", type=str, default="*-ata-*.0")
@oko
oko / etc-httpd-conf.d-pulp.conf
Created July 3, 2016 16:38
Pulp LDAP setup with FreeIPA
<Files webservices.wsgi>
# pass everything that isn't a Basic auth request through to Pulp
SetEnvIfNoCase ^Authorization$ "Basic.*" USE_APACHE_AUTH=1
Order allow,deny
Allow from env=!USE_APACHE_AUTH
Satisfy Any
AuthType Basic
AuthBasicProvider ldap
AuthName "Pulp Login"
@oko
oko / docker.sh
Created February 19, 2016 14:34
Install Docker Engine on CentOS 7 and configure with docker-storage thin pool
#!/bin/bash
THINPOOL=$1
yum -y install docker-engine
if [ ! -L $THINPOOL ]; then
echo "Pool $THINPOOL" does not appear to exist
exit 1
fi
mkdir -p /etc/systemd/system/docker.service.d
@oko
oko / os-x-local-dnsmasq.sh
Last active April 20, 2020 02:24
Configure a local dnsmasq server on OS X.
#!/bin/bash
sudo port -v install dnsmasq
sudo port -v load dnsmasq
sudo mkdir /etc/resolver
echo -n "nameserver 127.0.0.1" | sudo tee /etc/resolver/dev
echo "address=/dev/127.0.0.1" | sudo tee -a /opt/local/etc/dnsmasq.conf
echo "address=/test/127.0.0.1" | sudo tee -a /opt/local/etc/dnsmasq.conf
sudo kill -9 $(pgrep dnsmasq)
sleep 1
#!/bin/bash
set -eux
iso="$1"
hostname="$2"
kickstart="$3"
test "$(whoami)" == "root" || (echo "must be run as root!" ; exit 1)
ks="/var/lib/libvirt/images/$hostname-ks.iso"
ksd="$(mktemp -d)"
#!/bin/bash
set -eux
eficode="$1"
efivars="$2"
wd="$(mktemp -d)"
vars="$wd/$(basename "$efivars")"
cp "$efivars" "$vars"
Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" | % { Get-ItemProperty $_.PSPath -Name DisplayName | Select -Property DisplayName } | Sort-Object -Property DisplayName | ConvertTo-Json
@oko
oko / zone-check.sh
Created February 11, 2018 20:02
crappy zone checker to verify DNS records are transferred correctly
#!/bin/bash
set -eu
if [[ ! -z "${DEBUG:-""}" ]]; then set -x; fi
ZONE="$1"
NEW="$2"
DIG="dig +short $ZONE"
DIGN="$DIG $NEW"
check_rrtype() {
@oko
oko / gist:1797aec07957c07275db65ae957c2fea
Created December 14, 2016 21:14
CentOS 7 GRUB Kernel Change
grep '^menuentry' /boot/grub2/grub.cfg
vi /etc/default/grub
# update GRUB_DEFAULT=<zero-indexed-menu-entry-from-grep>
grub2-mkconfig -o /boot/grub2/grub.cfg
@oko
oko / ip6tables.rules
Last active April 12, 2016 17:15
ip6tables basic ruleset
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [33:2996]
:ICMP - [0:0]
:TCP - [0:0]
:UDP - [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmpv6 -j ICMP