Friday, March 23, 2007

"Linux Install Fest" энэ жил уламжлал болон зохиогдох уу?

Түрүү жилийн 4 сарын 7-нд "Linux Install Fest" арга хэмжээг MUUG, OpenMN хамтран анх санаачлан зохион байгуулж байсныг та бүхэн санаж байгаа байх. Анхны арга хэмжээ болохоор сонин, содон, сайхан болж өнгөрсөн санагдаж байна. Бас ч үгүй зорилтууд тавьж, түүндээ ч эхнээс нь хүрсэн байна. Linux User Group-тэй болъё гэж ярьж байсан, Дөлөөгийн маань зүтгэлээр http://www.limnux.org/ веб хуудас бий болж, олон гишүүдтэй Linux User Group-тэй ч болжээ.

4 сар ч дөхөж байна. Энэ жил "Linux Install Fest - 2007" хэзээ зохиогдох талаар, мартсан хүмүүс байвал нэг сануулаад орхиё гэсэн бодлоор LiMNux дээр нэг нийтлэл нээгээд орхилоо. Дөлөөгөөс хариу ирсэн байна. Ямартай ч энэ жил зохиогдох юм байна, гэхдээ Ubuntu "Feisty Fawn" 7.04 гарах өдөр "Монголын Нээлттэй Эхийн Санаачлага" ТББ-н байранд болох сурагтай. Удахгүй товыг та бүхэнд хүргүүлэх бололтой. Энэ талаар LiMNux-с орж уншаарай.

Thursday, March 22, 2007

Блог тойм

Ойрын хэд хоногт Линукс/Юникс-чид нилээд идэвхтэй блог бичиж эхлэв бололтой. Уншсан блогнуудаасаа тоймлон хүргэе.

olloo-гийн Нүүнээ, "Галт Үнэг" ба "Аянгач шувуу"-г орчуулсан Нацаг андууд маань тус бүр өөрсдийн блогын эхлэлийг тавьж эхний нийтлэлүүдээ бичжээ.

1. Vim-г хэрхэн хэрэглэх талаар эх хэл дээрээ уншъя гэвэл Нацаг андын
Вимын талаар цуврал нийтлэлийг уншаарай. Техникийн хүн гэхэд уран гоё үгтэй, сайхан нийтлэл бичжээ.

2. Нүүнээ анд маань
эхний нийтлэлээрээ phishing халдлагын талаар бичжээ. Өөрийн дуртай "hacker"-н тэмдэгээ ч дээр нь тавьсан харагдана. Чухам энэ тэмдэгийн талаар Нүүнээгээс анх олж мэдэж байсан билээ.

3. Зоригтын блог дээрх
хуучин нийтлэлийг сая олж уншлаа. Дээр NHK-р Google ахын талаар их сонирхолтой нэвтрүүлэг гарч байсан. Түүнийг монгол хэлээр сайхан сийрүүлсэн харагдана. Нэг сонирхоод үзээрэй.

4. Буянцогтоо ахын
сүүлийн нийтлэлүүдээс түүний "Технологи ба Монгол улсын хөгжил" сэдэвт хуралд аутсорсингийн талаар өөрийнх нь тавьсан илтгэлийн талаар, өөрийнх нь хэлснээр "Монголын Silicon Valley"-г байгуулах талаар уншаарай. Мөн түүний өмнөх нийтлэлдээ тавьсан Web2.0 технологийн талаар танилцуулга видеог сонирхоорой.

5. Дөлөө маань ойрд
http://www.limnux.org/-н ажилтайгаа завгүй, блог дээрээ нийтлэл бичиж амжихгүй байх шиг байна. http://www.limnux.org/ дээр өдөр тутам нэмэгдэж байгаа мэдээний тоог хараад хуучин андынхаа эрч хүчийг гайхнам.

6. Очко-гийн блог дээрээс
Олон үйлдлийн систем нэг дискэн дээр, Юникс shell-ийн командууд, VI - текст засварлагч зэрэг нийтлэлийг орж сонирхоорой.

