Archive

Archive for November, 2009

Еквивалентност на видео картите.

November 15th, 2009 2 comments

Това е списък с еквивалентните карти на различните производители и модели:
Cards

Categories: Hardware Tags:

bash script за бекъп (backup) на база данни

В момента съм в процес на ъпгрейд на бекъп системата ми. Не се учудвайте ако видите нещо да е “не както трябва”, защото все пак цялата система е писана за лични нужди и скоро няма изгледи да бъде пусната за масово ползване.

За пореден път: авторите на блога не отговарят за щетите, които може да нанесете на системата си, използвайки и прилагайки статиите написани тук!

Ето го и скрипта 🙂

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash
 
DBUSER="root"
DBPASS="password_here"
DIR="/home/blagomir/test/"
DUMP="/usr/bin/mysqldump"
 
 
DATABASES=`mysql -u $DBUSER -p$DBPASS -e"show databases"`
for b in $DATABASES ;
	do
	TABLES=`mysql -u $DBUSER -p$DBPASS -e"show tables from $b"`
 
	echo "=============================================="
	echo "Backup database $b"
 
	for t in $TABLES ;
	do
 
		VARIABLE="Tables_in_$b"
		if [[ "$VARIABLE" != $t ]];
		then
			echo "Backup table $b.$t"
			$DUMP -u $DBUSER -p$DBPASS --database $b --table $t > $DIR$b.$t.sql
		fi
 
	done
 
	echo "Done backup $b"
	echo "=============================================="
 
done
Categories: bash, Lab Tags:

За зелените… компютри.

November 14th, 2009 No comments

Все по често се говори за опазването на околната среда. Проблемите с промените на климата са големи и много хора вече мислят в “зелено”. “Зелени телефони”, “зелени крушки”, “зелени телевизори”… Ние ще ви покажем един зелен компютър.


Идеята се състои в това системата да е максимално енергоспестяваща, но въпреки това да е достатъчно мощна за една сравнително нормална употреба. Тъй като е невъзможно да имаме max мощност и ниско потребление на енергия, ще избегнем допълнителен графичен ускорител, за това ще се доверим на някой вграден.

Eто и нашето предложение:
Intel Core 2 Duo E7200
GiGaByTe GA-EG31MF-S2
4GB RAM
2TB WD Green, 5400rpm

Защо:
Дъното – евтино с вградено видео на интел, с достатъчно богат подбор на процесори, оптимален брой сата конектори, слотове за рам и слотове за допълнителни устройства.

Процесор – двуядрен, много мощен и същевременно икономичен, при включена опция “C1E” на дъното работната му честота се намалява автоматично на 1,6GHz, ниска консумирана мощност в Idle режим, ниста отделяна температура.

HDD – 2TB – предостатъчно, Green серията на WD работи на 5400 оборота, при което потреблението на енергия е намалено драстично

Захранване – едно 250W би свършило предостатъчна работа, но понеже не се намира лесно ще се насочим към Fortron 300W PNR (не толково добро колкото PNF, но за сметка на това зелено)

Резултатите: консумирана мощност 40 – 60W при товар

Categories: Hardware Tags:

Как да преброим файловете в дадена директория?

Посочената команда брои файловете и директориите в текущата директоря, в която се намираме.

1
ls | wc -l

Пример:

1
2
3
blagomir@dragonfly:~$ ls | wc -l
73
blagomir@dragonfly:~$
Categories: Linux Tags:

rsync – push или pull – Тестът!

След като написах предният пост, реших сам да направя теста споменат там.

/remote/path/
OS: Ubuntu 9.10
CPU: Intel 2.6 GHz
HDD: Hitachi 500 GB (7200 rpm)

/local/path/
OS: Ubuntu 9.10
CPU: Intel Core Duo x 1.86 GHz
HDD: 120 GB (5400 rpm)

Първи опит: rsync pull
Source: /remote/path/
Destination: /local/path/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
blagomir@dragonfly:/storage/test$ rsync --stats -a blagomir@192.168.1.2:/remote/path/ /local/path/
blagomir@192.168.1.2's password: 
 
Number of files: 26579
Number of files transferred: 23604
Total file size: 1211767628 bytes
Total transferred file size: 1211709797 bytes
Literal data: 1211709797 bytes
Matched data: 0 bytes
File list size: 583070
File list generation time: 0.091 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 460461
Total bytes received: 1213463704
 
