2008年9月9日 星期二

面對他,接受他;處理他,放下他

泡了一杯咖啡,坐在電腦前,疲憊的坐下。手指蠢蠢欲動,想代替勞累的嘴巴寫下心得。

終於九月的生活費有了著落,我現在負責教某高職部的物理,一個禮拜10堂課,一個月薪水少少的13000;如果是剛畢業的我一定看不起這價錢,不過現在的情況真的很不好,找不到好工作,兼差還是得過活。

上這些小朋友的物理課,是我第一次上高職學生的課,也可以說是我第一次了解到有這樣的學生存在,也是著調適自己教學的步調跟心情,來面對這些孩子們。技職體系,對我們一路念研究所上來的人有點無法想像,當兵的時候也是被這些技職畢業的王八蛋弄得七葷八素;不過,在真正當他們的老師的時候,才發現這當中的差異其實早在他們國中的時候就註定了。

來學校的目的,不是讀書;讀書似乎不是任何事情的目的,這一點一直當好學生的我似乎很是困惑:如果不想讀書,那來學校幹嘛?
基礎物理,裡面的內容遠比國中理化要簡單,對我的衝擊頗大...對我而言我反而有點慌張,究竟我照著課本教,能不能夠讓他們應付將來生大學的考試?不過,這也不是他們會去擔心的事情,雖然一樣在學校,身份一樣是學生,我的經驗在這裡似乎完全不適用。

所以,我們認真唸書,上大學念研究所拿到碩士博士學位好像真的是笨蛋。我看了太多技職體系畢業後發展比我們好太多的人,一些亂七八糟的科大畢業生也可以來考成大的博班,可以上的原因竟然是:「博班招不到人!」

這些亂七八糟的思緒組合在我的腦袋裡。我回想起,我是一個如此叛逆又不想唸書的人,我只想念我有興趣的書,關於國文、歷史地理我一點也不願意花時間讀。我熱愛物理,國中的時候問老師問題問到超出國中範圍,老師只好告訴我,你很有潛力,到高中去再好好的鑽研!

為了可以考上一中,我報考了人間煉獄的重考班。毒打的壓力是很大的,台中市所有買得到的參考書、題目我幾乎都做過了,經過了魔鬼般的洗禮,我順利的上了一中。我認為,我就是可以像普朗克一樣的大物理學家一樣,我熱愛近代物理,不過高中發生了很多不如意的事情,我沒有把心力放在課業上;考前的努力,我只上了東海物理系。我超高興的,因為我念到了我夢寐以求的物理系耶!我可以做我的天文夢了!

不過事與願違,第一個學期我的普物竟然因為計算錯誤太多,我竟被二一退學了!其他每天夜夜打電動的同學用猜的還可以嗨啪,搖搖頭,真是運氣不好。

因此又再次進入重考的命運...家人建議不要念理學院,因為未來不好找出路。不過在我小小的腦袋裡時在想不出自己除了當大學教授之外可以做什麼職業!因此把目標放在台大資工系。由於受過一學期大學物理的洗禮,高中三年的物理我三個月就全部念完了,模擬考題多半也都有70分,於是我把火力全部都放在我最害怕的數學跟化學。結果我苦練了三個月的數學跟化學,卻忽略了考前再把物理看一遍,沒想到我最拿手的物理,考前竟然忘得一乾二淨!我是二類組的,我的生物用猜的也猜了45分,還過了低標!我的物理既然考了可憐的42分...別說台大資工了,我連台大畜牧都沒上,最後是上了成大地科。念理學院,似乎是命中注定。

念不到成大物理,成大地科也有很多物理相關的部份,這也激起了我熱烈的興趣,於是我開始深入地球物理,接觸地震學,地球內部物理等等。我還是認為自己可以順利的當大學教授;因為我的程度遠遠的比很多研究生來得強。
研究所考試,當然台大落榜,我跟台大就從此無緣了。不過成大這邊倒是傳來好消息,我不但上成大地科所,還是第一名錄取,在一次堅定的相信我所預期的這條路是志在必得。我連暑假都沒有,錄取後就直接進入研究室開始埋頭苦幹,努力的學三維重新定位、學如何用focmec來做震源機制,學如何用zmap搭配matlab做應力反演,如何用這些結果來做科學描述。不過,研究所的日子對我來說每天都是挫折,老師也不管,也不願意參與討論,我不能問老師問題,老師講的概念極其模糊,我甚至不知道老師要表達的意義究竟是什麼,總之老師就是很忙,無論你聽懂不懂,反正下次就是要生出來就對了。我從模糊變成困惑,到最後要畢業前,才發現老師根本就是打算要留我:事前要我去台大找胡植慶老師這麼多趟,只是為了要知道如何解決這個問題,要我留下來多做一年的數值模擬。

做研究,應該是辛苦,而不是那麼的痛苦。一個研究沒有設定深度跟廣度,沒有設定邊界,就照老師的想法一直無條件做下去,能夠如期畢業還真是老師的慈悲!從那時開始,我就不再對於我能當大學教授有任何的期待了。我這兩年花太多時間在猜老師到底要什麼,花太多時間在分析資料,對於領域內其他人的精闢見解並沒有辦法深入的了解;一個研究生失去了自己在該領域的自信,意味著他研究生涯的終結...我在也沒有力氣去探究我能去做哪些有趣的研究,寫哪些有用的程式...我只想畢業,我只想離開。

當兵進入日新山莊又是另一個悲劇的開始。那裡的人,不但素質低,連品德都低,我這個異類每天都過得生不如死,到最後我甚只想藉由分析到底跟饒瑞均比較慘還是在台南監獄當兵比較慘,藉以轉移注意力。結果當然是...都很慘。至少退伍後,能夠保住老命的離開那個地方,我很珍惜生命;我不要再過這種爆肝又沒有成就感的研究生的生活,我只想趕快有經濟能力,有個家,安定下來。不過,事與願違。

我不介意找地質或是地震類的工作,不過台灣重北輕南是很嚴重的,南部就像是被放逐的地方,所有重要的研究機構全部都在台北;我是個討厭擁擠討厭排隊的人,我實在很難接受到處都是人跟車的台北,我不想吃一頓飯就要150以上,也不想要租一個只是睡覺的房間卻要一個月花12000!住在台北,真是瘋了。

所以,我失業了。現在的我=從前那個認真唸書的小孩=認為自己會當大學教授的學生,不過他非但不是大學教授,他還是個失業又娶不起老婆的可憐蟲。我唯一的成就感,大概就是我的電腦是linux,敲敲打打的介面跟人家的不一樣,以及我從前認真唸書的結果,只要給我講台,我數學物理化學英文都能教。

所以念得碩士又如何呢?這麼認真唸書又得到什麼呢?我望著天空,覺得自己的運氣真是糟得不得了!沒有工作真的很悶,有時候回想起自己的一生,真不知道究竟哪一步出錯了,怎落得如此悲慘的下場,朋友不敢聯絡,有委屈也不知道該怎麼說,完全就是一個潰敗的人生,唉,怎麼會這樣呢?

突然想起聖嚴師父一直諄諄告誡我們的:遇到境界時,要「面對他、接受他;處理他、放下他」。人有千百種命運,冷門科系加上運氣不好,造成這樣的結果;不妨趁著失業的這段時間好好的考上證照,累積自己的實力;有這麼多人轉行成功,我是個這麼努力的人,別氣餒,我一定可以闖出一片天!

2008年9月5日 星期五

Debian下實現samba密碼與系統密碼同步

一.前言

本篇環境:Debian sid/ samba ver. 3.2.3。
參考moto學園幾位前輩的文章:
http://moto.debian.org.tw/viewtopic.php?t=3066&start=0&postdays=0&postorder=asc&highlight=
http://moto.debian.org.tw/viewtopic.php?t=1810&start=0&postdays=0&postorder=asc&highlight=
samba預設密碼與/etc/shadow是不同步的。本篇目的希望:
------------------------------------------------------------------------------------------------------------
A.系統密碼與samba密碼同步。
B.系統所有使用者都可存取samba,無須大量建立samba client。

------------------------------------------------------------------------------------------------------------

二.smbpasswd與passwd同步

01.修改/etc/pam.d/common-password
password required pam_unix.so nullok obscure min=4 max=8 md5
password sufficient pam_smbpass.so audit use_first_pass

02.確認/etc/samba/smb.conf
encrypt password = true
obey pam restrictions = yes
unix password sync = yes
pam password change = no

03.由於新版的samba其密碼資料庫檔已經不放在/etc/samba/smbpasswd,而是放在
/var/lib/samba/secrets.tdb
/var/lib/samba/account_policy.tdb
/var/lib/samba/passdb.tdb
(利用smbstatus查看版本資訊)
此時,手動使用
smbpasswd -a maxsolar 並設定其密碼,便可以使smbpasswd與shadow同步,此時user利用passwd或是smbpasswd改自己的密碼,都會同步。 缺點在於:第一次使用samba之前,需要手動變更自己的密碼,如果變更密碼有與前次不同的限制,則需額外克服。

三.大量建立samba user

早期samba版本的作法是:
cat /etc/passwd | mksmbpasswd > /etc/samba.d/smbpasswd
並且需要在/etc/samba/smb.conf裡新增一條
smb passwd file = /etc/samba/smbpasswd
(以上作法在新版必須忽略)
新版的作法應該要改成:
umaks 0066
getent passwd | grep '/bin/bash' | /usr/sbin/mksmbpasswd > /etc/samba/smbpasswd
pdbedit -i smbpasswd -e tdbsam
rm /etc/samba/smbpasswd
umask 0022
以上所產生的效果是,從/etc/passwd的entries擷取有用的使用者來建立samba密碼,並寫入到smbpasswd這個暫存檔案內。
再把smbpasswd裡的使用者資訊寫到samba password database裡,並移除smbpasswd這個過度的暫存檔案。
此時samba database就有了/etc/passwd裡的有效使用者。
不過samba要能有效登入,還需root先變更使用者的密碼,smbpasswd方能生效,但至少解決了大量建制使用者的問題。

四.結論

不過要使用samba,無論是否利用smbpasswd建立使用者或是由shadow->tdbsam,都需要系統管理員先替每個使用者做一次調校,我認為要全面同步可能還是要靠LDAP來幫忙。

2008年9月1日 星期一

NCLP PASSED

經過了三個小時的奮戰,終於在考試結果欄出現:
SCORE RESULT: PASSED

真是太開心啦!人生第一張linux國際認證呢!
在此分享一下考試的環境。

首先是用opensuse的livecd開機,完成後會出現一個紅色登入畫面,
輸入自己的註冊id跟密碼(就是自己的email)
登入進去後,請耐心的等待連線以及認證的過程(他會顯示可能需等待幾分鐘)
進去之後會要求你在確認一次註冊id還有你所登入的資料是否正確。
所有資訊都正確後,按下開始作答的按鈕(當然都是英文)

開始作答後會有一個視窗,有四個分頁,確切的英文單字是什麼真的忘記了,
第一個分頁是告訴你作答的時間,考場規則,以及解釋連線速度慢跟非英文語系障礙已經納入考試考量時間範圍內,因此不得因連線速度對考試時間提出異議。
第二個分頁就是考試題目...要很仔細看!
第三個分頁是help...沒啥屁用,意思是有需要請你通知試務人員。
第四個分頁是警告,告訴你一些絕對不能執行的動作,例如重新啟動x,或是更改livecd裡的網路設定等等,如果還是犯了考試會無法重來。
在視窗的右上角有兩個按鈕,分別是考試所需的server1以及server2,點他一下就會啟動一個VNC連線。這時強烈建議選擇網路速度最慢的那個連線選項,他會關閉所有特效,讓你的連線可以快一點。因此除了原本考題的視窗,加上server{1,2}總共會有三個視窗。至於為什麼不直接由server1用ssh聯至server2來操作呢?我沒有細究原因,但至少我開啟ssh server但卻還是無法連線過去,所以我就維持三個視窗來考試。

對於考試環境,給各位將要準備NCLP的同好的意見是:
1.可以的話,熟悉KDE的操作方式是很有利的,因為無論是livecd或是VNC過去的環境都是kde介面。
2.可以的話,請帶個外套,冷氣很冷,加上緊張,手指頭會很不靈活。
3.考題的英文多半不難,雖然我的英文不錯,但後來檢查還是發現有誤解題意的地方,要很小心的看。考場會提供紙筆,建議把思維寫在紙上,或是一些不能出錯的地方寫在紙上,可以幫助減少看考題的時間。
4.網路速度很慢,所以連滑鼠跑到哪裡去都不是很精確,建議是不要緊張,大家都一樣的。

對於考題,基於規定我不能洩漏;不過如果你有買關於suse linux的參考書,我相信通過測驗是遲早的事情。NCLP考試的範圍坦白說真的很廣,第一次接觸linux的人上過一兩輪課程要通過考試是很有難度的,不過有兩點是必須要把握的:
1.users administration:這個必考,而且一定要拿滿分;不外乎新增一個群組,建立2-3個使用者,再把這幾個users加入這個新增群組裡(不是預設群組)。接著可能會進階的要你設定他們的密碼過期日,甚至要你幫他們設好一個預設密碼,登入後需要立即更改密碼之類的。這是非常基本又必考的部份,一定要拿下來。
2.syslog-ng以及logrotate:系統管理員要會看log、管理log是很重要的事情,不過syslog-ng非常的複雜,沒有實務經驗的考生(例如我)就被syslog-ng整過很多次。考試的題目通常也比練習本的難,這實在有點不合常理,所以建議還是要靠訪間的參考書來加強。考試的類型多半就是要你針對某一個服務作監控,把這個監控的內容寫進log,這個log的名字跟位置都是要自訂的,並且根據題目設定logrotate的一些參數,通常搭配把訊息mail一份給root是不成文的規定,而要達成這目的也會伴隨要求利用shell script來達成。
兩題大約就佔了400分,還要在280分才會過關,因此其他部份的練習要非常非常熟練。

我個人的淺見是,就把windows給扔掉,每天就是把linux當成自己的桌面系統來用,每天跟他相處,也是增加熟悉度的好方法。因為考試的時候會緊張,很多本來都會的,反而考試時發現好像不那麼有把握了...因此要學會看man page。不過看過man page的都知道,如果沒有經驗,man page看也也未必懂,因此重點就是把windows丟掉,照三餐的使用linux,你會發現沒有windows的世界會變更好,電腦程度因此而進步。