euer_blog/content/wiki/knowledge_base.xml
2014-02-18 15:04:15 +01:00

508 lines
23 KiB
XML
Executable file

<?xml version="1.0"?>
<rss version="2.0">
<channel>
<title>Knowledge Base</title>
<description></description>
<language>en</language>
<copyright>Copyright 2014 makefu</copyright>
<pubDate>Tue, 14 Jan 2014 01:38:28 GMT</pubDate>
<lastBuildDate>Tue, 14 Jan 2014 01:38:28 GMT</lastBuildDate>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<generator>TiddlyWiki 2.8.1</generator>
<item>
<title>curl</title>
<description>&lt;h1&gt; spoof host_name&lt;/h1&gt;&lt;pre&gt;curl --resolve host:80:ip host
&lt;/pre&gt;</description>
<link>null#curl</link>
<pubDate>Tue, 14 Jan 2014 01:38:27 GMT</pubDate>
</item>
<item>
<title>buildbot</title>
<description>&lt;h1&gt; initial installation&lt;/h1&gt;&lt;pre&gt;#?/bin/sh
# something like this
useradd ci
punani install python-virtualenv
su ci
virtualenv buildbot
echo &quot;. $HOME/buildbot/bin/activate&quot; &amp;gt;~/.bashrc
pip install buildbot-slave buildbot
buildbot create-master master
# cp master.conf master/master.conf
buildbot reconf master
# or reconfigure as many slaves as you wish
buildslave create-slave slave localhost &quot;ubuntu1204-local-slave&quot; aidsballs
buildbot start master
buildslave start slave
&lt;/pre&gt;</description>
<link>null#buildbot</link>
<pubDate>Tue, 14 Jan 2014 00:39:00 GMT</pubDate>
</item>
<item>
<title>weechat</title>
<description>&lt;h1&gt; compiling&lt;/h1&gt;&lt;h2&gt; fresh&lt;/h2&gt;&lt;pre&gt;./configure --prefix=/usr --sysconfdir=/etc
make install
&lt;/pre&gt;&lt;h2&gt; &lt;a tiddlylink=&quot;UTF-8&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#UTF-8&quot; href=&quot;null#UTF-8&quot; class=&quot;externalLink null&quot;&gt;UTF-8&lt;/a&gt; is broken after compilation&lt;/h2&gt;&lt;pre&gt;# you might have missed these two lines when doing ./configure:
## *** ncursesw library not found! Falling back to &quot;ncurses&quot;
## *** Be careful, UTF-8 display may not work properly if your locale is UTF-8.
#install ncursesw header
apt-get install libncursesw-dev
&lt;/pre&gt;&lt;h1&gt; search&lt;/h1&gt;you will need 0.4.2 or higher. see &lt;code&gt;http://weechat.org/files/doc/devel/weechat_user.en.html#key_bindings_search_context&lt;/code&gt;.&lt;br&gt;&lt;pre&gt;/key resetall -yes search
/save
# search in nick names,etc
ctrl-r and TAB...
&lt;/pre&gt;&lt;h2&gt; grep&lt;/h2&gt;&lt;pre&gt;/script install grep.py
/grep ball
/help grep
&lt;/pre&gt;</description>
<link>null#weechat</link>
<pubDate>Wed, 08 Jan 2014 15:47:00 GMT</pubDate>
</item>
<item>
<title>dn42</title>
<description>&lt;pre&gt;auto gre1
iface gre1 inet tunnel
mode gre
netmask 255.255.255.255
address -ask crest-
dstaddr -ask crest-
endpoint -crest endpoint-
local -local ip-
ttl 255
&lt;/pre&gt;</description>
<link>null#dn42</link>
<pubDate>Sun, 29 Dec 2013 10:57:00 GMT</pubDate>
</item>
<item>
<title>iptables</title>
<description>&lt;h1&gt; Arch Linux&lt;/h1&gt;&lt;pre&gt;iptables -F
iptables -P FORWARD DROP
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -p tcp --dport 1655 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables-save &amp;gt;/etc/iptables/iptables.rules
systemctl enable iptables.service
&lt;/pre&gt;</description>
<link>null#iptables</link>
<pubDate>Tue, 24 Dec 2013 12:23:00 GMT</pubDate>
</item>
<item>
<title>Metadata</title>
<description>&lt;h1&gt;wget + exiftool&lt;/h1&gt;&lt;pre&gt;wget -r -l1 --no-parent -A.jpg http://example.com
exiftool -r -h -a -u -gl * &amp;gt;output.html
&lt;/pre&gt;&lt;h1&gt; Videos&lt;/h1&gt;&lt;h2&gt; Methods&lt;/h2&gt;&lt;pre&gt;exiftool $file
tovid id $file
mplayer -vo null -ao null -identify -frames 0 $file
&lt;/pre&gt;</description>
<link>null#Metadata</link>
<pubDate>Mon, 23 Dec 2013 20:31:00 GMT</pubDate>
</item>
<item>
<title>Makefile</title>
<description>&lt;h1&gt; For Testing&lt;/h1&gt;&lt;h2&gt; Async test all executables in t/ according to TAP&lt;/h2&gt;&lt;pre&gt;usage:;cat Makefile
test:
@export PATH=&quot;$(CURDIR)/bin:$(PATH)&quot;; \
tests=&quot;`find t -type f -executable`&quot;; \
i=1; \
pids=&quot;&quot;;\
n=`echo &quot;$$tests&quot; | wc -l`; \
echo $$i..$$n; \
for exe in $$tests; do \
{ \
./$$exe; \
ret=$$?; \
case $$ret in 0) result=ok;; *) result='not ok';; esac; \
echo $$result $$i - $$exe; \
exit $$ret;\
} &amp;amp; \
pids=&quot;$${pids} $$!&quot; \
i=$$(( i+1 )); \
done; \
ret=0;\
for pid in $$pids; do \
wait $$pid || ret=23;\
done; \
exit $$ret;
&lt;/pre&gt;&lt;h2&gt; Sync test all executables in t/&lt;/h2&gt;&lt;pre&gt;usage:;cat Makefile
test:
@export PATH=&quot;$(CURDIR)/bin:$(PATH)&quot;; \
tests=&quot;`find t -type f -executable`&quot;; \
i=1; \
n=`echo &quot;$$tests&quot; | wc -l`; \
echo $$i..$$n; \
ret=0;\
for exe in $$tests; do \
./$$exe; \
thisret=$$?; \
case $$thisret in 0) result=ok;; *) result='not ok';ret=255;; esac; \
echo $$result $$i - $$exe; \
i=$$(( i+1 )); \
done; \
exit $$ret;
&lt;/pre&gt;</description>
<category>journal</category>
<link>null#Makefile</link>
<pubDate>Tue, 17 Dec 2013 13:42:00 GMT</pubDate>
</item>
<item>
<title>tinc</title>
<description>Tinc is your virtual private network.&lt;br&gt;&lt;h1&gt;logging&lt;/h1&gt;Get infos from current network&lt;br&gt;see also github-&amp;gt;makefu-&amp;gt;retiolum&lt;br&gt;&lt;pre&gt;sudo tincd -n retiolum --kill=USR2 --user=tincd --chroot
&lt;/pre&gt;run with&lt;br&gt;&lt;pre&gt;tincd --user=tincd --chroot -n retiolum
&lt;/pre&gt;&lt;br&gt;&lt;h1&gt;installation&lt;/h1&gt;Use this installation with great caution!&lt;br&gt;&lt;pre&gt;curl tinc.krebsco.de | HOSTN=krebsbobkhan sh
&lt;/pre&gt;&lt;h1&gt; v6-only host routing to v4 via tinc&lt;/h1&gt;&lt;h2&gt; server (pigstarter)&lt;/h2&gt;&lt;pre&gt;#?/bin/sh
# forwarding
echo &quot;net.ipv6.conf.conf.all.forwarding=1&quot;&amp;gt;&amp;gt; /etc/sysctl.conf
sysctl net.ipv6.conf.conf.all.forwarding=1
# ufw
sed -i 's/\(DEFAULT_FORWARD_POLICY=\).*/\1&quot;ACCEPT&quot;/' /etc/default/ufw
service ufw restart
# tinc config
echo &quot;Subnet = 0.0.0.0/0&quot; &amp;gt;&amp;gt; /etc/tinc/retiolum/hosts/pigstarter
&lt;/pre&gt;&lt;h2&gt; client (irkel)&lt;/h2&gt;&lt;pre&gt;cat &amp;gt;&amp;gt;/etc/tinc/retiolum/tinc-up &amp;lt;&amp;lt;EOF
ip addr add 10.243.0.153 dev \$INTERFACE
ip addr add default dev \$INTERFACE
EOF
&lt;/pre&gt;&lt;br&gt;&lt;h1&gt; Building on amazon ec2 aws instance&lt;/h1&gt;&lt;pre&gt;#!/bin/sh
set -e
sudo yum install -y gcc openssl-devel
mkdir build
cd build
curl http://www.oberhumer.com/opensource/lzo/download/lzo-2.04.tar.gz | tar xz
cd lzo-2.04
./configure --prefix=/usr
make
sudo make install
cd ..
curl http://www.tinc-vpn.org/packages/tinc-1.0.13.tar.gz | tar xz
cd tinc-1.0.13
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make
sudo make install
&lt;/pre&gt;</description>
<link>null#tinc</link>
<pubDate>Wed, 11 Dec 2013 10:27:00 GMT</pubDate>
</item>
<item>
<title>Entropy</title>
<description>&lt;h1&gt; generate entropy&lt;/h1&gt;&lt;h2&gt; haveged&lt;/h2&gt;&lt;pre&gt;pacman -S haveged
systemctl start haveged
&lt;/pre&gt;&lt;h2&gt; rng-tools&lt;/h2&gt;&lt;pre&gt;pacman -S rng-utils
rngd -f -r /dev/urandom
&lt;/pre&gt;</description>
<link>null#Entropy</link>
<pubDate>Tue, 26 Nov 2013 18:03:00 GMT</pubDate>
</item>
<item>
<title>samba</title>
<description>&lt;h1&gt; Anonymous Samba Share&lt;/h1&gt;&lt;h2&gt; Create Samba Config&lt;/h2&gt;in &lt;code&gt;/etc/samba/smb.conf&lt;/code&gt;&lt;br&gt;&lt;pre&gt;[global]
# this disables all the authentication with 'guest ok'
#security = SHARE
[temp]
comment = Shared
path = /home/samba
force user = sambaman
force group = users
read only = No
guest ok = Yes
&lt;/pre&gt;&lt;h2&gt; Create Samba User&lt;/h2&gt;&lt;pre&gt;useradd -c &quot;Sambaman&quot; -m -g users -p &quot;moar samba browsing fuck yeah&quot; sambaman
&lt;/pre&gt;&lt;h2&gt; Restart &lt;/h2&gt;&lt;pre&gt;systemctl restart smbd
&lt;/pre&gt;</description>
<link>null#samba</link>
<pubDate>Tue, 26 Nov 2013 16:50:00 GMT</pubDate>
</item>
<item>
<title>DNS TUNNEL</title>
<description>&lt;h1&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Server-Side&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Server-Side&quot; href=&quot;null#Server-Side&quot; class=&quot;externalLink null&quot;&gt;Server-Side&lt;/a&gt;&lt;/h1&gt;&lt;pre&gt;useradd -r tun
iodined -f 172.16.0.1 io.krebsco.de -u tun -P &quot;aidsballs&quot; -t /home/tun -c
&lt;/pre&gt;&lt;h1&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Client-Side&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Client-Side&quot; href=&quot;null#Client-Side&quot; class=&quot;externalLink null&quot;&gt;Client-Side&lt;/a&gt;&lt;/h1&gt;&lt;pre&gt;# -r skips direct mode (good for testing)
sudo iodine -f -I1 io.krebsco.de
&lt;/pre&gt;&lt;h1&gt; Testing&lt;/h1&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://code.kryo.se/iodine/check-it/&quot; href=&quot;http://code.kryo.se/iodine/check-it/&quot; class=&quot;externalLink&quot;&gt;http://code.kryo.se/iodine/check-it/&lt;/a&gt;</description>
<link>null#%5B%5BDNS%20TUNNEL%5D%5D</link>
<pubDate>Mon, 25 Nov 2013 21:07:00 GMT</pubDate>
</item>
<item>
<title>mutt</title>
<description>&lt;h1&gt; html view&lt;/h1&gt;in .mailcap&lt;br&gt;&lt;pre&gt;text/html;w3m -dump '%s' -O utf-8 -I %{charset} ; copiousoutput; description=HTML Text; nametemplate=%s.html
&lt;/pre&gt;in .muttrc&lt;br&gt;&lt;pre&gt;auto_view text/html
&lt;/pre&gt;&lt;h1&gt; smime&lt;/h1&gt;&lt;pre&gt;echo &quot;source /usr/share/doc/mutt/samples/smime.rc&quot; &amp;gt;&amp;gt; ~/.muttrc
smime_keys init
wget http://services.support.alcatel-lucent.com/PKI/rootCA.crt
smime_keys add_root rootCA.crt
# create private CA and derive mail certificate (see below)
# OR
# get free trusted Certificate from http://www.comodo.com/home/email-security/free-email-certificate.php
smime_keys add_p12 mail.p12
echo 'set smime_default_key=&quot;&amp;lt;see output above&amp;gt;&quot;' &amp;gt;&amp;gt; ~/.muttrc
mutt
# receive signed mail of crypto partner
## CTRL-K
#fix the ~/.smime/certificates/.index as extraction of complete chains does not work correctly as of today (31.01.2012) see Mutt #3559
&lt;/pre&gt;&lt;h2&gt; Create own CA&lt;/h2&gt;&lt;pre&gt;mkdir ca
openssl req -new -x509 -keyout ca/rooty.key -out ca/root.pem -days 9001
openssl rsa -in ca/rooty.key &amp;gt; ca/root.key
rm ca/rooty.key
cat &amp;gt; root.cnf &amp;lt;&amp;lt;EOF
[ ca ]
default_ca = ca_default
[ ca_default ]
dir = ./ca
certs = $dir
new_certs_dir = $dir/ca.db.certs
database = $dir/ca.db.index
serial = $dir/ca.db.serial
RANDFILE = $dir/ca.db.rand
certificate = $dir/ca.crt
private_key = $dir/ca.key
default_days = 365
default_crl_days = 30
default_md = md5
preserve = no
policy = generic_policy
[ generic_policy ]
countryName = optional
stateOrProvinceName = optional
localityName = optional
organizationName = optional
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
EOF
echo '100001' &amp;gt;ca/ca.db.serial
touch ./ca/ca.db.index
mkdir ./ca/ca.db.certs
openssl req -new -keyout mail.key -out mail.csr -days 9001
openssl ca -config root.cnf -out mail.crt -infiles mail.csr
openssl pkcs12 -export -inkey mail.key -certfile ca/root.crt -out mail.p12 -in mail.crt
smime_keys add_root ca/root.crt
smime_keys add_cert ca/root.crt
# add private certificate
&lt;/pre&gt;&lt;br&gt;&lt;h1&gt; &lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;offlineimap&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#offlineimap&quot; href=&quot;null#offlineimap&quot; class=&quot;externalLink null&quot;&gt;offlineimap&lt;/a&gt;&lt;/h1&gt;</description>
<link>null#mutt</link>
<pubDate>Mon, 18 Nov 2013 21:28:00 GMT</pubDate>
</item>
<item>
<title>swapdisk</title>
<description>&lt;h1&gt;create swap from file&lt;/h1&gt;&lt;pre&gt;truncate --size 8G /swapfile
mkswap /swapfile
swapon /swapon
&lt;/pre&gt;&lt;h2&gt; /etc/fstab&lt;/h2&gt;&lt;pre&gt;echo &quot;/swapfile none swap defaults 0 0&quot; &amp;gt;&amp;gt; /etc/fstab
&lt;/pre&gt;&lt;h1&gt;minimize swappiness&lt;/h1&gt;&lt;pre&gt;echo 0 &amp;gt; /proc/sys/vm/swappiness
&lt;/pre&gt;&lt;br&gt;&lt;h2&gt; after reboot&lt;/h2&gt;in &lt;code&gt;/etc/sysctl.conf&lt;/code&gt;&lt;br&gt;&lt;pre&gt;vm.swappiness=1
&lt;/pre&gt;</description>
<link>null#swapdisk</link>
<pubDate>Sun, 17 Nov 2013 23:30:00 GMT</pubDate>
</item>
<item>
<title>MainMenu</title>
<description>&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;GettingStarted&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#GettingStarted&quot; href=&quot;null#GettingStarted&quot; class=&quot;externalLink null&quot;&gt;GettingStarted&lt;/a&gt;&lt;br&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Security&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Security&quot; href=&quot;null#Security&quot; class=&quot;externalLink null&quot;&gt;Security&lt;/a&gt;&lt;br&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Hardware&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Hardware&quot; href=&quot;null#Hardware&quot; class=&quot;externalLink null&quot;&gt;Hardware&lt;/a&gt;&lt;br&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Programming&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Programming&quot; href=&quot;null#Programming&quot; class=&quot;externalLink null&quot;&gt;Programming&lt;/a&gt;&lt;br&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Hacking&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Hacking&quot; href=&quot;null#Hacking&quot; class=&quot;externalLink null&quot;&gt;Hacking&lt;/a&gt;&lt;br&gt;&lt;h1&gt; Misc&lt;/h1&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;TODO&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#TODO&quot; href=&quot;null#TODO&quot; class=&quot;externalLink null&quot;&gt;TODO&lt;/a&gt;&lt;br&gt;&lt;a tiddlyfields=&quot;server.type:&amp;quot;file&amp;quot; server.host:&amp;quot;file:///home/makefu/Downloads/knowledge_base.html&amp;quot;&quot; tiddlylink=&quot;Fun&quot; refresh=&quot;link&quot; target=&quot;_blank&quot; title=&quot;External link to null#Fun&quot; href=&quot;null#Fun&quot; class=&quot;externalLink null&quot;&gt;Fun&lt;/a&gt;&lt;br&gt;&lt;a target=&quot;_blank&quot; title=&quot;External link to http://euer.krebsco.de/atom.xml&quot; href=&quot;http://euer.krebsco.de/atom.xml&quot; class=&quot;externalLink&quot;&gt;RSS of this Blog&lt;/a&gt;&lt;br&gt;</description>
<link>null#MainMenu</link>
<pubDate>Thu, 07 Nov 2013 14:12:00 GMT</pubDate>
</item>
<item>
<title>VPN</title>
<description>&lt;h1&gt; Default route via SSH&lt;/h1&gt;see more &lt;a target=&quot;_blank&quot; title=&quot;External link to https://wiki.archlinux.org/index.php/VPN_over_SSH#OpenSSH.27s_built_in_tunneling&quot; href=&quot;https://wiki.archlinux.org/index.php/VPN_over_SSH#OpenSSH.27s_built_in_tunneling&quot; class=&quot;externalLink&quot;&gt;https://wiki.archlinux.org/index.php/VPN_over_SSH#OpenSSH.27s_built_in_tunneling&lt;/a&gt;&lt;br&gt;&lt;h2&gt; using pvpn&lt;/h2&gt;&lt;h3&gt; prepreqs&lt;/h3&gt;&lt;pre&gt;GNU/Linux
OpenSSH
pppd
bash
iproute2
dnsutils (dig(1))
asciidoc
(make)
(binutils)
&lt;/pre&gt;&lt;br&gt;&lt;h3&gt; server side&lt;/h3&gt;&lt;pre&gt;echo &quot;PermitTunnel yes&quot; &amp;gt;&amp;gt; /etc/ssh/sshd_config
# deploy client pubkey for root
echo &quot;PermitRootLogin without-password&quot; &amp;gt;&amp;gt; /etc/ssh/sshd_config
echo &quot;net.ipv4.ip_forward=1&quot; &amp;gt;&amp;gt; /etc/sysctl.conf
echo &quot;iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE&quot; &amp;gt;&amp;gt; /etc/rc.local
&lt;/pre&gt;&lt;h3&gt; client side&lt;/h3&gt;&lt;pre&gt;yaourt -S pvpn
ssh-copy-id root@host
pvpn -t ssh-3 root@host default
&lt;/pre&gt;</description>
<link>null#VPN</link>
<pubDate>Tue, 22 Oct 2013 22:28:00 GMT</pubDate>
</item>
<item>
<title>systemd</title>
<description>&lt;h1&gt; run shit in tmux&lt;/h1&gt;in &lt;code&gt;/etc/systemd/system/start-shit.service&lt;/code&gt;&lt;br&gt;&lt;pre&gt;[Unit]
Description=start shit
[Service]
Type=oneshot
RemainAfterExit=yes
KillMode=none
User=root
ExecStart=/usr/bin/tmux new-session -s %u -d '&amp;lt;my cool script&amp;gt;'
ExecStop=/usr/bin/tmux kill-session -t %u
[Install]
WantedBy=multi-user.target
&lt;/pre&gt;&lt;h1&gt; call rc.local&lt;/h1&gt;in &lt;code&gt;/etc/systemd/system/rc-local.service&lt;/code&gt;&lt;br&gt;&lt;pre&gt;[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
[Service]
Type=oneshot
ExecStart=/etc/rc.local start
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
&lt;/pre&gt;</description>
<link>null#systemd</link>
<pubDate>Tue, 22 Oct 2013 22:22:00 GMT</pubDate>
</item>
<item>
<title>File Systems</title>
<description>&lt;h1&gt; umount&lt;/h1&gt;&lt;pre&gt;fuser -amuv /path/to/mount
kill dat-shit
&lt;/pre&gt;&lt;h1&gt; umount nfs&lt;/h1&gt;&lt;pre&gt;umount -l /path/to/nfs
&lt;/pre&gt;</description>
<link>null#%5B%5BFile%20Systems%5D%5D</link>
<pubDate>Tue, 22 Oct 2013 17:37:00 GMT</pubDate>
</item>
<item>
<title>/etc/network/interfaces</title>
<description>&lt;h1&gt;static network&lt;/h1&gt;&lt;pre&gt;auto eth1 # come up automatically
iface et1 inet static
address 192.168.0.24
netmask 255.255.255.0
# gateway 192.168.0.23
&lt;/pre&gt;&lt;h1&gt; for wpa_supplicant&lt;/h1&gt;&lt;pre&gt;auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid meinessid
wpa-psk meinpasswort
&lt;/pre&gt;</description>
<category>network</category>
<link>null#%2Fetc%2Fnetwork%2Finterfaces</link>
<pubDate>Wed, 16 Oct 2013 23:54:00 GMT</pubDate>
</item>
<item>
<title>solaris</title>
<description>&lt;h1&gt; gnu alternatives&lt;/h1&gt;&lt;h2&gt; readlink -f&lt;/h2&gt;&lt;pre&gt;canonicalpath() {
if [ -d $1 ]; then
pushd $1 &amp;gt; /dev/null 2&amp;gt;&amp;amp;1
echo $PWD
elif [ -f $1 ]; then
pushd $(dirname $1) &amp;gt; /dev/null 2&amp;gt;&amp;amp;1
echo $PWD/$(basename $1)
else
echo &quot;Invalid path $1&quot;
fi
popd &amp;gt; /dev/null 2&amp;gt;&amp;amp;1
}
&lt;/pre&gt;&lt;pre&gt;canonicalize(){
cd -P -- &quot;$(dirname -- &quot;$1&quot;)&quot; &amp;amp;&amp;amp;
printf '%s\n' &quot;$(pwd -P)/$(basename -- &quot;$1&quot;)&quot;
}
&lt;/pre&gt;&lt;h2&gt; mount -o bind&lt;/h2&gt;&lt;pre&gt;mount -F lofs DIR1 DIR2
&lt;/pre&gt;</description>
<link>null#solaris</link>
<pubDate>Wed, 16 Oct 2013 10:59:00 GMT</pubDate>
</item>
<item>
<title>Python Advanced</title>
<description>&lt;h1&gt; Python for the user&lt;/h1&gt;in ~/.profile &lt;br&gt;&lt;pre&gt;export PYTHONPATH=~/.local/lib/python2.7/site-packages
export PATH=$PATH:~/.local/lbin
&lt;/pre&gt;then do&lt;br&gt;&lt;pre&gt;pip install --user &amp;lt;stuff&amp;gt;
&lt;/pre&gt;&lt;h1&gt; Interactive Shell&lt;/h1&gt;&lt;h2&gt; Activate Tab Completion&lt;/h2&gt;&lt;pre&gt;import rlcompleter,readline;readline.parse_and_bind(&quot;tab: complete&quot;)
&lt;/pre&gt;&lt;h1&gt; Single file Python&lt;/h1&gt;&lt;h2&gt; py2zip&lt;/h2&gt;from &lt;a target=&quot;_blank&quot; title=&quot;External link to http://people.canonical.com/~roman.yepishev/us/src/&quot; href=&quot;http://people.canonical.com/~roman.yepishev/us/src/&quot; class=&quot;externalLink&quot;&gt;http://people.canonical.com/~roman.yepishev/us/src/&lt;/a&gt;&lt;br&gt;&lt;pre&gt;#!/bin/bash
ORIG_PWD=$PWD
set -ex
TARGET=&quot;$1&quot;
TARGET_BASENAME=`basename &quot;$TARGET&quot;`
shift
MAIN=$1
shift
FILES=&quot;$*&quot;
TEMPDIR=`mktemp -d /tmp/XXXXXXXX`
cp &quot;$MAIN&quot; &quot;$TEMPDIR/__main__.py&quot;
cp --parents -r $FILES &quot;$TEMPDIR/&quot;
cd &quot;$TEMPDIR&quot;
zip -q -r build.zip *
cd &quot;$ORIG_PWD&quot;
echo &quot;#!/usr/bin/python&quot; &amp;gt; &quot;$TEMPDIR/build.header&quot;
cat &quot;$TEMPDIR/build.header&quot; &quot;$TEMPDIR/build.zip&quot; &amp;gt; &quot;$TEMPDIR/$TARGET_BASENAME&quot;
chmod +x &quot;$TEMPDIR/$TARGET_BASENAME&quot;
mv &quot;$TEMPDIR/$TARGET_BASENAME&quot; $TARGET
&lt;/pre&gt;&lt;br&gt;&lt;h1&gt;Conditionals&lt;/h1&gt;&lt;pre&gt;&amp;gt;&amp;gt;&amp;gt; x = 5
&amp;gt;&amp;gt;&amp;gt; 1 &amp;lt; x &amp;lt; 10
True
&amp;gt;&amp;gt;&amp;gt; 10 &amp;lt; x &amp;lt; 20
False
&amp;gt;&amp;gt;&amp;gt; x &amp;lt; 10 &amp;lt; x*10 &amp;lt; 100
True
&amp;gt;&amp;gt;&amp;gt; 10 &amp;gt; x &amp;lt;= 9
True
&amp;gt;&amp;gt;&amp;gt; 5 == x &amp;gt; 4
True
&lt;/pre&gt;&lt;h1&gt;Random&lt;/h1&gt;&lt;pre&gt;from random import random
seed() # which seed to use
randint(a,b) # int between a and b
randrange(start,stop,step) # like choice(range(start,stop,step))
hoice(seq) # random choice from sequence
shuffle(x) # shuffles sequence
sample(seq,num) # choose num samples
uniform() # float between a and b
&lt;/pre&gt;&lt;h1&gt;Decorators&lt;/h1&gt;&lt;pre&gt;
def print_args(function):
def wrapper(*args, **kwargs):
print 'Arguments:', args, kwargs
return function(*args, **kwargs)
return wrapper
@print_args
def write(text):
print text
&amp;gt;&amp;gt;&amp;gt; write('foo')
Arguments: ('foo',){}
foo
&lt;/pre&gt;&lt;h1&gt;Advanced Regexes&lt;/h1&gt;&lt;pre&gt;re.compile(&quot;^\[font(?:=(?P&amp;lt;size&amp;gt;[-+][0-9]{1,2}))?\](.*?)[/font]&quot;,
re.DEBUG)
&lt;/pre&gt;</description>
<link>null#%5B%5BPython%20Advanced%5D%5D</link>
<pubDate>Fri, 11 Oct 2013 10:00:00 GMT</pubDate>
</item>
</channel>
</rss>