Stick with me I will get to the Yahoo bit in a minute but you need to understand a few things first.
I would say one of my main motivations in life is avoiding boredom. I abhor boredom
From webster: to regard with extreme repugnance
I could not agree more. I loathe it.
There are various reasons for this not least of which is I have absolutely no reason to be bored. There are a million books I haven’t read, a thousand technologies I haven’t investigated a billions trees I haven’t seen, a million paths I haven’t trod and 6 billion people I haven’t met….. you get the point.
So when I am bored I have got to ask myself if I am really bored or am I just being stupid. That brings me to my other motivation. Eradicating my own ignorance, I do this with extreme prejudice. I do not consider myself stupid or ignorant but if there is one thing I do know I don’t know enough.
Now that you understand a bit more about what motivates me you know why I joined Yahoo. As I mentioned in the title working here is like drinking from a fire hose. The amount of stuff going on is staggering and the scale of everything is vast. It’s the perfect place for me.
Delete /dev/md0
If ever you make a mistake with software raid and you want to start from scratch by removing /dev/md0, the following command is a good place to start.
mdadm -S /dev/md0
Then create the array again as normal using something like
mdadm –create /dev/md0 –level=5 –raid-devices=3 /dev/sd[abc]1
Test::Harness Confused test output
If ever you get this error when using Test::Harness check to make sure that you are not printing anything that is interfering with it. See:
Test Anything Protocol
Test/Item/m_find_using_term_ids….ok 2/90Confused test output: test 2 answered after test 2
Test/Item/m_find_using_term_ids….ok 3/90Confused test output: test 3 answered after test 3
Test/Item/m_find_using_term_ids….ok 4/90Confused test output: test 4 answered after test 4
DegradedArray event
If you ever get one of these, count your lucky stars and get the array fixed. In my case I have lost one of the drives.
This is an automatically generated mail message from mdadm
running on debian
A DegradedArray event had been detected on md device /dev/md0.
Faithfully yours, etc.
P.S. The /proc/mdstat file currently contains the following:
Personalities : [linear] [raid1]
md0 : active raid1 hdc1[1]
78148096 blocks [2/1] [_U]
unused devices:
Debian NO_PUBKEY
If you ever get an error like this.
W: GPG error: http://non-us.debian.org stable/non-US Release: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY F1D53D8C4F368D5D
W: You may want to run apt-get update to correct these problems
The way I solved it was as follows. As root…
# apt-get install gnupg
# gpg –keyserver wwwkeys.eu.pgp.net –recv-keys F1D53D8C4F368D5D
# gpg –armor –export F1D53D8C4F368D5D | apt-key add –
# gpg –export F1D53D8C4F368D5D >> /etc/apt/trusted.gpg
# gpg –list-keys
Yahoo Slurp
Not sure if anyone else has noticed recently but Slurp has been doing a lot of of Spidering lately. I actually took extreme measures today and added a crawl delay to the site.
WWW::Mechanize Fun
I have been writing a test suite for a website recently and came upon the following error.
Illegal value ‘GBR’ for field ‘country_iso’ at /usr/local/share/perl/5.8.4/WWW/Mechanize.pm line 1232
This seemed strange to me at first but when I thought about it I was using the following code
$mech->select(“country_iso”, ‘GBR’ );
If the value i.e. “GBR” in my case is not a valid select option then obviously WWW::Mechanize or rather HTML::Form will throw an error. It was actually HTML::Form::ListInput that the error came from but this is a package declared in the HTML/Form.pm module.
SSH Connection Reset By Peer
If ever you see the following when using SSH and it all seems inexplicable.
Read from remote host www.somehwhere.com: Connection reset by peer
There may be a quick cure (caveat, your mileage may vary). Some routers, i.e. Linksys WRT54G will close a connecting that does not appear busy. So far I have found that if I add
ServerAliveInterval = 300
ServerAliveCountMax = 300
to my /etc/ssh/ssh_config file then everything is fine.
Basically we are send a message to the server every “ServerAliveInterval” seconds and if the client has not had a response after “ServerAliveCountMax” messages then the connection will disconnect. This makes the connection look active to hardware that thinks it’s doing you a favour by disconnecting idle connections.
see “man ssh_config” for more details.
I have also noticed the following method but have not tried it
echo 300 > /proc/sys/net/ipv4/tcp_keepalive_time
Packard Bell Store and Save
Their 400Gb 3500 model works a treat under Debian stable. It comes up as a scsi device when switched on. To see the device use dmesg and look for something like the following output.
sdc1
sd 13:0:0:0: Attached scsi disk sdc
sd 13:0:0:0: Attached scsi generic sg3 type 0
Finding solutions
In teams, to find a solution, create a shared problem.