顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


主題 - duan

頁: [1]
1
雜七雜八 / rrdtool
« 於: 2005-02-18 11:17 »
其實很久前就看到了 abelyang 兄的大作, 只是一直沒時間試.

最近因為公司一些因素, 公司裡都是自息課, 於是空閒時間增加,
就想說來試試看.

rrdtool 還真是有些複雜的東西, 要不是有 abelyang 兄這篇文章,
大概永遠不會去碰它   ^^;

目前把流量, 系統資訊等等作成圖表, 看起來真是愉快.   :)
預備之後再配合 php + snmp, 隨時可以監看 系統登入人數等
等系統資訊, 那就更方便了. 感謝這篇教學文章.....   ^_^

2
Linux 討論版 / snmp in linux
« 於: 2005-02-15 15:58 »
這裡很多網管高手, 相信一定很多人對 snmp 很熟了, 這篇
post 只能算是筆記, 若有誤請指正.    :)

今天在 fedora core 1 上跑 snmpwalk , 發現資訊比以前多很多的
樣子, 看起來 implement 更多的 mibs 了.

目前看到有秀出的資訊包含

SNMPv2-MIB
IF-MIB
RFC1213-MIB
IP-MIB
TCP-MIB
UDP-MIB
HOST-RESOURCES-MIB
IPV6-MIB

IF-MIB 主要是秀網卡相關的資訊, 如 ip/netmask/流量 之類的,
這可能是最常用的.
TCP-MIB/UDP-MIB 是顯示目前有在傳輸的封包來源與目標的
IP 等資料.

這些都有 RFC  可以查, 比較讓弟注意的是 HOST-RESOURCES-MIB:
http://www.faqs.org/rfcs/rfc1514.html
就這部份看起來資訊比弟以前看到的似乎多很多.

在這個 mibs 中, 主要是下列幾項資訊:
   hrSystem        OBJECT IDENTIFIER ::= { host 1 }
   hrStorage       OBJECT IDENTIFIER ::= { host 2 }
   hrDevice        OBJECT IDENTIFIER ::= { host 3 }
   hrSWRun         OBJECT IDENTIFIER ::= { host 4 }
   hrSWRunPerf     OBJECT IDENTIFIER ::= { host 5 }
   hrSWInstalled   OBJECT IDENTIFIER ::= { host 6 }

包含了系統資訊 (線上人數, 記憶體, uptime 等), 硬碟資訊
(分割方式, 容量, 使用量, 廠牌等, 包含光碟機),  process (pid,
執行檔名稱, 參數等), 安裝過的套件及安裝時間等.

這些資訊如果自己寫程式去抓, 當然也是抓的出來, 不過一
來比較費力, 再來是如果是提供 web 介面的話, 就必須呼叫
系統指令, "感覺上"  安全性及效能上都比較差一點.

php 有 for snmp 的函數集, 不過根據幾個月前的經驗, 只支援
到 snmp v2. 網路上有看到有人提供一個改 php source code
(其實好像只改一兩行) 來支援 snmp v3 的文章, 不過弟照做
後還是不行, 後來就沒繼續嘗試了透過  v3 來 connect snmp
了. 所以如果想用 php 來 connect snmp, 又不想呼叫系統指令
(snmp*) 的話, 那就先透過 snmp v2 吧.

嗯.....先寫到這裡, 好像沒寫什麼, 似乎應該放到聊天版面的  ^^

3
王森專欄> 軟體業如何面試新員工 - 菜鳥篇

最近半年,不少從事軟體業朋友都升上主管的職位,除了承擔更重的責任
之外,大部分也開始面臨選擇優秀左右手的問題.大家常常聽到職場老前
輩告訴我們,要在事業上能夠成功,自己的努力固然重要,但是識人的工夫
更是決定性的關鍵,識別出好的老闆,就可以跟著他吃香喝辣,老闆一人得
道,眾人雞犬昇天;而在茫茫人海中辨識出好的員工,可以讓日理萬機的主
管少掉很多麻煩事.因此,如何找出自動自發,辦事能力絕佳的員工就是一
門直得深入的帝王學問.今天我這個小毛頭斗膽向大家提供一些我面試
別人的經驗及方法,單純限定在軟體產業,希望可以藉此和許多經驗豐富
的前輩們交換些心得.

軟體產業是一個高度以人為資產的產業,俗話說:"人心是關不住的",正由
於人的變異性實在太大,使得從事這個行業的主管往往沒有安全感,員工
素質太差,專案做不出來,你會倒楣,員工素質太好,他會自視甚高,甚至寫
個只有Process Bar在螢幕上前後移動,不斷寫檔讀檔,使得硬碟的燈號永
遠不會停止閃動的程式在電腦上跑,然後騙你說他的電腦不敷使用,希望
可以換更好的設備.當然,您可能剛剛才發現過去您其實一直被這類員工
玩弄於鼓掌之中而不自知,所以在此奉勸現在很多一畢業,不想多讀點書
,多做點基層工作,只想直接當SA,SD,剝削程式設計師的朋友,除非您天縱
英明,否則還是乖乖的紮實點訓練自己,因為只想拿到權利,又沒有半點料
的人,其實在下屬的眼睛裡面,比燒壞的光碟片還要沒價值. 話扯遠了,我
提到主管沒有安全感,也因為這樣的因素,主管總是盡自己最大的努力剝
削工程師,倒楣的當然是食物鏈最底層的程式設計師,使得整個部門或公
司充滿了怨氣,充滿怨氣的地方會帶來不幸,是個讓公司走入滅亡的無窮
迴圈.