7.
Google Adsense-н анхны монгол хэрэглэгчийн нэг Хүжийгийн өөрийн туршлагаас хуваалцсан болон хүмүүсийн асуултанд хариулсан нийтлэлийг уншаарай.

Мөн монголын кибермедиа хэрхэн өргөжин тэлж байгааг харахыг хүсвэл
http://ask.banjig.net/, http://www.delhii.net/, http://www.bugdeeree.mn/ хуудсуудаар ороод гарна биз ээ...

Wednesday, March 21, 2007

Google phone interview for linux system administrator position

Өнөө өглөө Google-н 2 дахь ярилцлагаа өглөө. Энэ нь Google Japan linux system administrator авна гэсэн зарын дагуу юм л даа. 2 дахь ярилцлага гэхээр амжилттай явж байна гэж хүмүүс бодох байх. Гэхдээ надад шал өөр сэтгэгдэл төрснийг энд хэлэх хэрэгтэй болвуу. Юутай ч эхлээд ярилцлагуудын талаар товчхон сонирхуулъя.

Эхний удаа
Google Japan-ы инженер япон залуутай утсаар ярилцлага хийлээ. Ярилцлага 30мин үргэлжлэх ёстой байлаа. Япон залуугийн дуудлага нилээд муу, зарим үед ялангуяа техникийн талын асуултыг хэд дахин тодруулах хэрэгтэй болж байлаа. Эхлээд мэдээж өөрийгөө танилцуулах, ирээдүйн зорилго гэх мэт байнга асуудаг асуултууд байна. "What is your strongest and weakest point?" гэсэн асуултанд эхлээд нилээд түгдэрлээ. Тэгэж байгаад гол техникийн асуултандаа орлоо. Анхан шатны, маш амархан асуултууд байна:

1. What protocol does ping use?
2. What ports and protocols(UDP or TCP) does DNS, HTTP, SSH, SMTP use?
3. How would you count words in a text file?
4. What is a pipe, and what it is used for?
5. What is a CPU load, how it is calculated?
6. How would you know the speed of your CPU? (where this information is stored?)
7. What is "mc"? (midnight commander)

Мэдэхийгээ шууд хариулаад, таамаглаж байгаагаа болохоор тийм тийм арга замаар тэгэж хийнэ гэдэг ч юмуу, ер нь бол бүгдийг хариулчихлаа... Тэгсэн 30минутынхаа дөнгөж талд нь орсон байна. Надаас асуух асуулт байнуу? гэж асуухад нь юу ч бэлдээгүй хүн чинь байхгүй л гэдэг юм байна. Тэгсэн тэр залуу 30минутаа дуустал ярих ёстой байсан юм байлгүй би чамд гүүглийн тухай ярьж өгье гээд л яриад эхлэх нь тэр... Ажлын цагынхаа 20%-г өөрийн хүссэн төсөлөө хэрэгжүүлэхэд зарцуулах эрхтэй. Төсөлөө бие дааж хийж болно, эсвэл баг бүрдүүлээд хийнэ. Хүмүүс тэгээд ямархуу төсөл дээр ажилладаг вэ гэсэн чинь (
Google Japan-ы хувьд) янз бүрийн програмчлалын хэл сурах, мөн нээлттэй эхийн төсөл дээр ажилладаг гэлээ. Мэдээж нарийн ширийн юмаа хэлж болохгүй байх л даа...

Тэгэж байтал 3 хоногын дараа буюу уржигдар 2 дахь ярилцлаганы тов ч хүрээд ирлээ. Энэ удаа
Google-н Sydney салбарт ажилладаг linux system admin-тай ярилцлага хийх юм байх. За одоо л нэг ярилцлагандаа бэлдэх хэрэгтэйг санаад "google telephone interview" гээд гүүглэдээд орхисон чинь... хөөх баахан юм гарч ирж байна... Асуултууд нь ч байна, ярилцлаганд орсон хүмүүсийн нийтлэлүүд ч байна. Ямар ч аймаар нарийн ширийн, хэцүү, ямар ч утгагүй жижиг сажиг зүйл асуудаг юм бэ гэмээр, ер нь хүмүүсийн ам их муу байна. Google ер нь нэр хүндээ өсгөх гэж албаар олон хүнтэй ярилцлага хийж, хэцүү асуулт асуудаг ч байх гэсэн бодол төрөөд явчихлаа... шал урамгүй юм... маркетингийн бодлогоо гэж...

