RT @hackerspacegr Σήμερα στις 19.00: The Hackerspace Show Episode 1 http://goo.gl/zpd1i
benchmark - find & delete http://ur1.ca/58ylc
I usually use find to search for files and analyze the output.
Reading the manual page i learned about nouser & nogroup test expressions.
So i’ve tried some test to find the quicker (or a better way) to remove files with find.
First, lets create a demo dir and a lot of files
# cp -ra /usr /usr.test
# chown -R 10101.10101 /usr.test
How many files do we have ?
# time find /usr.test/ -xdev | wc -l
124298
real 0m0.575s
user 0m0.243s
sys 0m0.363s
Ok, 124.298 files are a lot!
If i want to delete the entire directory via rm, the running time will be:
# time rm -rf usr.test/
real 0m5.883s
user 0m0.287s
sys 0m5.063s
5.88 seconds !
A walk through entire tree path:
# time find /usr.test/ -xdev -nouser > /dev/null
real 0m6.480s
user 0m2.763s
sys 0m3.660s
6.48 secs. It’s faster to remove them!
We now have a base to compare our results.
We will try 3 methods:
a. -delete find option
b. -exec find option
c. xargs via pipe
First Method
# time find /usr.test/ -xdev -nouser -delete
real 0m12.739s
user 0m2.826s
sys 0m9.513s
12.74 secs. Thats the twice amount of time
Second Method
# time find /usr.test -xdev -nouser -exec rm -rf {} ;
real 0m6.307s
user 0m0.253s
sys 0m5.516s
6.3 secs. Same as rm (that was expected by the way).
Third Method
# time find /usr.test/ -xdev -nouser | xargs rm -rf
real 0m4.666s
user 0m1.117s
sys 0m3.426s
4.66 secs!
So xargs is the faster way for the above methods
color daemon http://ur1.ca/58in1
RT @meskarune Poll: What Linux distro do you use? http://ur1.ca/56ydw
voted for “Arch Linux“
voted for “Hell yeah!“
Εισαγωγικά μαθήματα Linux
( εγκατάσταση / γνωριμία με το λειτουργικό / γνωριμία με την γραμμή εντολών )
Κάθε Τρίτη στον χώρο του hsgr από τις 17.00 μέχρι τις 20.00 θα
πραγματοποιούνται παρουσιάσεις γύρω από το λειτουργικό σύστημα Linux.
Ξεκινάμε την Τρίτη 27 Σεπτεμβρίου 2011 στις 17.00.
Θα παρουσιάσουμε αναλυτικά την εγκατάσταση δύο δημοφιλή διανομών.
Fedora & Ubuntu.
ΥΓ: Φυσικά το hsgr μπορεί να φιλοξενήσει οποιοδήποτε
workshop/παρουσίαση θέλετε κι εσείς να πραγματοποιήσετε.
Evaggelos Balaskas
Unix System Engineer - http://balaskas.gr.
You have to have SystemRescueCd in your keychain
RT @hackerspacegr Σήμερα στις 19.00: CC Meetup 20110920 http://goo.gl/tDqDk
αυτός που έκανε την μετάφραση του identi.ca web template ας μάθει ελληνικά πρώτα. Τα κεφαλαία γράμματα ΔΕΝ τονίζονται!
RT @lwnnet Release for CentOS-5.7 i386 and x86_64 http://lwn.net/Articles/458840/rss
Question: Can i migrate a windows server into rhev ? Clonezilla –> convert image –> import into rhev ??? #RedHat #Virtualization
Yesterday evening i had the pleasure to watch my apache crashing till the entire memory of my vps server was been consumed.
I had the opportunity to see a memory leak and drink a couple of beers among good friends.
Friends that can support you (psychological) till you find the bug (is it?) and fix it.
So lets begin our journey:
My blog engine (flatpress) has a identi.ca/twitter plugin for posting entries on my blog.
I’ve connected it with my identi.ca account and i ‘ve done a little hack to add a microblogging category to separate my rss feed from my blogging rss feed (category=1)
So the main problem was(is) that the identica.png image doesnt get the correct file path from php variable.
It should be something like that:
blog/fp-plugins/identicaconnect/res/identica.png
but it seems to be:
https://balaskas.gr/blog/https://balaskas.gr/blog/blog/fp-plugins/identicaconnect/res/identica.png
That would be easy to fix, right?
That was what i thought too.
But in the process or fixing it, i saw the below error on my apache logs:
“PHP Notice: Undefined index: PATH_INFO”
I fired up my php.info page and saw that there wasnt any value for the $_SERVER[’PATH_INFO’]
In fact there wasnt any $_SERVER[’PATH_INFO’] in PHP Variables !!!
WTF ?
I was searching for an answer on google and i was noticing that my site was inaccessible.
pgrep httpd | wc -l
showed me about 200 apache threads and rising really fast.
dmesg complaint about resource and at that moment my vps crashed for the first time with a memory leak in console !!!
My previous apache installation was : httpd 2.0.64 + php-5.3.3 + suhosin-patch-5.3.3-0.9.10.patch + mod_evasive + eaccelerator-0.9.6.1 and my apache custom compilation options were:
./configure
--enable-dav
--enable-rewrite
--enable-ssl
--enable-so
--enable-proxy
--enable-headers
--enable-deflate
--enable-cache
--enable-disk-cache
my php compilation options were:
./configure
--with-zlib
--with-openssl
--with-gd
--enable-mbstring
--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql
--with-mcrypt
--with-curl
When i saw the memory leak, my first (and only) thought was: killapache.pl !
In a heartbeat, i was compiling httpd-2.2.20 + php-5.3.8 + suhosin-patch-5.3.7-0.9.10.patch + eaccelerator-0.9.6.1 + mod_evasive, i had moved my /usr/local/apache2 folder to apache2.bak and installed the newest (and hopefully most secure) version of apache & php.
I have pretty well document all of my installations process and i am keeping comments for every line in configuration files i have ever changed. So to setup up httpd 2.2.20 was in indeed a matter of minutes.
I was feeling lucky and confident.
I started apache and fired up my blog.
I was tailing error logs too.
BUM !!!!
apache had just crashed again !!!!
WTF^2 ?
How can a null php variable, crash apache with a memory leak and open about a million threads?
After debugging it, i fix it by just putting an isset function in front of $_SERVER[’PATH_INFO’] php variable !!!!
Too much trouble to fix (i didnt) the path of an image in my blog.
So my question is this:
- Is this an apache bug ?
- Is this a php bug ? or
- Is it a software bud (flatpress) ?
I said “Plz ignore”. You didnt !
plz ignore
RT @xemacs Going to teach my students in the Operating System course's lab tomorrow about #Fabric and #Cuisine http://ur1.ca/45ku5 !python
heartbeat from epel needs yaf from rpmforge that needs libfixbuf from rpmforge. But to update libfixbuf you need to remove everything first!