Success is about speed and efficiency
Easiest way using the Ubuntu/Debian package nautilus-image-converter:
sudo apt-get install nautilus-image-converter
This context menu script can resize to 3 predefined sizes (more can be added) and it asks to put the resized pics in a folder or rename them. Put...
cd ~/Downloads git clone git://github.com/maxcutler/python-wordpress-xmlrpc.git cd python-wordpress-xmlrpc python setup.py install
.ipk file is basically just a
.tar.gz file. So you can unpack it using the
tar xvfz some-package.ipk # or with newer tar versions: tar -xf some-package.ipk
Some .ipk files may also be of a different archive format so that you need the following command to unpack:
ar x some-awesome-package.ipk
iSCSI is a software system (may be implemented in hardware) to mount remote block level devices locally. It does not provide a remote filesystem and thus is independent of the filesystem you might want to use on top of it.
iSCSI Target : PC that offers a block device to be...
The goal of this article is to describe how to setup your own DNS server to serve the domain name service entries for a TLD (
example.com). In the last part of the article I describe how to increase the speed of the system and the security in...
This can be solved by simply installing the package
su apt-get install syslogd
First, get the script
download_speed-to-fritz.sh. Run it and install all required tools.
cd ~/Downloads wget https://freetzlinux.svn.sourceforge.net/svnroot/freetzlinux/download_speed-to-fritz.sh.tar.gz tar -xf download_speed-to-fritz.sh.tar.gz ./download_speed-to-fritz.sh
Exit the menuconfig and the firmware creation will begin.
At first, I...
Did you ever want to create a backup of both, your drupal 7 installation files and the associated mysql database? Here is how you can do it with almost no configuration.
#!/bin/sh ############################################################################# # ...
Say you have a bunch of .tar.gz files, each representing a certain version of a program source code. If you want to compare their contents and see what changed, git would help a lot.
So I wrote a script that would do the work for me and create a repository for...
mod_pagespeed is an apache2 module made by Google to improve the speed of website delivery.
Download of the 32 bit version:
Download of the 64 bit version:
Installation of the package:
dpkg -i mod-pagespeed-beta_current_*.deb apt-get -f install
If you like, change
/etc/apache2/mods-available/pagespeed.conf. according to the manual Using...
To install git-vim run:
cd ~/Downloads git clone https://github.com/myw/git-vim.git cd git-vim # by default, the Makefile is set up for Mac OS. If you use a different OS change it using: cat Makefile | sed "s|#INSTALL=install|INSTALL=install|g" | grep -v ginstall > Makefile # then install the plugin: make install
This will copy the following files to ~/.vim:
SMTP-Relay-Server = Mail-Relay-Server = Smarthost
A slim smtp forwarding tool can be installed via the package
ssmtp (it provides
# apt-get install ssmtp
The configuration file
# The person who gets all mail for userids < 1000 # Make this empty to disable rewriting. root=postmaster # The place where the mail goes. The...
Synthesis SyncML-Client http://synthesis.ch/prod_client.php
Conduit, an open source Gnome program:
Works well! I use it on Ubuntu Linux 10.10 maverick.
Backup Goo, Works on Mac, Win, Linux; 14 days trial version, 10 EUR afterwards:
Cloud based solution (using Amazon S3):
If you run a Piwik installation behind an nginx reverse proxy, you have to change a bit of your configuration because the remote IP has changed to that of the nginx reverse proxy.
For example if your nginx reverse proxy configurations includes:
proxy_set_header HOST $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
The SQLAlchemy SQL Toolkit and Object Relational Mapper is a comprehensive set of tools for working with databases and Python. It has several distinct areas of functionality which can be used individually or combined together. Its major API components, all public-facing, are illustrated below:
+-----------------------------------------------------------+ | ...
documentation with user comments: http://www.postgresql.org/docs/8.4/interactive/index.html
sudo apt-get install postgresql
pgAdmin III is a handy GUI for PostgreSQL, it is essential to beginners. To install it, type at the command line:
sudo apt-get install pgadmin3
Setup: Now you have to set the password for the admin user...
Recently I found an interesting comment on an article about Fedora 16 maybe using btrfs as default file system: The author Vanger explained his current hard disk / partiton setup on a server and how he hopes to get a more efficient system with btrfs. More than the outlook...
To set the screen resolution of gdm when you don't use a proprietary graphics card driver, go to System → Preferences → Monitors, choose the desired resolution, test it (by applying it) and click on Make Default.
apt-get install libapache2-mod-fcgid php5-cgi apache2-common apache2-mpm-worker apache2-suexec a2enmod fcgid a2enmod suexec
If you want the document root to be something different to
/var/www, you need
apache2-suexec-custom instead of
Now let's create a user PHP will run as and create the directory structure for our new site.
#!/bin/bash PHPUSER="zapf-www" WEBSITE="zapfev.de" SERVERADMIN=vorstand@$WEBSITE basepath="/var/www/$WEBSITE" apt-get update apt-get install -y libapache2-mod-fcgid...
If you want to know who is behind an IP address (or a domain name) you should use the command line tool
whois, which Mac OS X, most Linux and BSD distributions ship. For example, if you want to get information on the IP 10.8.0.1:
And the output looks...
The built in possibility on Ubuntu / Debian is to change the configuration file
RUN=yes CONF_DIR=/etc/lxc CONTAINERS="vm0 vm1"
In this example,
vm1 are LXC configuration files stored or linked in
/etc/lxc. These containers will be started at startup.
Instead of the init script shipping with Ubuntu and...
update-manager with the option
-d for development release:
Or if you don't want run that gui (because you are running an Ubuntu server) then you have to change your apt sources:
sudo sed -i 's/OLD_VERSION/NEW_VERSION/g' /etc/apt/sources.list sudo apt-get dist-upgrade --fix-missing # you also might want to run the following lines: sudo...
noatimeif you are brave) for the SSD partitions in
browser.cache.disk.enableto false in about:config.
To clear the cache / cached memory (free pagecache, dentries and inodes) on Ubuntu or Debian you can write the value
# You should be the superuser ('root') or become the superuser: sudo su # Now sync filesystem and clear the caches: sync && echo 3 > /proc/sys/vm/drop_caches
Error when trying to upgrade the mysql tables using
root@fooserver:/root# mysql_upgrade Looking for 'mysql' as: mysql Looking for 'mysqlcheck' as: mysqlcheck Running 'mysqlcheck' with connection arguments: '--port=3306' '--socket=/var/run/mysqld/mysqld.sock' mysqlcheck: Got error: 1045: Access denied for user 'root'@'localhost' (using password: NO) when trying to connect FATAL ERROR: Upgrade failed
The solution is to run...
LXC application containers are good tools to isolate single applications. Instead of directly creating them using
lxc-create you can also create them with libvirt /
If you have dnsmasq installed and running globally you will get into trouble running
net-start default. So follow the advice on http://mytipsandtricson.blogspot.com/2010/12/kvm-failed-to-start-network-default-in.html.
Now let's create...
e107 is a nifty content management system for websites. It has lots of extensions and is ideally suited for portal websites.
Installation log for e107 on Ubuntu 10.10:
sudo mkdir -p /var/www/e107 cd /var/www/e107 sudo chown $USER ./ wget http://sourceforge.net/projects/e107/files/e107/e107%20v0.7.24/e107_0.7.24_full.tar.gz/download tar -xf download echo "CREATE DATABASE e107;" | mysql -u root -p echo "GRANT all ON e107.*...
If you work with multiple users on the same Linux computer remotely you might want to communicate with other users that are logged in. This could be the case for example if their processes slow down the computer and you want to ask them about it. A simple way to...
The blog post describes how to install the firewall distribution pfSense based on FreeBSD in a kernel based virtual machine (KVM) on Ubuntu 10.10.
Specialities: you either need two NICs or a single one with VLANs as pfSense requires you to define at least one WAN and one LAN interface.
I was not successfull creating a bootable USB stick for the netbook using Mac OS X by following the steps described on the Ubuntu download page.
What worked: I started a virtual machine with Ubuntu and connected the USB stick to it. Then I ran the Startup Disk Creator. I...
Install KVM and libvirt:
sudo apt-get install kvm virtinst libvirt-bin
If you also want the graphical helpers (viewer via vnc and a manager of the installed virtual machines) install:
sudo apt-get install virt-viewer virt-manager
Now set up the connection to the local KVM hypervisor:
sudo virsh connect qemu:///system
Get the installation DVD (for...
sudo apt-get install lvm2
To create a logical volume on a loop device (
/dev/loop1 stored in ~/.lvmcontainer):
dd if=/dev/zero of=~/.lvmcontainer bs=512 count=2048000 sudo losetup /dev/loop1 ~/.lvmcontainer sudo pvcreate /dev/loop1 # initialize /dev/loop1 as a physical volume sudo vgcreate volg1 /dev/loop1 # create the volume group volg1, consisting of /dev/loop1 sudo lvcreate -L 48M -n...
The btrfs file system is the future of linux file systems.
sudo apt-get install btrfs-tools sudo mkfs.btrfs /dev/sdXY
It's called loop device not loopback device (which is related to networking)!
To create a file with 50 MiB of 0x00 (51,200 blocks with 1024 byte each = 50 MiB) and create the block device
/dev/loop1 from it:
dd if=/dev/zero of=~/.lvmcontainer bs=1024 count=51200 sudo losetup /dev/loop1 ~/.lvmcontainer ## and to detach /dev/loop1 again...
In advanced computing you may encounter situations where you want to bind multiple IP addresses on one physical network interface. This post describes how to do it with Ubuntu Linux (should work with Debian too).
This method is temporary only as the additional IP address will be gone after...
To automatically install updates on Ubuntu / Debian you can install the package cron-apt:
sudo aptitude install cron-apt
/etc/cron-apt/config you can set up your email address for notifications by setting the value for
The backup of a webserver is not always as straightforward as the backup of your computers at home or just a single website etc. This blog states how I do it.
#!/bin/bash ### set to the server address of your server: serveraddress=example.com ## login as root and create the file /serverbackup.tar.gz...
The older approach involves the creation of an ext3 filesystem on
/dev/ram0 (a part of the RAM):
sudo mke2fs -t ext3 -m 0 -q /dev/ram0 sudo mkdir -p /media/ram0 sudo mount /dev/ram0 /media/ram0 sudo chown USERNAME /media/ram0 sudo chmod u+rwx /media/ram0
The newer and easier method to create a ramdisk is to make use...
LXC (Linux Containers) is an operating system-level virtualization method for running multiple isolated Linux systems (containers) on a single control host. LXC does not provide a virtual machine, but rather provides a virtual environment that has its own process and network space. It is similar to a chroot, but offers...
All you have to do is to create a folder for your child theme in
wp-content/themes/ and in there create a
style.css file like this one (Template):
/** * Theme Name: Suffusion modified by Philipp Klaus * Template: suffusion * Description: a customized version of the Suffusion theme. ...
To make a backup of the saved passwords in Ubuntu just make a backup of the folder
~/.gnome2/keyrings/. This is where Gnome stores its password keyrings (named something like
You can also export all your passwords from the Gnome Keyring using the python module keyring as described in
cd /var/www/ wget http://wordpress.org/latest.tar.gz tar -xf latest.tar.gz rm latest.tar.gz
Markdown is a great markup language for publications such as technical blogs as it keeps the structure of the text very readable, is fast...
Here is a shell / Bash script that calculates Pi to 1000 digits:
bc -l <<< 'scale=1000; 4*a(1)' # which is shorter than the equivalent echo "scale=1000;4*a(1)" | bc -l
One more calculation using
bc: the golden ratio to 10 digits:
bc -l <<< 'scale=10;(1 + sqrt(5))/2'
boinccmd --join_acct_mgr bam.boincstats.com user PASSWORD
If you get Authorization failure: -155 errors all the time, search for files named
gui_rpc_auth.cfg and delete them if they are outside the
sudo apt-get install ec2-api-tools ec2-describe-regions cat <<'EOM' >~/.bashrc ######## modifications by Philipp Klaus: export EC2_URL=http://ec2.eu-west-1.amazonaws.com export EC2_PRIVATE_KEY=$HOME/.ssh/amazon-x509_pk-ODKN47NWKLVFADJVDU2PJUEIFHLZSGFJ.pem export EC2_CERT=$HOME/.ssh/amazon-x509_cert-ODKN47NWKLVFADJVDU2PJUEIFHLZSGFJ.pem export JAVA_HOME=/usr/lib/jvm/java-6-openjdk/ EOM ec2-authorize default -p 22 ec2-run-instances ami-29b0855d --instance-type t1.micro --region eu-west-1 --key mykey ec2-add-keypair ec2-keypair > amazon-ec2-keypair.pem chmod 600 amazon-ec2-keypair.pem ec2-describe-instances
you may now log in using
ssh -i ./amazon-ec2-keypair.pem firstname.lastname@example.org
T get the boot_info_script, run:
cd ~/Downloads wget http://sourceforge.net/projects/bootinfoscript/files/bootinfoscript/0.55/boot_info_script055.sh/download -O boot_info_script.sh
To execute the boot_info_script and thus get information about your bootable partitions etc., run:
sudo bash ~/Downloads/boot_info_script.sh
Suggest you have data in a hex format that you want to convert back to binary (like an MBR) with newline characters in the middle:
eb58904d53444f53352e300002082200 0200000000f800003f00ff0000000000 0000f000e33b00000000000002000000 01000600000000000000000000000000 00002918d163804e4f204e414d452020 2020464154333220202033c98ed1bcf4 7b8ec18ed9bd007c884e028a5640b408 cd137305b9ffff8af1660fb6c640660f b6d180e23ff7e286cdc0ed0641660fb7 c966f7e1668946f8837e16007538837e 2a007732668b461c6683c00cbb0080b9 0100e82b00e94803a0fa7db47d8bf0ac 84c074173cff7409b40ebb0700cd10eb eea0fb7debe5a0f97debe098cd16cd19 6660663b46f80f824a00666a00665006 53666810000100807e02000f852000b4 41bbaa558a5640cd130f821c0081fb55 aa0f851400f6c1010f840d00fe4602b4 428a56408bf4cd13b0f9665866586658 6658eb2a6633d2660fb74e1866f7f1fe c28aca668bd066c1ea10f7761a86d68a 56408ae8c0e4060accb80102cd136661 0f8254ff81c300026640490f8571ffc3 4e544c44522020202020200000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000000000000d0a5265 6d6f7665206469736b73206f72206f74 686572206d656469612eff0d0a446973 6b206572726f72ff0d0a507265737320 616e79206b657920746f207265737461 72740d0a0000000000accbd8000055aa
Like this you can convert it back to its binary content:
cat datafile.txt | echo -n -e $(tr -d '[:space:]' | sed 's/../\\x&/g')
ghostscript -dNOPAUSE -dBATCH -r300 -sDEVICE=pnggray -sOutputFile="test.png" "TestFile.PDF"
Problem during run of
Skipping X configuration because X drivers are not included.
This fixed it:
sudo apt-get remove xserver-xorg-video-vmware sudo apt-get install xserver-xorg-video-vmware
Sometimes your fonts can get messed up when you use Ubuntu for more than one release cycle. So to reset the proper fonts used with todays distributions of Ubuntu without creating a new user account go to Preferences → Appearance Preferences.
For all Fonts choose size 10. Chose
Sans for all but...
sudo aptitude install sun-javadb-client wget http://www.willuhn.de/products/jameica/releases/1.10/jameica/jameica-linux.zip # or if you are on a 64bit OS: wget http://www.willuhn.de/products/jameica/releases/1.10/jameica/jameica-linux64.zip wget http://www.willuhn.de/products/hibiscus/releases/1.12/hibiscus.zip sudo unzip jameica-linux.zip...
This commands gets you the latest skin for Mediawiki:
svn checkout http://svn.wikimedia.org/svnroot/mediawiki/trunk/phase3/skins
But be reminded that you will only be able to use the plugin with Mediawiki 1.16 and above so just upgrading to the latest Mediawiki release is usually enough to get the skin. I could not get...
mysql -u dbusername -p
now you are on the MySQL prompt. So to change all
option_value in the table
en_US where the
USE dbname; SHOW TABLES; SELECT * from firestats_firestats_options; UPDATE firestats_firestats_options SET option_value="en_US" where option_key="current_language";
Pandoc is a tool to convert documents from one format to another and it supports quite some formats! You can test it and convert small docs online: http://johnmacfarlane.net/pandoc/try
Supported input formats include
Note that the rst reader only parses a subset of reStructuredText syntax. (The latex and html input readers...
Here is how you can install the TaskFreak! System:
# Get the Taskfreak bundle from http://www.taskfreak.com/original tar xzf /tmp/taskfreak-multi-mysql-0.6.tgz -C /var/www mv /var/www/taskfreak-0.6.4/ /var/www/taskmanagement
Then create the database:
echo "CREATE DATABASE taskfreak;" | mysql -u root -p echo "GRANT all ON taskfreak.* TO 'taskfreak'@'localhost' IDENTIFIED BY 'passwordXYZ';" | mysql...
sudo add-apt-repository "deb http://download.virtualbox.org/virtualbox/debian maverick non-free" wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add - sudo apt-get update sudo apt-get install virtualbox-3.2
I got an error, so I had to run
sudo apt-get clean
and delete the following line from my
deb-src http://download.virtualbox.org/virtualbox/debian maverick non-free
Starting with 10.04 lucid and also on 10.10 maverick you should switch over from scim to the ibus input method. This is described in the links stated below.
Tools you might want and/or need:
sudo add-apt-repository ppa:ubuntu-wine/ppa sudo apt-get update sudo apt-get install wine1.3
This blog post describes how to mount the T-Online Mediencenter via WebDAV on Ubuntu Linux and on Windows 7 (64bit).
First, install the required package davfs2:
sudo add-apt-repository ppa:mms-prodeia/ppa sudo aptitude update sudo aptitude install qlandkartegt
For an up-to-date version of the information about the gedit Markdown plugin go to the new blog post Markdown for the Gedit Text Editor on Ubuntu 11.04.
If you frequently have to create Markdown documents, you might want your text editor of choice to support you. M Fleury developed...
AqBanking is used as a backend for gnucash and therefore very mature. It features a CLI to query CSV files of transactions and more.
While it is very convenient to have all mail available online and it is cheap (Google Mail offers a lot of storage for free), you might sleep better at night if you were sure to have a copy of you mail on your own hard disk drive at home. offlineimap...
This blog post has grown to large. Please refer to the more detailed posts on IPv6 tagged with ipv6:
Arecord: normal domain to ip address resolution
MXrecord: email server lookup, must resolve to a server address that is resolved to an IP...
Install the command line program vnstat, a network traffic counter, on Ubuntu:
sudo aptitude install vnstat
Set up vnstat for your (e.g. dial-up:
ppp0) internet connection:
sudo vnstat -u -i ppp0
cd ~/Downloads git clone git://github.com/bjd/vnstat-php-frontend.git sudo cp -R vnstat-php-frontend /var/www/vnstat
change the configuration...