За тэгээд 2 дахь ярилцлагаа дөнгөж сая өгчихөөд, одоо ёстой болъё, дахиж л тэгэж өөрийгөө тамлаад яахав гэсэн бодолтой сууж байна. Өчигдөр блог уншиж байсан нэг залуу 3 дахь байнуу ярилцлагаа шууд болиулчихсан байсан, бас нэг инженер гар 2 сар тамлуулсаны эцэст гэрээт ажил санал болгохоор нь тэр дор нь, утсаар татгалзсан гэж байсан. Одоо л тэр хүмүүсийн сэтгэлийг ойлгож байх шиг байна...

2 дахь ярилцлага маань 45 минь үргэлжлэх ёстой байлаа. Эхний минутаас аваад, сүүлийн минут хүртэл асуултанд хариуллаа. Мэддэг гэж бодсон зүйлсээ үнэндээ бол маруухан мэддэг гэдгээ ойлгосон уу, эхнээсээ л асуултуудад нь дутуу хариулаад байх шиг сэтгэгдэл төрлөө. Тэр авсралийн инженер ёстой юмийг ухаж асууна гэж ёстой үзүүлж байна. Зорилго нь энэ хүн мэддэг зүйлээ хир хэмжээнд мэддэг вэ? дээр нь толгой нь хир хурдан ажиллаж байна гэдгийг шалгах байсан байх. Ямар нэг сэдвээр их амархан асуулт тавина. Хэрвээ хариулж чадвал цааш лавшруулан асуух гэсэн маягаар ер нь бол асуултанд хариулж чадахгүй болтол нь асууна, тэр нь ч тэгээд хурдан юм билээ 3-4 асуулт асуухад тухайн сэдэв дээр унаад өгөнө. Ер нь бол нэг их сайн мэдэхгүй зүйлээ дурдахгүй байсан нь дээр санагдсан. Cая:

1. "What is the difference between hub and switch?" гэсэн асуултанд дээр
"Hub operates at OSI Layer 1, physical layer, and it has no control over the traffic. Switch operates at OSI Layer 2, and it decides which port the frame should be forwarded. In other words, switch splits a broadcast domain." гэж хариуллаа. Сүүлийн "splitting broadcast domain" гэдэг дээр сүүлдээ ороогдоод, зөвхөн switch-ны талаар 3 асуултанд хариулав. Асуусан зүйлс гэвэл:
- "How switch decides which port to send?"
- "Does a host receive a packet not addressed to it?"
- "Switch is just switched on, how does it create ARP table?"

Сайн мэдэхгүй юмаа ярих шиг хэцүү юм алга, CCNA-г хичээл хальт үзсэн гэсэндээ л энэ зэрэгт хариулсан байх. Нэг бодлын өөртөө дүгнэлт хиймээр ч юм шиг. Ер нь асуултуудаа маш бүрхэг асуудаг болохоор хүн мэдлэгийнхээ хэмжээнд л тааруулж хариулах жишээтэй.

Цааш нь:
2. how can you see the load average? (top, uptime)
-
what are the 3 values stand for, in the uptime output?

3. how do you stop a process? (kill, HUP)
-
what happens when you give HUP command?

4. how can you find which rpm package a file belongs to? (use rpm -h to see the help)
- what else can you use to see the help? (man)

5. what happens when a host wants to resolve a domain name? (resolver send queries, root DNS and the DNS hierarchy)
- Does resolver ask root DNS servers? (ask nameservers stated in resolv.conf)
- What kind of information is stated in resolv.conf? (IP addresses of nameservers, search domains, etc.)
- What if you want to host a web site, and want to setup own DNS server? (ask the registrar to delegate my domain to my server)
- Your domain is delegated to your server, does it all work? (should create zone files)
- What is inside named.conf? (named configurations, and directives for domains)
- What kind of mapping in named.conf? (domain name to the path of zone file that corresponds)
- What is inside zone file? (SOA header and recors)
- What kind of records are there? and what it stands for? (A, NS, MX, CNAME, PTR)
- What is the SOA looks like? (admin contact, serial number, TTL and other time parameters)
- Think you are an ISP and wants to serve your Dial-Up customers for DNS service. How would you do that? (set-up caching only DNS server with some forwarding and querying restrictions)