sent 460461 bytes  received 1213463704 bytes  2425422.91 bytes/sec
total size is 1211767628  speedup is 1.00

До тук приключва и първата част от теста. Лошото е само, че не можах да разбера колко секунди отне въпросният трансфер…
Кратка калкулация 1211709797 / 2425422.91 = 499.587017177 сек.

Втори опит: rsync push
Source: /local/path/
Destination: /remote/path/

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
blagomir@dragonfly:/storage/test$ rsync --stats -a /local/path/ blagomir@192.168.1.2:/remote/path/
blagomir@192.168.1.2's password: 
 
Number of files: 26574
Number of files transferred: 23604
Total file size: 1211709797 bytes
Total transferred file size: 1211709797 bytes
Literal data: 1211709797 bytes
Matched data: 0 bytes
File list size: 588640
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 1213459369
Total bytes received: 460367
 
sent 1213459369 bytes  received 460367 bytes  2469826.52 bytes/sec
total size is 1211709797  speedup is 1.00
blagomir@dragonfly:/storage/test$

При вторият вариант цифрите са следните:
1211709797 / 2469826.52 = 490.605225585 сек.

Заключение: при проведеният тест се установи, че rsync работи по-бързо при push отколкото при pull. Това се случи при мен с много на брой, но малки файлове.
Ако имате свободно време и желание можете да тествате и вие и да публикувате резултатите си тук.

Categories: Lab, Linux Tags:

rsync – push или pull

Показаха ми интересно четиво, което развива теорията, че при работа с rsync е по добре да се теглят (pull) файлове, отколкото да се качват (push).
Някой тествал ли е с големи файлове и ако да, какъв е бил резултата при вас?

В момента провеждам теста и малко по-късно ще публикувам резултатите.

Categories: Linux Tags:

Как да “убием” процес в конзолата?

Как да убием процес, без да знаем неговият PID (proccess id)? Има много начини и ето някои от тях.
Процеса, който ще убием се каза boze

1
pkill boze
1
kill `ps -ef | grep boze | grep -v grep | awk{print $2}`
Categories: Linux Tags:

Как да центрираме елемент спрямо друг елемент в сайта?

Отново с MooTools и отново елементарно

1
2
3
4
5
6
7
var doMove = new Fx.Move($("element"));
doMove.start({
    relativeTo: document.body,
    position: 'center',
    edge: false,
    offset: {x:0,y:0}
});

Този скрипт ще центрира посоченият element в центъра на сайта, защото event-a е прикачен към document.body

За да усложним малко “упражнението” може да си направим функция с посоченият по-горе скрипт, която да изпълняваме винаги, когато се премести скрола на сайта или пък се сменят размерите на браузъра.

1
2
3
4
5
6
7
8
9
10
11
12
function moveToCenter() {
	var doMove = new Fx.Move($("element"));
	doMove.start({
	    relativeTo: document.body,
	    position: "center",
	    edge: false,
	    offset: {x:0,y:0}
	});
}
 
window.addEvent("resize", moveToCenter());
window.addEvent("scroll", moveToCenter());

Прикачаме следните event-и:
– Първият event е за resize на браузър прозореца
– Вторият за scroll-a на страницата.

Categories: MooTools Tags:

Как да направим draggable елемент с MooTools?

С MooTools е изключително елементарно да се постигне споменатият ефект на Drag на избран елемент от DOM дървото.

1
2
3
4
5
6
7
8
$("clickElement").addEvent("mousedown", function(){
	var myDrag = $("moveElement").makeDraggable({
	    onComplete: function(){
	    	myDrag.detach();
	    }
	});
    myDrag.attach();
});

Където clickElement е елемента, върху който ще се кликне с мишката и ще се мести целият moveElement.

Categories: MooTools Tags:

Анимирани AJAX GIF loader-и

Може би много от вас знаят за този сайт, но все пак реших да публикувам линк към него, защото винаги ми е бил полезен и не пречи да ми е под ръка 🙂
Чрез него можете да генерирате различни gif loader-и. Тествайте го и ще останете много доволни.
www.ajaxload.info

Categories: Всичко друго Tags: