Posts Tagged Linux

Tracking down io problems on your Linux box

Posted by on Tuesday, 16 June, 2009

I’m sure everyone has had problem at one time or another trying to figure out why your machine is going so slow, but nothing appears to be using the RAM or CPU at all.

The first option is to top ‘top’ and look for the line which has the ‘wa’

Cpu(s): 0.0%us, 0.0%sy, 0.0%ni, 96.7%id, 3.3%wa, 0.0%hi, 0.0%si, 0.0%st

mine says 3.3%wa – this is the wait time trying to write to disk. Now from there you can install the package (under most distros) called ‘sysstat’

sysstat – sar, iostat and mpstat – system performance tools for Linux

This contains several tools for trying to track down whats using the disk to write lots.

iotop – simple top-like I/O monitor. This is installed and can show you realtime whats writing to disk at any time and using what load
iostat – Report Central Processing Unit (CPU) statistics and input/output statistics for devices, partitions and network filesystems (NFS).
sar – Collect, report, or save system activity information.

If there’s plenty of cache/buffers, and sar -W 1 0 shows lots of zeroes (and possibly the occasional blip) then the disk is getting thrashed, but it’s not swap.

Running iostat -dx 1 will show you all the partitions and how hard they’re working (look at %util). If %util is consistently at or around 100 for any partition of disk, you can definitively say that the disks are getting thrashed.

If the disk has high %util, but the actual throughput (rsec/s and wsec/s) is pretty low, then it’s possible you’ve got a hardware fault or RAID rebuild going on. A hardware error might show up on a smartctl run (smartctl -a /dev/sda or whatever), looking at things like the reallocated sector count, but SMART isn’t real, well, smart, so don’t trust it too much. A RAID rebuild should show up in your RAID management (you are monitoring your hardware RAID setup, aren’t you?). A software RAID rebuild will be shown in /proc/mdstat. (cat /proc/mdstat )


Throttle SSH Connections

Posted by on Friday, 22 May, 2009

I run this on my VPS to throttle SSH connections from dictionary attacks (OR disable keyboard based auth and alow only shared keys. No key, no access!).

Configure your services properly rather than relying on a firewall to secure you against lazy configurations. This is all I use IPTables for.

/etc/network/iptables.conf

#!/bin/bash
# iptables script.
#
# These lines are here in case rules are already in place and the script is ever rerun on the fly.
# We want to remove all rules and pre-exisiting user defined chains and zero the counters
# before we implement new rules.
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
/sbin/ip6tables -F
/sbin/ip6tables -X
/sbin/ip6tables -Z
# Drop all IPv6 connections.
/sbin/ip6tables -P INPUT DROP
# Create SSH chain.
/sbin/iptables -N SSH
/sbin/iptables -A SSH -m state --state NEW -m recent --update --seconds 600 --hitcount 3 -j DROP
/sbin/iptables -A SSH -p tcp -m state --state NEW -m recent --set
/sbin/iptables -A SSH -p tcp -j ACCEPT
# Jump ssh trffic to SSH chain.
/sbin/iptables -A INPUT -p tcp --dport 22 -j SSH

Installing Fonts

Posted by on Friday, 22 May, 2009

Best monospaced font ever is Consolas from Microsoft. It’s installed with the Office 2007/03 Compatibility Pack and with Office 2007. So you’ll need an instance of Windows with Office 2003/07 to get this font, it also comes with Visual Studio I think (as that is what this font was designed for, people looking at code all day)..

I also installed this font in Xubuntu for use as my terminal font. Doesnt look quite as nice on Linux/Xubuntu as it does on Windows, but it was still the one I liked the most for my terminal.

For TrueType fonts, make a directory and copy the .ttf files:

/usr/share/fonts/truetype/<font_name>

Rebuild the font cache thing:

fc-cache -f -v