雖然上述的公司滅亡模式是台灣大部分的情況,但是秉持著不唱衰自己
人的精神,底下的討論有個假設:

#define 好的主管 不會不懂裝懂.知道去哪裡蒐集資料,不會被員工或顧問
玩弄的主事者
#fefine 錯誤訊息 舉頭三尺有神明,還是請您趕緊退位,不要再殘台灣的競爭力了
if(你==好的主管)
         goto 繼續;
else
         exit(錯誤訊息) ;
繼續:

好的,進行到這裡,相信您是一位軟體業界的優秀主管,所以我們來分享一
下如何面試好的員工,請注意,我們討論的是如何面試新進社會的菜鳥,不
是在資訊界打滾多年的老鳥,以後有機會我們再來討論如何處理老鳥.首
先,請不要在徵才條件中開出一堆莫名奇妙的規格,例如底下徵才廣告:
* * * * * * * * * * * * * * * * * * * * * * * * * * *
本公司需要的人才須具備下列幾種條件:
C/C++
VB
Delphi
VC++
Power Builder
Java Script
JAVA
ASP
JSP
PHP
* * * * * * * * * * * * * * * * * * * * * * * * * * *
相信我,你開的東西越多,代表你懂得越少.而且很可能會吸引極優秀的人才
成為你的手下,看到這裡請先不要高興,因為他是準備來你手下當藏鏡人的,
有個什麼都不懂的老闆,還有什麼比這個還快樂的事情.更何況,面試過新人
的朋友一定都有的經驗,他說他會VB,絕大多數都是在學校用過VB而已,他
說他會Java,甚至了解J2EE,聽起來很厲害,可是描述了老半天才無法勾勒出
J2EE的輪廓.既然您已是一個好的主管,我想您絕對不相信會JavaScript的人
就會Java,會VB的人就一定會VB.net吧.既然菜鳥自己都不知道自己到底會
不會他宣稱的那樣技術,所以對於一個菜鳥來說,會不會某種特定技術根本
不重要,重要的的是他的學習能力.資訊界有這樣的特性:老的不一定比年輕
的厲害;一個剛剛接觸某技術一個月的人,做出來的東西不一定比一個摸索
該技術10年的人要差.如果主管們只是想炒短線,急著想把專案搞定,非得找
已經有經驗的人,當然不在話下,但如果這是一個有遠見的主管,希望長期培
養人才,希望以後的專案都順順利利的話,是否能夠快速學習的人格特質還
是最重要的.

我個人面試這種菜鳥的方法,就是先詢問他會哪些技術,為了表現,他肯定說
出一堆.接下來我會找一個他完全不懂的東西,比方說他可能不懂Ruby是啥
,不懂Python是啥,我會給他一台可以上網的電腦,裡頭就是剛剛裝好,乾乾淨
淨的Windows 2000,外加一個可以打到世界各地的電話,請他在2個小時之內
用Ruby寫出個簡單的程式,例如99乘法表好了.如果他可以做到,那麼他完全
符合在資訊業界混下去的人格特質.講到這裡,大部分的朋友一定認為這個
人應該是老老實實的上網找資料,然後老實地交出結果,這樣的人當然足以
勝任程式設計師的角色.不過我相信更多的朋友會問我,如果他用MSN,ICQ,
Yahoo Messenger,email,電話,或是任何通訊方式問朋友呢? 我的回答是,我的
信箱裡頭也有很多各大公司優秀工程師問我問題的信件,難道他們不優秀
嗎? 資訊業就是要彼此交換資訊,才能省下很多工夫呀! 我個人甚至認為,如
果他可以打越洋電話,找到他目前正在微軟技術部門服務的大學同學問問
題,那我會直接建議該主管直接讓他當manager,這種善於利用資源的人才才
是公司進步的關鍵,寫程式還真是埋沒他了. 還有人問我,如果他立刻上網
買一堆書送來這裡抄抄打打呢? 我的回答是,這更好,貴公司的顧問不是也
常常叫你去買書自己看? 有句話說"Good programmer write good program,
excellent programmer steal excellent program",知道哪本書有你要的資料,知道
哪些片段的code可以直接剪貼來用,這可是屬於顧問級的人才   按理應該
要好好珍惜才是.

不知道觀看本文的朋友們,有沒有什麼其他的想法呢?歡迎來信討論^_^.

(與作者聯絡:王森  moli0205@mail2000.com.tw)

