Archive for December, 2009
Total Rsync Progress
If you use rsync frequently, you might be aware of the fact that rsync doesn’t show overall or total transfer statistics when you’re syncing directories recursively. Even options like ‘–progress’, ‘–stats’ and ‘-vv’ won’t do that. I was searching for that, was about to write a script to run in dry-run mode and measure an overall rsync progress but found a patch here written by Graeme Humphries. This patch later was incorporated into latest dev version 3.1dev downloadable here at http://samba.anu.edu.au/ftp/rsync/dev/nightly/ with an option invokable by ‘–info=progress2′.
Excerpts from the man pages:
There is also a --info=progress2 option that outputs statistics based on the whole transfer, rather than individual files. Use this flag without outputting a filename (e.g. avoid -v or specify --info=name0 if you want to see how the transfer is doing without scrolling the screen with a lot of names. (You don't need to specify the --progress option in order to use --info=progress2.)
So, I downloaded, compiled and installed this dev version and guess what now, there’s no creepy scrolls in shell console filling up the screen with individual file progress.
Yea, I know Red Hat and CentOS are slow in updating their packages repository but lets hope when this build is final, Dag’s repo may have an rpm for it.
Easiest way to create selfsigned certificates
For Linux its going to be with tool ‘genkey’ – a part of crypto-utils package available in Red Hat distros.
# genkey servername
And for Windows, easiest way to do is with SelfSSL available in IIS 6.x Resource Tools.
ASCII Art in Linux
I’m fond of two ascii art tools in Linux.
- linux_logo
- figlet
Both of these are available in RPMForge/Dag’s repository. Second one, figlet draws the ascii art for any text that is input. It has a lot of font options available (see man for figlet and figlist).
Installing HPLIP 3.9.10 on CentOS 5.4 for newer printers (HP LaserJet M1120 MFP)
CentOS 5′s base repository has an older version of HPLIP, something about ’1.6.7′ or so which of course is not adequate to get newer HP printers specially the LaserJet series, to get to work. Now the natural way to have this installed, you may think is to compile it from source – if you’re thinking that then no, that won’t help out! Even after fulfilling all of the required dependencies. I got about almost 14 errors when running hp-check utility after compiling, got’em reduced to 10 but no far lesser than that if you know what I mean.
error: NOT FOUND! This is a REQUIRED/RUNTIME ONLY dependency. Please make sure that this dependency is installed before installing or running HPLIP. error: NOT FOUND! This is a REQUIRED/RUNTIME ONLY dependency. Please make sure that this dependency is installed before installing or running HPLIP. warning: NOT FOUND! This is an OPTIONAL/RUNTIME ONLY dependency. Some HPLIP functionality may not function properly. warning: NOT FOUND! This is an OPTIONAL/RUNTIME ONLY dependency. Some HPLIP functionality may not function properly. error: NOT FOUND! This is a REQUIRED/COMPILE TIME ONLY dependency. Please make sure that this dependency is installed before installing or running HPLIP. error: Could not access file: No such file or directory error: 10 errors and/or warnings. ----------- | SUMMARY | ----------- Please refer to the installation instructions at: http://hplip.sourceforge.net/install/index.html
Pretty insane though, many of these dependencies were already installed. I would assume that this would be the reason why hplip is not under active development for CentOS and why its not current under CentOS as I saw quite a few HP’s devs and techs saying a big “no” to this community based distribution when people complained on their Launchpad about these compilation errors. Plus, the relative hplip installation issues I found on CentOS’ forum.
After being in disappointed (oops wth) situation, I tried running the RHEL5′s rpm (can be downloaded from hplip’s site) on it after removing the source installed version, but it too gave the dependency errors which I hoped I would resolve and I did later on.
Installing……
# rpm -ivh /Raid/hplip-3.9.10_rhel-5.0.i386.rpm Preparing... ########################################### [100%] file /usr/bin/hpijs from install of hplipfull-3.9.10-0.i386 conflicts with file from package hpijs-1.6.7-4.1.el5.4.i386 file /usr/lib/libhpip.so.0.0.1 from install of hplipfull-3.9.10-0.i386 conflicts with file from package hpijs-1.6.7-4.1.el5.4.i386 file /usr/lib/sane/libsane-hpaio.so.1.0.0 from install of hplipfull-3.9.10-0.i386 conflicts with file from package libsane-hpaio-1.6.7-4.1.el5.4.i386
So, I decided to remove problematic hpijs
Package Arch Version Repository Size Removing: hpijs i386 1:1.6.7-4.1.el5.4 installed 588 k Removing for dependencies: libsane-hpaio i386 1.6.7-4.1.el5.4 installed 94 k sane-backends i386 1.0.18-5.el5 installed 3.1 M sane-backends-devel i386 1.0.18-5.el5 installed 27 k sane-backends-libs i386 1.0.18-5.el5 installed 5.2 M xsane i386 0.991-5.el5 installed 4.5 M Transaction Summary Install 0 Package(s) Update 0 Package(s) Remove 6 Package(s)
But realised soon that it also removed libsane sub-dependency as well.
# rpm -ivh /Raid/hplip-3.9.10_rhel-5.0.i386.rpm error: Failed dependencies: libsane.so.1 is needed by hplipfull-3.9.10-0.i386
Because installing sane would also install hpijs and other conflicting stuff as well so the solution here was to remove problematic packages without ‘removing’ any dependencies needed.
[root@ToughGuy ~]# rpm -ivh /Raid/hplip-3.9.10_rhel-5.0.i386.rpm Preparing... ########################################### [100%] file /usr/bin/hpijs from install of hplipfull-3.9.10-0.i386 conflicts with file from package hpijs-1.6.7-4.1.el5.4.i386 file /usr/lib/libhpip.so.0.0.1 from install of hplipfull-3.9.10-0.i386 conflicts with file from package hpijs-1.6.7-4.1.el5.4.i386 file /usr/lib/sane/libsane-hpaio.so.1.0.0 from install of hplipfull-3.9.10-0.i386 conflicts with file from package libsane-hpaio-1.6.7-4.1.el5.4.i386 # # rpm -ev --nodeps libsane-hpaio # rpm -ivh /Raid/hplip-3.9.10_rhel-5.0.i386.rpm Preparing... ########################################### [100%] file /usr/bin/hpijs from install of hplipfull-3.9.10-0.i386 conflicts with file from package hpijs-1.6.7-4.1.el5.4.i386 file /usr/lib/libhpip.so.0.0.1 from install of hplipfull-3.9.10-0.i386 conflicts with file from package hpijs-1.6.7-4.1.el5.4.i386 # # rpm -ev --nodeps hpijs # # rpm -ivh /Raid/hplip-3.9.10_rhel-5.0.i386.rpm Preparing... ########################################### [100%] 1:hplipfull ########################################### [100%] #
Concluding the overall steps:
# yum install cups cups-devel ghostscript* PyQt xsane -y # Download and install hplip-3.9.10_rhel-5.0.i386.rpm from http://hplipopensource.com/hplip-web/install_wizard/index.html choosing RHEL5. # rpm -ev --nodeps libsane-hpaio # rpm -ev --nodeps hpijs # rpm -ivh hplip-3.9.10_rhel-5.0.i386.rpm # Reboot the system if you're lucky enough, you'll see no errors # reboot # system-config-printer
And configure the printer now as usual. Just out of curiosity, this was my XenServer where I installed it (yea I know it would sound funny) and I got scanner (LaserJet M1120 is dual scanner and printer) working fine as well with xsane. Check it out
NOTE: If this post helped you out or provided you with ways of troubleshooting, feel free to say a little thanks
Cats in an international airport!
Just came across this snap in my cell’s pic gallery which I took at Zia Intl. Airport. Funny!

Raid tricks
Posted by Abbas in Uncategorized on December 16, 2009
Increasing the rebuild speed
Sometimes when you’re quite lazy or bored and don’t like the noticeable amount of free resources on your server, you may like to increase the raid building and resyncing process speed.
# echo 250000 > /proc/sys/dev/raid/speed_limit_max
# echo 250000 > /proc/sys/dev/raid/speed_limit_min
And this would spin up the hards faster to their maximum extent saving almost half of the time!
Defaults were:
# cat /proc/sys/dev/raid/speed_limit_max
200000
# cat /proc/sys/dev/raid/speed_limit_min
1000
And looks like my hards have 100M/s speed.
#hddtemp /dev/sda
/dev/sda: ST3750330AS: 31°C
# hdparm -t /dev/sda
/dev/sda:
Timing buffered disk reads: 280 MB in 3.01 seconds = 93.09 MB/sec
Checking and repairing
The larger the hard drive is the greater the probability of having its blocks corrupted. Its better to check for consistency against any bad blocks or md superblocks.
# cat /sys/block/md0/md/sync_action
idle
# echo check > /sys/block/md0/md/sync_action
And if there are any, repair them.
# echo repair > /sys/block/md0/md/sync_action
Setting up RAID alerts to send emails about any errors
Red Hat family distros come with built in service daemon mdmonitor which runs ‘mdadm –monitor’ in a daemon mode.
Remember to add “DEVICE partitions” or partitions being components of an md array to top of file /etc/mdadm.conf. Monitoring all RAID events and changing default email template Last edited on: Tue Mar 9 11:41:38 PST 2010
# mdadm --detail --scan >> /etc/mdadm.conf
# echo "MAILADDR some-email-address" >> /etc/mdadm.conf
# chkconfig mdmonitor on
# service mdmonitor restart
Added the two new tweaks.
Mail from root, root and root! :>
I’m sometimes pretty sick of getting emails from ‘root’ reporting crons, updates, errors and rest of things I would usually use daily in any Linux machine. My eyes just get sore when I see email from root in all of my email clients specially Gmail. Perhaps that’s because I’m fed up of seeing root everywhere and that’s why I’ve an alias for root to forward all these rootish emails to one of my email addresses. But that’s just not enough as I actually want to see a humane human name as a sender just instead of root :>
To add to it, this just becomes more anguish when common, rather I would say major, Linux applications suck in changing the default sender address off from ‘root’ (although some apps like ‘exim -f’ and mutt having SET FROM defined in ~/.muttrc allow you to change sending address while emailing from command line but this isn’t what I needed). And so called mighty default MTA, sendmail just brings more panic to it when trying to change it during an in-mail transport (btw, I already dislike sendmail mainly cause of its sluggishness during startup and restart)! As I really had to do something about it and I already knew that Exim’s address rewriting can be helpful here so after installing it and changing default MTA with ‘alternative –config mta’ I added a quick rewrite at transport.
$ grep -A 5 remote_smtp /etc/exim/exim.conf | tail -5 driver = smtp headers_rewrite = root@* some-email-address@example.com fsr
This worked but didn’t change the FROM field’s name as expected. I tried combinations of different settings including the rewrite tag ‘F’ but the FROM envelop address kept showing the original sender root. I was searching till I stumbled upon http://www.exim.org/exim-html-2.00/doc/html/spec_32.html#SEC671 where it states the FULL ‘from’ envelop address is changed with ‘w’ tag and allows to have a new sender name (RFC 822) to be configured. So I added.
$ grep -A 5 remote_smtp /etc/exim/exim.conf | tail -5 driver = smtp # Adding to rewrite the stupid root@ FROM field which I hate headers_rewrite = root@* "Abbas <some-email-address@example.com>" fsrw return_path = some-email-address@example.com
And boo you naughty (!) root
![]()
Redundant customized XenServer
I just finished setting my home XenServer making it fully redundant, mirrored and backup’ed. Thought, I would share what’s on it
- Raid1 setup on boot, grub as well as VM storage repository. If one of the hard goes down, it’ll boot from other one.
- Samba installed to have a share setup in a raid array of 700GB
- Raild alerts are configured to email me whenever there’s any issue
- Smartmontools are running to make sure that hard disks are healthy and have emails alerts configured as well.
- Auto on-the-fly backup of all virtual machines without shutting them off, every night at 1am keeping the two most recent backups of VMs all the time.
Error 0x800706d5 upon adding a host to NLB Cluster on Windows
Is this error freaking you out upon adding a new or second host to your existing set of clusters in Windows Network Load Balance Manager? Well, it always does somehow depending upon the dns and the way of addition being followed

0x800706d5 NLB Error
To fix, make sure:
1. The host you’re adding, your DNS server can resolve its FQDN/Computer name or you’ve a proper entry of it setup in Windows hosts file. This also means that a proper DNS suffix is setup if its a FQDN under Computer name properties.
2. And you’re logging in to this dialog box using full computername i.e. “computername/administrator” instead of merely using computername.
OR
Just in case if you prefer to do things manually like I usually do then this would have already set you free from catchy Windows wizards








Recent Comments