2005-07-12

Нов сървър - нов "късмет"

Човек и добре да живее, все някога му се налага да прави нов сървър...

Въпреки "силната ми любов" към последните рожби на Intel (P4, "добрия им хипертрединг", производителност/цена и т.н.) пак ми се налага такъв да инсталирам... живот...

Тъй като имаме 3 диска тръгнах да пускам RAID1 (/boot) и RAID5 (all the rest). Избора софтуерен райд си е донякъде финансов, а на вградените RAID контролери грам вяра им нямам (ако се скапе дъното ще се намери ли същото за да тръгне масива). От друга страна, софтуерния RAID до момента проблем не ми е правил и яде пренебрежимо малко от 1 GHz процесор, да не говорим за настоящия 3 GHz звяр. Писането по RAID5-цата забавя (пише се по 3-те диска), но четенето е почти два пъти по-бързо отколкото от един диск (чете се едновременно от 2 диска).

Първата ми работа беше да се запозная с дъното и да видя какви възможности имам (липсата на книжка доста затрудни тази част). Оказах се с два SATA контролера с по 4 канала. Първия бе Intel 82801FR/FRW, а втория SiI 3114. След малко въртележки установих че не само че IDE DVD записвачката си "пречи" с SATA-та на определен канал. Закачих всичките дискове на SiI контролера, направих си md0 и md1, инсталирах... и... ИЗНЕНАДААА... скоростта на дисковете поотделно (hdparm -t /dev/sd{a,b,c}) е около 55 MB/sec, а на md1 (RAID5) е ... 25-30MB/sec. Лошо Коларов, лошо! След още час проби разбрах че ако сложа само 2 на SiI контролера, а другия на Intel-ския - спи града - hdparm -t /dev/md1 ~= 110 MB/sec.

Следващото нещо което ми трябваше бе да накарам boot loader-а да работи и от 2-ри и от 3-ти диск. Особеността е, че BIOS назначава на 1-то устройство логически диск 0x80 (C: за DOS запознатите) и ако grub е настроен да се 'търси' на 2-ри диск, а той се е оказал 1-ви... просто няма как да стане. Трика с grub е простичък и по-точно е:

[root@host ~] grub
...
grub> map (hd0) (hd1) # map-ни диск 2 като диск 1
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0xfd
grub> setup (hd0)Segmentation fault
[root@host ~] _

Опаа... тук нещо. Повторението на опита не доведе до по-добър резултат. Как тогава anaconda-та успя да инсталира на първия дял? Хубав въпрос... заредих -UP ядрото (това което се ползва от anaconda по време на инсталация или rescue) и... хм... мина, мина и за (hd2) - /dev/sdc. CentOS имат система а-ла bugzilla, е, и 1 бъг в повече си имат вече.

Останалата част бе скука - проба какво става като махна произволен диск, проба какво става като го върна, като ги разбъркам... ми... работи, не можах да го скапя. mdmon разпраща поща при отпадане на диск, всичко е наред - да ми е честит... (ако на някой му трябват детайли - да пита, на сън го правя вече)

ПП: Относно P4 vs i86x64 - не смятам че "Intel са глупави процесори" или нещо такова, просто че *отдавна* не са по-добрия избор.

ПП2: Винаги е хубаво да се попрочете документацията. Hotswap-а мисля да не го пробвам, но не е лошо да знаеш че го има. Превключванията на режимите не се отразиха въобще на Linux-а, все му бе тая, намира си дисковете всякак :)

ПП3: А според този тест софтуерния RAID (не фалшивия хардуерен) си е и доста по-бърз от хардуерния, наздраве ;)


Полезни връзки: http://nas.darma.com/support/hcl.html, http://linuxmafia.com/faq/Hardware/sata.html.

2005-07-10

JS/UIX

"JS/UIX is an UN*X-like OS for standard web-browsers" - не е за вярване какви чудеса има по света. Това специално изпълни ls, vi и още няколко такива безупречно. Ако скоро започнат да се търсят и администратори за web browser да не се учуди някои :) - операционна система има!

Корекция: имало и други толкова луди идеи - robin. За повече - дискусията в slashdot.

2005-07-09

FireFox / Mozilla Search Plugins [Engines]

At last, this one got fixed. Finaly I will be able to add more search engines to FF without root privlieges to install them system wide.

Don't get me wrong, Mozilla and Firefox are the best available browsers (at least for now) but they have some annoying bugs. This one was opened at 2002-02-04 and fiexd at 2005-06-29 (still no official version with the fix), was not this way too long?

2005-07-03

udev

If someone told me this before I would not belive him, but look how simple it is (Kernel Trap: Linux: ndevfs - a "nano" devfs)

find /sys/block /sys/class -name dev -printf '%h\n' | while read d; do
n=${d//*\//}
i=$(<$d/dev)
mknod $n ${d:5:1} ${i/:/ }
done

... I really *have to* take a closer look at udev and hotplug ...


PS: Don't think I ever prefered devfs, I just can't belive how good the design is.