4
LDAP 討論區 / proftp.ldap@redhat
« 於: 2003-06-18 00:22 »
搞不什麼有名堂的東西, 只好柿子挑軟的吃, 試試 proftp with ldap @ redhat,
沒想到很順利就搞定了, 傻人有傻福.  :)                                  

一樣, 為了不影響相依性, 所以還是抓 src.rpm 回來. 我原本是用 CLE 的 rpm,
所以再去 CLE  網站抓 proftpd-1.2.4-5.src.rpm (這版要是有 bug, 請告知我啊 ^^)

1. rpm -Uvh proftpd-1.2.4-5.src.rpm
   cd /usr/src/redhat/SPECS        
   vim proftpd.spec , search configure , change to
        --with-modules=mod_linuxprivs:mod_readme:mod_pam:mod_ldap:mod_ratio
   (原本只有到 mod_pam , 而 mod_ratio 是順手加上去的, 在這裡是非必要的)    

2. rpm -ba proftpd.spec
   cd /usr/src/redhat/RPMS/i386
   rpm -Uvh proftpd-1.2.4-fr3.i386.rpm

3. vim /etc/proftpd.conf , add
# for ldap                    
LDAPDefaultAuthScheme clear
LDAPServer            localhost
LDAPDNInfo            cn=Manager,dc=lyric,dc=idv,dc=tw 123456
LDAPDoAuth            on "dc=lyric,dc=idv,dc=tw"            

4. restart proftpd , ok

5. 其它
   a.  即使加入了 ldap 的 module , 還是可以用系統預設的帳號登入, 不像 samba
       必需要置之死地而後生.                                              
   b.  雖然原本 proftpd 的 module 有 mod_pam , 不過我沒辦法經由改 pam 的設定
       讓 ldap 的帳號登入 proftpd   @_@                                    
   c.  關於 proftpd 裡和 ldap 有關的參數設定, 可以參考 proftpd 的 tarball 裡
       的  doc/Configuration.html , 非常詳細, 只是沒有範例  :Q              
       不過在 README.LDAP 裡有個簡單的範例. :)

5
LDAP 討論區 / samba & ldap @ redhat
« 於: 2003-06-03 11:34 »
在這版學到很多, 在這裡貢獻點小小的經驗, 錯誤的地方也請大家指正, 謝謝.
順便和 netman 兄打個招呼, 很久沒聽到您的消息了,  忙著和 lman 兄開創事
業喔.   ^_^

目前已整合 openldap, system account, samba, apache 所需要的認證. samba
這邊做到的還很簡單, 單純登入認證及帳號匯入, 進階的管理還沒處理.
下一步是整合 sendmail .

1. 重新製作 samba 的 rpm , 抓下 samba-xxxx-src.rpm
rpm -Uvh samba-xxxx-src.rpm
cd /usr/src/redhat/SPECS
vi samba.spec , 在 configure 後面加上 --with-ldapsam
rpm -ba samba.spec
會產生新的 rpm 在 /usr/src/redhat/RPMS/i386 下面, 有四個 rpm
安裝到系統上.

2. 假設 openldap 已經裝好了,
baseDN : dc=lyric,dc=idv,dc=tw
bindDN : cn=Manager,dc=lyric,dc=idv,dc=tw

設定 samba server
在 /etc/samba/smb.conf 中 global 的部份加上:

ldap suffix = dc=lyric,dc=idv,dc=tw
ldap admin dn = cn=Manager,dc=lyric,dc=idv,dc=tw
ldap port = 389
ldap server = 192.168.0.1
ldap ssl = No

另外 security 要設為 user ,
security = user

而 samba 其它相關的設定請自行確定是正確的.

3. 設定 samba 要連 ldap 需要的密碼, 即 ldap server manager, 假設為 123456
smbpasswd -w 123456

4. 設定 ldap server
編輯 /etc/openldap/slapd.conf, 加上 samba 相關的 scheam
include /etc/openldap/schema/samba.schema

重新啟動 ldap

5. 匯出及匯入帳號
工具程式在 /usr/share/doc/samba-2.2.7/LDAP/ 裡面.
編輯 export_smbpasswd.pl , import_smbpasswd.pl ,並變更為可執行

* 需要 Net-LDAP 模組, 請至 www.cpan.org <http://www.cpan.org> 下載並解決
相依性的問題.
* 修改 pl 檔時, 除了設定 bindDN, baseDN 等之外, 還要記得修改 object

export_smbpasswd > /etc/samba/account.txt
cat /etc/samba/account.txt | import_smbpasswd

可以用 GQ 或 ldapsearch 來確認資料是否匯入正確.

6. 回到 samba server
smbapsswd some_account
預設是不能登入 (和系統帳號的情況不一樣), 要 enable 登入權限
smbpasswd -e some_account

7. 重新啟動 ldap server 和 samba server .

8. 其它注意事項
a. 注意 samba server 和 ldap server 上要做的設定是不同的.
b. 當 samba 編譯成支援 ldap 後, 就無法再像本機的帳號詢問了.
所以做這樣的設定前, 請有破斧沉舟的心理準備.

頁: [1]