6. Troubleshooting: What would you do, if one of your engineers come and say one of the machines display a message "disk is full"? (use df and du to determine which partition is full)
- let's say /usr. what would you do next? (use du recursively, find unnecessary too big files and delete it, usually log files)
- what parameters do you use to see with folder under? (du -h ./ --max-depth=n etc...)
- ok you found the file which is unneccessary log file, what would you do? (check first if any process is using it, if not delete, if not stop the process and delete it)
- how can you find which process is using the file? (lsof)
- how can you stop the process?
...

за ингээд цаг нь ч дууслаа. Би ч анх удаа Linux/Unix системээс залхлаа. Ёстой хүнийг залхтал нь асууна гэдэг энэ байх. 30мин турш асуултаар бөмбөгдүүлээд ирэнгүүт, сүүлийн 15мин бол орон гаран байталтай л өнгөрлөө.

Блогоо бичээд, хэрэгтэй үедээ гүүглэдээд л явж байя. Өөр ч Google-с хүсэх юм алга...

Tuesday, March 20, 2007

compiling mod_jk from source... get mod_jk.so from here


Apache/2.0
Tomcat/4.0.3-той mod_jk-р холбох гэж өнөөдөржингийн ажил боллоо.
mod_jk.so хоёртын хэлбэрээр Jakarta/Tomcat-н веб хуудсанд бэлэн байсан бол амар байхгүй юу. Сүүлийн хувилбар болох mod_jk-1.2.21 нь болохоор Apache/2.2-той эмхэтгэчихсэн (EAPI орчинд эмхэтгэсэн), хэрэглэх гэхээр:

'mod_jk.so is garbled - perhaps this is not an Apache module DSO ?'

гэсэн алдаа өгөөд болдоггүй. Бэлэн эмхэтгэсэн хоёртын файл байвал будаа идэх санаатай интернетээр хайгаад ч олдсонгүй...

Тэгээд эхээс нь эмхэтгэж mod_jk.so файлыг гаргаж авахаас өөр аргагүй боллоо. Мэдэхгүй хүнд толгой эргэм олон эх багцууд байдаг юм байна. Google-дээд, мөн Jakarta/Tomcat-н веб хуудаснаас янз янзын багцууд оллоо.

jakarta-tomcat-connectors-4.1.31-src.tar.gz
jakarta-tomcat-connectors-4.0.2-01-src.tar.gz
jakarta-tomcat-connectors-1.2.15-src.tar.gz
tomcat-connectors-1.0-1.4.0.2.src.rpm
tomcat-connectors-1.2.21-src.tar.gz

Хараад байсан
http://tomcat.apache.org/connectors-doc/нүүр хуудсанд байгаа линкийг дагаж ороод авсан хамгийн сүүлийн багц хамгийн зөв нь бололтой. (libtool-р баахан оролдоод орхисон тэрнээс болсон байж болох юм.)

Эмхэтгэхдээ:

$ tar -zxf tomcat-connectors-1.2.21-src.tar.gz
$ cd tomcat-connectors-1.2.21-src/native
$ ./configure --with-apxs=/your/path/to/bin/apxs
$ make

Үүний дараа таны Apache-н хувилбарт харгалзах директор дотор mod_jk.so файл үүссэн байх ёстой. Хэрэв үүсээгүй бол өмнөх тушаалуудын үр дүнг сайтар уншаарай. Одоо mod_jk.so хоёртын файлыг зохих газар нь хуулж тавих хэрэгтэй.

$ cp apache-2.0/mod_jk.so /usr/local/apache2/modules/mod_jk.so


Хэрэв танд Redhat ES4.0 дээр Аpache/2.0 ба Tomcat/4.0.3-н хувьд эмхэтгэсэн mod_jk.so хоёртын файл хэрэгтэй байгаа бол
эндээс татаж авч болно.