From 12f0d2ae826f4623bce3d94481c66d0b321fe190 Mon Sep 17 00:00:00 2001 From: Rogier Neeleman Date: Sat, 9 Aug 2014 00:35:55 +0200 Subject: [PATCH] Initial commit --- .gitignore | 5 + _layout/footer.html | 10 + _layout/header.html | 10 + _layout/servers.html | 2 + about.txt | 24 ++ blog/2012-05-07_Geek_and_Poke.txt | 6 + ...14-01-13_Cant_assign_requested_address.txt | 56 +++++ .../2014-07-15_Plotting_users_on_facebook.txt | 33 +++ blog/2014-08-08_Text_based_website.txt | 20 ++ contact.txt | 10 + files/pgp.txt | 90 ++++++++ genereer | 209 ++++++++++++++++++ .../apache_webserver_error_during_restart.txt | 24 ++ howto/apache_webserver_proxy.txt | 49 ++++ howto/apache_webserver_rewrite.txt | 28 +++ howto/awstats_clustered.txt | 14 ++ howto/backup_and_restoring_partitions.txt | 25 +++ howto/debian_on_ibook_g4.txt | 119 ++++++++++ howto/debian_remove_packages.txt | 16 ++ howto/iphone_headset_button.txt | 33 +++ howto/kiwiirc_on_debian.txt | 49 ++++ howto/lvm_cheatsheet.txt | 41 ++++ howto/mysql_backup.txt | 10 + howto/split_big_file.txt | 22 ++ howto/wolfenstein_running_in_Debian.txt | 58 +++++ images/foto_me.jpg | Bin 0 -> 25215 bytes index.txt | 19 ++ links.txt | 15 ++ photo/2011-09-25_4x4_rijden.txt | 1 + photo/2012-02-02_winterweer.txt | 1 + photo/2012-10-13_pollex_autoroute.txt | 4 + photo/2012-11-11_bikkelweekend_uitzetten.txt | 3 + photo/2012-11-30_zurich.txt | 3 + photo/2012-12-29_oud_en_nieuw.txt | 3 + scripts/awstats_cron | 42 ++++ scripts/sqlbackup | 21 ++ servers/graph.txt | 5 + servers/index.txt | 22 ++ servers/status.txt | 13 ++ 39 files changed, 1115 insertions(+) create mode 100644 .gitignore create mode 100644 _layout/footer.html create mode 100644 _layout/header.html create mode 100644 _layout/servers.html create mode 100644 about.txt create mode 100644 blog/2012-05-07_Geek_and_Poke.txt create mode 100644 blog/2014-01-13_Cant_assign_requested_address.txt create mode 100644 blog/2014-07-15_Plotting_users_on_facebook.txt create mode 100644 blog/2014-08-08_Text_based_website.txt create mode 100644 contact.txt create mode 100644 files/pgp.txt create mode 100755 genereer create mode 100644 howto/apache_webserver_error_during_restart.txt create mode 100644 howto/apache_webserver_proxy.txt create mode 100644 howto/apache_webserver_rewrite.txt create mode 100644 howto/awstats_clustered.txt create mode 100644 howto/backup_and_restoring_partitions.txt create mode 100644 howto/debian_on_ibook_g4.txt create mode 100644 howto/debian_remove_packages.txt create mode 100644 howto/iphone_headset_button.txt create mode 100644 howto/kiwiirc_on_debian.txt create mode 100644 howto/lvm_cheatsheet.txt create mode 100644 howto/mysql_backup.txt create mode 100644 howto/split_big_file.txt create mode 100644 howto/wolfenstein_running_in_Debian.txt create mode 100755 images/foto_me.jpg create mode 100644 index.txt create mode 100644 links.txt create mode 100644 photo/2011-09-25_4x4_rijden.txt create mode 100644 photo/2012-02-02_winterweer.txt create mode 100644 photo/2012-10-13_pollex_autoroute.txt create mode 100644 photo/2012-11-11_bikkelweekend_uitzetten.txt create mode 100644 photo/2012-11-30_zurich.txt create mode 100644 photo/2012-12-29_oud_en_nieuw.txt create mode 100644 scripts/awstats_cron create mode 100644 scripts/sqlbackup create mode 100644 servers/graph.txt create mode 100644 servers/index.txt create mode 100644 servers/status.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..49937f4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +# Ignore the renderd site +/site/ + +# Ignore the photo's +/photo/*/*.jpg diff --git a/_layout/footer.html b/_layout/footer.html new file mode 100644 index 0000000..32c4a08 --- /dev/null +++ b/_layout/footer.html @@ -0,0 +1,10 @@ + +----------------------------------------------------------------------------------- + © R.P. Neeleman +----------------------------------------------------------------------------------- + + + + + + diff --git a/_layout/header.html b/_layout/header.html new file mode 100644 index 0000000..92cea65 --- /dev/null +++ b/_layout/header.html @@ -0,0 +1,10 @@ + + + Sciuro.org + + + +
+
+  Home  |  Blog  |  Photo's  |  Howto  |  Servers  |  Links  |  About  |  Contact
+-----------------------------------------------------------------------------------
diff --git a/_layout/servers.html b/_layout/servers.html
new file mode 100644
index 0000000..7ee46c8
--- /dev/null
+++ b/_layout/servers.html
@@ -0,0 +1,2 @@
+                             \ Layout  |  Status   |  Graphs /
+                              +-----------------------------+
diff --git a/about.txt b/about.txt
new file mode 100644
index 0000000..d4ebeaf
--- /dev/null
+++ b/about.txt
@@ -0,0 +1,24 @@
+About
+
+My name is Rogier, or Roger as most non-dutch speakers
+will prefer. I am a 33 year old computer engineer,
+living in The Netherlands.
+
+Besides being a computer nerd, I spend my time with
+Scouting, Geocaching, hiking and biking. And sometimes
+climbing and skiing.
+
+The name Sciuro
+The name Sciuro is a nickname I got from some Swiss
+scouts. In Switserland it's common to give every scout
+a nickname and they came up with the nickname Sciuro.
+It's pronounced as t.si.uro and meaning 'squirrel' in
+Esperanto. If you don't know what esperanto is, here
+is an explaination.
+
+
+
+
+
+
+
diff --git a/blog/2012-05-07_Geek_and_Poke.txt b/blog/2012-05-07_Geek_and_Poke.txt
new file mode 100644
index 0000000..381923e
--- /dev/null
+++ b/blog/2012-05-07_Geek_and_Poke.txt
@@ -0,0 +1,6 @@
+Geek and Poke
+
+I found a new cartoon. It's a couple of years old, but is a very good one!
+Especially for computer geeks. Made by Oliver Widder, an IT-guy from Hamburg,
+Germany. Look for his cartoons on http://geek-and-poke.com/.
+
diff --git a/blog/2014-01-13_Cant_assign_requested_address.txt b/blog/2014-01-13_Cant_assign_requested_address.txt
new file mode 100644
index 0000000..054b628
--- /dev/null
+++ b/blog/2014-01-13_Cant_assign_requested_address.txt
@@ -0,0 +1,56 @@
+Can't assign requested address
+
+Using Mac OS X 10.9 (Mavericks) I noticed that my browser wasn't working. Except
+some sites like google. Almost nothing works anymore. Except IPV6 connections.
+There was no problem with that. Also incomming connections on IPV4 like SSH or
+VNC works.
+
+So I tried to connect from the terminal:
+
+  imac:~ rogier$ telnet www.nu.nl 80
+  Trying 62.69.174.78...
+  telnet: connect to address 62.69.174.78: Can't assign requested address
+  Trying 62.69.166.18...
+  telnet: connect to address 62.69.166.18: Can't assign requested address
+  Trying 62.69.166.15...
+  telnet: connect to address 62.69.166.15: Can't assign requested address
+  Trying 62.69.174.75...
+  telnet: connect to address 62.69.174.75: Can't assign requested address
+  telnet: Unable to connect to remote host
+
+No connection possible. So what went wrong?
+
+The netstat -a gives me really a lot of "CLOSED" connections. That could not be a
+good sign. After some digging on the internet I came to an article on the Apple
+discussion list about this problem. It turns out that there is (probably) a bug
+in Mavericks. It gives you a lot of LAST_ACK connections. You can check your
+connection state with the following command:
+
+  netstat -n | egrep '^(tcp|udp)' | awk '{print $NF}' | psort
+
+If you do the same for IPV6, you get a whole different situation:
+
+  netstat -l
+
+It turns out that after 20 to 25 days, something went very very wrong inside your
+mac. The only thing that will help is rebooting the whole system. Looking at my
+own system, I rebooted 24 day's ago.
+
+  imac:~ rogier$ last reboot
+  reboot ~ Sun Jan 12 11:15
+  reboot ~ Thu Dec 19 10:53
+  reboot ~ Wed Dec 11 08:31
+  reboot ~ Sat Dec 7 09:56
+  reboot ~ Fri Dec 6 07:24
+  reboot ~ Thu Dec 5 14:31
+
+
+Anyone a solution?
+
+Update: A temporary solution could be: Thanks Erik J. Barzeski
+
+  sudo ifconfig en0 down
+  sudo route flush
+  sudo ifconfig en0 up
+
+More information: https://discussions.apple.com/thread/5551686
diff --git a/blog/2014-07-15_Plotting_users_on_facebook.txt b/blog/2014-07-15_Plotting_users_on_facebook.txt
new file mode 100644
index 0000000..230157c
--- /dev/null
+++ b/blog/2014-07-15_Plotting_users_on_facebook.txt
@@ -0,0 +1,33 @@
+Plotting users on facebook
+
+I was playing with Munin, the "network resource monitoring tool". But you can also
+plot other things than CPU usage or network traffic. As long as you can capture it
+in a value.
+
+My default chat application is not facebook, but IRC. To chat with facebook users,
+I use a ZNC bouncer together with Bitlbee.
+
+   +---------+    +---------+    +---------+    +---------+
+   |         |    |         |    |         |    |         |
+   | Client  |--->| ZNC     |--->| Bitlbee |--->| Facebook|
+   | (me)    |    | (log)   |    |         |    |         |
+   +---------+    +---------+    +---------+    +---------+
+
+The ZNC bouncer is logging the users coming and going to the channel when they
+use facebook. I used the Munin plugin "loggrep_" with the next config on that
+logfile:
+
+  [loggrep_facebook]
+    user rogier
+    env.regex localhost sets mode
+    env.label Facebook users
+    env.logfile /home/rogier/.znc/users/rogier/moddata/log/facebook.log
+    env.title User count on facebook
+
+So I filter the logfile for the text "localhost sets mode" because when a user
+came online, he get's a +v from bitlbee. After a while, you will get the next
+graph.
+
+
+ +
diff --git a/blog/2014-08-08_Text_based_website.txt b/blog/2014-08-08_Text_based_website.txt new file mode 100644 index 0000000..259e418 --- /dev/null +++ b/blog/2014-08-08_Text_based_website.txt @@ -0,0 +1,20 @@ +A new text based website + +Yes, a new text based website! After some time without a website, with a website +based on a CMS, and with some 'almost finished' websites, I feel the need to make +a website with the following criteria: + +-Fast +-Simple +-Logica during generating + +I found jekyll, but it took me to much time to learn and I ran into some simple +problems. So I made my own CMS like environment. At this moment written in Bash. +Maybe in the future (Ugh) I will rewrite it in Python, but till then I got a +working solution. + +It relies on a script, a directory structure and some text files. Nothing more. +The script is looking through the directories for text files and reorder, +combine and replace the files for the website itself. + +I hope this one will work a little bit longer. :-) diff --git a/contact.txt b/contact.txt new file mode 100644 index 0000000..2a0449a --- /dev/null +++ b/contact.txt @@ -0,0 +1,10 @@ +Contact + +You can reach me as follows: + +E-Mail: info@sciuro.org +IRC: Sciuro on FreeNode, IRCNet, EFNet and Scoutlink +Twitter: Sciuro_NL +ICQ: 17135284 + +GPG: You can find my pgp/gpg key here diff --git a/files/pgp.txt b/files/pgp.txt new file mode 100644 index 0000000..9a89319 --- /dev/null +++ b/files/pgp.txt @@ -0,0 +1,90 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG/MacGPG2 v2.0.22 (Darwin) +Comment: GPGTools - https://gpgtools.org + +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 +=OyHW +-----END PGP PUBLIC KEY BLOCK----- + diff --git a/genereer b/genereer new file mode 100755 index 0000000..02b0ecf --- /dev/null +++ b/genereer @@ -0,0 +1,209 @@ +#!/bin/bash + +# Variables +SITEURL="/newsite" +LAYOUT=_layout +SITE=site +EXTRA='images scripts files' +SERVERS='314.sciuro.org chip.sciuro.org skippy.sciuro.org slappy.sciuro.org irc.sciuro.org lists.laurentiusgroep.nl' + +# Prereq +mkdir -p $SITE + +# Root pagina's +rm -rf $SITE/*.html +for i in `ls *.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + cat $LAYOUT/header.html >> $SITE/$FILENAME.html + cat $i >> $SITE/$FILENAME.html + cat $LAYOUT/footer.html >> $SITE/$FILENAME.html +done + +# Server directory +mkdir -p $SITE/servers/ +rm -rf $SITE/servers/*.html + +for i in `ls servers/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + cat $LAYOUT/header.html >> $SITE/$FILENAME.html + cat $LAYOUT/servers.html >> $SITE/$FILENAME.html + cat $i >> $SITE/$FILENAME.html + cat $LAYOUT/footer.html >> $SITE/$FILENAME.html +done + +for i in $SERVERS; do + HNAME=`echo $i | cut -d\. -f1` + DNAME=`echo $i | cut -d\. -f2,3 --output-delimiter=\.` + FILENAME=servers/graph-$HNAME + cat $LAYOUT/header.html >> $SITE/$FILENAME.html + cat $LAYOUT/servers.html >> $SITE/$FILENAME.html + cat servers/graph.txt >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + echo "
" >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + echo "
" >> $SITE/$FILENAME.html + cat $LAYOUT/footer.html >> $SITE/$FILENAME.html +done + +# Howto directory +mkdir -p $SITE/howto/ +rm -rf $SITE/howto/*.html + +cat $LAYOUT/header.html >> $SITE/howto/index.html +echo "Howto's" >> $SITE/howto/index.html +echo "" >> $SITE/howto/index.html +echo "Some howto's I wrote. If something is wrong, or you need help, please send me" >> $SITE/howto/index.html +echo "a message." >> $SITE/howto/index.html +echo "" >> $SITE/howto/index.html +for i in `ls howto/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + HTT=`echo $FILENAME |cut -d\/ -f2` + echo "-$HTT" >> $SITE/howto/index.html +done +cat $LAYOUT/footer.html >> $SITE/howto/index.html + +for i in `ls howto/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + cat $LAYOUT/header.html >> $SITE/$FILENAME.html + cat $i >> $SITE/$FILENAME.html + MODTIME=`date -r $i +%A\ %B%e\ %Y,\ %R` + echo "" >> $SITE/$FILENAME.html + echo "React to Howto" >> $SITE/$FILENAME.html + echo "Last modification: $MODTIME" >> $SITE/$FILENAME.html + cat $LAYOUT/footer.html >> $SITE/$FILENAME.html +done + +# Blog pages +mkdir -p $SITE/blog/ +rm -rf $SITE/blog/*.html + +cat $LAYOUT/header.html >> $SITE/blog/index.html +echo "Blog" >> $SITE/blog/index.html +for i in `ls -r blog/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + BTITLE=`echo $FILENAME |cut -d\/ -f2 |cut -b12-` + BFILEDATE=`echo $FILENAME |cut -d\/ -f2 |cut -b-10` + CURMONTH=`date -d$BFILEDATE +%B\ %Y` + if [ "$CURMONTH" != "$LASTMONTH" ]; then + LASTMONTH=$CURMONTH + echo "" >> $SITE/blog/index.html + echo "$CURMONTH" >> $SITE/blog/index.html + fi + echo "-$BTITLE" >> $SITE/blog/index.html +done +cat $LAYOUT/footer.html >> $SITE/blog/index.html + +for i in `ls blog/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + cat $LAYOUT/header.html >> $SITE/$FILENAME.html + BFILEDATE=`echo $FILENAME |cut -d\/ -f2 |cut -b-10` + BDATE=`date -d$BFILEDATE +%A\ %B\ %e\ %Y` + echo $BDATE >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + cat $i >> $SITE/$FILENAME.html + BLOGID=`echo $FILENAME |cut -d\/ -f2` + echo "" >> $SITE/$FILENAME.html + echo "React to blog" >> $SITE/$FILENAME.html + cat $LAYOUT/footer.html >> $SITE/$FILENAME.html +done + +# Photo pages +mkdir -p $SITE/photo/ +rm -rf $SITE/photo/*.html + +cat $LAYOUT/header.html >> $SITE/photo/index.html +echo "Photo's" >> $SITE/photo/index.html +for i in `ls -r photo/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + PTITLE=`echo $FILENAME |cut -d\/ -f2 |cut -b12-` + PFILEDATE=`echo $FILENAME |cut -d\/ -f2 |cut -b-10` + CURMONTH=`date -d$PFILEDATE +%B\ %Y` + if [ "$CURMONTH" != "$LASTMONTH" ]; then + LASTMONTH=$CURMONTH + echo "" >> $SITE/photo/index.html + echo "$CURMONTH" >> $SITE/photo/index.html + fi + echo "-$PTITLE" >> $SITE/photo/index.html +done +cat $LAYOUT/footer.html >> $SITE/photo/index.html + +for i in `ls photo/*.txt`; do + FILENAME=`echo $i |cut -d\. -f1` + BFILEDATE=`echo $FILENAME |cut -d\/ -f2 |cut -b-10` + BDATE=`date -d$BFILEDATE +%A\ %B\ %e\ %Y` + BLOGID=`echo $FILENAME |cut -d\/ -f2` + DIRNAME=`echo $FILENAME |cut -d\/ -f2` + + mkdir -p $SITE/$FILENAME/normal/ + mkdir -p $SITE/$FILENAME/thumbs/ + #rm -rf $SITE/$FILENAME/thumbs/*.jpg + rm -rf $SITE/photo/$DIRNAME/*.html + + cat $LAYOUT/header.html >> $SITE/$FILENAME.html + cat $i >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + echo $BDATE >> $SITE/$FILENAME.html + echo "" >> $SITE/$FILENAME.html + + echo "
" >> $SITE/$FILENAME.html + T=0 + rename 'y/A-Z/a-z/' $FILENAME/* + for j in `ls $FILENAME/*.jpg`; do + if [ $T == '0' ]; then + echo "
" >> $SITE/$FILENAME.html + T=$((T+1)) + elif [ $T == '5' ]; then + echo "
" >> $SITE/$FILENAME.html + T=1 + else + echo "" >> $SITE/$FILENAME.html + T=$((T+1)) + fi + + IMAGENAME=`echo $j |cut -d\/ -f3` + if [ ! -f $SITE/photo/$DIRNAME/thumbs/$IMAGENAME ]; then + convert -resize 120 photo/$DIRNAME/$IMAGENAME $SITE/photo/$DIRNAME/thumbs/$IMAGENAME + fi + + if [ ! -f $SITE/photo/$DIRNAME/normal/$IMAGENAME ]; then + convert -resize 480 photo/$DIRNAME/$IMAGENAME $SITE/photo/$DIRNAME/normal/$IMAGENAME + fi + + NAME=`echo $IMAGENAME |cut -d\. -f1` + + echo "" >> $SITE/$FILENAME.html + + # Picture page + + cat $LAYOUT/header.html >> $SITE/photo/$DIRNAME/$NAME.html + cat $i >> $SITE/photo/$DIRNAME/$NAME.html + echo "" >> $SITE/photo/$DIRNAME/$NAME.html + echo $BDATE >> $SITE/photo/$DIRNAME/$NAME.html + echo "" >> $SITE/photo/$DIRNAME/$NAME.html + echo "
index
" >> $SITE/photo/$DIRNAME/$NAME.html + echo "
" >> $SITE/photo/$DIRNAME/$NAME.html + cat $LAYOUT/footer.html >> $SITE/photo/$DIRNAME/$NAME.html + + done + + echo "
" >> $SITE/$FILENAME.html + + cat $LAYOUT/footer.html >> $SITE/$FILENAME.html +done + + +# Other directories +for i in $EXTRA; do + rm -rf $SITE/$i + cp -a $i $SITE/$i +done + +# Replace variables +for i in `find $SITE/ -name *.html`; do + sed -i 's/__SITEURL__/\/newsite/g' $i +done + +# Publish +rsync --delete --recursive $SITE/* 314:/usr/share/mini-httpd/html/newsite/ diff --git a/howto/apache_webserver_error_during_restart.txt b/howto/apache_webserver_error_during_restart.txt new file mode 100644 index 0000000..1f0d411 --- /dev/null +++ b/howto/apache_webserver_error_during_restart.txt @@ -0,0 +1,24 @@ +Always the same error during restarting apache + +If you restart your Apache webserver, you could get the following error message: + + Could not reliably determine the server's fully qualified domain name, + using 127.0.0.1 for ServerName + +The reason is because your netwerk is not completly setup properly. + +-Check if your hostname is set in /etc/hostname +-Check if your domainname is set in /etc/resolv.conf + +And the final trick: Put in your /etc/hosts file the next line: + + IP-addres fully-quallified-hostname small-hostname + +Do not swap the fully-quallified-hostname and the small-hostname, because Apache +only looks at the first entry and that one should be the fully quallified hostname + +So for example, for me it will become: + + 192.168.1.1 scrat.sciuro.org scrat + +Restart your apache and the message is gone. diff --git a/howto/apache_webserver_proxy.txt b/howto/apache_webserver_proxy.txt new file mode 100644 index 0000000..cf743bf --- /dev/null +++ b/howto/apache_webserver_proxy.txt @@ -0,0 +1,49 @@ +Proxy HTTP requests in Apache 2.2 with mod_proxy and mod_balancer + +You can actually use an Apache web server as a front web server to proxy +specified requests to other web servers. For example to load balance your backend +servers or to make a failover system in case of an failure. Yes, we are talking +about high availability! + +Simple +First enable the modules mod_proxy and mod_proxy_http. Now we can do a simple +request forward. Of course we use a Debian system, so to enable the proxy modules +we will do: + + a2enmod proxy proxy_http + /etc/init.d/apache2 restart + +Now we can make use of the proxy capabilities of Apache. Put the next part in +your virtual host or any other place. + + ProxyPass /application http://servername:port/somethingelse/ + ProxyPassReverse /application http://servername:port/somethingelse/ + +Loadbalance and/or failover +For this part we need some more modules. So we enable them. You can also enable +the ftp and ajp connectors if you need them. It's exactly the same as with the +mod_proxy_http. + + a2enmod proxy proxy_http proxy_balancer + /etc/init.d/apache2 restart + +Now we can have fun! The ProxyPreserveHost is technically not needed. But there +are some more options in the proxy module that makes life a little bit easier. +We will not proxy requests for /context/static. All the rest will be proxied to +the right server. Server1 is active now. Server2 is disabled. (maintenance?) So +if Server1 will fail, everybody is moved to a balanced cluster of Server3 and +Server4. I know, it's a little bit strange setup, but it's only an example. + + ProxyPreserveHost On + ProxyPass /context/static ! + ProxyPass /context balancer://clustername/something + + <Proxy balancer://clustername> + BalancerMember http://servername1:port lbset=0 route=server1 + # The next server is temporary disabled. + BalancerMember http://servername2:port lbset=0 route=server2 status=+D + # + # Backupservers if other servers failed + BalancerMember http://servername3:port lbset=1 route=server3 + BalancerMember http://servername4:port lbset=1 route=server4 + </Proxy> diff --git a/howto/apache_webserver_rewrite.txt b/howto/apache_webserver_rewrite.txt new file mode 100644 index 0000000..0a1e94a --- /dev/null +++ b/howto/apache_webserver_rewrite.txt @@ -0,0 +1,28 @@ +Apache webserver and rewrite rules + +Here are some rewrite codes I sometimes use. Rewrite is a very powerful Apache +module and so almost everything is possible. Some examples. + +To rewrite your http://www.oldsite.org/something to the new URL +http://www.newsite.org/something, you can use the next code: + + RewriteCond %{HTTP_HOST} ^www\.oldsite.org [NC] + RewriteRule ^ http://www.newsite.org%{REQUEST_URI} [L,R=301] + +To do an action when the user don't have a special cookie, for example to force +somebody to the login page or redirect him to a welcome page. Take a look at the +second rule. This one prevents looping over these rule again and again. + + RewriteCond %{HTTP_COOKIE} !logincookie + RewriteCond %{QUERY_STRING} !page=login + RewriteRule ^(.*)$ %{REQUEST_URI}?page=login [L,R] + +To rewrite a request if it's a search result from google. + + RewriteCond %{HTTP_REFERER} ^http://www\.google [NC] + RewriteRule ^ http://www.somewhere.com/something.gif [R] + +To simple forward your request to your internal server2 on port 8080: + + RewriteEngine On + RewriteRule ^/app/(.*)$ http://server2:8080/app1/$1 [P] diff --git a/howto/awstats_clustered.txt b/howto/awstats_clustered.txt new file mode 100644 index 0000000..2b204d7 --- /dev/null +++ b/howto/awstats_clustered.txt @@ -0,0 +1,14 @@ +Clustered AwStats + +To use AWStats in a multiple vhost environment, you can make a new crontab for +every new site. But that's not very smart. I made this script to look at the +AWStats configuration files and parse all the access.log.1.gz files for all the +different sites. + +It's made for my servers, so probably you have to change something for your own +environment. Make sure your AWStats config match this config and exchange SSH +key's for the AWStatst user to the webservers (read)! The access logging of the +Apache servers in the example below should be +/var/log/apache2/sitename/access.log.1.gz + +You can find the script here. diff --git a/howto/backup_and_restoring_partitions.txt b/howto/backup_and_restoring_partitions.txt new file mode 100644 index 0000000..437ce98 --- /dev/null +++ b/howto/backup_and_restoring_partitions.txt @@ -0,0 +1,25 @@ +backup and restoring partitions + +You always wonder how to make a backup of a complete disk? For example to rescue +the disk, or you want to save te data for later on? Or mayby to make an image +and distribute it over a lot of computers? Here is how. + +Make a backup of a partition (this could also be the whole disk): + +One-to-one: + dd if=/dev/hdx1 of=/path/to/image + +To a compressed image: + dd if=/dev/hdx2 | gzip > /path/to/image.gz + +To mount the partition on a local directory: + mount -o loop /path/to/image /mnt + +To restore a partition (first make sure the partition on disk is the same size or +bigger than the original): + +One-to-one: + dd if=/path/to/image of=/dev/hdx1 + +From a compressed image: + gzip -dc /path/to/image.gz |dd of=/dev/hdx2 diff --git a/howto/debian_on_ibook_g4.txt b/howto/debian_on_ibook_g4.txt new file mode 100644 index 0000000..8e21b71 --- /dev/null +++ b/howto/debian_on_ibook_g4.txt @@ -0,0 +1,119 @@ +Install Debian testing on an iBook G4 + +Fact one, I still have an iBook G4 and little use to it. Fact two, sometimes I +still miss my linux desktop. (Mac OS X is not that bad) Combine those two facts +and we are going to install Debian Testing on an iBook G4. + +Getting the software +I used the netinstaller from +http://cdimage.debian.org/cdimage/daily-builds/daily/arch-latest/powerpc/iso-cd/ +Burn the debian-testing-powerpc-netinst.iso to a CD. (I know, it's an old medium) + +Do an installation +Boot your iBook and insert the CD. Press 'c' and hold while or before +Apple-Boot-Sound to start from CD. Maybe you have to boot it again if you are too +slow. He asks you what you want to do. type + + install video=ofonly + +The debian installer doesn't like the iBook's graphic card. Proceed like a normal +Debian installation, until the disk layout. + +Disk partitioning +Choose for 'guided partitioning'. Then you will get an reconfigured partitionschema +which you can change. You will see an extra partition, the 'Apple' type partition. +Change your disk partition like you want, but keep the first Apple partition!!! +Otherwise it can't format the drive. I did it my way the first time and had some +problems formatting my drive. Maybe it's a bug in testing, but I couldn't find the +Apple type, but it worked using the 'guided partitioning'. + +This is my partition table: + + IDE1 master (hda) - 120.0 GB FUJITSU MHV2120AT + #1 32.3 kB Apple + #2 1.0 MB B K boot untitled + #3 7.0 GB f ext4 untitled / + #4 3.5 GB f swap swap swap + #5 109.6 GB f ext4 untitled /home + +If you got the error 'Partition map has no partition map entry' after writing the +partition table to disk, you forgot to make the first Apple partition. + +Your system will reboot. + +Choose the parts you want to install. I simply only choose to install basics and +laptop. All the rest I will do by myself. + +Reboot into your new OS. The first thing I noticed was the fan. It sounds like a +broken fan. After about 5 minutes it scaled down to zero and the noise was gone. + +Console tools +Just aptitude install gpm. This will install gpm, the mouse interface for the +console. An USB mouse will work out of the box. + +X +Installing X is a bit strange in Debian because of the Radeon Mobility 9200. Main +problem is the framebuffer loaded at boot time. The next can be done by every +windowmanager, but I prefer KDE. Make sure your /etc/apt/sources.list contains +besides main, also the contrib and non-free repo's. + + aptitude install xorg + aptitude install kde-standard + aptitude install firmware-linux + +Do not reboot now! It will freeze during boot. Add the following into your +/etc/yaboot.conf: + + image=/boot/vmlinux + label=Linux + read-only + initrd=/boot/initrd.img + append="video=ofonly video=radeonfb:off radeon.agpmode=-1" + + image=/boot/vmlinux.old + label=old + read-only + initrd=/boot/initrd.img.old + append="video=ofonly video=radeonfb:off radeon.agpmode=-1" + +Then run: + + root@thuu:~# ybin -v + ybin: Finding OpenFirmware device path to `/dev/hda2'... + ybin: Installing first stage bootstrap /usr/lib/yaboot/ofboot onto /dev/hda2... + ybin: Installing primary bootstrap /usr/lib/yaboot/yaboot onto /dev/hda2... + ybin: Installing /etc/yaboot.conf onto /dev/hda2... + ybin: Setting attributes on ofboot... + ybin: Setting attributes on yaboot... + ybin: Setting attributes on yaboot.conf... + ybin: Blessing /dev/hda2 with Holy Penguin Pee... + ybin: Updating OpenFirmware boot-device variable in nvram... + +Now you may reboot. If you accidentally reboot your system before changing +yaboot and you are stuk at the message: + + conflicting fb hw usage radeondrmfb + +Give during boot time in the yaboot menu the command: + + boot: Linux video=radeonfb:off radeon.agpmode=-1 + +It will boot again with the right options. + +Wireless +First, make sure in your /etc/apt/sources.list contains the contrib packages. +Update your repository and install the package b43-fwcutter. Download the +firmware for the b43 from + + http://downloads.openwrt.org/sources/broadcom-wl-4.150.10.5.tar.bz2 + +Untar the broadcom code and cd into the driver directory + + b43-fwcutter -w /lib/firmware/ wl_apsta_mimo.o + +And your Wireless is working. (can somebody test this again? Maybe I missed +something) + +Bluetooth +Bluetooth is working out of the box. Install btscanner to see it for yourself. +Config files are in /etc/bluetooth. diff --git a/howto/debian_remove_packages.txt b/howto/debian_remove_packages.txt new file mode 100644 index 0000000..2a70ec8 --- /dev/null +++ b/howto/debian_remove_packages.txt @@ -0,0 +1,16 @@ +How to remove debian packages + +The normal way to remove a Debian package is to use + + apt-get remove name +Or + aptitude remove name + +But in this way you are left with a bunch of configuration files. You can remove +individual package configuration with: + + apt-get purge name + +Or all those packages that has been removed, but not completely: + + dpkg -l | grep ^rc | cut -d' ' -f3|xargs dpkg -P diff --git a/howto/iphone_headset_button.txt b/howto/iphone_headset_button.txt new file mode 100644 index 0000000..1d6de91 --- /dev/null +++ b/howto/iphone_headset_button.txt @@ -0,0 +1,33 @@ +iPhone headset button + +The headphone of my iPhone has some more capabilities beside taking calls or +start and pause music. I found some information on the internet. + +Incoming call: +1. Press once to pickup the call +2. Press twice to send the call to voicemail. +3. Press and hold center button for about two seconds to decline the call. You + will also hear two low beeps that confirm you the call is declined. + +While you're in a call, you can simply press once to end the call. + +While you're in a call and there is a second incoming call, you can: +1. Press once to switch to another call and put the current call on hold. Press + the button again to switch to the first call. +2. Press and hold the button for about two seconds to ignore the second call. + +While you're not in a call, you can press the button once to activate iPod and +playback your music. + +While you're listening to music in iPod, you can use the button to control the +music playback: +1. Press once to pause the song and press again to resume it. +2. Press twice to skip to the next song +3. Press three time to go back to the previous song + +For iPhone 3GS, the bundled headset is enhanced with volume control buttons. You +can use the "+" and "-" buttons to adjust the volume. And, one more thing. You +can press and hold the center button to activate voice control, which is a new +feature comes with iPhone 3GS. + +(source: http://rdsbc.blogspot.com/2009/08/tips-iphone-headset-shortcuts.html) diff --git a/howto/kiwiirc_on_debian.txt b/howto/kiwiirc_on_debian.txt new file mode 100644 index 0000000..b8ac043 --- /dev/null +++ b/howto/kiwiirc_on_debian.txt @@ -0,0 +1,49 @@ +Install KiwiIRC on Debian + +A some people know, I use IRC a lot. Especially in combination with +ZNC, a bouncer for all my IRC connections. But sometimes you need an +IRC client in a browser with just your own settings. Therefore, how +to install the fantastic webbased IRC client Kiwiirc on a Debian based +server. + +I presume you already have git working. Otherwise, install it +(apt-get install git). Fist we need a working server with node.js. So +let’s install all the software as root: + + apt-get install npm + +The problem is that Debian uses the ‘nodejs’ binary, but the whole rest +of the world called this file ‘node’. So we have to link it to the +right name before starting the installer. + + ln -s /usr/bin/nodejs /usr/bin/node + +After installing all the software, we could become the user with should +run KiwiIRC. Probably you wouldn;t want to run this as root! So find a +nice place to store the software (/home/kiwiirc if the user is called +kiwiirc) and make a git clone of the software tree. + + git clone https://github.com/prawnsalad/KiwiIRC.git && cd KiwiIRC + +I ran into a problem with ZNC. It wouldn’t connect to ZNC, but it +should. After upgrading from stable to the development, it worked. If +you have no problems at all, stay with the stable branch. + + git checkout development + +Copy the config file, edit it to your prefecences and do a rebuild. +This wil generate all you needed files. Remember that after changing +the configfile, you have to run the build script! + + cp config.example.js config.js + nano config.js + ./kiwi build + +After all this trouble, you can start your webbased IRC client! The +first is for starting in the background, the second if you want to run +it in the forground, (debuging) + + ./kiwi start + ./kiwi -f start + +Happy chatting! diff --git a/howto/lvm_cheatsheet.txt b/howto/lvm_cheatsheet.txt new file mode 100644 index 0000000..c374da2 --- /dev/null +++ b/howto/lvm_cheatsheet.txt @@ -0,0 +1,41 @@ +LVM cheatsheet + +Here is a cheatsheet for LVM: + +LVM exists in the following order: + +-PV (physical volume) +-VG (volume group) +-LV (logical volume) + +Create a physical volume + + pvcreate /dev/hdX1 + pvscan + pvdisplay + +Create a volume group + + vgcreate vg_name /dev/hdX1 /dev/hdX2 + vgscan + vgdisplay + +Create a logical volume + + lvcreate -L 10G -n lv_name vg_name + lvscan + lvdisplay + +Activate an external LVM volume +Usefull when you are repairing an external harddisk with a LVM volume. + + lvscan + lvchange -a y lv_name + lvscan + +Disable an external LVM volume +Usefull when you are repairing an external harddisk with a LVM volume. + + lvscan + lvchange -a n lv_name + lvscan diff --git a/howto/mysql_backup.txt b/howto/mysql_backup.txt new file mode 100644 index 0000000..96c8de3 --- /dev/null +++ b/howto/mysql_backup.txt @@ -0,0 +1,10 @@ +How to backup a MySql database + +To backup all your databases from MySql, I made the this script. + +You can run this script from your crontab. Run this every night and it will dump +all of your databases added with a date into the directory /backup/sql You can +also remove the very old ones by crontab. My crontab looks like the following: + + 0 0 * * * find /backup/sql/ -mtime +5 -exec rm -rf {} \; + 0 0 * * * /usr/local/bin/sqlbackup diff --git a/howto/split_big_file.txt b/howto/split_big_file.txt new file mode 100644 index 0000000..2250874 --- /dev/null +++ b/howto/split_big_file.txt @@ -0,0 +1,22 @@ +How to split a big file in smaler ones + +Sometimes you got the problem that a file is something too big. No problem. There +is a solution for that. The command split. + +Split a file +How do we split a file? Simple. To split the file bigfile into smaller files from +100 MB with the name smallfile00, smallfile01, smallfile02 etc. we do: + + split -d -b100m bigfile smallfile + +If you want an extention, some people or program's like that, you can give them +an extention: + + for i in `ls smallfile*` do mv $i $i.abc; done + +And you got all smaller files. + +Join a file +Later on, to join the files together, you can use the command cat. + + cat smallfile* > bigfile diff --git a/howto/wolfenstein_running_in_Debian.txt b/howto/wolfenstein_running_in_Debian.txt new file mode 100644 index 0000000..c72f333 --- /dev/null +++ b/howto/wolfenstein_running_in_Debian.txt @@ -0,0 +1,58 @@ +Getting Wolfenstein (wolf) running in Debian + +Running games in Linux could be a pain in the ass. Here I tried to install +Wolfenstein. + +Install your software. Probebly it goes to /usr/local/games/wolfenstein. And +of course make your openGL working. See the big internet for doing this. + +If you start your game (./wolf) it will come up with the following error: + +Wolf 1.1b linux-i386 Jan 17 2002 +----- FS_Startup ----- +Current search path: +/home/rogier/.wolf/main +/usr/local/games/wolfenstein/main/mp_pakmaps0.pk3 (21 files) +/usr/local/games/wolfenstein/main/mp_pak2.pk3 (3 files) +/usr/local/games/wolfenstein/main/mp_pak1.pk3 (308 files) +/usr/local/games/wolfenstein/main/mp_pak0.pk3 (783 files) +/usr/local/games/wolfenstein/main/pak0.pk3 (4775 files) +/usr/local/games/wolfenstein/main +./wolf.x86/main + +---------------------- +5890 files in pk3 files +execing default.cfg +couldn't exec language.cfg +couldn't exec wolfconfig_mp.cfg +couldn't exec autoexec.cfg +Hunk_Clear: reset the hunk ok +Joystick is not active. +Bypassing CD checks +----- Client Initialization ----- +----- Initializing Renderer ---- +------------------------------- +Loaded 714 translation strings from scripts/translation.cfg +----- Client Initialization Complete ----- +----- R_Init ----- +...loading libGL.so: QGL_Init: Can't load libGL.so from /etc/ld.so.conf +or current dir: /usr/local/games/wolfenstein/libGL.so: cannot open shared +object file: No such file or directory +failed +...loading libMesaVoodooGL.so.3.1: QGL_Init: Can't load libMesaVoodooGL.so.3.1 +from /etc/ld.so.conf or current dir: +/usr/local/games/wolfenstein/libMesaVoodooGL.so.3.1: cannot open shared object +file: No such file or directory +failed +----- CL_Shutdown ----- +RE_Shutdown( 1 ) +----------------------- +----- CL_Shutdown ----- +----------------------- +Sys_Error: GLimp_Init() - could not load OpenGL subsystem + +Solution +There is nothing wrong, but Debian is missing a link. So make the link: + +cd /usr/lib32/ +ln -s libGL.so.1 libGL.so diff --git a/images/foto_me.jpg b/images/foto_me.jpg new file mode 100755 index 0000000000000000000000000000000000000000..b93c9a4e30b17a2958fa1475de663b1c5f9f1a22 GIT binary patch literal 25215 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 XrLEFJ`xYC|_;@R*(<-cRi{Ss+Mf1EM literal 0 HcmV?d00001 diff --git a/index.txt b/index.txt new file mode 100644 index 0000000..cbb4513 --- /dev/null +++ b/index.txt @@ -0,0 +1,19 @@ + Welcome to Sciuro.org + +This is my simple place where I will put my thoughts and _.-"""-, +knowlege on the world wide web. .' ..::. `\ + / .::' `'` / +Why is it all text based? / .::' .--.=; +After trying different type's of websites and frameworks, I | ::' / C ..\ +came to the conclusion that they all are slow, difficult | :: | \ _.) +and not inuitive for a nerd like me. What I liked the most \ ':| / \ +was the old text based website. So why not build one. :-) '-, \./ \)\) +Beside that, it's also quite fast on the creepy Dutch `-| );/ +mobile network. '--'-' + +What can I find here? +Everything I want. Solutions for problems I faced (howto's), scripts I use every +day, or ones in a while (scripts), day to day thoughts (blog) and pictures +(photo's). And maybe a lot of other things. + +Have fun! diff --git a/links.txt b/links.txt new file mode 100644 index 0000000..3fb3201 --- /dev/null +++ b/links.txt @@ -0,0 +1,15 @@ +Links + +Security +-GPG handbook +-GPG keysigning + +Geocaching +-Geocaching.com +-OSM charts +-OSM charts for garmin devices +-Routing on OSM charts + +Scouting +-Scoutlink +-Jota Handboek diff --git a/photo/2011-09-25_4x4_rijden.txt b/photo/2011-09-25_4x4_rijden.txt new file mode 100644 index 0000000..7b01916 --- /dev/null +++ b/photo/2011-09-25_4x4_rijden.txt @@ -0,0 +1 @@ +4X4 rijden diff --git a/photo/2012-02-02_winterweer.txt b/photo/2012-02-02_winterweer.txt new file mode 100644 index 0000000..a18cc32 --- /dev/null +++ b/photo/2012-02-02_winterweer.txt @@ -0,0 +1 @@ +Winterweer in Bilthoven diff --git a/photo/2012-10-13_pollex_autoroute.txt b/photo/2012-10-13_pollex_autoroute.txt new file mode 100644 index 0000000..705946f --- /dev/null +++ b/photo/2012-10-13_pollex_autoroute.txt @@ -0,0 +1,4 @@ +Pollex autoroute + +Tijdens een stamopkomst is er een autorally gereden met diverse opdrachten en +hindernissen. diff --git a/photo/2012-11-11_bikkelweekend_uitzetten.txt b/photo/2012-11-11_bikkelweekend_uitzetten.txt new file mode 100644 index 0000000..5a5ce06 --- /dev/null +++ b/photo/2012-11-11_bikkelweekend_uitzetten.txt @@ -0,0 +1,3 @@ +Bikkelweekend uitzetten + +Foto's tijdens het uitzetten van het bikkelweekend in Heeze. diff --git a/photo/2012-11-30_zurich.txt b/photo/2012-11-30_zurich.txt new file mode 100644 index 0000000..e1cbaa8 --- /dev/null +++ b/photo/2012-11-30_zurich.txt @@ -0,0 +1,3 @@ +Zurich + +Een weekend langs in Zurich. diff --git a/photo/2012-12-29_oud_en_nieuw.txt b/photo/2012-12-29_oud_en_nieuw.txt new file mode 100644 index 0000000..5e624f4 --- /dev/null +++ b/photo/2012-12-29_oud_en_nieuw.txt @@ -0,0 +1,3 @@ +Oud en nieuw 2012-2013 + +In Kandersteg met de LG en PBG. diff --git a/scripts/awstats_cron b/scripts/awstats_cron new file mode 100644 index 0000000..3feb6c5 --- /dev/null +++ b/scripts/awstats_cron @@ -0,0 +1,42 @@ +#!/bin/bash + +# Variables +BASE_DIR=/opt/awstats +DATA_DIR=/opt/awstats-data/data +LOGS_DIR=/opt/awstats-data/logs +HTML_DIR=/opt/awstats-data/html +APACHE_LOG=/var/log/apache2 +CONFIG_DIR=$BASE_DIR/wwwroot/cgi-bin + +# Which servers have all the access.log logfiles +SERVERS='server1 server2 server3' + +# Make a list of all the sites that need parsing +SITES=`ls $CONFIG_DIR |egrep '^awstats.*\.conf$' |grep -v awstats.model.conf |sed -e 's/^awstats\.//' -e 's/\.conf$//'` + +# Start making a simple HTML page with all the sites +echo "
" > $HTML_DIR/index.html + +for s in $SITES; do + + # Copy the access logging to the local server + for i in $SERVERS; do + scp -q $i:$APACHE_LOG/$s/access.log.1.gz $LOGS_DIR/$i.$s.gz + done + + # Combine and sort the logfile's + $BASE_DIR/tools/logresolvemerge.pl $LOGS_DIR/*.$s.gz |gzip > $LOGS_DIR/$s.gz + + # Remove the server logfiles + rm $LOGS_DIR/*.$s.gz + + # Update the statistics + $BASE_DIR/wwwroot/cgi-bin/awstats.pl -config=$s -update + + # Remove the combined logfile + rm $LOGS_DIR/$s.gz + + # Write an entry in the HTML file for this website + echo "$s
" >> $HTML_DIR/index.html + +done diff --git a/scripts/sqlbackup b/scripts/sqlbackup new file mode 100644 index 0000000..996d41f --- /dev/null +++ b/scripts/sqlbackup @@ -0,0 +1,21 @@ +#!/bin/bash + +# Settings +MYSQL="$(which mysql)" +MYSQLDUMP="$(which mysqldump)" +GZIP="$(which gzip)" +MyUSER="sys_backup" +MyPASS="secretpassword" +DIR="/backup/sql" +NOW="$(date +"%Y-%m-%d")" + +# Get all the databases in your server +DBS="$($MYSQL -u $MyUSER -p$MyPASS -Bse 'show databases')" + +for db in $DBS +do + if [ "$db" != "information_schema" ]; then + FILE="$DIR/$db.$NOW.gz" + $MYSQLDUMP --routines -u $MyUSER -p$MyPASS $db | $GZIP -9 > $FILE + fi +done diff --git a/servers/graph.txt b/servers/graph.txt new file mode 100644 index 0000000..93b0280 --- /dev/null +++ b/servers/graph.txt @@ -0,0 +1,5 @@ +Graphs + + +-----+------+------+--------+--------+-----+-------+ + | 314 | Chip | Dale | Skippy | Slappy | IRC | Lists | + +-----+------+------+--------+--------+-----+-------+ diff --git a/servers/index.txt b/servers/index.txt new file mode 100644 index 0000000..56c4b54 --- /dev/null +++ b/servers/index.txt @@ -0,0 +1,22 @@ +Layout servers + + +---------+ + | | + | Router |---------+-----------+-----------+-----------+ + | | | | | | + +---------+ | | | | + | +---------+ +---------+ +---------+ +---------+ + | | | | | | | | | + Internet | Skippy | | Slappy | | IRC | | Lists | + | | | | | | | | | + | +---------+ +---------+ +---------+ +---------+ + | + | + +--------------+-----------+-----------+ + | | | | + | | | | + | +---------+ +---------+ +---------+ + | | | | | | | + | | 314 | | Chip | | Dale | + | | | | | | | + | +---------+ +---------+ +---------+ diff --git a/servers/status.txt b/servers/status.txt new file mode 100644 index 0000000..de595ec --- /dev/null +++ b/servers/status.txt @@ -0,0 +1,13 @@ +Server Status + + +--------+--------+ + | Server | Status | + +--------+--------+ + | 314 | Ok | + | Chip | Ok | + | Dale | Error | + | Skippy | Ok | + | Slappy | Ok | + | IRC | Ok | + | Lists | Ok | + +--------+--------+